diff options
author | cvs2git <cvs2git> | 2000-02-02 20:22:20 +0000 |
---|---|---|
committer | cvs2git <cvs2git> | 2000-02-02 20:22:20 +0000 |
commit | 982d8d614ddcd9c5746f0bc7aa697f2337cc1adb (patch) | |
tree | 230b4abb5c02c10c965d2c6613aae8aaec90bde0 /htdocs/docs | |
parent | 3bfec7cf75a1a4eb4da1cdf8c64003bd6babcd81 (diff) | |
parent | 80ba0c074354875c288c143721af08a0a5d02e42 (diff) |
This commit was manufactured by cvs2svn to create branchfreeside_1_2_3_pci_mods
'freeside_1_2_3_pci_mods'.
Diffstat (limited to 'htdocs/docs')
58 files changed, 0 insertions, 6218 deletions
diff --git a/htdocs/docs/admin.html b/htdocs/docs/admin.html deleted file mode 100644 index 8adddbe92..000000000 --- a/htdocs/docs/admin.html +++ /dev/null @@ -1,6 +0,0 @@ -<head> - <title>Administration</title> -</head> -<body> - <h1>Administration</h1> -</body> diff --git a/htdocs/docs/billing.html b/htdocs/docs/billing.html deleted file mode 100644 index c0354f1ca..000000000 --- a/htdocs/docs/billing.html +++ /dev/null @@ -1,40 +0,0 @@ -<head> - <title>Billing</title> -</head> -<body> - <h1>Billing</h1> - The freeside-bill script can be run daily to bill all customers. Usage: bill [ -c [ i ] ] [ -d <i>date</i> ] [ -b ] - <ul> - <li>-c: Turn on collecting (you probably want this). - <li>-i: Real-time billing (as opposed to bacth billing). Only relevant for credit cards. Not available without modifying site_perl/Bill.pm - <li>-d: Pretend it is <i>date</i> (parsed by Date::Parse) - <li>-b: N/A - </ul> - Printing should be configured on your freeside machine to print invoices. - <br><br>Batch credit card processing - <ul> - <li>After this script is run, a credit card batch will be in the <a href="schema.html#cust_pay_batch">cust_pay_batch</a> table. Export this table to your credit card batching. - <li>When your batch completes, erase the cust_pay_batch records in that batch and add any necessary paymants to the <a href="schema.html#cust_pay">cust_pay</a> table. Example code to add payments is: - <pre>use FS::cust_pay; - -# loop over all records in batch - -my $payment=create FS::cust_pay ( - 'invnum' => $invnum, - 'paid' => $paid, - '_date' => $_date, - 'payby' => $payby, - 'payinfo' => $payinfo, - 'paybatch' => $paybatch, -); - -my $error=$payment->insert; -if ( $error ) { - #process error -} - -# end loop -</pre> -All fields except paybatch are contained in the cust_pay_batch table. You can use paybatch field to track particular batches and/or particular transactions within a batch. - </ul> -</body> diff --git a/htdocs/docs/config.html b/htdocs/docs/config.html deleted file mode 100644 index cad10ce65..000000000 --- a/htdocs/docs/config.html +++ /dev/null @@ -1,62 +0,0 @@ -<head> - <title>Configuration files</title> -</head> -<body> - <h1>Configuration files</h1> -Configuration file layout has changed in 1.2.x. -<ul> - <li>First, the file `/usr/local/etc/freeside/mapsecrets' is read. Each line -in this file contains a username and filename, separated by whitespace. Note -that these are not local usernames - they are passed from Apache (you _did_ -setup <a href="http://www.apache.org/docs/misc/FAQ.html#user-authentication"> -user authetication</a>, correct?). Filenames are located in -`/usr/local/etc/freeside/'. The specified filename is parsed exactly -the same as the pre-1.2.x `secrets' file: - <li>Three lines: Database engine datasource (for example, - `DBI:mysql:freeside' or `DBI:Pg:dbname=freeside'), username, and password. - This file should not be world readable. See the DBI manpage and the manpage - for your DBD for the exact syntax. -</ul> -All further configuration files and directories are located in -`/usr/local/etc/freeside/conf.<i>datasource</i>', for example, -`/usr/local/etc/freeside/conf.DBI:Pg:dbname=freeside' -<ul> - <li>address - Your company name and address, four lines. - <li>bsdshellmachines - Your BSD flavored shell (and mail) machines, one per line. This enables export of `/etc/passwd' and `/etc/master.passwd'. - <li>cybercash2 - <a href="http://www.cybercash.com/cybercash/services/cashreg214.html">CyberCash v2</a> support, four lines: paymentserverhost, paymentserverport, paymentserversecret, and transaction type (`mauthonly' or `mauthcapture'). CCLib.pm is required. - <li>cybercash3.2 - <a href="http://www.cybercash.com/cybercash/services/technology.html">CyberCash v3.2</a> support. Two lines: the full path and name of your merchant_conf file, and the transaction type (`mauthonly' or `mauthcapture'). CCMckLib3_2.pm, CCMckDirectLib3_2.pm and CCMckErrno3_2 are required. - <li>deletecustomers - The existance of this file will enable customer deletions. Be very careful! Deleting a customer will remove all traces that this customer ever existed! It should probably only be used when auditing a legacy database. Normally, you cancel all of a customers' packages if they cancel service. - <li>domain - Your domain name. - <li>editreferrals - The existance of this file will allow you to change the referral of existing customers. - <li>erpcdmachines - Your ERPCD authenticaion machines, one per line. This enables export of `/usr/annex/acp_passwd' and `/usr/annex/acp_dialup'. - <li>hidecancelledpackages - The existance of this file will prevent cancelled packages from showing up in listings (though they will still be in the database) - <li>hidecancelledcustomers - The existance of this file will prevent customers with only cancelled packages from showing up in listings (though they will still be in the database) - <li>home - For new users, prefixed to usrename to create a directory name. Should have a leading but not a trailing slash. - <li>invoice_from - Return address on email invoices. - <li>lpr - Print command for paper invoices, for example `lpr -h'. - <li>nismachines - Your NIS master (not slave master) machines, one per line. This enables export of `/etc/global/passwd' and `/etc/global/shadow'. - <li>passwordmin - Minimum password length (default 6); - <li>qmailmachines - Your qmail machines, one per line. This enables export of `/var/qmail/control/virtualdomains', `/var/qmail/control/recipientmap', and `/var/qmail/control/rcpthosts'. The existance of this file (even if empty) also turns on user `.qmail-extension' file maintenance in conjunction with `shellmachine'. - <li>radiusmachines - Your RADIUS authentication machines, one per line. This enables export of `/etc/raddb/users'. - <li>registries - Directory which contains domain registry information. Each registry is a directory. - <ul> - <li>registries/internic - Currently the only supported registry - <ul> - <li>registries/internic/from - Email address from which InterNIC domain registrations are sent. - <li>regestries/internic/nameservers - The nameservers for InterNIC domain registrations, one per line. Each line contains an IP address and hostname, separated by whitespace. - <li>registries/internic/tech_contact - Technical contact NIC handle for domain registrations. - <li>registries/internic/template - Template for InterNIC domain registrations with special markup. A suitable copy of the InterNIC domain template v4.0 is in `fs-x.y.z/etc/domain-template.txt'. - <li>registries/internic/to - Email address to which InterNIC domain registrations are sent. - </ul> - </ul> - <li>sendmailmachines - Your sendmail machines, one per line. This enables export of `/etc/virtusertable' and `/etc/sendmail.cw'. - <li>shellmachine - A single machine with user home directories mounted. This enables home directory creation, renaming and archiving/deletion. In conjunction with `qmailmachines', it also enables `.qmail-extension' file maintenance. - <li>shellmachines - Your Linux and System V flavored shell (and mail) machines, one per line. This enables export of `/etc/passwd' and `/etc/shadow' files. - <li>shells - Legal shells (think /etc/shells). You probably want to `cut -d: -f7 /etc/passwd | sort | uniq' initially so that importing doesn't fail with `Illegal shell' errors, then remove any special entries afterwords. A blank line specifies that an empty shell is permitted. - <li>showpasswords - The existance of this file will allow unencrypted user passwords to be displayed. - <li>smtpmachine - SMTP relay for Freeside's outgoing mail. - <li>usernamemin - Minimum username length (default 2); - <li>usernamemax - Maximum username length (default is the size of the SQL column, probably specified when fs-setup was run) -</ul> -</body> - diff --git a/htdocs/docs/export.html b/htdocs/docs/export.html deleted file mode 100644 index 86a2b4ccd..000000000 --- a/htdocs/docs/export.html +++ /dev/null @@ -1,40 +0,0 @@ -<head> - <title>File exporting</title> -</head> -<body> - <h1>File exporting</h1> - <ul> - <li>bin/svc_acct.export will create UNIX <b>passwd</b>, <b>shadow</b> and <b>master.passwd</b> files, ERPCD <b>acp_passwd</b> and <b>acp_dialup</b> files and a RADIUS <b>users</b> file in the <b>/usr/local/etc/freeside/export.<i>datasrc</i></b> directory. Using the appropriate <a href="config.html">configuration files</a>, you can export these files to your remote machines unattended; see below. Some RADIUS servers (such as <a href="http://www.open.com.au/radiator/">Radiator</a>) will authenticate directly out of an SQL database. In these cases, -it is reccommended that you copy the svc_acct table to an external RADIUS machine rather than run the RADIUS server on your Freeside machine. - <ul> - <li>shellmachines - <b>passwd</b> and <b>shadow</b> are copied to the remote machine as <b>/etc/passwd.new</b> and <b>/etc/shadow.new</b> and then moved to <b>/etc/passwd</b> and <b>/etc/shadow</b> if no errors occur. - <li>bsdshellmachines - <b>passwd</b> and <b>master.passwd</b> are copied to the remote machine as <b>/etc/passwd.new</b> and <b>/etc/master.passwd.new</b> and moved to <b>/etc/passwd</b> and <b>/etc/master.passwd</b> if no errors occur. - <li>nismachines - <b>passwd</b> and <b>shadow</b> are copied to the <b>/etc/global</b> directory on the remote machine. If no errors occur, the command <b>( cd /var/yp; make; )</b> is executed on the remote machine. - <li>erpcdmachines - <b>acp_passwd</b> and <b>acp_dialup</b> are copied to the <b>/usr/annex</b> directory on the remote machine. If no errors occur, the command <b>( kill -USR1 `cat /usr/annex/erpcd.pid` )</b> is executed on the remote machine. - <li>radiusmachines - <b>users</b> is copied to the <b>/etc/raddb</b> directory on the remote machine. If no errors occur, the command <b>( builddbm )</b> is executed on the remote machine. - </ul> - <li>site_perl/svc_acct.pm - If a shellmachine is defined, users can be created, modified and deleted remotely; see below. - <ul> - <li>The command <b>useradd -d <i>homedir</i> -s <i>shell</i> -u <i>uid</i> <i>username</i></b> is executed when a user is added. - <li>The command <b>userdel <i>username</i></b> is executed with a user is deleted. - <li>If a user's home directory changes, the command <b>[ -d <i>old_homedir</i> && ( chmod u+t <i>old_homedir</i>; umask 022; mkdir <i>new_homedir</i>; cd <i>old_homedir</i>; find . -depth -print | cpio -pdm <i>new_homedir</i>; chmod u-t <i>new_homedir</i>; chown -R <i>uid</i>.<i>gid</i> <i>new_homedir</i>; rm -rf <i>old_homedir</i> )</b> is executed. - </ul> - <li>bin/svc_acct_sm.export will create <a href="http://www.qmail.org">Qmail</a> <b>rcpthosts</b>, <b>recipientmap</b> and <b>virtualdomains</b> files and <a href="http://www.sendmail.org">Sendmail</a> <b>virtusertable</b> and <b>sendmail.cw</b> files in the <b>/usr/local/etc/freeside/export.<i>datasrc</i></b> directory. Using the appropriate <a href="config.html">configuration files</a>, you can export these files to your remote machines unattemded; see below. - <ul> - <li>qmailmachines - <b>recipientmap</b>, <b>virtualdomains</b> and <b>rcpthosts</b> are copied to the <b>/var/qmail/control</b> directory on the remote machine. Note: If you <a href="legacy.html#svc_acct_sm">imported</a> qmail configuration files, run the generated <b>/usr/local/etc/freeside/export.<i>datasrc</i>/virtualdomains.FIX</b> on a machine with your user home directories before exporting qmail configuration files. - <li>shellmachine - The command <b>[ -e <i>homedir</i>/.qmail-default ] || { touch <i>homedir</i>/.qmail-default; chown <i>uid</i>.<i>gid</i> <i>homedir</i>/.qmail-default; }</b> will be run on this machine for users in the virtualdomains file. - <li>sendmailmachines - <b>sendmail.cw</b> and <b>virtusertable</b> are copied to the remote machine as <b>/etc/sendmail.cw.new</b> and <b>/etc/virtusertable.new</b> and moved to <b>/etc/sendmail.cw</b> and <b>/etc/virtusertable</b> if no errors occur. - </ul> - <li>site_perl/svc_acct_sm.pm - If the qmailmachines configuration file exists and a shellmachine is defined, user <b>.qmail-</b> files can be updated. - <ul> - <li>The command <b>[ -e <i>homedir</i>/.qmail-<i>domain</i>-default ] || { touch <i>homedir</i>/.qmail-<i>domain</i>-default; chown <i>uid</i>.<i>gid</i> <i>homedir</i>/.qmail-<i>domain</i>-default; }</b> is run. - </ul> - </ul> - <br><a name=ssh>Unattended remote login</a> - Freeside can login to remote machines unattended using SSH. This can pose a security risk if not configured correctly, and will allow an intruder who breaks into your freeside machine full access to your remote machines. <b>Do not use this feature unless you understand what you are doing!</b> - <ul> - <li>As the freeside user (on your freeside machine), generate an authentication key using <a href="http://www.tac.nyc.ny.us/cgi-bin/man-cgi?ssh-keygen+1">ssh-keygen</a>. Since this is for unattended operation, you need to use a blank passphrase. - <li>Append the newly-created identity.pub file to root's authorized_keys on the remote machine(s). - </ul> - -</body> - diff --git a/htdocs/docs/index.html b/htdocs/docs/index.html deleted file mode 100644 index 21ec25755..000000000 --- a/htdocs/docs/index.html +++ /dev/null @@ -1,27 +0,0 @@ -<head> - <title>Documentation</title> -</head> -<body> - <h1>Documentation</h1> -<ul> - <li><a href="install.html">New Installation</a> - <li><a href="upgrade.html">Upgrading from 1.0.x to 1.1.x</a> - <li><a href="upgrade2.html">Upgrading from 1.1.x to 1.1.4</a> - <li><a href="upgrade3.html">Upgrading from 1.1.x to 1.2.x</a> - <li><a href="upgrade4.html">Upgrading from 1.2.x to 1.2.2</a> - <li><a href="upgrade5.html">Upgrading from 1.2.2 to 1.3.0</a> - <li><a href="config.html">Configuration files</a> -<!-- - <li><a href="admin.html">Administration</a> -!--> - <li><a href="../index.html#admin">Administration</a> - <li><a href="legacy.html">Importing legacy data</a> - <li><a href="export.html">File exporting and remote setup</a> - <li><a href="passwd.html">fs_passwd</a> - <li><a href="signup.html">Signup server</a> - <li><a href="billing.html">Billing</a> - <li><a href="trouble.html">Troubleshooting</a> - <li><a href="schema.html">Schema reference</a> - <li><a href="man/FS.html">Perl API</a> -</ul> -</body> diff --git a/htdocs/docs/install.html b/htdocs/docs/install.html deleted file mode 100644 index 574ab91e4..000000000 --- a/htdocs/docs/install.html +++ /dev/null @@ -1,74 +0,0 @@ -<head> - <title>Installation</title> -</head> -<body> -<h1>Installation</h1> -Before installing, you need: -<ul> - <li>A web server, such as <a href="http://www.apache-ssl.org">Apache-SSL</a> or <a href="http://www.apache.org">Apache</a> - <li><a href="ftp://ftp.cs.hut.fi/pub/ssh/">SSH</a> - <li><a href="http://www.perl.com/CPAN/doc/relinfo/INSTALL.html">Perl</a> (at least 5.004_05 for the 5.004 series or 5.005_03 for the 5.005 series. Don't enable experimental features like threads or the PerlIO abstraction layer.) - <li>A database engine supported by Perl's <a href="http://www.hermetica.com/technologia/DBI/">DBI</a>, such as <a href="http://www.tcx.se/">MySQL</a> or <a href="http://www.postgresql.org/">PostgreSQL</a> (verstion 6.5 or higher) (see the <a href="postgresql.html">PostgreSQL notes</a>) - <li>Perl modules (<a href="http://www.perl.com/CPAN/doc/manual/html/lib/CPAN.html">CPAN</a> will query, download and build perl modules automatically) - <ul> - <li><a href="http://www.perl.com/CPAN/modules/by-module/Array/">Array-PrintCols</a> - <li><a href="http://www.perl.com/CPAN/modules/by-module/Term/">Term-Query</a> - <li><a href="http://www.perl.com/CPAN/modules/by-module/MIME/">MIME-Base64</a> - <li><a href="http://www.perl.com/CPAN/modules/by-module/Data">Data-Dumper</a> - <li><a href="http://www.perl.com/CPAN/modules/by-module/MD5">Digest-MD5</a> - <li><a href="http://www.perl.com/CPAN/modules/by-module/URI">URI</a> - <li><a href="http://www.perl.com/CPAN/modules/by-module/HTTP">HTML-Parser</a> - <li><a href="http://www.perl.com/CPAN/modules/by-module/Net">libnet</a> - <li><a href="http://www.perl.com/CPAN/modules/by-module/Locale">Locale-Codes</a> - <li><a href="http://www.perl.com/CPAN/modules/by-module/Net">Net-Whois</a> - <li><a href="http://www.perl.com/CPAN/modules/by-module/LWP/">libwww-perl</a> - <li><a href="http://www.perl.com/CPAN/modules/by-module/Business/">Business-CreditCard</a> - <li><a href="http://www.perl.com/CPAN/modules/by-module/Data/">Data-ShowTable</a> - <li><a href="http://www.perl.com/CPAN/modules/by-module/Mail/">MailTools</a> - <li><a href="http://www.perl.com/CPAN/modules/by-module/Time/">TimeDate</a> - <li><a href="http://www.perl.com/CPAN/modules/by-module/Date/">DateManip</a> - <li><a href="http://www.perl.com/CPAN/modules/by-module/File/">File-CounterFile</a> - <li><a href="http://www.perl.com/CPAN/modules/by-module/FreezeThaw/">FreezeThaw</a> - <li><a href="http://www.perl.com/CPAN/modules/by-module/String/">String-Approx</a> - <li><a href="http://www.perl.com/CPAN/modules/by-module/DBI/">DBI - <li><a href="http://www.perl.com/CPAN/modules/by-module/DBD/">DBD for your database engine</a> - </ul> -</ul> -Install the Freeside distribution: -<ul> - <li>Add the user `freeside' to your system. - <li>Add the freeside database to your database engine. (with <a href="http://www.mysql.com/Manual_chapter/manual_Syntax.html#Create_database">MySQL</a>) (with <a href="http://www.postgresql.org/docs/admin/manage-ag.htm#AEN854">PostgreSQL</a>) - <li>Allow the freeside user full access to the freeside database. (with <a href="http://www.mysql.com/Manual_chapter/manual_Privilege_system.html#Privilege_system">MySQL</a>) (with <a href="http://www.postgresql.org/docs/admin/newuser.htm">PostgreSQL</a>) - <li>Unpack the tarball: <pre>gunzip -c fs-x.y.z.tar.gz | tar xvf -</pre> - <li>Build and install the Perl libraries: - <pre> -$ cd FS/ -$ perl Makefile.PL -$ make -$ su -# make install</pre> - <li>Copy or link fs-x.y.z/htdocs to your web server's document space. <pre>mkdir /usr/local/apache/htdocs/freeside -cp -r fs-x.y.z/htdocs/* /usr/local/apache/htdocs/freeside</pre> or <pre>ln -s /full/path/to/fs-x.y.z/htdocs /usr/local/apache/htdocs/freeside</pre> - <li>Restrict access to this web interface. (with <a href="http://www.apache.org/docs/misc/FAQ.html#user-authentication">Apache</a>) - <li>Enable CGI execution for files with the `.cgi' extension. (with <a href="http://www.apache.org/docs/mod/mod_mime.html#addhandler">Apache</a>) - <li>Set ownership and permissions for the web interface. The web interface needs to run as the freeside user - there are several ways to do this. - <ul> - <li>Use Perl's setuid emulation: see the <a href="http://www.perl.com/CPAN-local/doc/manual/html/pod/perlsec.html#Security_Bugs">Security Bugs</a> section of the <a href="http://www.perl.com/CPAN-local/doc/manual/html/pod/perlsec.html">perlsec</a> manpage. -<pre>cd /usr/local/apache/htdocs/freeside -chown -R freeside . -chmod 4755 browse/*.cgi edit/*.cgi edit/process/*.cgi misc/*.cgi misc/process/*.cgi search/*.cgi view/*.cgi</pre> - <li>Use Apache's <a href="http://www.apache.org/docs/suexec.html">suEXEC</a>. -<pre>cd /usr/local/apache/htdocs/freeside -chown -R freeside . -chmod 755 browse/*.cgi edit/*.cgi edit/process/*.cgi misc/*.cgi misc/process/*.cgi search/*.cgi view/*.cgi</pre> - <li>Use <a href="http://perl.apache.org/">mod_perl</a>. You should run a separate iteration of Apache[-SSL] as the freeside user. (Warning: The redirect method of CGI.pm 2.36 [as distributed with Perl 5.004_04] is broken under mod_perl. Downlaod the current version from <a href="http://www.perl.com/CPAN/modules/by-module/CGI">CPAN</a>. Apache 1.3.6 is also highly recommended because of signal handling problems in earlier versions.) -<pre>cd /usr/local/apache/htdocs/freeside -chown -R root . -chmod 755 browse/*.cgi edit/*.cgi edit/process/*.cgi misc/*.cgi misc/process/*.cgi search/*.cgi view/*.cgi</pre> - </ul> -<li>Create the necessary <a href="config.html">configuration files</a>. -<li>Create the `/usr/local/etc/freeside/counters.<i>datasrc</i>', and - `/usr/local/etc/freeside/export.<i>datasrc</i>' directories for each <i>datasrc</i> (owned by the freeside user). - <li>As the freeside user, run bin/fs-setup to create the database tables. -</ul> -</body> diff --git a/htdocs/docs/legacy.html b/htdocs/docs/legacy.html deleted file mode 100644 index 3ab21dab2..000000000 --- a/htdocs/docs/legacy.html +++ /dev/null @@ -1,34 +0,0 @@ -<head> - <title>Importing legacy data</title> -</head> -<body> - <h1>Importing legacy data</h1> -<ul> - <li><a name="svc_acct">bin/svc_acct.import</a> - Import `passwd', ( `shadow' or `master.passwd' ) and RADIUS `users'. Before running bin/svc_acct.import, you need <a href="../browse/part_svc.cgi">services</a> (with table svc_acct) as follows: - <ul> - <li>Most accounts probably have entries in passwd and users (with Port-Limit nonexistant or 1) - <li>Some accounts have entries in passwd and users, but with Port-Limit 2 (or more) - <li>Some accounts might have entries in users only (Port-Limit 1) - <li>Some accounts might have entries in users only (Port-Limit >= 2) - <li>POP mail accounts have entries in passwd only, and have a particular shell. - <li>Everything else in passwd is a shell account. - </ul> - <li><a name="svc_acct_sm">bin/svc_acct_sm.import</a> - Import qmail ( `virtualdomains' and `rcpthosts' ), or sendmail ( `virtusertable' and `sendmail.cw' ) files. Before running bin/svc_acct_sm.import, you need <a href="../browse/part_svc.cgi">services</a> as follows: - <ul> - <li>Domain (table svc_acct) - <li>Mail alias (table svc_acct_sm) - </ul> - <li><a name="cust_main">Importing customer data</a> - <ul> - <li>Manually - <ul> - <li>Add a <a href="../edit/cust_main.cgi">new customer</a> - <li>Add one or more packages for this customer - <li>Enter a package by clicking on the package number - <li>Pick the `Link to existing' option - </ul> - <li>Batch - You will need to write a script to import your particular legacy data. You can use eg/TEMPLATE_cust_main.import as a starting point. - </ul> -</ul> -</body> - diff --git a/htdocs/docs/man/FS.html b/htdocs/docs/man/FS.html deleted file mode 100644 index b2f0dd3a2..000000000 --- a/htdocs/docs/man/FS.html +++ /dev/null @@ -1,247 +0,0 @@ -<HTML> -<HEAD> -<TITLE>FS - Freeside Perl modules</TITLE> -<LINK REV="made" HREF="mailto:ivan@rootwood.sisd.com"> -</HEAD> - -<BODY> - -<!-- INDEX BEGIN --> - -<UL> - - <LI><A HREF="#NAME">NAME</A> - <LI><A HREF="#SYNOPSIS">SYNOPSIS</A> - <UL> - - <LI><A HREF="#Database_metadata_classes">Database metadata classes</A> - <LI><A HREF="#Utility_classes">Utility classes</A> - <LI><A HREF="#Database_record_classes">Database record classes</A> - <LI><A HREF="#User_Interface_classes_under_de">User Interface classes (under development; not yet usable)</A> - <LI><A HREF="#Notes">Notes</A> - </UL> - - <LI><A HREF="#DESCRIPTION">DESCRIPTION</A> - <LI><A HREF="#VERSION">VERSION</A> - <LI><A HREF="#SUPPORT">SUPPORT</A> - <LI><A HREF="#AUTHOR">AUTHOR</A> - <LI><A HREF="#SEE_ALSO">SEE ALSO</A> - <LI><A HREF="#BUGS">BUGS</A> -</UL> -<!-- INDEX END --> - -<HR> -<P> -<H1><A NAME="NAME">NAME</A></H1> -<P> -FS - Freeside Perl modules - -<P> -<HR> -<H1><A NAME="SYNOPSIS">SYNOPSIS</A></H1> -<P> -FS is the temporary prefix for many disparate modules written for the -Freeside ISP billing software. This includes: - -<P> -<HR> -<H2><A NAME="Database_metadata_classes">Database metadata classes</A></H2> -<P> -<A HREF="./FS/dbdef.html">FS::dbdef</A> - Database class - -<P> -<A HREF="./FS/dbdef_table.html">FS::dbdef_table</A> - Database table class - -<P> -<A HREF="./FS/dbdef_column.html">FS::dbdef_column</A> - Database column class - -<P> -<A HREF="./FS/dbdef_colgroup.html">FS::dbdef_colgroup</A> - Database column group class - -<P> -<A HREF="./FS/dbdef_index.html">FS::dbdef_index</A> - Database index class - -<P> -<A HREF="./FS/dbdef_unique.html">FS::dbdef_unique</A> - Database unique index class - -<P> -<HR> -<H2><A NAME="Utility_classes">Utility classes</A></H2> -<P> -<A HREF="./FS/SSH.html">FS::SSH</A> - Simple wrappers around ssh and scp commands. - -<P> -<A HREF="./FS/Conf.html">FS::Conf</A> - Freeside configuration values - -<P> -<A HREF="./FS/UID.html">FS::UID</A> - User class (not yet OO) - -<P> -<A HREF="./FS/CGI.html">FS::CGI</A> - Non OO-subroutines for the web interface. This is depriciated. Future -development will be focused on the FS::UI user-interface classes (see -below). - -<P> -<HR> -<H2><A NAME="Database_record_classes">Database record classes</A></H2> -<P> -<A HREF="./FS/Record.html">FS::Record</A> - Database record base class - -<P> -<A HREF="./FS/svc_acct_pop.html">FS::svc_acct_pop</A> - POP (Point of Presence, not Post Office Protocol) class - -<P> -<A HREF="./FS/part_referral.html">FS::part_referral</A> - Referral class - -<P> -<A HREF="./FS/cust_main_county.html">FS::cust_main_county</A> - Locale (tax rate) class - -<P> -<A HREF="./FS/svc_Common.html">FS::svc_Common</A> - Service base class - -<P> -<A HREF="./FS/svc_acct.html">FS::svc_acct</A> - Account (shell, RADIUS, POP3) class - -<P> -<A HREF="./FS/svc_domain.html">FS::svc_domain</A> - Domain class - -<P> -<A HREF="./FS/svc_acct_sm.html">FS::svc_acct_sm</A> - Vitual mail alias class - -<P> -<A HREF="./FS/part_svc.html">FS::part_svc</A> - Service definition class - -<P> -<A HREF="./FS/part_pkg.html">FS::part_pkg</A> - Package (billing item) definition class - -<P> -<A HREF="./FS/pkg_svc.html">FS::pkg_svc</A> - Class linking package (billing item) definitions (see <A HREF="./FS/part_pkg.html">FS::part_pkg</A>) with service definitions (see <A HREF="./FS/part_svc.html">FS::part_svc</A>) - -<P> -<A HREF="./FS/agent.html">FS::agent</A> - Agent (reseller) class - -<P> -<A HREF="./FS/agent_type.html">FS::agent_type</A> - Agent type class - -<P> -<A HREF="./FS/type_pkgs.html">FS::type_pkgs</A> - Class linking agent types (see -<A HREF="./FS/agent_type.html">FS::agent_type</A>) with package (billing item) definitions (see <A HREF="./FS/part_pkg.html">FS::part_pkg</A>) - -<P> -<A HREF="./FS/cust_svc.html">FS::cust_svc</A> - Service class - -<P> -<A HREF="./FS/cust_pkg.html">FS::cust_pkg</A> - Package (billing item) class - -<P> -<A HREF="./FS/cust_main.html">FS::cust_main</A> - Customer class - -<P> -<A HREF="./FS/cust_main_invoice.html">FS::cust_main_invoice</A> - Invoice destination class - -<P> -<A HREF="./FS/cust_bill.html">FS::cust_bill</A> - Invoice class - -<P> -<A HREF="./FS/cust_bill_pkg.html">FS::cust_bill_pkg</A> - Invoice line item class - -<P> -<A HREF="./FS/cust_pay.html">FS::cust_pay</A> - Payment class - -<P> -<A HREF="./FS/cust_credit.html">FS::cust_credit</A> - Credit class - -<P> -<A HREF="./FS/cust_refund.html">FS::cust_refund</A> - Refund class - -<P> -<A HREF="./FS/cust_pay_batch.html">FS::cust_pay_batch</A> - Credit card transaction queue class - -<P> -<HR> -<H2><A NAME="User_Interface_classes_under_de">User Interface classes (under development; not yet usable)</A></H2> -<P> -<A HREF="./FS/UI/Base.html">FS::UI::Base</A> - User-interface base class - -<P> -<A HREF="./FS/UI/Gtk.html">FS::UI::Gtk</A> - Gtk user-interface class - -<P> -<A HREF="./FS/UI/CGI.html">FS::UI::CGI</A> - CGI (HTML) user-interface class - -<P> -<A HREF="./FS/UI/agent.html">FS::UI::agent</A> - agent table user-interface class - -<P> -<HR> -<H2><A NAME="Notes">Notes</A></H2> -<P> -To quote <CODE>perl(1),</CODE> ``If you're intending to read these straight -through for the first time, the suggested order will tend to reduce the -number of forward references.'' - -<P> -<HR> -<H1><A NAME="DESCRIPTION">DESCRIPTION</A></H1> -<P> -Freeside is a billing and administration package for Internet Service -Providers. - -<P> -The Freeside home page is at <http://www.sisd.com/freeside>. - -<P> -The main documentation is in htdocs/docs. - -<P> -<HR> -<H1><A NAME="VERSION">VERSION</A></H1> -<P> -$Id: FS.html,v 1.1 1999-08-04 12:13:27 ivan Exp $ - -<P> -<HR> -<H1><A NAME="SUPPORT">SUPPORT</A></H1> -<P> -A mailing list for users and developers is available. Send a blank message -to <<A -HREF="mailto:ivan-freeside-subscribe@sisd.com">ivan-freeside-subscribe@sisd.com</A>> -to subscribe. - -<P> -Commercial support is available; see -<http://www.sisd.com/freeside/commercial.html>. - -<P> -<HR> -<H1><A NAME="AUTHOR">AUTHOR</A></H1> -<P> -Primarily Ivan Kohler <<A -HREF="mailto:ivan@sisd.com">ivan@sisd.com</A>>, with help from many kind -folks. - -<P> -See the CREDITS file in the Freeside distribution for a (hopefully) -complete list and the individal files for details. - -<P> -<HR> -<H1><A NAME="SEE_ALSO">SEE ALSO</A></H1> -<P> -<CODE>perl(1),</CODE> main Freeside documentation in htdocs/docs/ - -<P> -<HR> -<H1><A NAME="BUGS">BUGS</A></H1> -<P> -The version number of the FS Perl extension differs from the version of the -Freeside distribution, which are both different from the CVS version tag -for each file, which appears under the VERSION heading. - -<P> -Those modules which would be useful separately should be pulled out, -renamed appropriately and uploaded to CPAN. - -</BODY> - -</HTML> diff --git a/htdocs/docs/man/FS/Bill.html b/htdocs/docs/man/FS/Bill.html deleted file mode 100644 index e5832f8d9..000000000 --- a/htdocs/docs/man/FS/Bill.html +++ /dev/null @@ -1,32 +0,0 @@ -<HTML> -<HEAD> -<TITLE>FS::Bill - Legacy stub</TITLE> -<LINK REV="made" HREF="mailto:ivan@rootwood.sisd.com"> -</HEAD> - -<BODY> - -<!-- INDEX BEGIN --> - -<UL> - - <LI><A HREF="#NAME">NAME</A> - <LI><A HREF="#SYNOPSIS">SYNOPSIS</A> -</UL> -<!-- INDEX END --> - -<HR> -<P> -<H1><A NAME="NAME">NAME</A></H1> -<P> -FS::Bill - Legacy stub - -<P> -<HR> -<H1><A NAME="SYNOPSIS">SYNOPSIS</A></H1> -<P> -The functionality of FS::Bill has been integrated into FS::cust_main. - -</BODY> - -</HTML> diff --git a/htdocs/docs/man/FS/CGI.html b/htdocs/docs/man/FS/CGI.html deleted file mode 100644 index e1a42ec59..000000000 --- a/htdocs/docs/man/FS/CGI.html +++ /dev/null @@ -1,115 +0,0 @@ -<HTML> -<HEAD> -<TITLE>FS::CGI - Subroutines for the web interface</TITLE> -<LINK REV="made" HREF="mailto:ivan@rootwood.sisd.com"> -</HEAD> - -<BODY> - -<!-- INDEX BEGIN --> - -<UL> - - <LI><A HREF="#NAME">NAME</A> - <LI><A HREF="#SYNOPSIS">SYNOPSIS</A> - <LI><A HREF="#DESCRIPTION">DESCRIPTION</A> - <LI><A HREF="#SUBROUTINES">SUBROUTINES</A> - <LI><A HREF="#BUGS">BUGS</A> - <LI><A HREF="#SEE_ALSO">SEE ALSO</A> -</UL> -<!-- INDEX END --> - -<HR> -<P> -<H1><A NAME="NAME">NAME</A></H1> -<P> -FS::CGI - Subroutines for the web interface - -<P> -<HR> -<H1><A NAME="SYNOPSIS">SYNOPSIS</A></H1> -<P> -<PRE> use FS::CGI qw(header menubar idiot eidiot popurl); -</PRE> -<P> -<PRE> print header( 'Title', '' ); - print header( 'Title', menubar('item', 'URL', ... ) ); -</PRE> -<P> -<PRE> idiot "error message"; - eidiot "error message"; -</PRE> -<P> -<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> -<HR> -<H1><A NAME="SUBROUTINES">SUBROUTINES</A></H1> -<DL> -<DT><STRONG><A NAME="item_header">header TITLE, MENUBAR</A></STRONG><DD> -<P> -Returns an HTML header. - -<DT><STRONG><A NAME="item_menubar">menubar ITEM, URL, ...</A></STRONG><DD> -<P> -Returns an HTML menubar. - -<DT><STRONG><A NAME="item_idiot">idiot ERROR</A></STRONG><DD> -<P> -This is depriciated. Don't use it. - -<P> -Sends headers and an HTML error message. - -<DT><STRONG><A NAME="item_eidiot">eidiot ERROR</A></STRONG><DD> -<P> -This is depriciated. Don't use it. - -<P> -Sends headers and an HTML error message, then exits. - -<DT><STRONG><A NAME="item_popurl">popurl LEVEL</A></STRONG><DD> -<P> -Returns current URL with LEVEL levels of path removed from the end (default -0). - -<DT><STRONG><A NAME="item_table">table</A></STRONG><DD> -<P> -Returns HTML tag for beginning a table. - -<DT><STRONG><A NAME="item_itable">itable</A></STRONG><DD> -<P> -Returns HTML tag for beginning an (invisible) table. - -<DT><STRONG><A NAME="item_ntable">ntable</A></STRONG><DD> -<P> -This is getting silly. - -</DL> -<P> -<HR> -<H1><A NAME="BUGS">BUGS</A></H1> -<P> -Not OO. - -<P> -Not complete. - -<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">CGI::Base</A> - - - -</BODY> - -</HTML> diff --git a/htdocs/docs/man/FS/Conf.html b/htdocs/docs/man/FS/Conf.html deleted file mode 100644 index e4555c3a9..000000000 --- a/htdocs/docs/man/FS/Conf.html +++ /dev/null @@ -1,94 +0,0 @@ -<HTML> -<HEAD> -<TITLE>FS::Conf - Read access to Freeside configuration values</TITLE> -<LINK REV="made" HREF="mailto:ivan@rootwood.sisd.com"> -</HEAD> - -<BODY> - -<!-- INDEX BEGIN --> - -<UL> - - <LI><A HREF="#NAME">NAME</A> - <LI><A HREF="#SYNOPSIS">SYNOPSIS</A> - <LI><A HREF="#DESCRIPTION">DESCRIPTION</A> - <LI><A HREF="#METHODS">METHODS</A> - <LI><A HREF="#BUGS">BUGS</A> - <LI><A HREF="#SEE_ALSO">SEE ALSO</A> -</UL> -<!-- INDEX END --> - -<HR> -<P> -<H1><A NAME="NAME">NAME</A></H1> -<P> -FS::Conf - Read access to Freeside configuration values - -<P> -<HR> -<H1><A NAME="SYNOPSIS">SYNOPSIS</A></H1> -<P> -<PRE> use FS::Conf; -</PRE> -<P> -<PRE> $conf = new FS::Conf "/config/directory"; -</PRE> -<P> -<PRE> $FS::Conf::default_dir = "/config/directory"; - $conf = new FS::Conf; -</PRE> -<P> -<PRE> $dir = $conf->dir; -</PRE> -<P> -<PRE> $value = $conf->config('key'); - @list = $conf->config('key'); - $bool = $conf->exists('key'); -</PRE> -<P> -<HR> -<H1><A NAME="DESCRIPTION">DESCRIPTION</A></H1> -<P> -Read access to Freeside configuration values. Keys currently map to -filenames, but this may change in the future. - -<P> -<HR> -<H1><A NAME="METHODS">METHODS</A></H1> -<DL> -<DT><STRONG><A NAME="item_new">new [ DIRECTORY ]</A></STRONG><DD> -<P> -Create a new configuration object. A directory arguement is required if -$FS::Conf::default_dir has not been set. - -<DT><STRONG><A NAME="item_dir">dir</A></STRONG><DD> -<P> -Returns the directory. - -<DT><STRONG><A NAME="item_config">config</A></STRONG><DD> -<P> -Returns the configuration value or values (depending on context) for key. - -<DT><STRONG><A NAME="item_exists">exists</A></STRONG><DD> -<P> -Returns true if the specified key exists, even if the corresponding value -is undefined. - -</DL> -<P> -<HR> -<H1><A NAME="BUGS">BUGS</A></H1> -<P> -Write access (with locking) should be implemented. - -<P> -<HR> -<H1><A NAME="SEE_ALSO">SEE ALSO</A></H1> -<P> -config.html from the base documentation contains a list of configuration -files. - -</BODY> - -</HTML> diff --git a/htdocs/docs/man/FS/Invoice.html b/htdocs/docs/man/FS/Invoice.html deleted file mode 100644 index 283e89a35..000000000 --- a/htdocs/docs/man/FS/Invoice.html +++ /dev/null @@ -1,32 +0,0 @@ -<HTML> -<HEAD> -<TITLE>FS::Invoice - Legacy stub</TITLE> -<LINK REV="made" HREF="mailto:ivan@rootwood.sisd.com"> -</HEAD> - -<BODY> - -<!-- INDEX BEGIN --> - -<UL> - - <LI><A HREF="#NAME">NAME</A> - <LI><A HREF="#SYNOPSIS">SYNOPSIS</A> -</UL> -<!-- INDEX END --> - -<HR> -<P> -<H1><A NAME="NAME">NAME</A></H1> -<P> -FS::Invoice - Legacy stub - -<P> -<HR> -<H1><A NAME="SYNOPSIS">SYNOPSIS</A></H1> -<P> -The functionality of FS::Invoice has been integrated in FS::cust_bill. - -</BODY> - -</HTML> diff --git a/htdocs/docs/man/FS/Record.html b/htdocs/docs/man/FS/Record.html deleted file mode 100644 index da1fc5287..000000000 --- a/htdocs/docs/man/FS/Record.html +++ /dev/null @@ -1,380 +0,0 @@ -<HTML> -<HEAD> -<TITLE>FS::Record - Database record objects</TITLE> -<LINK REV="made" HREF="mailto:ivan@rootwood.sisd.com"> -</HEAD> - -<BODY> - -<!-- INDEX BEGIN --> - -<UL> - - <LI><A HREF="#NAME">NAME</A> - <LI><A HREF="#SYNOPSIS">SYNOPSIS</A> - <LI><A HREF="#DESCRIPTION">DESCRIPTION</A> - <LI><A HREF="#CONSTRUCTORS">CONSTRUCTORS</A> - <LI><A HREF="#METHODS">METHODS</A> - <LI><A HREF="#SUBROUTINES">SUBROUTINES</A> - <LI><A HREF="#VERSION">VERSION</A> - <LI><A HREF="#BUGS">BUGS</A> - <LI><A HREF="#SEE_ALSO">SEE ALSO</A> -</UL> -<!-- INDEX END --> - -<HR> -<P> -<H1><A NAME="NAME">NAME</A></H1> -<P> -FS::Record - Database record objects - -<P> -<HR> -<H1><A NAME="SYNOPSIS">SYNOPSIS</A></H1> -<P> -<PRE> use FS::Record; - use FS::Record qw(dbh fields qsearch qsearchs dbdef); -</PRE> -<P> -<PRE> $record = new FS::Record 'table', \%hash; - $record = new FS::Record 'table', { 'column' => 'value', ... }; -</PRE> -<P> -<PRE> $record = qsearchs FS::Record 'table', \%hash; - $record = qsearchs FS::Record 'table', { 'column' => 'value', ... }; - @records = qsearch FS::Record 'table', \%hash; - @records = qsearch FS::Record 'table', { 'column' => 'value', ... }; -</PRE> -<P> -<PRE> $table = $record->table; - $dbdef_table = $record->dbdef_table; -</PRE> -<P> -<PRE> $value = $record->get('column'); - $value = $record->getfield('column'); - $value = $record->column; -</PRE> -<P> -<PRE> $record->set( 'column' => 'value' ); - $record->setfield( 'column' => 'value' ); - $record->column('value'); -</PRE> -<P> -<PRE> %hash = $record->hash; -</PRE> -<P> -<PRE> $hashref = $record->hashref; -</PRE> -<P> -<PRE> $error = $record->insert; - #$error = $record->add; #depriciated -</PRE> -<P> -<PRE> $error = $record->delete; - #$error = $record->del; #depriciated -</PRE> -<P> -<PRE> $error = $new_record->replace($old_record); - #$error = $new_record->rep($old_record); #depriciated -</PRE> -<P> -<PRE> $value = $record->unique('column'); -</PRE> -<P> -<PRE> $value = $record->ut_float('column'); - $value = $record->ut_number('column'); - $value = $record->ut_numbern('column'); - $value = $record->ut_money('column'); - $value = $record->ut_text('column'); - $value = $record->ut_textn('column'); - $value = $record->ut_alpha('column'); - $value = $record->ut_alphan('column'); - $value = $record->ut_phonen('column'); - $value = $record->ut_anythingn('column'); -</PRE> -<P> -<PRE> $dbdef = reload_dbdef; - $dbdef = reload_dbdef "/non/standard/filename"; - $dbdef = dbdef; -</PRE> -<P> -<PRE> $quoted_value = _quote($value,'table','field'); -</PRE> -<P> -<PRE> #depriciated - $fields = hfields('table'); - if ( $fields->{Field} ) { # etc. -</PRE> -<P> -<PRE> @fields = fields 'table'; #as a subroutine - @fields = $record->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> -<HR> -<H1><A NAME="CONSTRUCTORS">CONSTRUCTORS</A></H1> -<DL> -<DT><STRONG><A NAME="item_new">new [ TABLE, ] HASHREF</A></STRONG><DD> -<P> -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> -TABLE can only be omitted when a dervived class overrides the table method. - -<DT><STRONG><A NAME="item_qsearch">qsearch TABLE, HASHREF</A></STRONG><DD> -<P> -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. - -<DT><STRONG><A NAME="item_qsearchs">qsearchs TABLE, HASHREF</A></STRONG><DD> -<P> -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. - -</DL> -<P> -<HR> -<H1><A NAME="METHODS">METHODS</A></H1> -<DL> -<DT><STRONG><A NAME="item_table">table</A></STRONG><DD> -<P> -Returns the table name. - -<DT><STRONG><A NAME="item_dbdef_table">dbdef_table</A></STRONG><DD> -<P> -Returns the FS::dbdef_table object for the table. - -<DT><STRONG><A NAME="item_get">get, getfield COLUMN</A></STRONG><DD> -<P> -Returns the value of the column/field/key COLUMN. - -<DT><STRONG><A NAME="item_set">set, setfield COLUMN, VALUE</A></STRONG><DD> -<P> -Sets the value of the column/field/key COLUMN to VALUE. Returns VALUE. - -<DT><STRONG><A NAME="item_AUTLOADED">AUTLOADED METHODS</A></STRONG><DD> -<P> -$record->column is a synonym for $record->get('column'); - -<P> -$record->column('value') is a synonym for -$record->set('column','value'); - -<DT><STRONG><A NAME="item_hash">hash</A></STRONG><DD> -<P> -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->table, { $old->hash } ); -</PRE> -<DT><STRONG><A NAME="item_hashref">hashref</A></STRONG><DD> -<P> -Returns a reference to the column/value hash. - -<DT><STRONG><A NAME="item_insert">insert</A></STRONG><DD> -<P> -Inserts this record to the database. If there is an error, returns the -error, otherwise returns false. - -<DT><STRONG><A NAME="item_add">add</A></STRONG><DD> -<P> -Depriciated (use insert instead). - -<DT><STRONG><A NAME="item_delete">delete</A></STRONG><DD> -<P> -Delete this record from the database. If there is an error, returns the -error, otherwise returns false. - -<DT><STRONG><A NAME="item_del">del</A></STRONG><DD> -<P> -Depriciated (use delete instead). - -<DT><STRONG><A NAME="item_replace">replace OLD_RECORD</A></STRONG><DD> -<P> -Replace the OLD_RECORD with this one in the database. If there is an error, -returns the error, otherwise returns false. - -<DT><STRONG><A NAME="item_rep">rep</A></STRONG><DD> -<P> -Depriciated (use replace instead). - -<DT><STRONG><A NAME="item_check">check</A></STRONG><DD> -<P> -Not yet implemented, croaks. Derived classes should provide a check method. - -<DT><STRONG><A NAME="item_unique">unique COLUMN</A></STRONG><DD> -<P> -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="../FS/dbdef_table.html">FS::dbdef_table</A>). Returns the new value. - -<DT><STRONG><A NAME="item_ut_float">ut_float COLUMN</A></STRONG><DD> -<P> -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. - -<DT><STRONG><A NAME="item_ut_number">ut_number COLUMN</A></STRONG><DD> -<P> -Check/untaint simple numeric data (whole numbers). May not be null. If -there is an error, returns the error, otherwise returns false. - -<DT><STRONG><A NAME="item_ut_numbern">ut_numbern COLUMN</A></STRONG><DD> -<P> -Check/untaint simple numeric data (whole numbers). May be null. If there is -an error, returns the error, otherwise returns false. - -<DT><STRONG><A NAME="item_ut_money">ut_money COLUMN</A></STRONG><DD> -<P> -Check/untaint monetary numbers. May be negative. Set to 0 if null. If there -is an error, returns the error, otherwise returns false. - -<DT><STRONG><A NAME="item_ut_text">ut_text COLUMN</A></STRONG><DD> -<P> -Check/untaint text. Alphanumerics, spaces, and the following punctuation -symbols are currently permitted: ! @ # $ % & ( ) - + ; : ' `` , . ? / -May not be null. If there is an error, returns the error, otherwise returns -false. - -<DT><STRONG><A NAME="item_ut_textn">ut_textn COLUMN</A></STRONG><DD> -<P> -Check/untaint text. Alphanumerics, spaces, and the following punctuation -symbols are currently permitted: ! @ # $ % & ( ) - + ; : ' `` , . ? / -May be null. If there is an error, returns the error, otherwise returns -false. - -<DT><STRONG><A NAME="item_ut_alpha">ut_alpha COLUMN</A></STRONG><DD> -<P> -Check/untaint alphanumeric strings (no spaces). May not be null. If there -is an error, returns the error, otherwise returns false. - -<DT><STRONG>ut_alpha COLUMN</STRONG><DD> -<P> -Check/untaint alphanumeric strings (no spaces). May be null. If there is an -error, returns the error, otherwise returns false. - -<DT><STRONG><A NAME="item_ut_phonen">ut_phonen COLUMN</A></STRONG><DD> -<P> -Check/untaint phone numbers. May be null. If there is an error, returns the -error, otherwise returns false. - -<DT><STRONG><A NAME="item_ut_anything">ut_anything COLUMN</A></STRONG><DD> -<P> -Untaints arbitrary data. Be careful. - -<DT><STRONG><A NAME="item_fields">fields [ TABLE ]</A></STRONG><DD> -<P> -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="../FS/dbdef_table.html">FS::dbdef_table</A>). - -<H1><A NAME="SUBROUTINES">SUBROUTINES</A></H1> -<DL> -<DT><STRONG><A NAME="item_reload_dbdef">reload_dbdef([FILENAME])</A></STRONG><DD> -<P> -Load a database definition (see <A HREF="../FS/dbdef.html">FS::dbdef</A>), optionally from a non-default filename. This command is executed at -startup unless -<EM>$FS::Record::setup_hack</EM> is true. Returns a FS::dbdef object. - -<DT><STRONG><A NAME="item_dbdef">dbdef</A></STRONG><DD> -<P> -Returns the current database definition. See <A HREF="../FS/dbdef.html">FS::dbdef</A>. - -<DT><STRONG><A NAME="item__quote">_quote VALUE, TABLE, COLUMN</A></STRONG><DD> -<P> -This is an internal function used to construct SQL statements. It returns -VALUE DBI-quoted (see <EM>DBI</EM>) unless VALUE is a number and the column type (see <A HREF="../FS/dbdef_column.html">FS::dbdef_column</A>) does not end in `char' or `binary'. - -<DT><STRONG><A NAME="item_hfields">hfields TABLE</A></STRONG><DD> -<P> -This is depriciated. Don't use it. - -<P> -It returns a hash-type list with the fields of this record's table set -true. - -</DL> -<H1><A NAME="VERSION">VERSION</A></H1> -<P> -$Id: Record.html,v 1.1 1999-08-04 12:13:27 ivan Exp $ - -<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> -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> -The whole fields / hfields mess should be removed. - -<P> -The various WHERE clauses should be subroutined. - -<P> -table string should be depriciated in favor of FS::dbdef_table. - -<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> -The ut_ methods should ask the dbdef for a default length. - -<P> -ut_sqltype (like ut_varchar) should all be defined - -<P> -A fallback check method should be provided whith uses the dbdef. - -<P> -The ut_money method assumes money has two decimal digits. - -<P> -The Pg money kludge in the new method only strips `$'. - -<P> -The ut_phonen method assumes US-style phone numbers. - -<P> -The _quote function should probably use ut_float instead of a regex. - -<P> -All the subroutines probably should be methods, here or elsewhere. - -<P> -Probably should borrow/use some dbdef methods where appropriate (like sub -fields) - -<H1><A NAME="SEE_ALSO">SEE ALSO</A></H1> -<P> -<A HREF="../FS/dbdef.html">FS::dbdef</A>, <A HREF="../FS/UID.html">FS::UID</A>, <EM>DBI</EM> - - - -<P> -Adapter::DBI from Ch. 11 of Advanced Perl Programming by Sriram Srinivasan. - -</DL> -</BODY> - -</HTML> diff --git a/htdocs/docs/man/FS/SSH.html b/htdocs/docs/man/FS/SSH.html deleted file mode 100644 index aa8929b09..000000000 --- a/htdocs/docs/man/FS/SSH.html +++ /dev/null @@ -1,104 +0,0 @@ -<HTML> -<HEAD> -<TITLE>FS::SSH - Subroutines to call ssh and scp</TITLE> -<LINK REV="made" HREF="mailto:ivan@rootwood.sisd.com"> -</HEAD> - -<BODY> - -<!-- INDEX BEGIN --> - -<UL> - - <LI><A HREF="#NAME">NAME</A> - <LI><A HREF="#SYNOPSIS">SYNOPSIS</A> - <LI><A HREF="#DESCRIPTION">DESCRIPTION</A> - <LI><A HREF="#SUBROUTINES">SUBROUTINES</A> - <LI><A HREF="#BUGS">BUGS</A> - <LI><A HREF="#SEE_ALSO">SEE ALSO</A> -</UL> -<!-- INDEX END --> - -<HR> -<P> -<H1><A NAME="NAME">NAME</A></H1> -<P> -FS::SSH - Subroutines to call ssh and scp - -<P> -<HR> -<H1><A NAME="SYNOPSIS">SYNOPSIS</A></H1> -<P> -<PRE> use FS::SSH qw(ssh scp issh iscp sshopen2 sshopen3); -</PRE> -<P> -<PRE> ssh($host, $command); -</PRE> -<P> -<PRE> issh($host, $command); -</PRE> -<P> -<PRE> scp($source, $destination); -</PRE> -<P> -<PRE> iscp($source, $destination); -</PRE> -<P> -<PRE> sshopen2($host, $reader, $writer, $command); -</PRE> -<P> -<PRE> sshopen3($host, $reader, $writer, $error, $command); -</PRE> -<P> -<HR> -<H1><A NAME="DESCRIPTION">DESCRIPTION</A></H1> -<P> -<PRE> Simple wrappers around ssh and scp commands. -</PRE> -<P> -<HR> -<H1><A NAME="SUBROUTINES">SUBROUTINES</A></H1> -<DL> -<DT><STRONG><A NAME="item_ssh">ssh HOST, COMMAND</A></STRONG><DD> -<P> -Calls ssh in batch mode. - -<DT><STRONG><A NAME="item_issh">issh HOST, COMMAND</A></STRONG><DD> -<P> -Prints the ssh command to be executed, waits for the user to confirm, and -(optionally) executes the command. - -<DT><STRONG><A NAME="item_scp">scp SOURCE, DESTINATION</A></STRONG><DD> -<P> -Calls scp in batch mode. - -<DT><STRONG><A NAME="item_iscp">iscp SOURCE, DESTINATION</A></STRONG><DD> -<P> -Prints the scp command to be executed, waits for the user to confirm, and -(optionally) executes the command. - -<DT><STRONG><A NAME="item_sshopen2">sshopen2 HOST, READER, WRITER, COMMAND</A></STRONG><DD> -<P> -Connects the supplied filehandles to the ssh process (in batch mode). - -<DT><STRONG><A NAME="item_sshopen3">sshopen3 HOST, WRITER, READER, ERROR, COMMAND</A></STRONG><DD> -<P> -Connects the supplied filehandles to the ssh process (in batch mode). - -<H1><A NAME="BUGS">BUGS</A></H1> -<P> -Not OO. - -<P> -scp stuff should transparantly use rsync-over-ssh instead. - -<H1><A NAME="SEE_ALSO">SEE ALSO</A></H1> -<P> -<EM>ssh</EM>, <EM>scp</EM>, <A HREF="../IPC/Open2.html">IPC::Open2</A>, <A HREF="../IPC/Open3.html">IPC::Open3</A> - - - -</DL> -</BODY> - -</HTML> diff --git a/htdocs/docs/man/FS/UI/Base.html b/htdocs/docs/man/FS/UI/Base.html deleted file mode 100644 index 91a4df64d..000000000 --- a/htdocs/docs/man/FS/UI/Base.html +++ /dev/null @@ -1,117 +0,0 @@ -<HTML> -<HEAD> -<TITLE>FS::UI::Base - Base class for all user-interface objects</TITLE> -<LINK REV="made" HREF="mailto:ivan@rootwood.sisd.com"> -</HEAD> - -<BODY> - -<!-- INDEX BEGIN --> - -<UL> - - <LI><A HREF="#NAME">NAME</A> - <LI><A HREF="#SYNOPSIS">SYNOPSIS</A> - <LI><A HREF="#DESCRIPTION">DESCRIPTION</A> - <LI><A HREF="#METHODS">METHODS</A> - <LI><A HREF="#VERSION">VERSION</A> - <LI><A HREF="#BUGS">BUGS</A> - <LI><A HREF="#SEE_ALSO">SEE ALSO</A> - <LI><A HREF="#HISTORY">HISTORY</A> -</UL> -<!-- INDEX END --> - -<HR> -<P> -<H1><A NAME="NAME">NAME</A></H1> -<P> -FS::UI::Base - Base class for all user-interface objects - -<P> -<HR> -<H1><A NAME="SYNOPSIS">SYNOPSIS</A></H1> -<P> -<PRE> use FS::UI::SomeInterface; - use FS::UI::some_table; -</PRE> -<P> -<PRE> $interface = new FS::UI::some_table; -</PRE> -<P> -<PRE> $error = $interface->browse; - $error = $interface->search; - $error = $interface->view; - $error = $interface->edit; - $error = $interface->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> -<HR> -<H1><A NAME="METHODS">METHODS</A></H1> -<DL> -<DT><STRONG><A NAME="item_new">new</A></STRONG><DD> -<DT><STRONG><A NAME="item_browse">browse</A></STRONG><DD> -<DT><STRONG><A NAME="item_title">title</A></STRONG><DD> -<DT><STRONG><A NAME="item_addwidget">addwidget</A></STRONG><DD> -</DL> -<P> -<HR> -<H1><A NAME="VERSION">VERSION</A></H1> -<P> -$Id: Base.html,v 1.1 1999-08-04 12:13:27 ivan Exp $ - -<P> -<HR> -<H1><A NAME="BUGS">BUGS</A></H1> -<P> -This documentation is incomplete. - -<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> -<HR> -<H1><A NAME="SEE_ALSO">SEE ALSO</A></H1> -<P> -<A HREF="../../FS/UI/Gtk.html">FS::UI::Gtk</A>, <A HREF="../../FS/UI/CGI.html">FS::UI::CGI</A> - - - -<P> -<HR> -<H1><A NAME="HISTORY">HISTORY</A></H1> -<P> -$Log: Base.html,v $ -Revision 1.1 1999-08-04 12:13:27 ivan -new HTML manpages - Revision 1.1 1999/08/04 09:03:53 ivan initial checkin of -module files for proper perl installation - -<P> -Revision 1.1 1999/01/20 09:30:36 ivan skeletal cross-UI UI code. - -</BODY> - -</HTML> diff --git a/htdocs/docs/man/FS/UI/CGI.html b/htdocs/docs/man/FS/UI/CGI.html deleted file mode 100644 index c3efdc746..000000000 --- a/htdocs/docs/man/FS/UI/CGI.html +++ /dev/null @@ -1,115 +0,0 @@ -<HTML> -<HEAD> -<TITLE>FS::UI::CGI - Base class for CGI user-interface objects</TITLE> -<LINK REV="made" HREF="mailto:ivan@rootwood.sisd.com"> -</HEAD> - -<BODY> - -<!-- INDEX BEGIN --> - -<UL> - - <LI><A HREF="#NAME">NAME</A> - <LI><A HREF="#SYNOPSIS">SYNOPSIS</A> - <LI><A HREF="#DESCRIPTION">DESCRIPTION</A> - <LI><A HREF="#METHODS">METHODS</A> - <LI><A HREF="#VERSION">VERSION</A> - <LI><A HREF="#BUGS">BUGS</A> - <LI><A HREF="#SEE_ALSO">SEE ALSO</A> - <LI><A HREF="#HISTORY">HISTORY</A> -</UL> -<!-- INDEX END --> - -<HR> -<P> -<H1><A NAME="NAME">NAME</A></H1> -<P> -FS::UI::CGI - Base class for CGI user-interface objects - -<P> -<HR> -<H1><A NAME="SYNOPSIS">SYNOPSIS</A></H1> -<P> -<PRE> use FS::UI::CGI; - use FS::UI::some_table; -</PRE> -<P> -<PRE> $interface = new FS::UI::some_table; -</PRE> -<P> -<PRE> $error = $interface->browse; - $error = $interface->search; - $error = $interface->view; - $error = $interface->edit; - $error = $interface->process; -</PRE> -<P> -<HR> -<H1><A NAME="DESCRIPTION">DESCRIPTION</A></H1> -<P> -An FS::UI::CGI object represents a CGI interface object. - -<P> -<HR> -<H1><A NAME="METHODS">METHODS</A></H1> -<DL> -<DT><STRONG><A NAME="item_new">new</A></STRONG><DD> -<DT><STRONG><A NAME="item__header">_header</A></STRONG><DD> -<DT><STRONG><A NAME="item__footer">_footer</A></STRONG><DD> -<DT><STRONG><A NAME="item_interface">interface</A></STRONG><DD> -<P> -Returns the string `CGI'. Useful for the author of a table-specific UI -class to conditionally specify certain behaviour. - -</DL> -<P> -<HR> -<H1><A NAME="VERSION">VERSION</A></H1> -<P> -$Id: CGI.html,v 1.1 1999-08-04 12:13:27 ivan Exp $ - -<P> -<HR> -<H1><A NAME="BUGS">BUGS</A></H1> -<P> -This documentation is incomplete. - -<P> -In _Tableborder, headers should be links that sort on their fields. - -<P> -_Link uses a constant <CODE>$BASE_URL</CODE> - -<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> -Still some small bits of widget code same as FS::UI::Gtk. - -<P> -<HR> -<H1><A NAME="SEE_ALSO">SEE ALSO</A></H1> -<P> -<A HREF="../../FS/UI/Base.html">FS::UI::Base</A> - - - -<P> -<HR> -<H1><A NAME="HISTORY">HISTORY</A></H1> -<P> -$Log: CGI.html,v $ -Revision 1.1 1999-08-04 12:13:27 ivan -new HTML manpages - Revision 1.1 1999/08/04 09:03:53 ivan initial checkin of -module files for proper perl installation - -<P> -Revision 1.1 1999/01/20 09:30:36 ivan skeletal cross-UI UI code. - -</BODY> - -</HTML> diff --git a/htdocs/docs/man/FS/UI/Gtk.html b/htdocs/docs/man/FS/UI/Gtk.html deleted file mode 100644 index cb2a864ac..000000000 --- a/htdocs/docs/man/FS/UI/Gtk.html +++ /dev/null @@ -1,112 +0,0 @@ -<HTML> -<HEAD> -<TITLE>FS::UI::Gtk - Base class for Gtk user-interface objects</TITLE> -<LINK REV="made" HREF="mailto:ivan@rootwood.sisd.com"> -</HEAD> - -<BODY> - -<!-- INDEX BEGIN --> - -<UL> - - <LI><A HREF="#NAME">NAME</A> - <LI><A HREF="#SYNOPSIS">SYNOPSIS</A> - <LI><A HREF="#DESCRIPTION">DESCRIPTION</A> - <LI><A HREF="#METHODS">METHODS</A> - <LI><A HREF="#VERSION">VERSION</A> - <LI><A HREF="#BUGS">BUGS</A> - <LI><A HREF="#SEE_ALSO">SEE ALSO</A> - <LI><A HREF="#HISTORY">HISTORY</A> -</UL> -<!-- INDEX END --> - -<HR> -<P> -<H1><A NAME="NAME">NAME</A></H1> -<P> -FS::UI::Gtk - Base class for Gtk user-interface objects - -<P> -<HR> -<H1><A NAME="SYNOPSIS">SYNOPSIS</A></H1> -<P> -<PRE> use FS::UI::Gtk; - use FS::UI::some_table; -</PRE> -<P> -<PRE> $interface = new FS::UI::some_table; -</PRE> -<P> -<PRE> $error = $interface->browse; - $error = $interface->search; - $error = $interface->view; - $error = $interface->edit; - $error = $interface->process; -</PRE> -<P> -<HR> -<H1><A NAME="DESCRIPTION">DESCRIPTION</A></H1> -<P> -An FS::UI::Gtk object represents a Gtk user interface object. - -<P> -<HR> -<H1><A NAME="METHODS">METHODS</A></H1> -<DL> -<DT><STRONG><A NAME="item_new">new</A></STRONG><DD> -<DT><STRONG><A NAME="item_interface">interface</A></STRONG><DD> -<P> -Returns the string `Gtk'. Useful for the author of a table-specific UI -class to conditionally specify certain behaviour. - -</DL> -<P> -<HR> -<H1><A NAME="VERSION">VERSION</A></H1> -<P> -$Id: Gtk.html,v 1.1 1999-08-04 12:13:27 ivan Exp $ - -<P> -<HR> -<H1><A NAME="BUGS">BUGS</A></H1> -<P> -This documentation is incomplete. - -<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> -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</A>. - -<P> -Still some small bits of widget code same as FS::UI::CGI. - -<P> -<HR> -<H1><A NAME="SEE_ALSO">SEE ALSO</A></H1> -<P> -<A HREF="../../FS/UI/Base.html">FS::UI::Base</A> - - - -<P> -<HR> -<H1><A NAME="HISTORY">HISTORY</A></H1> -<P> -$Log: Gtk.html,v $ -Revision 1.1 1999-08-04 12:13:27 ivan -new HTML manpages - Revision 1.1 1999/08/04 09:03:53 ivan initial checkin of -module files for proper perl installation - -<P> -Revision 1.1 1999/01/20 09:30:36 ivan skeletal cross-UI UI code. - -</BODY> - -</HTML> diff --git a/htdocs/docs/man/FS/UI/agent.html b/htdocs/docs/man/FS/UI/agent.html deleted file mode 100644 index e69de29bb..000000000 --- a/htdocs/docs/man/FS/UI/agent.html +++ /dev/null diff --git a/htdocs/docs/man/FS/UID.html b/htdocs/docs/man/FS/UID.html deleted file mode 100644 index 34444623a..000000000 --- a/htdocs/docs/man/FS/UID.html +++ /dev/null @@ -1,160 +0,0 @@ -<HTML> -<HEAD> -<TITLE>FS::UID - Subroutines for database login and assorted other stuff</TITLE> -<LINK REV="made" HREF="mailto:ivan@rootwood.sisd.com"> -</HEAD> - -<BODY> - -<!-- INDEX BEGIN --> - -<UL> - - <LI><A HREF="#NAME">NAME</A> - <LI><A HREF="#SYNOPSIS">SYNOPSIS</A> - <LI><A HREF="#DESCRIPTION">DESCRIPTION</A> - <LI><A HREF="#SUBROUTINES">SUBROUTINES</A> - <LI><A HREF="#CALLBACKS">CALLBACKS</A> - <LI><A HREF="#VERSION">VERSION</A> - <LI><A HREF="#BUGS">BUGS</A> - <LI><A HREF="#SEE_ALSO">SEE ALSO</A> -</UL> -<!-- INDEX END --> - -<HR> -<P> -<H1><A NAME="NAME">NAME</A></H1> -<P> -FS::UID - Subroutines for database login and assorted other stuff - -<P> -<HR> -<H1><A NAME="SYNOPSIS">SYNOPSIS</A></H1> -<P> -<PRE> use FS::UID qw(adminsuidsetup cgisuidsetup dbh datasrc getotaker - checkeuid checkruid swapuid); -</PRE> -<P> -<PRE> adminsuidsetup $user; -</PRE> -<P> -<PRE> $cgi = new CGI; - $dbh = cgisuidsetup($cgi); -</PRE> -<P> -<PRE> $dbh = dbh; -</PRE> -<P> -<PRE> $datasrc = datasrc; -</PRE> -<P> -<HR> -<H1><A NAME="DESCRIPTION">DESCRIPTION</A></H1> -<P> -Provides a hodgepodge of subroutines. - -<P> -<HR> -<H1><A NAME="SUBROUTINES">SUBROUTINES</A></H1> -<DL> -<DT><STRONG><A NAME="item_adminsuidsetup">adminsuidsetup USER</A></STRONG><DD> -<P> -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). - -<DT><STRONG><A NAME="item_cgisuidsetup">cgisuidsetup CGI_object</A></STRONG><DD> -<P> -Stores the CGI (see <A HREF=".././FS/CGI.html#">the CGI manpage</A>) object for later use. (CGI::Base is depriciated) Runs adminsuidsetup. - -<DT><STRONG><A NAME="item_cgi">cgi</A></STRONG><DD> -<P> -Returns the CGI (see <A HREF=".././FS/CGI.html#">the CGI manpage</A>) object. - -<DT><STRONG><A NAME="item_dbh">dbh</A></STRONG><DD> -<P> -Returns the DBI database handle. - -<DT><STRONG><A NAME="item_datasrc">datasrc</A></STRONG><DD> -<P> -Returns the DBI data source. - -<DT><STRONG><A NAME="item_getotaker">getotaker</A></STRONG><DD> -<P> -Returns the current Freeside user. - -<DT><STRONG><A NAME="item_cgisetotaker">cgisetotaker</A></STRONG><DD> -<P> -Sets and returns the CGI REMOTE_USER. <A HREF="#item__cgi">$cgi</A> should -be defined as a CGI.pm object. Support for CGI::Base and derived classes is -depriciated. - -<DT><STRONG><A NAME="item_checkeuid">checkeuid</A></STRONG><DD> -<P> -Returns true if effective UID is that of the freeside user. - -<DT><STRONG><A NAME="item_checkruid">checkruid</A></STRONG><DD> -<P> -Returns true if the real UID is that of the freeside user. - -<DT><STRONG><A NAME="item_swapuid">swapuid</A></STRONG><DD> -<P> -Swaps real and effective UIDs. - -<DT><STRONG><A NAME="item_getsecrets">getsecrets [ USER ]</A></STRONG><DD> -<P> -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. - -</DL> -<P> -<HR> -<H1><A NAME="CALLBACKS">CALLBACKS</A></H1> -<P> -Warning: this interface is likely to change in future releases. - -<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 "Hi, I'm returning your call!" }; - $FS::UID::callback{'Package::Name'}; -</PRE> -<P> -<HR> -<H1><A NAME="VERSION">VERSION</A></H1> -<P> -$Id: UID.html,v 1.1 1999-08-04 12:13:27 ivan Exp $ - -<P> -<HR> -<H1><A NAME="BUGS">BUGS</A></H1> -<P> -Too many package-global variables. - -<P> -Not OO. - -<P> -No capabilities yet. When mod_perl and Authen::DBI are implemented, -cgisuidsetup will go away as well. - -<P> -Goes through contortions to support non-OO syntax with multiple datasrc's. - -<P> -Callbacks are inelegant. - -<P> -<HR> -<H1><A NAME="SEE_ALSO">SEE ALSO</A></H1> -<P> -<A HREF="../FS/Record.html">FS::Record</A>, <A HREF=".././FS/CGI.html#">the CGI manpage</A>, <EM>DBI</EM>, config.html from the base documentation. - -</BODY> - -</HTML> diff --git a/htdocs/docs/man/FS/agent.html b/htdocs/docs/man/FS/agent.html deleted file mode 100644 index bdbf019c5..000000000 --- a/htdocs/docs/man/FS/agent.html +++ /dev/null @@ -1,130 +0,0 @@ -<HTML> -<HEAD> -<TITLE>FS::agent - Object methods for agent records</TITLE> -<LINK REV="made" HREF="mailto:ivan@rootwood.sisd.com"> -</HEAD> - -<BODY> - -<!-- INDEX BEGIN --> - -<UL> - - <LI><A HREF="#NAME">NAME</A> - <LI><A HREF="#SYNOPSIS">SYNOPSIS</A> - <LI><A HREF="#DESCRIPTION">DESCRIPTION</A> - <LI><A HREF="#METHODS">METHODS</A> - <LI><A HREF="#VERSION">VERSION</A> - <LI><A HREF="#BUGS">BUGS</A> - <LI><A HREF="#SEE_ALSO">SEE ALSO</A> -</UL> -<!-- INDEX END --> - -<HR> -<P> -<H1><A NAME="NAME">NAME</A></H1> -<P> -FS::agent - Object methods for agent records - -<P> -<HR> -<H1><A NAME="SYNOPSIS">SYNOPSIS</A></H1> -<P> -<PRE> use FS::agent; -</PRE> -<P> -<PRE> $record = new FS::agent \%hash; - $record = new FS::agent { 'column' => 'value' }; -</PRE> -<P> -<PRE> $error = $record->insert; -</PRE> -<P> -<PRE> $error = $new_record->replace($old_record); -</PRE> -<P> -<PRE> $error = $record->delete; -</PRE> -<P> -<PRE> $error = $record->check; -</PRE> -<P> -<PRE> $agent_type = $record->agent_type; -</PRE> -<P> -<PRE> $hashref = $record->pkgpart_hashref; - #may purchase $pkgpart if $hashref->{$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: - -<DL> -<DT><STRONG><A NAME="item_agemtnum">agemtnum - primary key (assigned automatically for new agents)</A></STRONG><DD> -<DT><STRONG><A NAME="item_agent">agent - Text name of this agent</A></STRONG><DD> -<DT><STRONG><A NAME="item_typenum">typenum - Agent type. See FS::agent_type</A></STRONG><DD> -<DT><STRONG><A NAME="item_prog">prog - For future use.</A></STRONG><DD> -<DT><STRONG><A NAME="item_freq">freq - For future use.</A></STRONG><DD> -</DL> -<P> -<HR> -<H1><A NAME="METHODS">METHODS</A></H1> -<DL> -<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><DD> -<P> -Creates a new agent. To add the agent to the database, see <A HREF="#insert">insert</A>. - -<DT><STRONG><A NAME="item_insert">insert</A></STRONG><DD> -<P> -Adds this agent to the database. If there is an error, returns the error, -otherwise returns false. - -<DT><STRONG><A NAME="item_delete">delete</A></STRONG><DD> -<P> -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. - -<DT><STRONG><A NAME="item_replace">replace OLD_RECORD</A></STRONG><DD> -<P> -Replaces OLD_RECORD with this one in the database. If there is an error, -returns the error, otherwise returns false. - -<DT><STRONG><A NAME="item_check">check</A></STRONG><DD> -<P> -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. - -<DT><STRONG><A NAME="item_agent_type">agent_type</A></STRONG><DD> -<P> -Returns the FS::agent_type object (see <A HREF="../FS/agent_type.html">FS::agent_type</A>) for this agent. - -<DT><STRONG><A NAME="item_pkgpart_hashref">pkgpart_hashref</A></STRONG><DD> -<P> -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">FS::part_pkg</A>. - -</DL> -<P> -<HR> -<H1><A NAME="VERSION">VERSION</A></H1> -<P> -$Id: agent.html,v 1.1 1999-08-04 12:13:27 ivan Exp $ - -<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">FS::Record</A>, <A HREF="../FS/agent_type.html">FS::agent_type</A>, <A HREF="../FS/cust_main.html">FS::cust_main</A>, <A HREF="../FS/part_pkg.html">FS::part_pkg</A>, schema.html from the base documentation. - -</BODY> - -</HTML> diff --git a/htdocs/docs/man/FS/agent_type.html b/htdocs/docs/man/FS/agent_type.html deleted file mode 100644 index 25ed652da..000000000 --- a/htdocs/docs/man/FS/agent_type.html +++ /dev/null @@ -1,138 +0,0 @@ -<HTML> -<HEAD> -<TITLE>FS::agent_type - Object methods for agent_type records</TITLE> -<LINK REV="made" HREF="mailto:ivan@rootwood.sisd.com"> -</HEAD> - -<BODY> - -<!-- INDEX BEGIN --> - -<UL> - - <LI><A HREF="#NAME">NAME</A> - <LI><A HREF="#SYNOPSIS">SYNOPSIS</A> - <LI><A HREF="#DESCRIPTION">DESCRIPTION</A> - <LI><A HREF="#METHODS">METHODS</A> - <LI><A HREF="#VERSION">VERSION</A> - <LI><A HREF="#BUGS">BUGS</A> - <LI><A HREF="#SEE_ALSO">SEE ALSO</A> -</UL> -<!-- INDEX END --> - -<HR> -<P> -<H1><A NAME="NAME">NAME</A></H1> -<P> -FS::agent_type - Object methods for agent_type records - -<P> -<HR> -<H1><A NAME="SYNOPSIS">SYNOPSIS</A></H1> -<P> -<PRE> use FS::agent_type; -</PRE> -<P> -<PRE> $record = new FS::agent_type \%hash; - $record = new FS::agent_type { 'column' => 'value' }; -</PRE> -<P> -<PRE> $error = $record->insert; -</PRE> -<P> -<PRE> $error = $new_record->replace($old_record); -</PRE> -<P> -<PRE> $error = $record->delete; -</PRE> -<P> -<PRE> $error = $record->check; -</PRE> -<P> -<PRE> $hashref = $record->pkgpart_hashref; - #may purchase $pkgpart if $hashref->{$pkgpart}; -</PRE> -<P> -<PRE> @type_pkgs = $record->type_pkgs; -</PRE> -<P> -<PRE> @pkgparts = $record->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">FS::agent</A>) has an agent type. Agent types define which packages (see -<A HREF="../FS/part_pkg.html">FS::part_pkg</A>) may be purchased by customers (see <A HREF="../FS/cust_main.html">FS::cust_main</A>), via FS::type_pkgs records (see <A HREF="../FS/type_pkgs.html">FS::type_pkgs</A>). FS::agent_type inherits from FS::Record. The following fields are -currently supported: - -<DL> -<DT><STRONG><A NAME="item_typenum">typenum - primary key (assigned automatically for new agent types)</A></STRONG><DD> -<DT><STRONG><A NAME="item_atype">atype - Text name of this agent type</A></STRONG><DD> -</DL> -<P> -<HR> -<H1><A NAME="METHODS">METHODS</A></H1> -<DL> -<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><DD> -<P> -Creates a new agent type. To add the agent type to the database, see -<A HREF="#insert">insert</A>. - -<DT><STRONG><A NAME="item_insert">insert</A></STRONG><DD> -<P> -Adds this agent type to the database. If there is an error, returns the -error, otherwise returns false. - -<DT><STRONG><A NAME="item_delete">delete</A></STRONG><DD> -<P> -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. - -<DT><STRONG><A NAME="item_replace">replace OLD_RECORD</A></STRONG><DD> -<P> -Replaces OLD_RECORD with this one in the database. If there is an error, -returns the error, otherwise returns false. - -<DT><STRONG><A NAME="item_check">check</A></STRONG><DD> -<P> -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. - -<DT><STRONG><A NAME="item_pkgpart_hashref">pkgpart_hashref</A></STRONG><DD> -<P> -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">FS::part_pkg</A>. - -<DT><STRONG><A NAME="item_type_pkgs">type_pkgs</A></STRONG><DD> -<P> -Returns all FS::type_pkgs objects (see <A HREF="../FS/type_pkgs.html">FS::type_pkgs</A>) for this agent type. - -<DT><STRONG><A NAME="item_pkgpart">pkgpart</A></STRONG><DD> -<P> -Returns the pkgpart of all package definitions (see <A HREF="../FS/part_pkg.html">FS::part_pkg</A>) for this agent type. - -</DL> -<P> -<HR> -<H1><A NAME="VERSION">VERSION</A></H1> -<P> -$Id: agent_type.html,v 1.1 1999-08-04 12:13:27 ivan Exp $ - -<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">FS::Record</A>, <A HREF="../FS/agent.html">FS::agent</A>, <A HREF="../FS/type_pkgs.html">FS::type_pkgs</A>, <A HREF="../FS/cust_main.html">FS::cust_main</A>, -<A HREF="../FS/part_pkg.html">FS::part_pkg</A>, schema.html from the base documentation. - -</BODY> - -</HTML> diff --git a/htdocs/docs/man/FS/cust_bill.html b/htdocs/docs/man/FS/cust_bill.html deleted file mode 100644 index c28aa85a1..000000000 --- a/htdocs/docs/man/FS/cust_bill.html +++ /dev/null @@ -1,184 +0,0 @@ -<HTML> -<HEAD> -<TITLE>FS::cust_bill - Object methods for cust_bill records</TITLE> -<LINK REV="made" HREF="mailto:ivan@rootwood.sisd.com"> -</HEAD> - -<BODY> - -<!-- INDEX BEGIN --> - -<UL> - - <LI><A HREF="#NAME">NAME</A> - <LI><A HREF="#SYNOPSIS">SYNOPSIS</A> - <LI><A HREF="#DESCRIPTION">DESCRIPTION</A> - <LI><A HREF="#METHODS">METHODS</A> - <LI><A HREF="#VERSION">VERSION</A> - <LI><A HREF="#BUGS">BUGS</A> - <LI><A HREF="#SEE_ALSO">SEE ALSO</A> -</UL> -<!-- INDEX END --> - -<HR> -<P> -<H1><A NAME="NAME">NAME</A></H1> -<P> -FS::cust_bill - Object methods for cust_bill records - -<P> -<HR> -<H1><A NAME="SYNOPSIS">SYNOPSIS</A></H1> -<P> -<PRE> use FS::cust_bill; -</PRE> -<P> -<PRE> $record = new FS::cust_bill \%hash; - $record = new FS::cust_bill { 'column' => 'value' }; -</PRE> -<P> -<PRE> $error = $record->insert; -</PRE> -<P> -<PRE> $error = $new_record->replace($old_record); -</PRE> -<P> -<PRE> $error = $record->delete; -</PRE> -<P> -<PRE> $error = $record->check; -</PRE> -<P> -<PRE> ( $total_previous_balance, @previous_cust_bill ) = $record->previous; -</PRE> -<P> -<PRE> @cust_bill_pkg_objects = $cust_bill->cust_bill_pkg; -</PRE> -<P> -<PRE> ( $total_previous_credits, @previous_cust_credit ) = $record->cust_credit; -</PRE> -<P> -<PRE> @cust_pay_objects = $cust_bill->cust_pay; -</PRE> -<P> -<PRE> @lines = $cust_bill->print_text; - @lines = $cust_bill->print_text $time; -</PRE> -<P> -<HR> -<H1><A NAME="DESCRIPTION">DESCRIPTION</A></H1> -<P> -An FS::cust_bill object represents an invoice. FS::cust_bill inherits from -FS::Record. The following fields are currently supported: - -<DL> -<DT><STRONG><A NAME="item_invnum">invnum - primary key (assigned automatically for new invoices)</A></STRONG><DD> -<DT><STRONG><A NAME="item_custnum">custnum - customer (see FS::cust_main)</A></STRONG><DD> -<DT><STRONG><A NAME="item__date">_date - specified as a UNIX timestamp; see perlfunc/"time". Also see -Time::Local and Date::Parse for conversion functions.</A></STRONG><DD> -<DT><STRONG><A NAME="item_charged">charged - amount of this invoice</A></STRONG><DD> -<DT><STRONG><A NAME="item_owed">owed - amount still outstanding on this invoice, which is charged minus -all payments (see FS::cust_pay).</A></STRONG><DD> -<DT><STRONG><A NAME="item_printed">printed - how many times this invoice has been printed automatically -(see FS::cust_main/"collect").</A></STRONG><DD> -</DL> -<P> -<HR> -<H1><A NAME="METHODS">METHODS</A></H1> -<DL> -<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><DD> -<P> -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">FS::cust_main</A>). - -<DT><STRONG><A NAME="item_insert">insert</A></STRONG><DD> -<P> -Adds this invoice to the database (``Posts'' the invoice). If there is an -error, returns the error, otherwise returns false. - -<P> -When adding new invoices, owed must be charged (or null, in which case it -is automatically set to charged). - -<DT><STRONG><A NAME="item_delete">delete</A></STRONG><DD> -<P> -Currently unimplemented. I don't remove invoices because there would then -be no record you ever posted this invoice (which is bad, no?) - -<DT><STRONG><A NAME="item_replace">replace OLD_RECORD</A></STRONG><DD> -<P> -Replaces the OLD_RECORD with this one in the database. If there is an -error, returns the error, otherwise returns false. - -<P> -Only owed and printed may be changed. Owed is normally updated by creating -and inserting a payment (see <A HREF="../FS/cust_pay.html">FS::cust_pay</A>). Printed is normally updated by calling the collect method of a customer -object (see <A HREF="../FS/cust_main.html">FS::cust_main</A>). - -<DT><STRONG><A NAME="item_check">check</A></STRONG><DD> -<P> -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. - -<DT><STRONG><A NAME="item_previous">previous</A></STRONG><DD> -<P> -Returns a list consisting of the total previous balance for this customer, -followed by the previous outstanding invoices (as FS::cust_bill objects -also). - -<DT><STRONG><A NAME="item_cust_bill_pkg">cust_bill_pkg</A></STRONG><DD> -<P> -Returns the line items (see <A HREF="../FS/cust_bill_pkg.html">FS::cust_bill_pkg</A>) for this invoice. - -<DT><STRONG><A NAME="item_cust_credit">cust_credit</A></STRONG><DD> -<P> -Returns a list consisting of the total previous credited (see -<A HREF="../FS/cust_credit.html">FS::cust_credit</A>) for this customer, followed by the previous outstanding credits -(FS::cust_credit objects). - -<DT><STRONG><A NAME="item_cust_pay">cust_pay</A></STRONG><DD> -<P> -Returns all payments (see <A HREF="../FS/cust_pay.html">FS::cust_pay</A>) for this invoice. - -<DT><STRONG><A NAME="item_print_text">print_text [TIME];</A></STRONG><DD> -<P> -Returns an ASCII 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</EM>. Also see -<A HREF="../Time/Local.html">Time::Local</A> and <A HREF="../Date/Parse.html">Date::Parse</A> for conversion functions. - -</DL> -<P> -<HR> -<H1><A NAME="VERSION">VERSION</A></H1> -<P> -$Id: cust_bill.html,v 1.1 1999-08-04 12:13:27 ivan Exp $ - -<P> -<HR> -<H1><A NAME="BUGS">BUGS</A></H1> -<P> -The delete method. - -<P> -print_text formatting (and some logic :/) is in source, but needs to be -slurped in from a file. Also number of lines ($=). - -<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> -<HR> -<H1><A NAME="SEE_ALSO">SEE ALSO</A></H1> -<P> -<A HREF="../FS/Record.html">FS::Record</A>, <A HREF="../FS/cust_main.html">FS::cust_main</A>, <A HREF="../FS/cust_pay.html">FS::cust_pay</A>, <A HREF="../FS/cust_bill_pkg.html">FS::cust_bill_pkg</A>, -<A HREF="../FS/cust_credit.html">FS::cust_credit</A>, schema.html from the base documentation. - -</BODY> - -</HTML> diff --git a/htdocs/docs/man/FS/cust_bill_pkg.html b/htdocs/docs/man/FS/cust_bill_pkg.html deleted file mode 100644 index 229e88b5f..000000000 --- a/htdocs/docs/man/FS/cust_bill_pkg.html +++ /dev/null @@ -1,119 +0,0 @@ -<HTML> -<HEAD> -<TITLE>FS::cust_bill_pkg - Object methods for cust_bill_pkg records</TITLE> -<LINK REV="made" HREF="mailto:ivan@rootwood.sisd.com"> -</HEAD> - -<BODY> - -<!-- INDEX BEGIN --> - -<UL> - - <LI><A HREF="#NAME">NAME</A> - <LI><A HREF="#SYNOPSIS">SYNOPSIS</A> - <LI><A HREF="#DESCRIPTION">DESCRIPTION</A> - <LI><A HREF="#METHODS">METHODS</A> - <LI><A HREF="#VERSION">VERSION</A> - <LI><A HREF="#BUGS">BUGS</A> - <LI><A HREF="#SEE_ALSO">SEE ALSO</A> -</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> -<HR> -<H1><A NAME="SYNOPSIS">SYNOPSIS</A></H1> -<P> -<PRE> use FS::cust_bill_pkg; -</PRE> -<P> -<PRE> $record = new FS::cust_bill_pkg \%hash; - $record = new FS::cust_bill_pkg { 'column' => 'value' }; -</PRE> -<P> -<PRE> $error = $record->insert; -</PRE> -<P> -<PRE> $error = $new_record->replace($old_record); -</PRE> -<P> -<PRE> $error = $record->delete; -</PRE> -<P> -<PRE> $error = $record->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: - -<DL> -<DT><STRONG><A NAME="item_invnum">invnum - invoice (see FS::cust_bill)</A></STRONG><DD> -<DT><STRONG><A NAME="item_pkgnum">pkgnum - package (see FS::cust_pkg)</A></STRONG><DD> -<DT><STRONG><A NAME="item_setup">setup - setup fee</A></STRONG><DD> -<DT><STRONG><A NAME="item_recur">recur - recurring fee</A></STRONG><DD> -<DT><STRONG><A NAME="item_sdate">sdate - starting date of recurring fee</A></STRONG><DD> -<DT><STRONG><A NAME="item_edate">edate - ending date of recurring fee</A></STRONG><DD> -</DL> -<P> -sdate and edate are specified as UNIX timestamps; see <EM>perlfunc</EM>. Also see <A HREF="../Time/Local.html">Time::Local</A> and <A HREF="../Date/Parse.html">Date::Parse</A> for conversion functions. - -<P> -<HR> -<H1><A NAME="METHODS">METHODS</A></H1> -<DL> -<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><DD> -<P> -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">FS::cust_main</A>). - -<DT><STRONG><A NAME="item_insert">insert</A></STRONG><DD> -<P> -Adds this line item to the database. If there is an error, returns the -error, otherwise returns false. - -<DT><STRONG><A NAME="item_delete">delete</A></STRONG><DD> -<P> -Currently unimplemented. I don't remove line items because there would then -be no record the items ever existed (which is bad, no?) - -<DT><STRONG><A NAME="item_replace">replace OLD_RECORD</A></STRONG><DD> -<P> -Currently unimplemented. This would be even more of an accounting nightmare -than deleteing the items. Just don't do it. - -<DT><STRONG><A NAME="item_check">check</A></STRONG><DD> -<P> -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. - -</DL> -<P> -<HR> -<H1><A NAME="VERSION">VERSION</A></H1> -<P> -$Id: cust_bill_pkg.html,v 1.1 1999-08-04 12:13:27 ivan Exp $ - -<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">FS::Record</A>, <A HREF="../FS/cust_bill.html">FS::cust_bill</A>, <A HREF="../FS/cust_pkg.html">FS::cust_pkg</A>, <A HREF="../FS/cust_main.html">FS::cust_main</A>, schema.html from the base documentation. - -</BODY> - -</HTML> diff --git a/htdocs/docs/man/FS/cust_credit.html b/htdocs/docs/man/FS/cust_credit.html deleted file mode 100644 index 5683fcd0d..000000000 --- a/htdocs/docs/man/FS/cust_credit.html +++ /dev/null @@ -1,126 +0,0 @@ -<HTML> -<HEAD> -<TITLE>FS::cust_credit - Object methods for cust_credit records</TITLE> -<LINK REV="made" HREF="mailto:ivan@rootwood.sisd.com"> -</HEAD> - -<BODY> - -<!-- INDEX BEGIN --> - -<UL> - - <LI><A HREF="#NAME">NAME</A> - <LI><A HREF="#SYNOPSIS">SYNOPSIS</A> - <LI><A HREF="#DESCRIPTION">DESCRIPTION</A> - <LI><A HREF="#METHODS">METHODS</A> - <LI><A HREF="#VERSION">VERSION</A> - <LI><A HREF="#BUGS">BUGS</A> - <LI><A HREF="#SEE_ALSO">SEE ALSO</A> -</UL> -<!-- INDEX END --> - -<HR> -<P> -<H1><A NAME="NAME">NAME</A></H1> -<P> -FS::cust_credit - Object methods for cust_credit records - -<P> -<HR> -<H1><A NAME="SYNOPSIS">SYNOPSIS</A></H1> -<P> -<PRE> use FS::cust_credit; -</PRE> -<P> -<PRE> $record = new FS::cust_credit \%hash; - $record = new FS::cust_credit { 'column' => 'value' }; -</PRE> -<P> -<PRE> $error = $record->insert; -</PRE> -<P> -<PRE> $error = $new_record->replace($old_record); -</PRE> -<P> -<PRE> $error = $record->delete; -</PRE> -<P> -<PRE> $error = $record->check; -</PRE> -<P> -<HR> -<H1><A NAME="DESCRIPTION">DESCRIPTION</A></H1> -<P> -An FS::cust_credit object represents a credit. FS::cust_credit inherits -from FS::Record. The following fields are currently supported: - -<DL> -<DT><STRONG><A NAME="item_crednum">crednum - primary key (assigned automatically for new credits)</A></STRONG><DD> -<DT><STRONG><A NAME="item_custnum">custnum - customer (see FS::cust_main)</A></STRONG><DD> -<DT><STRONG><A NAME="item_amount">amount - amount of the credit</A></STRONG><DD> -<DT><STRONG><A NAME="item_credited">credited - how much of this credit that is still outstanding, which is -amount minus all refunds (see FS::cust_refund).</A></STRONG><DD> -<DT><STRONG><A NAME="item__date">_date - specified as a UNIX timestamp; see perlfunc/"time". Also see -Time::Local and Date::Parse for conversion functions.</A></STRONG><DD> -<DT><STRONG><A NAME="item_otaker">otaker - order taker (assigned automatically, see FS::UID)</A></STRONG><DD> -<DT><STRONG><A NAME="item_reason">reason - text</A></STRONG><DD> -</DL> -<P> -<HR> -<H1><A NAME="METHODS">METHODS</A></H1> -<DL> -<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><DD> -<P> -Creates a new credit. To add the credit to the database, see <A HREF="#insert">insert</A>. - -<DT><STRONG><A NAME="item_insert">insert</A></STRONG><DD> -<P> -Adds this credit to the database (``Posts'' the credit). If there is an -error, returns the error, otherwise returns false. - -<P> -When adding new invoices, credited must be amount (or null, in which case -it is automatically set to amount). - -<DT><STRONG><A NAME="item_delete">delete</A></STRONG><DD> -<P> -Currently unimplemented. - -<DT><STRONG><A NAME="item_replace">replace OLD_RECORD</A></STRONG><DD> -<P> -Replaces the OLD_RECORD with this one in the database. If there is an -error, returns the error, otherwise returns false. - -<P> -Only credited may be changed. Credited is normally updated by creating and -inserting a refund (see <A HREF="../FS/cust_refund.html">FS::cust_refund</A>). - -<DT><STRONG><A NAME="item_check">check</A></STRONG><DD> -<P> -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. - -</DL> -<P> -<HR> -<H1><A NAME="VERSION">VERSION</A></H1> -<P> -$Id: cust_credit.html,v 1.1 1999-08-04 12:13:27 ivan Exp $ - -<P> -<HR> -<H1><A NAME="BUGS">BUGS</A></H1> -<P> -The delete method. - -<P> -<HR> -<H1><A NAME="SEE_ALSO">SEE ALSO</A></H1> -<P> -<A HREF="../FS/Record.html">FS::Record</A>, <A HREF="../FS/cust_refund.html">FS::cust_refund</A>, <A HREF="../FS/cust_bill.html">FS::cust_bill</A>, schema.html from the base documentation. - -</BODY> - -</HTML> diff --git a/htdocs/docs/man/FS/cust_main.html b/htdocs/docs/man/FS/cust_main.html deleted file mode 100644 index 5e0b8eef7..000000000 --- a/htdocs/docs/man/FS/cust_main.html +++ /dev/null @@ -1,277 +0,0 @@ -<HTML> -<HEAD> -<TITLE>FS::cust_main - Object methods for cust_main records</TITLE> -<LINK REV="made" HREF="mailto:ivan@rootwood.sisd.com"> -</HEAD> - -<BODY> - -<!-- INDEX BEGIN --> - -<UL> - - <LI><A HREF="#NAME">NAME</A> - <LI><A HREF="#SYNOPSIS">SYNOPSIS</A> - <LI><A HREF="#DESCRIPTION">DESCRIPTION</A> - <LI><A HREF="#METHODS">METHODS</A> - <LI><A HREF="#VERSION">VERSION</A> - <LI><A HREF="#BUGS">BUGS</A> - <LI><A HREF="#SEE_ALSO">SEE ALSO</A> -</UL> -<!-- INDEX END --> - -<HR> -<P> -<H1><A NAME="NAME">NAME</A></H1> -<P> -FS::cust_main - Object methods for cust_main records - -<P> -<HR> -<H1><A NAME="SYNOPSIS">SYNOPSIS</A></H1> -<P> -<PRE> use FS::cust_main; -</PRE> -<P> -<PRE> $record = new FS::cust_main \%hash; - $record = new FS::cust_main { 'column' => 'value' }; -</PRE> -<P> -<PRE> $error = $record->insert; -</PRE> -<P> -<PRE> $error = $new_record->replace($old_record); -</PRE> -<P> -<PRE> $error = $record->delete; -</PRE> -<P> -<PRE> $error = $record->check; -</PRE> -<P> -<PRE> @cust_pkg = $record->all_pkgs; -</PRE> -<P> -<PRE> @cust_pkg = $record->ncancelled_pkgs; -</PRE> -<P> -<PRE> $error = $record->bill; - $error = $record->bill %options; - $error = $record->bill 'time' => $time; -</PRE> -<P> -<PRE> $error = $record->collect; - $error = $record->collect %options; - $error = $record->collect 'invoice_time' => $time, - 'batch_card' => 'yes', - 'report_badcard' => '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: - -<DL> -<DT><STRONG><A NAME="item_custnum">custnum - primary key (assigned automatically for new customers)</A></STRONG><DD> -<DT><STRONG><A NAME="item_agentnum">agentnum - agent (see FS::agent)</A></STRONG><DD> -<DT><STRONG><A NAME="item_refnum">refnum - referral (see FS::part_referral)</A></STRONG><DD> -<DT><STRONG><A NAME="item_first">first - name</A></STRONG><DD> -<DT><STRONG><A NAME="item_last">last - name</A></STRONG><DD> -<DT><STRONG><A NAME="item_ss">ss - social security number (optional)</A></STRONG><DD> -<DT><STRONG><A NAME="item_company">company - (optional)</A></STRONG><DD> -<DT><STRONG><A NAME="item_address1">address1</A></STRONG><DD> -<DT><STRONG><A NAME="item_address2">address2 - (optional)</A></STRONG><DD> -<DT><STRONG><A NAME="item_city">city</A></STRONG><DD> -<DT><STRONG><A NAME="item_county">county - (optional, see FS::cust_main_county)</A></STRONG><DD> -<DT><STRONG><A NAME="item_state">state - (see FS::cust_main_county)</A></STRONG><DD> -<DT><STRONG><A NAME="item_zip">zip</A></STRONG><DD> -<DT><STRONG><A NAME="item_country">country - (see FS::cust_main_county)</A></STRONG><DD> -<DT><STRONG><A NAME="item_daytime">daytime - phone (optional)</A></STRONG><DD> -<DT><STRONG><A NAME="item_night">night - phone (optional)</A></STRONG><DD> -<DT><STRONG><A NAME="item_fax">fax - phone (optional)</A></STRONG><DD> -<DT><STRONG><A NAME="item_payby">payby - `CARD' (credit cards), `BILL' (billing), or `COMP' (free)</A></STRONG><DD> -<DT><STRONG><A NAME="item_payinfo">payinfo - card number, P.O.#, or comp issuer (4-8 lowercase alphanumerics; think username)</A></STRONG><DD> -<DT><STRONG><A NAME="item_paydate">paydate - expiration date, mm/yyyy, m/yyyy, mm/yy or m/yy</A></STRONG><DD> -<DT><STRONG><A NAME="item_payname">payname - name on card or billing name</A></STRONG><DD> -<DT><STRONG><A NAME="item_tax">tax - tax exempt, empty or `Y'</A></STRONG><DD> -<DT><STRONG><A NAME="item_otaker">otaker - order taker (assigned automatically, see FS::UID)</A></STRONG><DD> -</DL> -<P> -<HR> -<H1><A NAME="METHODS">METHODS</A></H1> -<DL> -<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><DD> -<P> -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. - -<DT><STRONG><A NAME="item_insert">insert</A></STRONG><DD> -<P> -Adds this customer to the database. If there is an error, returns the -error, otherwise returns false. - -<DT><STRONG><A NAME="item_delete">delete NEW_CUSTNUM</A></STRONG><DD> -<P> -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</A>). - -<P> -If the customer has any packages, you need to pass a new (valid) customer -number for those packages to be transferred to. - -<P> -You can't delete a customer with invoices (see <A HREF="../FS/cust_bill.html">FS::cust_bill</A>), or credits (see <A HREF="../FS/cust_credit.html">FS::cust_credit</A>). - -<DT><STRONG><A NAME="item_replace">replace OLD_RECORD</A></STRONG><DD> -<P> -Replaces the OLD_RECORD with this one in the database. If there is an -error, returns the error, otherwise returns false. - -<DT><STRONG><A NAME="item_check">check</A></STRONG><DD> -<P> -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. - -<DT><STRONG><A NAME="item_all_pkgs">all_pkgs</A></STRONG><DD> -<P> -Returns all packages (see <A HREF="../FS/cust_pkg.html">FS::cust_pkg</A>) for this customer. - -<DT><STRONG><A NAME="item_ncancelled_pkgs">ncancelled_pkgs</A></STRONG><DD> -<P> -Returns all non-cancelled packages (see <A HREF="../FS/cust_pkg.html">FS::cust_pkg</A>) for this customer. - -<DT><STRONG><A NAME="item_bill">bill OPTIONS</A></STRONG><DD> -<P> -Generates invoices (see <A HREF="../FS/cust_bill.html">FS::cust_bill</A>) for this customer. Usually used in conjunction with the collect method. - -<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</EM>). Also see <A HREF="../Time/Local.html">Time::Local</A> and <A HREF="../Date/Parse.html">Date::Parse</A> for conversion functions. - -<P> -If there is an error, returns the error, otherwise returns false. - -<DT><STRONG><A NAME="item_collect">collect OPTIONS</A></STRONG><DD> -<P> -(Attempt to) collect money for this customer's outstanding invoices (see -<A HREF="../FS/cust_bill.html">FS::cust_bill</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> -If there is an error, returns the error, otherwise returns false. - -<P> -Currently available options are: - -<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</EM>). Also see <A HREF="../Time/Local.html">Time::Local</A> and <A HREF="../Date/Parse.html">Date::Parse</A> -for conversion functions. - -<P> -batch_card - Set this true to batch cards (see <A HREF=".././FS/cust_pay_batch.html#">the cust_pay_batch manpage</A>). By default, cards are processed immediately, which will generate an -error if CyberCash is not installed. - -<P> -report_badcard - Set this true if you want bad card transactions to return -an error. By default, they don't. - -<DT><STRONG><A NAME="item_total_owed">total_owed</A></STRONG><DD> -<P> -Returns the total owed for this customer on all invoices (see <A HREF="../FS/cust_bill.html">FS::cust_bill</A>). - -<DT><STRONG><A NAME="item_total_credited">total_credited</A></STRONG><DD> -<P> -Returns the total credits (see <A HREF="../FS/cust_credit.html">FS::cust_credit</A>) for this customer. - -<DT><STRONG><A NAME="item_balance">balance</A></STRONG><DD> -<P> -Returns the balance for this customer (total owed minus total credited). - -<DT><STRONG><A NAME="item_invoicing_list">invoicing_list [ ARRAYREF ]</A></STRONG><DD> -<P> -If an arguement is given, sets these email addresses as invoice recipients -(see <A HREF="../FS/cust_main_invoice.html">FS::cust_main_invoice</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> -Note: You can clear the invoicing list by passing an empty ARRAYREF. You -can check it without disturbing anything by passing nothing. - -<P> -This interface may change in the future. - -<DT><STRONG><A NAME="item_check_invoicing_list">check_invoicing_list ARRAYREF</A></STRONG><DD> -<P> -Checks these arguements as valid input for the invoicing_list method. If -there is an error, returns the error, otherwise returns false. - -</DL> -<P> -<HR> -<H1><A NAME="VERSION">VERSION</A></H1> -<P> -$Id: cust_main.html,v 1.1 1999-08-04 12:13:27 ivan Exp $ - -<P> -<HR> -<H1><A NAME="BUGS">BUGS</A></H1> -<P> -The delete method. - -<P> -The delete method should possibly take an FS::cust_main object reference -instead of a scalar customer number. - -<P> -Bill and collect options should probably be passed as references instead of -a list. - -<P> -CyberCash v2 forces us to define some variables in package main. - -<P> -There should probably be a configuration file with a list of allowed credit -card types. - -<P> -CyberCash is the only processor. - -<P> -No multiple currency support (probably a larger project than just this -module). - -<P> -<HR> -<H1><A NAME="SEE_ALSO">SEE ALSO</A></H1> -<P> -<A HREF="../FS/Record.html">FS::Record</A>, <A HREF="../FS/cust_pkg.html">FS::cust_pkg</A>, <A HREF="../FS/cust_bill.html">FS::cust_bill</A>, <A HREF="../FS/cust_credit.html">FS::cust_credit</A> - -<A HREF="../FS/cust_pay_batch.html">FS::cust_pay_batch</A>, <A HREF="../FS/agent.html">FS::agent</A>, <A HREF="../FS/part_referral.html">FS::part_referral</A>, -<A HREF="../FS/cust_main_county.html">FS::cust_main_county</A>, <A HREF="../FS/cust_main_invoice.html">FS::cust_main_invoice</A>, -<A HREF="../FS/UID.html">FS::UID</A>, schema.html from the base documentation. - -</BODY> - -</HTML> diff --git a/htdocs/docs/man/FS/cust_main_county.html b/htdocs/docs/man/FS/cust_main_county.html deleted file mode 100644 index a3c1f400c..000000000 --- a/htdocs/docs/man/FS/cust_main_county.html +++ /dev/null @@ -1,113 +0,0 @@ -<HTML> -<HEAD> -<TITLE>FS::cust_main_county - Object methods for cust_main_county objects</TITLE> -<LINK REV="made" HREF="mailto:ivan@rootwood.sisd.com"> -</HEAD> - -<BODY> - -<!-- INDEX BEGIN --> - -<UL> - - <LI><A HREF="#NAME">NAME</A> - <LI><A HREF="#SYNOPSIS">SYNOPSIS</A> - <LI><A HREF="#DESCRIPTION">DESCRIPTION</A> - <LI><A HREF="#METHODS">METHODS</A> - <LI><A HREF="#VERSION">VERSION</A> - <LI><A HREF="#BUGS">BUGS</A> - <LI><A HREF="#SEE_ALSO">SEE ALSO</A> -</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> -<HR> -<H1><A NAME="SYNOPSIS">SYNOPSIS</A></H1> -<P> -<PRE> use FS::cust_main_county; -</PRE> -<P> -<PRE> $record = new FS::cust_main_county \%hash; - $record = new FS::cust_main_county { 'column' => 'value' }; -</PRE> -<P> -<PRE> $error = $record->insert; -</PRE> -<P> -<PRE> $error = $new_record->replace($old_record); -</PRE> -<P> -<PRE> $error = $record->delete; -</PRE> -<P> -<PRE> $error = $record->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: - -<DL> -<DT><STRONG><A NAME="item_taxnum">taxnum - primary key (assigned automatically for new tax rates)</A></STRONG><DD> -<DT><STRONG><A NAME="item_state">state</A></STRONG><DD> -<DT><STRONG><A NAME="item_county">county</A></STRONG><DD> -<DT><STRONG><A NAME="item_country">country</A></STRONG><DD> -<DT><STRONG><A NAME="item_tax">tax - percentage</A></STRONG><DD> -</DL> -<P> -<HR> -<H1><A NAME="METHODS">METHODS</A></H1> -<DL> -<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><DD> -<P> -Creates a new tax rate. To add the tax rate to the database, see <A HREF="#insert">insert</A>. - -<DT><STRONG><A NAME="item_insert">insert</A></STRONG><DD> -<P> -Adds this tax rate to the database. If there is an error, returns the -error, otherwise returns false. - -<DT><STRONG><A NAME="item_delete">delete</A></STRONG><DD> -<P> -Deletes this tax rate from the database. If there is an error, returns the -error, otherwise returns false. - -<DT><STRONG><A NAME="item_replace">replace OLD_RECORD</A></STRONG><DD> -<P> -Replaces the OLD_RECORD with this one in the database. If there is an -error, returns the error, otherwise returns false. - -<DT><STRONG><A NAME="item_check">check</A></STRONG><DD> -<P> -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. - -</DL> -<P> -<HR> -<H1><A NAME="VERSION">VERSION</A></H1> -<P> -$Id: cust_main_county.html,v 1.1 1999-08-04 12:13:27 ivan Exp $ - -<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">FS::Record</A>, <A HREF="../FS/cust_main.html">FS::cust_main</A>, <A HREF="../FS/cust_bill.html">FS::cust_bill</A>, schema.html from the base documentation. - -</BODY> - -</HTML> diff --git a/htdocs/docs/man/FS/cust_main_invoice.html b/htdocs/docs/man/FS/cust_main_invoice.html deleted file mode 100644 index 2fc22b306..000000000 --- a/htdocs/docs/man/FS/cust_main_invoice.html +++ /dev/null @@ -1,128 +0,0 @@ -<HTML> -<HEAD> -<TITLE>FS::cust_main_invoice - Object methods for cust_main_invoice records</TITLE> -<LINK REV="made" HREF="mailto:ivan@rootwood.sisd.com"> -</HEAD> - -<BODY> - -<!-- INDEX BEGIN --> - -<UL> - - <LI><A HREF="#NAME">NAME</A> - <LI><A HREF="#SYNOPSIS">SYNOPSIS</A> - <LI><A HREF="#DESCRIPTION">DESCRIPTION</A> - <LI><A HREF="#METHODS">METHODS</A> - <LI><A HREF="#VERSION">VERSION</A> - <LI><A HREF="#BUGS">BUGS</A> - <LI><A HREF="#SEE_ALSO">SEE ALSO</A> -</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> -<HR> -<H1><A NAME="SYNOPSIS">SYNOPSIS</A></H1> -<P> -<PRE> use FS::cust_main_invoice; -</PRE> -<P> -<PRE> $record = new FS::cust_main_invoice \%hash; - $record = new FS::cust_main_invoice { 'column' => 'value' }; -</PRE> -<P> -<PRE> $error = $record->insert; -</PRE> -<P> -<PRE> $error = $new_record->replace($old_record); -</PRE> -<P> -<PRE> $error = $record->delete; -</PRE> -<P> -<PRE> $error = $record->check; -</PRE> -<P> -<PRE> $email_address = $record->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: - -<DL> -<DT><STRONG><A NAME="item_destnum">destnum - primary key</A></STRONG><DD> -<DT><STRONG><A NAME="item_custnum">custnum - customer (see FS::cust_main)</A></STRONG><DD> -<DT><STRONG><A NAME="item_dest">dest - Invoice destination: If numeric, a <a href="#svc_acct">svcnum</a>, if string, a literal email address, or `POST' to enable mailing (the default if no cust_main_invoice records exist)</A></STRONG><DD> -</DL> -<P> -<HR> -<H1><A NAME="METHODS">METHODS</A></H1> -<DL> -<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><DD> -<P> -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. - -<DT><STRONG><A NAME="item_insert">insert</A></STRONG><DD> -<P> -Adds this record to the database. If there is an error, returns the error, -otherwise returns false. - -<DT><STRONG><A NAME="item_delete">delete</A></STRONG><DD> -<P> -Delete this record from the database. - -<DT><STRONG><A NAME="item_replace">replace OLD_RECORD</A></STRONG><DD> -<P> -Replaces the OLD_RECORD with this one in the database. If there is an -error, returns the error, otherwise returns false. - -<DT><STRONG><A NAME="item_check">check</A></STRONG><DD> -<P> -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. - -<DT><STRONG><A NAME="item_checkdest">checkdest</A></STRONG><DD> -<P> -Checks the dest field only. - -<DT><STRONG><A NAME="item_address">address</A></STRONG><DD> -<P> -Returns the literal email address for this record (or `POST'). - -</DL> -<P> -<HR> -<H1><A NAME="VERSION">VERSION</A></H1> -<P> -$Id: cust_main_invoice.html,v 1.1 1999-08-04 12:13:27 ivan Exp $ - -<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">FS::Record</A>, <A HREF="../FS/cust_main.html">FS::cust_main</A> - - - -</BODY> - -</HTML> diff --git a/htdocs/docs/man/FS/cust_pay.html b/htdocs/docs/man/FS/cust_pay.html deleted file mode 100644 index 026745e73..000000000 --- a/htdocs/docs/man/FS/cust_pay.html +++ /dev/null @@ -1,116 +0,0 @@ -<HTML> -<HEAD> -<TITLE>FS::cust_pay - Object methods for cust_pay objects</TITLE> -<LINK REV="made" HREF="mailto:ivan@rootwood.sisd.com"> -</HEAD> - -<BODY> - -<!-- INDEX BEGIN --> - -<UL> - - <LI><A HREF="#NAME">NAME</A> - <LI><A HREF="#SYNOPSIS">SYNOPSIS</A> - <LI><A HREF="#DESCRIPTION">DESCRIPTION</A> - <LI><A HREF="#METHODS">METHODS</A> - <LI><A HREF="#VERSION">VERSION</A> - <LI><A HREF="#BUGS">BUGS</A> - <LI><A HREF="#SEE_ALSO">SEE ALSO</A> -</UL> -<!-- INDEX END --> - -<HR> -<P> -<H1><A NAME="NAME">NAME</A></H1> -<P> -FS::cust_pay - Object methods for cust_pay objects - -<P> -<HR> -<H1><A NAME="SYNOPSIS">SYNOPSIS</A></H1> -<P> -<PRE> use FS::cust_pay; -</PRE> -<P> -<PRE> $record = new FS::cust_pay \%hash; - $record = new FS::cust_pay { 'column' => 'value' }; -</PRE> -<P> -<PRE> $error = $record->insert; -</PRE> -<P> -<PRE> $error = $new_record->replace($old_record); -</PRE> -<P> -<PRE> $error = $record->delete; -</PRE> -<P> -<PRE> $error = $record->check; -</PRE> -<P> -<HR> -<H1><A NAME="DESCRIPTION">DESCRIPTION</A></H1> -<P> -An FS::cust_pay object represents a payment. FS::cust_pay inherits from -FS::Record. The following fields are currently supported: - -<DL> -<DT><STRONG><A NAME="item_paynum">paynum - primary key (assigned automatically for new payments)</A></STRONG><DD> -<DT><STRONG><A NAME="item_invnum">invnum - Invoice (see FS::cust_bill)</A></STRONG><DD> -<DT><STRONG><A NAME="item_paid">paid - Amount of this payment</A></STRONG><DD> -<DT><STRONG><A NAME="item__date">_date - specified as a UNIX timestamp; see perlfunc/"time". Also see -Time::Local and Date::Parse for conversion functions.</A></STRONG><DD> -<DT><STRONG><A NAME="item_payby">payby - `CARD' (credit cards), `BILL' (billing), or `COMP' (free)</A></STRONG><DD> -<DT><STRONG><A NAME="item_payinfo">payinfo - card number, P.O.#, or comp issuer (4-8 lowercase alphanumerics; think username)</A></STRONG><DD> -<DT><STRONG><A NAME="item_paybatch">paybatch - text field for tracking card processing</A></STRONG><DD> -</DL> -<P> -<HR> -<H1><A NAME="METHODS">METHODS</A></H1> -<DL> -<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><DD> -<P> -Creates a new payment. To add the payment to the databse, see <A HREF="#insert">insert</A>. - -<DT><STRONG><A NAME="item_insert">insert</A></STRONG><DD> -<P> -Adds this payment to the databse, and updates the invoice (see -<A HREF="../FS/cust_bill.html">FS::cust_bill</A>). - -<DT><STRONG><A NAME="item_delete">delete</A></STRONG><DD> -<P> -Currently unimplemented (accounting reasons). - -<DT><STRONG><A NAME="item_replace">replace OLD_RECORD</A></STRONG><DD> -<P> -Currently unimplemented (accounting reasons). - -<DT><STRONG><A NAME="item_check">check</A></STRONG><DD> -<P> -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. - -</DL> -<P> -<HR> -<H1><A NAME="VERSION">VERSION</A></H1> -<P> -$Id: cust_pay.html,v 1.1 1999-08-04 12:13:27 ivan Exp $ - -<P> -<HR> -<H1><A NAME="BUGS">BUGS</A></H1> -<P> -Delete and replace methods. - -<P> -<HR> -<H1><A NAME="SEE_ALSO">SEE ALSO</A></H1> -<P> -<A HREF="../FS/Record.html">FS::Record</A>, <A HREF="../FS/cust_bill.html">FS::cust_bill</A>, schema.html from the base documentation. - -</BODY> - -</HTML> diff --git a/htdocs/docs/man/FS/cust_pay_batch.html b/htdocs/docs/man/FS/cust_pay_batch.html deleted file mode 100644 index 1a5189e6b..000000000 --- a/htdocs/docs/man/FS/cust_pay_batch.html +++ /dev/null @@ -1,134 +0,0 @@ -<HTML> -<HEAD> -<TITLE>FS::cust_pay_batch - Object methods for batch cards</TITLE> -<LINK REV="made" HREF="mailto:ivan@rootwood.sisd.com"> -</HEAD> - -<BODY> - -<!-- INDEX BEGIN --> - -<UL> - - <LI><A HREF="#NAME">NAME</A> - <LI><A HREF="#SYNOPSIS">SYNOPSIS</A> - <LI><A HREF="#DESCRIPTION">DESCRIPTION</A> - <LI><A HREF="#METHODS">METHODS</A> - <LI><A HREF="#VERSION">VERSION</A> - <LI><A HREF="#BUGS">BUGS</A> - <LI><A HREF="#SEE_ALSO">SEE ALSO</A> -</UL> -<!-- INDEX END --> - -<HR> -<P> -<H1><A NAME="NAME">NAME</A></H1> -<P> -FS::cust_pay_batch - Object methods for batch cards - -<P> -<HR> -<H1><A NAME="SYNOPSIS">SYNOPSIS</A></H1> -<P> -<PRE> use FS::cust_pay_batch; -</PRE> -<P> -<PRE> $record = new FS::cust_pay_batch \%hash; - $record = new FS::cust_pay_batch { 'column' => 'value' }; -</PRE> -<P> -<PRE> $error = $record->insert; -</PRE> -<P> -<PRE> $error = $new_record->replace($old_record); -</PRE> -<P> -<PRE> $error = $record->delete; -</PRE> -<P> -<PRE> $error = $record->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: - -<DL> -<DT><STRONG><A NAME="item_trancode">trancode - 77 for charges</A></STRONG><DD> -<DT><STRONG><A NAME="item_cardnum">cardnum</A></STRONG><DD> -<DT><STRONG><A NAME="item_exp">exp - card expiration</A></STRONG><DD> -<DT><STRONG><A NAME="item_amount">amount</A></STRONG><DD> -<DT><STRONG><A NAME="item_invnum">invnum - invoice</A></STRONG><DD> -<DT><STRONG><A NAME="item_custnum">custnum - customer</A></STRONG><DD> -<DT><STRONG><A NAME="item_payname">payname - name on card</A></STRONG><DD> -<DT><STRONG><A NAME="item_first">first - name</A></STRONG><DD> -<DT><STRONG><A NAME="item_last">last - name</A></STRONG><DD> -<DT><STRONG><A NAME="item_address1">address1</A></STRONG><DD> -<DT><STRONG><A NAME="item_address2">address2</A></STRONG><DD> -<DT><STRONG><A NAME="item_city">city</A></STRONG><DD> -<DT><STRONG><A NAME="item_state">state</A></STRONG><DD> -<DT><STRONG><A NAME="item_zip">zip</A></STRONG><DD> -<DT><STRONG><A NAME="item_country">country</A></STRONG><DD> -</DL> -<P> -<HR> -<H1><A NAME="METHODS">METHODS</A></H1> -<DL> -<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><DD> -<P> -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. - -<DT><STRONG><A NAME="item_insert">insert</A></STRONG><DD> -<P> -Adds this record to the database. If there is an error, returns the error, -otherwise returns false. - -<DT><STRONG><A NAME="item_delete">delete</A></STRONG><DD> -<P> -Delete this record from the database. If there is an error, returns the -error, otherwise returns false. - -<DT><STRONG><A NAME="item_replace">replace OLD_RECORD</A></STRONG><DD> -<P> -#inactive # #Replaces the OLD_RECORD with this one in the database. If -there is an error, #returns the error, otherwise returns false. - -<DT><STRONG><A NAME="item_check">check</A></STRONG><DD> -<P> -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. - -</DL> -<P> -<HR> -<H1><A NAME="VERSION">VERSION</A></H1> -<P> -$Id: cust_pay_batch.html,v 1.1 1999-08-04 12:13:27 ivan Exp $ - -<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> -<HR> -<H1><A NAME="SEE_ALSO">SEE ALSO</A></H1> -<P> -<A HREF="../FS/cust_main.html">FS::cust_main</A>, <A HREF="../FS/Record.html">FS::Record</A> - - - -</BODY> - -</HTML> diff --git a/htdocs/docs/man/FS/cust_pkg.html b/htdocs/docs/man/FS/cust_pkg.html deleted file mode 100644 index e105a30df..000000000 --- a/htdocs/docs/man/FS/cust_pkg.html +++ /dev/null @@ -1,254 +0,0 @@ -<HTML> -<HEAD> -<TITLE>FS::cust_pkg - Object methods for cust_pkg objects</TITLE> -<LINK REV="made" HREF="mailto:ivan@rootwood.sisd.com"> -</HEAD> - -<BODY> - -<!-- INDEX BEGIN --> - -<UL> - - <LI><A HREF="#NAME">NAME</A> - <LI><A HREF="#SYNOPSIS">SYNOPSIS</A> - <LI><A HREF="#DESCRIPTION">DESCRIPTION</A> - <LI><A HREF="#METHODS">METHODS</A> - <LI><A HREF="#SUBROUTINES">SUBROUTINES</A> - <LI><A HREF="#VERSION">VERSION</A> - <LI><A HREF="#BUGS">BUGS</A> - <LI><A HREF="#SEE_ALSO">SEE ALSO</A> -</UL> -<!-- INDEX END --> - -<HR> -<P> -<H1><A NAME="NAME">NAME</A></H1> -<P> -FS::cust_pkg - Object methods for cust_pkg objects - -<P> -<HR> -<H1><A NAME="SYNOPSIS">SYNOPSIS</A></H1> -<P> -<PRE> use FS::cust_pkg; -</PRE> -<P> -<PRE> $record = new FS::cust_pkg \%hash; - $record = new FS::cust_pkg { 'column' => 'value' }; -</PRE> -<P> -<PRE> $error = $record->insert; -</PRE> -<P> -<PRE> $error = $new_record->replace($old_record); -</PRE> -<P> -<PRE> $error = $record->delete; -</PRE> -<P> -<PRE> $error = $record->check; -</PRE> -<P> -<PRE> $error = $record->cancel; -</PRE> -<P> -<PRE> $error = $record->suspend; -</PRE> -<P> -<PRE> $error = $record->unsuspend; -</PRE> -<P> -<PRE> $part_pkg = $record->part_pkg; -</PRE> -<P> -<PRE> @labels = $record->labels; -</PRE> -<P> -<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: - -<DL> -<DT><STRONG><A NAME="item_pkgnum">pkgnum - primary key (assigned automatically for new billing items)</A></STRONG><DD> -<DT><STRONG><A NAME="item_custnum">custnum - Customer (see FS::cust_main)</A></STRONG><DD> -<DT><STRONG><A NAME="item_pkgpart">pkgpart - Billing item definition (see FS::part_pkg)</A></STRONG><DD> -<DT><STRONG><A NAME="item_setup">setup - date</A></STRONG><DD> -<DT><STRONG><A NAME="item_bill">bill - date</A></STRONG><DD> -<DT><STRONG><A NAME="item_susp">susp - date</A></STRONG><DD> -<DT><STRONG><A NAME="item_expire">expire - date</A></STRONG><DD> -<DT><STRONG><A NAME="item_cancel">cancel - date</A></STRONG><DD> -<DT><STRONG><A NAME="item_otaker">otaker - order taker (assigned automatically if null, see FS::UID)</A></STRONG><DD> -</DL> -<P> -Note: setup, bill, susp, expire and cancel are specified as UNIX -timestamps; see <EM>perlfunc</EM>. Also see <A HREF="../Time/Local.html">Time::Local</A> and <A HREF="../Date/Parse.html">Date::Parse</A> for conversion functions. - -<P> -<HR> -<H1><A NAME="METHODS">METHODS</A></H1> -<DL> -<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><DD> -<P> -Create a new billing item. To add the item to the database, see <A HREF="#insert">insert</A>. - -<DT><STRONG><A NAME="item_insert">insert</A></STRONG><DD> -<P> -Adds this billing item to the database (``Orders'' the item). If there is -an error, returns the error, otherwise returns false. - -<P> -sub insert { my <CODE>$self</CODE> = shift; - -<P> -<PRE> # custnum might not have have been defined in sub check (for one-shot new - # customers), so check it here instead -</PRE> -<P> -<PRE> my $error = $self->ut_number('custnum'); - return $error if $error -</PRE> -<P> -<PRE> return "Unknown customer" - unless qsearchs( 'cust_main', { 'custnum' => $self->custnum } ); -</PRE> -<P> -<PRE> $self->SUPER::insert; -</PRE> -<P> -} - -<DT><STRONG><A NAME="item_delete">delete</A></STRONG><DD> -<P> -Currently unimplemented. You don't want to delete billing items, because -there would then be no record the customer ever purchased the item. -Instead, see the cancel method. - -<DT><STRONG><A NAME="item_replace">replace OLD_RECORD</A></STRONG><DD> -<P> -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> -Changing pkgpart may have disasterous effects. See the order subroutine. - -<P> -setup and bill are normally updated by calling the bill method of a -customer object (see <A HREF="../FS/cust_main.html">FS::cust_main</A>). - -<P> -suspend is normally updated by the suspend and unsuspend methods. - -<P> -cancel is normally updated by the cancel method (and also the order -subroutine in some cases). - -<DT><STRONG><A NAME="item_check">check</A></STRONG><DD> -<P> -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. - -<DT><STRONG>cancel</STRONG><DD> -<P> -Cancels and removes all services (see <A HREF="../FS/cust_svc.html">FS::cust_svc</A> and <A HREF="../FS/part_svc.html">FS::part_svc</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. - -<DT><STRONG><A NAME="item_suspend">suspend</A></STRONG><DD> -<P> -Suspends all services (see <A HREF="../FS/cust_svc.html">FS::cust_svc</A> and <A HREF="../FS/part_svc.html">FS::part_svc</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. - -<DT><STRONG><A NAME="item_unsuspend">unsuspend</A></STRONG><DD> -<P> -Unsuspends all services (see <A HREF="../FS/cust_svc.html">FS::cust_svc</A> and <A HREF="../FS/part_svc.html">FS::part_svc</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. - -<DT><STRONG><A NAME="item_part_pkg">part_pkg</A></STRONG><DD> -<P> -Returns the definition for this billing item, as an FS::part_pkg object -(see -<A HREF="../FS/part_pkg.html">FS::part_pkg</A>). - -<DT><STRONG><A NAME="item_labels">labels</A></STRONG><DD> -<P> -Returns a list of lists, calling the label method for all services (see <A HREF="../FS/cust_svc.html">FS::cust_svc</A>) of this billing item. - -</DL> -<P> -<HR> -<H1><A NAME="SUBROUTINES">SUBROUTINES</A></H1> -<DL> -<DT><STRONG><A NAME="item_order">order CUSTNUM, PKGPARTS_ARYREF, [ REMOVE_PKGNUMS_ARYREF ]</A></STRONG><DD> -<P> -CUSTNUM is a customer (see <A HREF="../FS/cust_main.html">FS::cust_main</A>) - -<P> -PKGPARTS is a list of pkgparts specifying the the billing item definitions -(see -<A HREF="../FS/part_pkg.html">FS::part_pkg</A>) to order for this customer. Duplicates are of course permitted. - -<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">FS::cust_svc</A>) are moved to the new billing items. An error is returned if this is not -possible (see -<A HREF="../FS/pkg_svc.html">FS::pkg_svc</A>). - -</DL> -<P> -<HR> -<H1><A NAME="VERSION">VERSION</A></H1> -<P> -$Id: cust_pkg.html,v 1.1 1999-08-04 12:13:27 ivan Exp $ - -<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> -In sub order, the <CODE>@pkgparts</CODE> array (passed by reference) is -clobbered. - -<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> -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> -<HR> -<H1><A NAME="SEE_ALSO">SEE ALSO</A></H1> -<P> -<A HREF="../FS/Record.html">FS::Record</A>, <A HREF="../FS/cust_main.html">FS::cust_main</A>, <A HREF="../FS/part_pkg.html">FS::part_pkg</A>, <A HREF="../FS/cust_svc.html">FS::cust_svc</A> -, <A HREF="../FS/pkg_svc.html">FS::pkg_svc</A>, schema.html from the base documentation - -</BODY> - -</HTML> diff --git a/htdocs/docs/man/FS/cust_refund.html b/htdocs/docs/man/FS/cust_refund.html deleted file mode 100644 index f1d106c2f..000000000 --- a/htdocs/docs/man/FS/cust_refund.html +++ /dev/null @@ -1,116 +0,0 @@ -<HTML> -<HEAD> -<TITLE>FS::cust_refund - Object method for cust_refund objects</TITLE> -<LINK REV="made" HREF="mailto:ivan@rootwood.sisd.com"> -</HEAD> - -<BODY> - -<!-- INDEX BEGIN --> - -<UL> - - <LI><A HREF="#NAME">NAME</A> - <LI><A HREF="#SYNOPSIS">SYNOPSIS</A> - <LI><A HREF="#DESCRIPTION">DESCRIPTION</A> - <LI><A HREF="#METHODS">METHODS</A> - <LI><A HREF="#VERSION">VERSION</A> - <LI><A HREF="#BUGS">BUGS</A> - <LI><A HREF="#SEE_ALSO">SEE ALSO</A> -</UL> -<!-- INDEX END --> - -<HR> -<P> -<H1><A NAME="NAME">NAME</A></H1> -<P> -FS::cust_refund - Object method for cust_refund objects - -<P> -<HR> -<H1><A NAME="SYNOPSIS">SYNOPSIS</A></H1> -<P> -<PRE> use FS::cust_refund; -</PRE> -<P> -<PRE> $record = new FS::cust_refund \%hash; - $record = new FS::cust_refund { 'column' => 'value' }; -</PRE> -<P> -<PRE> $error = $record->insert; -</PRE> -<P> -<PRE> $error = $new_record->replace($old_record); -</PRE> -<P> -<PRE> $error = $record->delete; -</PRE> -<P> -<PRE> $error = $record->check; -</PRE> -<P> -<HR> -<H1><A NAME="DESCRIPTION">DESCRIPTION</A></H1> -<P> -An FS::cust_refund represents a refund. FS::cust_refund inherits from -FS::Record. The following fields are currently supported: - -<DL> -<DT><STRONG><A NAME="item_refundnum">refundnum - primary key (assigned automatically for new refunds)</A></STRONG><DD> -<DT><STRONG><A NAME="item_crednum">crednum - Credit (see FS::cust_credit)</A></STRONG><DD> -<DT><STRONG><A NAME="item_refund">refund - Amount of the refund</A></STRONG><DD> -<DT><STRONG><A NAME="item__date">_date - specified as a UNIX timestamp; see perlfunc/"time". Also see -Time::Local and Date::Parse for conversion functions.</A></STRONG><DD> -<DT><STRONG><A NAME="item_payby">payby - `CARD' (credit cards), `BILL' (billing), or `COMP' (free)</A></STRONG><DD> -<DT><STRONG><A NAME="item_payinfo">payinfo - card number, P.O.#, or comp issuer (4-8 lowercase alphanumerics; think username)</A></STRONG><DD> -<DT><STRONG><A NAME="item_otaker">otaker - order taker (assigned automatically, see FS::UID)</A></STRONG><DD> -</DL> -<P> -<HR> -<H1><A NAME="METHODS">METHODS</A></H1> -<DL> -<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><DD> -<P> -Creates a new refund. To add the refund to the database, see <A HREF="#insert">insert</A>. - -<DT><STRONG><A NAME="item_insert">insert</A></STRONG><DD> -<P> -Adds this refund to the database, and updates the credit (see -<A HREF="../FS/cust_credit.html">FS::cust_credit</A>). - -<DT><STRONG><A NAME="item_delete">delete</A></STRONG><DD> -<P> -Currently unimplemented (accounting reasons). - -<DT><STRONG><A NAME="item_replace">replace OLD_RECORD</A></STRONG><DD> -<P> -Currently unimplemented (accounting reasons). - -<DT><STRONG><A NAME="item_check">check</A></STRONG><DD> -<P> -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. - -</DL> -<P> -<HR> -<H1><A NAME="VERSION">VERSION</A></H1> -<P> -$Id: cust_refund.html,v 1.1 1999-08-04 12:13:27 ivan Exp $ - -<P> -<HR> -<H1><A NAME="BUGS">BUGS</A></H1> -<P> -Delete and replace methods. - -<P> -<HR> -<H1><A NAME="SEE_ALSO">SEE ALSO</A></H1> -<P> -<A HREF="../FS/Record.html">FS::Record</A>, <A HREF="../FS/cust_credit.html">FS::cust_credit</A>, schema.html from the base documentation. - -</BODY> - -</HTML> diff --git a/htdocs/docs/man/FS/cust_svc.html b/htdocs/docs/man/FS/cust_svc.html deleted file mode 100644 index 060fb7fa6..000000000 --- a/htdocs/docs/man/FS/cust_svc.html +++ /dev/null @@ -1,134 +0,0 @@ -<HTML> -<HEAD> -<TITLE>FS::cust_svc - Object method for cust_svc objects</TITLE> -<LINK REV="made" HREF="mailto:ivan@rootwood.sisd.com"> -</HEAD> - -<BODY> - -<!-- INDEX BEGIN --> - -<UL> - - <LI><A HREF="#NAME">NAME</A> - <LI><A HREF="#SYNOPSIS">SYNOPSIS</A> - <LI><A HREF="#DESCRIPTION">DESCRIPTION</A> - <LI><A HREF="#METHODS">METHODS</A> - <LI><A HREF="#VERSION">VERSION</A> - <LI><A HREF="#BUGS">BUGS</A> - <LI><A HREF="#SEE_ALSO">SEE ALSO</A> -</UL> -<!-- INDEX END --> - -<HR> -<P> -<H1><A NAME="NAME">NAME</A></H1> -<P> -FS::cust_svc - Object method for cust_svc objects - -<P> -<HR> -<H1><A NAME="SYNOPSIS">SYNOPSIS</A></H1> -<P> -<PRE> use FS::cust_svc; -</PRE> -<P> -<PRE> $record = new FS::cust_svc \%hash - $record = new FS::cust_svc { 'column' => 'value' }; -</PRE> -<P> -<PRE> $error = $record->insert; -</PRE> -<P> -<PRE> $error = $new_record->replace($old_record); -</PRE> -<P> -<PRE> $error = $record->delete; -</PRE> -<P> -<PRE> $error = $record->check; -</PRE> -<P> -<PRE> ($label, $value) = $record->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: - -<DL> -<DT><STRONG><A NAME="item_svcnum">svcnum - primary key (assigned automatically for new services)</A></STRONG><DD> -<DT><STRONG><A NAME="item_pkgnum">pkgnum - Package (see FS::cust_pkg)</A></STRONG><DD> -<DT><STRONG><A NAME="item_svcpart">svcpart - Service definition (see FS::part_svc)</A></STRONG><DD> -</DL> -<P> -<HR> -<H1><A NAME="METHODS">METHODS</A></H1> -<DL> -<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><DD> -<P> -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">FS::svc_acct</A>, <A HREF="../FS/svc_domain.html">FS::svc_domain</A>, and <A HREF="../FS/svc_acct_sm.html">FS::svc_acct_sm</A>, among others). - -<DT><STRONG><A NAME="item_insert">insert</A></STRONG><DD> -<P> -Adds this service to the database. If there is an error, returns the error, -otherwise returns false. - -<DT><STRONG><A NAME="item_delete">delete</A></STRONG><DD> -<P> -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">FS::cust_pkg</A>). - -<DT><STRONG><A NAME="item_replace">replace OLD_RECORD</A></STRONG><DD> -<P> -Replaces the OLD_RECORD with this one in the database. If there is an -error, returns the error, otherwise returns false. - -<DT><STRONG><A NAME="item_check">check</A></STRONG><DD> -<P> -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. - -<DT><STRONG><A NAME="item_label">label</A></STRONG><DD> -<P> -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 - -</DL> -<P> -<HR> -<H1><A NAME="VERSION">VERSION</A></H1> -<P> -$Id: cust_svc.html,v 1.1 1999-08-04 12:13:27 ivan Exp $ - -<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> -pkg_svc records are not checked in general (here). - -<P> -Deleting this record doesn't check or delete the svc_* record associated -with this record. - -<P> -<HR> -<H1><A NAME="SEE_ALSO">SEE ALSO</A></H1> -<P> -<A HREF="../FS/Record.html">FS::Record</A>, <A HREF="../FS/cust_pkg.html">FS::cust_pkg</A>, <A HREF="../FS/part_svc.html">FS::part_svc</A>, <A HREF="../FS/pkg_svc.html">FS::pkg_svc</A>, schema.html from the base documentation - -</BODY> - -</HTML> diff --git a/htdocs/docs/man/FS/dbdef.html b/htdocs/docs/man/FS/dbdef.html deleted file mode 100644 index 9b8274b29..000000000 --- a/htdocs/docs/man/FS/dbdef.html +++ /dev/null @@ -1,97 +0,0 @@ -<HTML> -<HEAD> -<TITLE>FS::dbdef - Database objects</TITLE> -<LINK REV="made" HREF="mailto:ivan@rootwood.sisd.com"> -</HEAD> - -<BODY> - -<!-- INDEX BEGIN --> - -<UL> - - <LI><A HREF="#NAME">NAME</A> - <LI><A HREF="#SYNOPSIS">SYNOPSIS</A> - <LI><A HREF="#DESCRIPTION">DESCRIPTION</A> - <LI><A HREF="#METHODS">METHODS</A> - <LI><A HREF="#BUGS">BUGS</A> - <LI><A HREF="#SEE_ALSO">SEE ALSO</A> -</UL> -<!-- INDEX END --> - -<HR> -<P> -<H1><A NAME="NAME">NAME</A></H1> -<P> -FS::dbdef - Database objects - -<P> -<HR> -<H1><A NAME="SYNOPSIS">SYNOPSIS</A></H1> -<P> -<PRE> use FS::dbdef; -</PRE> -<P> -<PRE> $dbdef = new FS::dbdef (@dbdef_table_objects); - $dbdef = load FS::dbdef "filename"; -</PRE> -<P> -<PRE> $dbdef->save("filename"); -</PRE> -<P> -<PRE> $dbdef->addtable($dbdef_table_object); -</PRE> -<P> -<PRE> @table_names = $dbdef->tables; -</PRE> -<P> -<PRE> $FS_dbdef_table_object = $dbdef->table; -</PRE> -<P> -<HR> -<H1><A NAME="DESCRIPTION">DESCRIPTION</A></H1> -<P> -FS::dbdef objects are collections of FS::dbdef_table objects and represnt a -database (a collection of tables). - -<P> -<HR> -<H1><A NAME="METHODS">METHODS</A></H1> -<DL> -<DT><STRONG><A NAME="item_new">new TABLE, TABLE, ...</A></STRONG><DD> -<P> -Creates a new FS::dbdef object - -<DT><STRONG><A NAME="item_load">load FILENAME</A></STRONG><DD> -<P> -Loads an FS::dbdef object from a file. - -<DT><STRONG><A NAME="item_save">save FILENAME</A></STRONG><DD> -<P> -Saves an FS::dbdef object to a file. - -<DT><STRONG><A NAME="item_addtable">addtable TABLE</A></STRONG><DD> -<P> -Adds this FS::dbdef_table object. - -<DT><STRONG><A NAME="item_tables">tables</A></STRONG><DD> -<P> -Returns the names of all tables. - -<DT><STRONG><A NAME="item_table">table TABLENAME</A></STRONG><DD> -<P> -Returns the named FS::dbdef_table object. - -<H1><A NAME="BUGS">BUGS</A></H1> -<P> -Each FS::dbdef object should have a name which corresponds to its name -within the SQL database engine. - -<H1><A NAME="SEE_ALSO">SEE ALSO</A></H1> -<P> -<A HREF="../FS/dbdef_table.html">FS::dbdef_table</A>, <A HREF="../FS/Record.html">FS::Record</A>, - -</DL> -</BODY> - -</HTML> diff --git a/htdocs/docs/man/FS/dbdef_colgroup.html b/htdocs/docs/man/FS/dbdef_colgroup.html deleted file mode 100644 index 9c4f7f43d..000000000 --- a/htdocs/docs/man/FS/dbdef_colgroup.html +++ /dev/null @@ -1,86 +0,0 @@ -<HTML> -<HEAD> -<TITLE>FS::dbdef_colgroup - Column group objects</TITLE> -<LINK REV="made" HREF="mailto:ivan@rootwood.sisd.com"> -</HEAD> - -<BODY> - -<!-- INDEX BEGIN --> - -<UL> - - <LI><A HREF="#NAME">NAME</A> - <LI><A HREF="#SYNOPSIS">SYNOPSIS</A> - <LI><A HREF="#DESCRIPTION">DESCRIPTION</A> - <LI><A HREF="#METHODS">METHODS</A> - <LI><A HREF="#BUGS">BUGS</A> - <LI><A HREF="#SEE_ALSO">SEE ALSO</A> -</UL> -<!-- INDEX END --> - -<HR> -<P> -<H1><A NAME="NAME">NAME</A></H1> -<P> -FS::dbdef_colgroup - Column group objects - -<P> -<HR> -<H1><A NAME="SYNOPSIS">SYNOPSIS</A></H1> -<P> -<PRE> use FS::dbdef_colgroup; -</PRE> -<P> -<PRE> $colgroup = new FS::dbdef_colgroup ( $lol ); - $colgroup = new FS::dbdef_colgroup ( - [ - [ 'single_column' ], - [ 'multiple_columns', 'another_column', ], - ] - ); -</PRE> -<P> -<PRE> @sql_lists = $colgroup->sql_list; -</PRE> -<P> -<PRE> @singles = $colgroup->singles; -</PRE> -<P> -<HR> -<H1><A NAME="DESCRIPTION">DESCRIPTION</A></H1> -<P> -FS::dbdef_colgroup objects represent sets of sets of columns. - -<P> -<HR> -<H1><A NAME="METHODS">METHODS</A></H1> -<DL> -<DT><STRONG><A NAME="item_new">new</A></STRONG><DD> -<P> -Creates a new FS::dbdef_colgroup object. - -<DT><STRONG><A NAME="item_sql_list">sql_list</A></STRONG><DD> -<P> -Returns a flat list of comma-separated values, for SQL statements. - -<DT><STRONG><A NAME="item_singles">singles</A></STRONG><DD> -<P> -Returns a flat list of all single item lists. - -</DL> -<P> -<HR> -<H1><A NAME="BUGS">BUGS</A></H1> -<P> -<HR> -<H1><A NAME="SEE_ALSO">SEE ALSO</A></H1> -<P> -<A HREF="../FS/dbdef_table.html">FS::dbdef_table</A>, <A HREF="../FS/dbdef_unique.html">FS::dbdef_unique</A>, <A HREF="../FS/dbdef_index.html">FS::dbdef_index</A>, -<A HREF="../FS/dbdef_column.html">FS::dbdef_column</A>, <A HREF="../FS/dbdef.html">FS::dbdef</A>, <EM>perldsc</EM> - - - -</BODY> - -</HTML> diff --git a/htdocs/docs/man/FS/dbdef_column.html b/htdocs/docs/man/FS/dbdef_column.html deleted file mode 100644 index c753b52f7..000000000 --- a/htdocs/docs/man/FS/dbdef_column.html +++ /dev/null @@ -1,118 +0,0 @@ -<HTML> -<HEAD> -<TITLE>FS::dbdef_column - Column object</TITLE> -<LINK REV="made" HREF="mailto:ivan@rootwood.sisd.com"> -</HEAD> - -<BODY> - -<!-- INDEX BEGIN --> - -<UL> - - <LI><A HREF="#NAME">NAME</A> - <LI><A HREF="#SYNOPSIS">SYNOPSIS</A> - <LI><A HREF="#DESCRIPTION">DESCRIPTION</A> - <LI><A HREF="#METHODS">METHODS</A> - <LI><A HREF="#BUGS">BUGS</A> - <LI><A HREF="#SEE_ALSO">SEE ALSO</A> - <LI><A HREF="#VERSION">VERSION</A> -</UL> -<!-- INDEX END --> - -<HR> -<P> -<H1><A NAME="NAME">NAME</A></H1> -<P> -FS::dbdef_column - Column object - -<P> -<HR> -<H1><A NAME="SYNOPSIS">SYNOPSIS</A></H1> -<P> -<PRE> use FS::dbdef_column; -</PRE> -<P> -<PRE> $column_object = new FS::dbdef_column ( $name, $sql_type, '' ); - $column_object = new FS::dbdef_column ( $name, $sql_type, 'NULL' ); - $column_object = new FS::dbdef_column ( $name, $sql_type, '', $length ); - $column_object = new FS::dbdef_column ( $name, $sql_type, 'NULL', $length ); -</PRE> -<P> -<PRE> $name = $column_object->name; - $column_object->name ( 'name' ); -</PRE> -<P> -<PRE> $name = $column_object->type; - $column_object->name ( 'sql_type' ); -</PRE> -<P> -<PRE> $name = $column_object->null; - $column_object->name ( 'NOT NULL' ); -</PRE> -<P> -<PRE> $name = $column_object->length; - $column_object->name ( $length ); -</PRE> -<P> -<PRE> $sql_line = $column->line; - $sql_line = $column->line $datasrc; -</PRE> -<P> -<HR> -<H1><A NAME="DESCRIPTION">DESCRIPTION</A></H1> -<P> -FS::dbdef::column objects represend columns in tables (see <A HREF="../FS/dbdef_table.html">FS::dbdef_table</A>). - -<P> -<HR> -<H1><A NAME="METHODS">METHODS</A></H1> -<DL> -<DT><STRONG><A NAME="item_new">new</A></STRONG><DD> -<P> -Creates a new FS::dbdef_column object. - -<DT><STRONG><A NAME="item_name">name</A></STRONG><DD> -<P> -Returns or sets the column name. - -<DT><STRONG><A NAME="item_type">type</A></STRONG><DD> -<P> -Returns or sets the column type. - -<DT><STRONG><A NAME="item_null">null</A></STRONG><DD> -<P> -Returns or sets the column null flag. - -<DT><STRONG>type</STRONG><DD> -<P> -Returns or sets the column length. - -<DT><STRONG><A NAME="item_line">line [ $datasrc ]</A></STRONG><DD> -<P> -Returns an SQL column definition. - -<P> -If passed a DBI <CODE>$datasrc</CODE> specifying <A HREF="../DBD/mysql.html">DBD::mysql</A> or <A HREF="../DBD/Pg.html">DBD::Pg</A>, will use engine-specific syntax. - -</DL> -<P> -<HR> -<H1><A NAME="BUGS">BUGS</A></H1> -<P> -<HR> -<H1><A NAME="SEE_ALSO">SEE ALSO</A></H1> -<P> -<A HREF="../FS/dbdef_table.html">FS::dbdef_table</A>, <A HREF="../FS/dbdef.html">FS::dbdef</A>, <EM>DBI</EM> - - - -<P> -<HR> -<H1><A NAME="VERSION">VERSION</A></H1> -<P> -$Id: dbdef_column.html,v 1.1 1999-08-04 12:13:27 ivan Exp $ - -</BODY> - -</HTML> diff --git a/htdocs/docs/man/FS/dbdef_index.html b/htdocs/docs/man/FS/dbdef_index.html deleted file mode 100644 index 7a9e5039e..000000000 --- a/htdocs/docs/man/FS/dbdef_index.html +++ /dev/null @@ -1,58 +0,0 @@ -<HTML> -<HEAD> -<TITLE>FS::dbdef_unique.pm - Index object</TITLE> -<LINK REV="made" HREF="mailto:ivan@rootwood.sisd.com"> -</HEAD> - -<BODY> - -<!-- INDEX BEGIN --> - -<UL> - - <LI><A HREF="#NAME">NAME</A> - <LI><A HREF="#SYNOPSIS">SYNOPSIS</A> - <LI><A HREF="#DESCRIPTION">DESCRIPTION</A> - <LI><A HREF="#BUGS">BUGS</A> - <LI><A HREF="#SEE_ALSO">SEE ALSO</A> -</UL> -<!-- INDEX END --> - -<HR> -<P> -<H1><A NAME="NAME">NAME</A></H1> -<P> -FS::dbdef_unique.pm - Index object - -<P> -<HR> -<H1><A NAME="SYNOPSIS">SYNOPSIS</A></H1> -<P> -<PRE> use FS::dbdef_index; -</PRE> -<P> -<PRE> # see FS::dbdef_colgroup methods -</PRE> -<P> -<HR> -<H1><A NAME="DESCRIPTION">DESCRIPTION</A></H1> -<P> -FS::dbdef_unique objects represent the (non-unique) indices of a table (<A HREF="../FS/dbdef_table.html">FS::dbdef_table</A>). FS::dbdef_unique inherits from FS::dbdef_colgroup. - -<P> -<HR> -<H1><A NAME="BUGS">BUGS</A></H1> -<P> -Is this empty subclass needed? - -<P> -<HR> -<H1><A NAME="SEE_ALSO">SEE ALSO</A></H1> -<P> -<A HREF="../FS/dbdef_colgroup.html">FS::dbdef_colgroup</A>, <A HREF="../FS/dbdef_record.html">FS::dbdef_record</A>, <A HREF="../FS/Record.html">FS::Record</A> - - - -</BODY> - -</HTML> diff --git a/htdocs/docs/man/FS/dbdef_table.html b/htdocs/docs/man/FS/dbdef_table.html deleted file mode 100644 index 7056b0f9b..000000000 --- a/htdocs/docs/man/FS/dbdef_table.html +++ /dev/null @@ -1,144 +0,0 @@ -<HTML> -<HEAD> -<TITLE>FS::dbdef_table - Table objects</TITLE> -<LINK REV="made" HREF="mailto:ivan@rootwood.sisd.com"> -</HEAD> - -<BODY> - -<!-- INDEX BEGIN --> - -<UL> - - <LI><A HREF="#NAME">NAME</A> - <LI><A HREF="#SYNOPSIS">SYNOPSIS</A> - <LI><A HREF="#DESCRIPTION">DESCRIPTION</A> - <LI><A HREF="#METHODS">METHODS</A> - <LI><A HREF="#BUGS">BUGS</A> - <LI><A HREF="#SEE_ALSO">SEE ALSO</A> - <LI><A HREF="#VERSION">VERSION</A> -</UL> -<!-- INDEX END --> - -<HR> -<P> -<H1><A NAME="NAME">NAME</A></H1> -<P> -FS::dbdef_table - Table objects - -<P> -<HR> -<H1><A NAME="SYNOPSIS">SYNOPSIS</A></H1> -<P> -<PRE> use FS::dbdef_table; -</PRE> -<P> -<PRE> $dbdef_table = new FS::dbdef_table ( - "table_name", - "primary_key", - $FS_dbdef_unique_object, - $FS_dbdef_index_object, - @FS_dbdef_column_objects, - ); -</PRE> -<P> -<PRE> $dbdef_table->addcolumn ( $FS_dbdef_column_object ); -</PRE> -<P> -<PRE> $table_name = $dbdef_table->name; - $dbdef_table->name ("table_name"); -</PRE> -<P> -<PRE> $table_name = $dbdef_table->primary_keye; - $dbdef_table->primary_key ("primary_key"); -</PRE> -<P> -<PRE> $FS_dbdef_unique_object = $dbdef_table->unique; - $dbdef_table->unique ( $FS_dbdef_unique_object ); -</PRE> -<P> -<PRE> $FS_dbdef_index_object = $dbdef_table->index; - $dbdef_table->index ( $FS_dbdef_index_object ); -</PRE> -<P> -<PRE> @column_names = $dbdef->columns; -</PRE> -<P> -<PRE> $FS_dbdef_column_object = $dbdef->column; -</PRE> -<P> -<PRE> @sql_statements = $dbdef->sql_create_table; - @sql_statements = $dbdef->sql_create_table $datasrc; -</PRE> -<P> -<HR> -<H1><A NAME="DESCRIPTION">DESCRIPTION</A></H1> -<P> -FS::dbdef_table objects represent a single database table. - -<P> -<HR> -<H1><A NAME="METHODS">METHODS</A></H1> -<DL> -<DT><STRONG><A NAME="item_new">new</A></STRONG><DD> -<P> -Creates a new FS::dbdef_table object. - -<DT><STRONG><A NAME="item_addcolumn">addcolumn</A></STRONG><DD> -<P> -Adds this FS::dbdef_column object. - -<DT><STRONG><A NAME="item_name">name</A></STRONG><DD> -<P> -Returns or sets the table name. - -<DT><STRONG><A NAME="item_primary_key">primary_key</A></STRONG><DD> -<P> -Returns or sets the primary key. - -<DT><STRONG><A NAME="item_unique">unique</A></STRONG><DD> -<P> -Returns or sets the FS::dbdef_unique object. - -<DT><STRONG><A NAME="item_index">index</A></STRONG><DD> -<P> -Returns or sets the FS::dbdef_index object. - -<DT><STRONG><A NAME="item_columns">columns</A></STRONG><DD> -<P> -Returns a list consisting of the names of all columns. - -<DT><STRONG><A NAME="item_column">column "column"</A></STRONG><DD> -<P> -Returns the column object (see <A HREF="../FS/dbdef_column.html">FS::dbdef_column</A>) for ``column''. - -<DT><STRONG><A NAME="item_sql_create_table">sql_create_table [ $datasrc ]</A></STRONG><DD> -<P> -Returns an array of SQL statments to create this table. - -<P> -If passed a DBI <CODE>$datasrc</CODE> specifying <A HREF="../DBD/mysql.html">DBD::mysql</A>, will use MySQL-specific syntax. Non-standard syntax for other engines (if -applicable) may also be supported in the future. - -</DL> -<P> -<HR> -<H1><A NAME="BUGS">BUGS</A></H1> -<P> -<HR> -<H1><A NAME="SEE_ALSO">SEE ALSO</A></H1> -<P> -<A HREF="../FS/dbdef.html">FS::dbdef</A>, <A HREF="../FS/dbdef_unique.html">FS::dbdef_unique</A>, <A HREF="../FS/dbdef_index.html">FS::dbdef_index</A>, <A HREF="../FS/dbdef_unique.html">FS::dbdef_unique</A>, -<EM>DBI</EM> - - - -<P> -<HR> -<H1><A NAME="VERSION">VERSION</A></H1> -<P> -$Id: dbdef_table.html,v 1.1 1999-08-04 12:13:27 ivan Exp $ - -</BODY> - -</HTML> diff --git a/htdocs/docs/man/FS/dbdef_unique.html b/htdocs/docs/man/FS/dbdef_unique.html deleted file mode 100644 index 73c885c75..000000000 --- a/htdocs/docs/man/FS/dbdef_unique.html +++ /dev/null @@ -1,58 +0,0 @@ -<HTML> -<HEAD> -<TITLE>FS::dbdef_unique.pm - Unique object</TITLE> -<LINK REV="made" HREF="mailto:ivan@rootwood.sisd.com"> -</HEAD> - -<BODY> - -<!-- INDEX BEGIN --> - -<UL> - - <LI><A HREF="#NAME">NAME</A> - <LI><A HREF="#SYNOPSIS">SYNOPSIS</A> - <LI><A HREF="#DESCRIPTION">DESCRIPTION</A> - <LI><A HREF="#BUGS">BUGS</A> - <LI><A HREF="#SEE_ALSO">SEE ALSO</A> -</UL> -<!-- INDEX END --> - -<HR> -<P> -<H1><A NAME="NAME">NAME</A></H1> -<P> -FS::dbdef_unique.pm - Unique object - -<P> -<HR> -<H1><A NAME="SYNOPSIS">SYNOPSIS</A></H1> -<P> -<PRE> use FS::dbdef_unique; -</PRE> -<P> -<PRE> # see FS::dbdef_colgroup methods -</PRE> -<P> -<HR> -<H1><A NAME="DESCRIPTION">DESCRIPTION</A></H1> -<P> -FS::dbdef_unique objects represent the unique indices of a database table (<A HREF="../FS/dbdef_table.html">FS::dbdef_table</A>). FS::dbdef_unique inherits from FS::dbdef_colgroup. - -<P> -<HR> -<H1><A NAME="BUGS">BUGS</A></H1> -<P> -Is this empty subclass needed? - -<P> -<HR> -<H1><A NAME="SEE_ALSO">SEE ALSO</A></H1> -<P> -<A HREF="../FS/dbdef_colgroup.html">FS::dbdef_colgroup</A>, <A HREF="../FS/dbdef_record.html">FS::dbdef_record</A>, <A HREF="../FS/Record.html">FS::Record</A> - - - -</BODY> - -</HTML> diff --git a/htdocs/docs/man/FS/part_pkg.html b/htdocs/docs/man/FS/part_pkg.html deleted file mode 100644 index e36b5840c..000000000 --- a/htdocs/docs/man/FS/part_pkg.html +++ /dev/null @@ -1,152 +0,0 @@ -<HTML> -<HEAD> -<TITLE>FS::part_pkg - Object methods for part_pkg objects</TITLE> -<LINK REV="made" HREF="mailto:ivan@rootwood.sisd.com"> -</HEAD> - -<BODY> - -<!-- INDEX BEGIN --> - -<UL> - - <LI><A HREF="#NAME">NAME</A> - <LI><A HREF="#SYNOPSIS">SYNOPSIS</A> - <LI><A HREF="#DESCRIPTION">DESCRIPTION</A> - <LI><A HREF="#METHODS">METHODS</A> - <LI><A HREF="#VERSION">VERSION</A> - <LI><A HREF="#BUGS">BUGS</A> - <LI><A HREF="#SEE_ALSO">SEE ALSO</A> -</UL> -<!-- INDEX END --> - -<HR> -<P> -<H1><A NAME="NAME">NAME</A></H1> -<P> -FS::part_pkg - Object methods for part_pkg objects - -<P> -<HR> -<H1><A NAME="SYNOPSIS">SYNOPSIS</A></H1> -<P> -<PRE> use FS::part_pkg; -</PRE> -<P> -<PRE> $record = new FS::part_pkg \%hash - $record = new FS::part_pkg { 'column' => 'value' }; -</PRE> -<P> -<PRE> $custom_record = $template_record->clone; -</PRE> -<P> -<PRE> $error = $record->insert; -</PRE> -<P> -<PRE> $error = $new_record->replace($old_record); -</PRE> -<P> -<PRE> $error = $record->delete; -</PRE> -<P> -<PRE> $error = $record->check; -</PRE> -<P> -<PRE> @pkg_svc = $record->pkg_svc; -</PRE> -<P> -<PRE> $svcnum = $record->svcpart; - $svcnum = $record->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: - -<DL> -<DT><STRONG><A NAME="item_pkgpart">pkgpart - primary key (assigned automatically for new billing item definitions)</A></STRONG><DD> -<DT><STRONG><A NAME="item_pkg">pkg - Text name of this billing item definition (customer-viewable)</A></STRONG><DD> -<DT><STRONG><A NAME="item_comment">comment - Text name of this billing item definition (non-customer-viewable)</A></STRONG><DD> -<DT><STRONG><A NAME="item_setup">setup - Setup fee</A></STRONG><DD> -<DT><STRONG><A NAME="item_freq">freq - Frequency of recurring fee</A></STRONG><DD> -<DT><STRONG><A NAME="item_recur">recur - Recurring fee</A></STRONG><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> -<HR> -<H1><A NAME="METHODS">METHODS</A></H1> -<DL> -<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><DD> -<P> -Creates a new billing item definition. To add the billing item definition -to the database, see <A HREF="#insert">insert</A>. - -<DT><STRONG><A NAME="item_clone">clone</A></STRONG><DD> -<P> -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>. - -<DT><STRONG><A NAME="item_insert">insert</A></STRONG><DD> -<P> -Adds this billing item definition to the database. If there is an error, -returns the error, otherwise returns false. - -<DT><STRONG><A NAME="item_delete">delete</A></STRONG><DD> -<P> -Currently unimplemented. - -<DT><STRONG><A NAME="item_replace">replace OLD_RECORD</A></STRONG><DD> -<P> -Replaces OLD_RECORD with this one in the database. If there is an error, -returns the error, otherwise returns false. - -<DT><STRONG><A NAME="item_check">check</A></STRONG><DD> -<P> -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. - -<DT><STRONG><A NAME="item_pkg_svc">pkg_svc</A></STRONG><DD> -<P> -Returns all FS::pkg_svc objects (see <A HREF="../FS/pkg_svc.html">FS::pkg_svc</A>) for this package definition. - -<DT><STRONG><A NAME="item_svcpart">svcpart [ SVCDB ]</A></STRONG><DD> -<P> -Returns the svcpart of a single service definition (see <A HREF="../FS/part_svc.html">FS::part_svc</A>) associated with this billing item definition (see <A HREF="../FS/pkg_svc.html">FS::pkg_svc</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, - -</DL> -<P> -<HR> -<H1><A NAME="VERSION">VERSION</A></H1> -<P> -$Id: part_pkg.html,v 1.1 1999-08-04 12:13:27 ivan Exp $ - -<P> -<HR> -<H1><A NAME="BUGS">BUGS</A></H1> -<P> -The delete method is unimplemented. - -<P> -setup and recur semantics are not yet defined (and are implemented in -FS::cust_bill. hmm.). - -<P> -<HR> -<H1><A NAME="SEE_ALSO">SEE ALSO</A></H1> -<P> -<A HREF="../FS/Record.html">FS::Record</A>, <A HREF="../FS/cust_pkg.html">FS::cust_pkg</A>, <A HREF="../FS/type_pkgs.html">FS::type_pkgs</A>, <A HREF="../FS/pkg_svc.html">FS::pkg_svc</A>, <EM>Safe</EM>. schema.html from the base documentation. - -</BODY> - -</HTML> diff --git a/htdocs/docs/man/FS/part_referral.html b/htdocs/docs/man/FS/part_referral.html deleted file mode 100644 index b6fd2ce89..000000000 --- a/htdocs/docs/man/FS/part_referral.html +++ /dev/null @@ -1,113 +0,0 @@ -<HTML> -<HEAD> -<TITLE>FS::part_referral - Object methods for part_referral objects</TITLE> -<LINK REV="made" HREF="mailto:ivan@rootwood.sisd.com"> -</HEAD> - -<BODY> - -<!-- INDEX BEGIN --> - -<UL> - - <LI><A HREF="#NAME">NAME</A> - <LI><A HREF="#SYNOPSIS">SYNOPSIS</A> - <LI><A HREF="#DESCRIPTION">DESCRIPTION</A> - <LI><A HREF="#METHODS">METHODS</A> - <LI><A HREF="#VERSION">VERSION</A> - <LI><A HREF="#BUGS">BUGS</A> - <LI><A HREF="#SEE_ALSO">SEE ALSO</A> -</UL> -<!-- INDEX END --> - -<HR> -<P> -<H1><A NAME="NAME">NAME</A></H1> -<P> -FS::part_referral - Object methods for part_referral objects - -<P> -<HR> -<H1><A NAME="SYNOPSIS">SYNOPSIS</A></H1> -<P> -<PRE> use FS::part_referral; -</PRE> -<P> -<PRE> $record = new FS::part_referral \%hash - $record = new FS::part_referral { 'column' => 'value' }; -</PRE> -<P> -<PRE> $error = $record->insert; -</PRE> -<P> -<PRE> $error = $new_record->replace($old_record); -</PRE> -<P> -<PRE> $error = $record->delete; -</PRE> -<P> -<PRE> $error = $record->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: - -<DL> -<DT><STRONG><A NAME="item_refnum">refnum - primary key (assigned automatically for new referrals)</A></STRONG><DD> -<DT><STRONG><A NAME="item_referral">referral - Text name of this referral</A></STRONG><DD> -</DL> -<P> -<HR> -<H1><A NAME="METHODS">METHODS</A></H1> -<DL> -<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><DD> -<P> -Creates a new referral. To add the referral to the database, see <A HREF="#insert">insert</A>. - -<DT><STRONG><A NAME="item_insert">insert</A></STRONG><DD> -<P> -Adds this referral to the database. If there is an error, returns the -error, otherwise returns false. - -<DT><STRONG><A NAME="item_delete">delete</A></STRONG><DD> -<P> -Currently unimplemented. - -<DT><STRONG><A NAME="item_replace">replace OLD_RECORD</A></STRONG><DD> -<P> -Replaces OLD_RECORD with this one in the database. If there is an error, -returns the error, otherwise returns false. - -<DT><STRONG><A NAME="item_check">check</A></STRONG><DD> -<P> -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. - -</DL> -<P> -<HR> -<H1><A NAME="VERSION">VERSION</A></H1> -<P> -$Id: part_referral.html,v 1.1 1999-08-04 12:13:27 ivan Exp $ - -<P> -<HR> -<H1><A NAME="BUGS">BUGS</A></H1> -<P> -The delete method is unimplemented. - -<P> -<HR> -<H1><A NAME="SEE_ALSO">SEE ALSO</A></H1> -<P> -<A HREF="../FS/Record.html">FS::Record</A>, <A HREF="../FS/cust_main.html">FS::cust_main</A>, schema.html from the base documentation. - -</BODY> - -</HTML> diff --git a/htdocs/docs/man/FS/part_svc.html b/htdocs/docs/man/FS/part_svc.html deleted file mode 100644 index fedcbd3bf..000000000 --- a/htdocs/docs/man/FS/part_svc.html +++ /dev/null @@ -1,121 +0,0 @@ -<HTML> -<HEAD> -<TITLE>FS::part_svc - Object methods for part_svc objects</TITLE> -<LINK REV="made" HREF="mailto:ivan@rootwood.sisd.com"> -</HEAD> - -<BODY> - -<!-- INDEX BEGIN --> - -<UL> - - <LI><A HREF="#NAME">NAME</A> - <LI><A HREF="#SYNOPSIS">SYNOPSIS</A> - <LI><A HREF="#DESCRIPTION">DESCRIPTION</A> - <LI><A HREF="#METHODS">METHODS</A> - <LI><A HREF="#VERSION">VERSION</A> - <LI><A HREF="#BUGS">BUGS</A> - <LI><A HREF="#SEE_ALSO">SEE ALSO</A> -</UL> -<!-- INDEX END --> - -<HR> -<P> -<H1><A NAME="NAME">NAME</A></H1> -<P> -FS::part_svc - Object methods for part_svc objects - -<P> -<HR> -<H1><A NAME="SYNOPSIS">SYNOPSIS</A></H1> -<P> -<PRE> use FS::part_svc; -</PRE> -<P> -<PRE> $record = new FS::part_referral \%hash - $record = new FS::part_referral { 'column' => 'value' }; -</PRE> -<P> -<PRE> $error = $record->insert; -</PRE> -<P> -<PRE> $error = $new_record->replace($old_record); -</PRE> -<P> -<PRE> $error = $record->delete; -</PRE> -<P> -<PRE> $error = $record->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: - -<DL> -<DT><STRONG><A NAME="item_svcpart">svcpart - primary key (assigned automatically for new service definitions)</A></STRONG><DD> -<DT><STRONG><A NAME="item_svc">svc - text name of this service definition</A></STRONG><DD> -<DT><STRONG><A NAME="item_svcdb">svcdb - table used for this service. See FS::svc_acct, -FS::svc_domain, and FS::svc_acct_sm, among others.</A></STRONG><DD> -<DT><STRONG><A NAME="item_svcdb_field">svcdb__field - Default or fixed value for field in svcdb.</A></STRONG><DD> -<DT><STRONG><A NAME="item_svcdb_field_flag">svcdb__field_flag - defines svcdb__field action: null, `D' for default, or `F' for fixed</A></STRONG><DD> -</DL> -<P> -<HR> -<H1><A NAME="METHODS">METHODS</A></H1> -<DL> -<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><DD> -<P> -Creates a new service definition. To add the service definition to the -database, see <A HREF="#insert">insert</A>. - -<DT><STRONG><A NAME="item_insert">insert</A></STRONG><DD> -<P> -Adds this service definition to the database. If there is an error, returns -the error, otherwise returns false. - -<DT><STRONG><A NAME="item_delete">delete</A></STRONG><DD> -<P> -Currently unimplemented. - -<DT><STRONG><A NAME="item_replace">replace OLD_RECORD</A></STRONG><DD> -<P> -Replaces OLD_RECORD with this one in the database. If there is an error, -returns the error, otherwise returns false. - -<DT><STRONG><A NAME="item_check">check</A></STRONG><DD> -<P> -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. - -</DL> -<P> -<HR> -<H1><A NAME="VERSION">VERSION</A></H1> -<P> -$Id: part_svc.html,v 1.1 1999-08-04 12:13:27 ivan Exp $ - -<P> -<HR> -<H1><A NAME="BUGS">BUGS</A></H1> -<P> -Delete is unimplemented. - -<P> -The list of svc_* tables is hardcoded. When svc_acct_pop is renamed, this -should be fixed. - -<P> -<HR> -<H1><A NAME="SEE_ALSO">SEE ALSO</A></H1> -<P> -<A HREF="../FS/Record.html">FS::Record</A>, <A HREF="../FS/part_pkg.html">FS::part_pkg</A>, <A HREF="../FS/pkg_svc.html">FS::pkg_svc</A>, <A HREF="../FS/cust_svc.html">FS::cust_svc</A>, -<A HREF="../FS/svc_acct.html">FS::svc_acct</A>, <A HREF="../FS/svc_acct_sm.html">FS::svc_acct_sm</A>, <A HREF="../FS/svc_domain.html">FS::svc_domain</A>, schema.html from the base documentation. - -</BODY> - -</HTML> diff --git a/htdocs/docs/man/FS/pkg_svc.html b/htdocs/docs/man/FS/pkg_svc.html deleted file mode 100644 index 7cd786354..000000000 --- a/htdocs/docs/man/FS/pkg_svc.html +++ /dev/null @@ -1,125 +0,0 @@ -<HTML> -<HEAD> -<TITLE>FS::pkg_svc - Object methods for pkg_svc records</TITLE> -<LINK REV="made" HREF="mailto:ivan@rootwood.sisd.com"> -</HEAD> - -<BODY> - -<!-- INDEX BEGIN --> - -<UL> - - <LI><A HREF="#NAME">NAME</A> - <LI><A HREF="#SYNOPSIS">SYNOPSIS</A> - <LI><A HREF="#DESCRIPTION">DESCRIPTION</A> - <LI><A HREF="#METHODS">METHODS</A> - <LI><A HREF="#VERSION">VERSION</A> - <LI><A HREF="#BUGS">BUGS</A> - <LI><A HREF="#SEE_ALSO">SEE ALSO</A> -</UL> -<!-- INDEX END --> - -<HR> -<P> -<H1><A NAME="NAME">NAME</A></H1> -<P> -FS::pkg_svc - Object methods for pkg_svc records - -<P> -<HR> -<H1><A NAME="SYNOPSIS">SYNOPSIS</A></H1> -<P> -<PRE> use FS::pkg_svc; -</PRE> -<P> -<PRE> $record = new FS::pkg_svc \%hash; - $record = new FS::pkg_svc { 'column' => 'value' }; -</PRE> -<P> -<PRE> $error = $record->insert; -</PRE> -<P> -<PRE> $error = $new_record->replace($old_record); -</PRE> -<P> -<PRE> $error = $record->delete; -</PRE> -<P> -<PRE> $error = $record->check; -</PRE> -<P> -<PRE> $part_pkg = $record->part_pkg; -</PRE> -<P> -<PRE> $part_svc = $record->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">FS::part_pkg</A>) to a service definition (see <A HREF="../FS/part_svc.html">FS::part_svc</A>). FS::pkg_svc inherits from FS::Record. The following fields are currently -supported: - -<DL> -<DT><STRONG><A NAME="item_pkgpart">pkgpart - Billing item definition (see FS::part_pkg)</A></STRONG><DD> -<DT><STRONG><A NAME="item_svcpart">svcpart - Service definition (see FS::part_svc)</A></STRONG><DD> -<DT><STRONG><A NAME="item_quantity">quantity - Quantity of this service definition that this billing item -definition includes</A></STRONG><DD> -</DL> -<P> -<HR> -<H1><A NAME="METHODS">METHODS</A></H1> -<DL> -<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><DD> -<P> -Create a new record. To add the record to the database, see <A HREF="#insert">insert</A>. - -<DT><STRONG><A NAME="item_insert">insert</A></STRONG><DD> -<P> -Adds this record to the database. If there is an error, returns the error, -otherwise returns false. - -<DT><STRONG><A NAME="item_delete">delete</A></STRONG><DD> -<P> -Deletes this record from the database. If there is an error, returns the -error, otherwise returns false. - -<DT><STRONG><A NAME="item_replace">replace OLD_RECORD</A></STRONG><DD> -<P> -Replaces OLD_RECORD with this one in the database. If there is an error, -returns the error, otherwise returns false. - -<DT><STRONG><A NAME="item_check">check</A></STRONG><DD> -<P> -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. - -<DT><STRONG><A NAME="item_part_pkg">part_pkg</A></STRONG><DD> -<P> -Returns the FS::part_pkg object (see <A HREF="../FS/part_pkg.html">FS::part_pkg</A>). - -<DT><STRONG><A NAME="item_part_svc">part_svc</A></STRONG><DD> -<P> -Returns the FS::part_svc object (see <A HREF="../FS/part_svc.html">FS::part_svc</A>). - -</DL> -<P> -<HR> -<H1><A NAME="VERSION">VERSION</A></H1> -<P> -$Id: pkg_svc.html,v 1.1 1999-08-04 12:13:27 ivan Exp $ - -<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">FS::Record</A>, <A HREF="../FS/part_pkg.html">FS::part_pkg</A>, <A HREF="../FS/part_svc.html">FS::part_svc</A>, schema.html from the base documentation. - -</BODY> - -</HTML> diff --git a/htdocs/docs/man/FS/svc_Common.html b/htdocs/docs/man/FS/svc_Common.html deleted file mode 100644 index d8d81a0a7..000000000 --- a/htdocs/docs/man/FS/svc_Common.html +++ /dev/null @@ -1,109 +0,0 @@ -<HTML> -<HEAD> -<TITLE>FS::svc_Common - Object method for all svc_ records</TITLE> -<LINK REV="made" HREF="mailto:ivan@rootwood.sisd.com"> -</HEAD> - -<BODY> - -<!-- INDEX BEGIN --> - -<UL> - - <LI><A HREF="#NAME">NAME</A> - <LI><A HREF="#SYNOPSIS">SYNOPSIS</A> - <LI><A HREF="#DESCRIPTION">DESCRIPTION</A> - <LI><A HREF="#METHODS">METHODS</A> - <LI><A HREF="#VERSION">VERSION</A> - <LI><A HREF="#BUGS">BUGS</A> - <LI><A HREF="#SEE_ALSO">SEE ALSO</A> -</UL> -<!-- INDEX END --> - -<HR> -<P> -<H1><A NAME="NAME">NAME</A></H1> -<P> -FS::svc_Common - Object method for all svc_ records - -<P> -<HR> -<H1><A NAME="SYNOPSIS">SYNOPSIS</A></H1> -<P> -use FS::svc_Common; - -<P> -<CODE>@ISA</CODE> = <CODE>qw(</CODE> FS::svc_Common ); - -<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> -<HR> -<H1><A NAME="METHODS">METHODS</A></H1> -<DL> -<DT><STRONG><A NAME="item_insert">insert</A></STRONG><DD> -<P> -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">FS::cust_svc</A>) should be defined. An FS::cust_svc record will be created and inserted. - -<DT><STRONG><A NAME="item_delete">delete</A></STRONG><DD> -<P> -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. - -<DT><STRONG><A NAME="item_setfixed">setfixed</A></STRONG><DD> -<P> -Sets any fixed fields for this service (see <A HREF="../FS/part_svc.html">FS::part_svc</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. - -<DT><STRONG><A NAME="item_setdefault">setdefault</A></STRONG><DD> -<P> -Sets all fields to their defaults (see <A HREF="../FS/part_svc.html">FS::part_svc</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). - -<DT><STRONG><A NAME="item_suspend">suspend</A></STRONG><DD> -<DT><STRONG><A NAME="item_unsuspend">unsuspend</A></STRONG><DD> -<DT><STRONG><A NAME="item_cancel">cancel</A></STRONG><DD> -<P> -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">FS::cust_pkg</A>). - -</DL> -<P> -<HR> -<H1><A NAME="VERSION">VERSION</A></H1> -<P> -$Id: svc_Common.html,v 1.1 1999-08-04 12:13:27 ivan Exp $ - -<P> -<HR> -<H1><A NAME="BUGS">BUGS</A></H1> -<P> -The setfixed method return value. - -<P> -The new method should set defaults from part_svc (like the check method -sets fixed values)? - -<P> -<HR> -<H1><A NAME="SEE_ALSO">SEE ALSO</A></H1> -<P> -<A HREF="../FS/Record.html">FS::Record</A>, <A HREF="../FS/cust_svc.html">FS::cust_svc</A>, <A HREF="../FS/part_svc.html">FS::part_svc</A>, <A HREF="../FS/cust_pkg.html">FS::cust_pkg</A>, schema.html from the base documentation. - -</BODY> - -</HTML> diff --git a/htdocs/docs/man/FS/svc_acct.html b/htdocs/docs/man/FS/svc_acct.html deleted file mode 100644 index 4b307455e..000000000 --- a/htdocs/docs/man/FS/svc_acct.html +++ /dev/null @@ -1,210 +0,0 @@ -<HTML> -<HEAD> -<TITLE>FS::svc_acct - Object methods for svc_acct records</TITLE> -<LINK REV="made" HREF="mailto:ivan@rootwood.sisd.com"> -</HEAD> - -<BODY> - -<!-- INDEX BEGIN --> - -<UL> - - <LI><A HREF="#NAME">NAME</A> - <LI><A HREF="#SYNOPSIS">SYNOPSIS</A> - <LI><A HREF="#DESCRIPTION">DESCRIPTION</A> - <LI><A HREF="#METHODS">METHODS</A> - <LI><A HREF="#VERSION">VERSION</A> - <LI><A HREF="#BUGS">BUGS</A> - <LI><A HREF="#SEE_ALSO">SEE ALSO</A> -</UL> -<!-- INDEX END --> - -<HR> -<P> -<H1><A NAME="NAME">NAME</A></H1> -<P> -FS::svc_acct - Object methods for svc_acct records - -<P> -<HR> -<H1><A NAME="SYNOPSIS">SYNOPSIS</A></H1> -<P> -<PRE> use FS::svc_acct; -</PRE> -<P> -<PRE> $record = new FS::svc_acct \%hash; - $record = new FS::svc_acct { 'column' => 'value' }; -</PRE> -<P> -<PRE> $error = $record->insert; -</PRE> -<P> -<PRE> $error = $new_record->replace($old_record); -</PRE> -<P> -<PRE> $error = $record->delete; -</PRE> -<P> -<PRE> $error = $record->check; -</PRE> -<P> -<PRE> $error = $record->suspend; -</PRE> -<P> -<PRE> $error = $record->unsuspend; -</PRE> -<P> -<PRE> $error = $record->cancel; -</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: - -<DL> -<DT><STRONG><A NAME="item_svcnum">svcnum - primary key (assigned automatcially for new accounts)</A></STRONG><DD> -<DT><STRONG><A NAME="item_username">username</A></STRONG><DD> -<DT><STRONG><A NAME="item__password">_password - generated if blank</A></STRONG><DD> -<DT><STRONG><A NAME="item_popnum">popnum - Point of presence (see FS::svc_acct_pop)</A></STRONG><DD> -<DT><STRONG><A NAME="item_uid">uid</A></STRONG><DD> -<DT><STRONG><A NAME="item_gid">gid</A></STRONG><DD> -<DT><STRONG><A NAME="item_finger">finger - GECOS</A></STRONG><DD> -<DT><STRONG><A NAME="item_dir">dir - set automatically if blank (and uid is not)</A></STRONG><DD> -<DT><STRONG><A NAME="item_shell">shell</A></STRONG><DD> -<DT><STRONG><A NAME="item_quota">quota - (unimplementd)</A></STRONG><DD> -<DT><STRONG><A NAME="item_slipip">slipip - IP address</A></STRONG><DD> -<DT><STRONG><A NAME="item_radius_Radius_Attribute">radius_Radius_Attribute - Radius-Attribute</A></STRONG><DD> -</DL> -<P> -<HR> -<H1><A NAME="METHODS">METHODS</A></H1> -<DL> -<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><DD> -<P> -Creates a new account. To add the account to the database, see <A HREF="#insert">insert</A>. - -<DT><STRONG><A NAME="item_insert">insert</A></STRONG><DD> -<P> -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">FS::cust_svc</A>) should be defined. An FS::cust_svc record will be created and inserted. - -<P> -If the configuration value (see <A HREF="../FS/Conf.html">FS::Conf</A>) shellmachine exists, and the username, uid, and dir fields are defined, -the command - -<P> -<PRE> useradd -d $dir -m -s $shell -u $uid $username -</PRE> -<P> -is executed on shellmachine via ssh. This behaviour can be surpressed by -setting $FS::svc_acct::nossh_hack true. - -<DT><STRONG><A NAME="item_delete">delete</A></STRONG><DD> -<P> -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> -If the configuration value (see <A HREF="../FS/Conf.html">FS::Conf</A>) shellmachine exists, the command: - -<P> -<PRE> userdel $username -</PRE> -<P> -is executed on shellmachine via ssh. This behaviour can be surpressed by -setting $FS::svc_acct::nossh_hack true. - -<DT><STRONG><A NAME="item_replace">replace OLD_RECORD</A></STRONG><DD> -<P> -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">FS::Conf</A>) shellmachine exists, and the dir field has changed, the command: - -<P> -<PRE> [ -d $old_dir ] && ( - chmod u+t $old_dir; - umask 022; - 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 executed on shellmachine via ssh. This behaviour can be surpressed by -setting $FS::svc_acct::nossh_hack true. - -<DT><STRONG><A NAME="item_suspend">suspend</A></STRONG><DD> -<P> -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">FS::cust_pkg</A>). - -<DT><STRONG><A NAME="item_unsuspend">unsuspend</A></STRONG><DD> -<P> -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">FS::cust_pkg</A>). - -<DT><STRONG><A NAME="item_cancel">cancel</A></STRONG><DD> -<P> -Just returns false (no error) for now. - -<P> -Called by the cancel method of FS::cust_pkg (see <A HREF="../FS/cust_pkg.html">FS::cust_pkg</A>). - -<DT><STRONG><A NAME="item_check">check</A></STRONG><DD> -<P> -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">FS::part_svc</A>. - -</DL> -<P> -<HR> -<H1><A NAME="VERSION">VERSION</A></H1> -<P> -$Id: svc_acct.html,v 1.1 1999-08-04 12:13:27 ivan Exp $ - -<P> -<HR> -<H1><A NAME="BUGS">BUGS</A></H1> -<P> -The remote commands should be configurable. - -<P> -The bits which ssh should fork before doing so. - -<P> -The <CODE>$recref</CODE> stuff in sub check should be cleaned up. - -<P> -<HR> -<H1><A NAME="SEE_ALSO">SEE ALSO</A></H1> -<P> -<A HREF="../FS/svc_Common.html">FS::svc_Common</A>, <A HREF="../FS/Record.html">FS::Record</A>, <A HREF="../FS/Conf.html">FS::Conf</A>, <A HREF="../FS/cust_svc.html">FS::cust_svc</A>, -<A HREF="../FS/part_svc.html">FS::part_svc</A>, <A HREF="../FS/cust_pkg.html">FS::cust_pkg</A>, <A HREF="../FS/SSH.html">FS::SSH</A>, <EM>ssh</EM>, <A HREF="../FS/svc_acct_pop.html">FS::svc_acct_pop</A>, schema.html from the base documentation. - -</BODY> - -</HTML> diff --git a/htdocs/docs/man/FS/svc_acct_pop.html b/htdocs/docs/man/FS/svc_acct_pop.html deleted file mode 100644 index 0deee2eac..000000000 --- a/htdocs/docs/man/FS/svc_acct_pop.html +++ /dev/null @@ -1,115 +0,0 @@ -<HTML> -<HEAD> -<TITLE>FS::svc_acct_pop - Object methods for svc_acct_pop records</TITLE> -<LINK REV="made" HREF="mailto:ivan@rootwood.sisd.com"> -</HEAD> - -<BODY> - -<!-- INDEX BEGIN --> - -<UL> - - <LI><A HREF="#NAME">NAME</A> - <LI><A HREF="#SYNOPSIS">SYNOPSIS</A> - <LI><A HREF="#DESCRIPTION">DESCRIPTION</A> - <LI><A HREF="#METHODS">METHODS</A> - <LI><A HREF="#VERSION">VERSION</A> - <LI><A HREF="#BUGS">BUGS</A> - <LI><A HREF="#SEE_ALSO">SEE ALSO</A> -</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> -<HR> -<H1><A NAME="SYNOPSIS">SYNOPSIS</A></H1> -<P> -<PRE> use FS::svc_acct_pop; -</PRE> -<P> -<PRE> $record = new FS::svc_acct_pop \%hash; - $record = new FS::svc_acct_pop { 'column' => 'value' }; -</PRE> -<P> -<PRE> $error = $record->insert; -</PRE> -<P> -<PRE> $error = $new_record->replace($old_record); -</PRE> -<P> -<PRE> $error = $record->delete; -</PRE> -<P> -<PRE> $error = $record->check; -</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: - -<DL> -<DT><STRONG><A NAME="item_popnum">popnum - primary key (assigned automatically for new accounts)</A></STRONG><DD> -<DT><STRONG><A NAME="item_city">city</A></STRONG><DD> -<DT><STRONG><A NAME="item_state">state</A></STRONG><DD> -<DT><STRONG><A NAME="item_ac">ac - area code</A></STRONG><DD> -<DT><STRONG><A NAME="item_exch">exch - exchange</A></STRONG><DD> -</DL> -<P> -<HR> -<H1><A NAME="METHODS">METHODS</A></H1> -<DL> -<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><DD> -<P> -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>. - -<DT><STRONG><A NAME="item_insert">insert</A></STRONG><DD> -<P> -Adds this point of presence to the database. If there is an error, returns -the error, otherwise returns false. - -<DT><STRONG><A NAME="item_delete">delete</A></STRONG><DD> -<P> -Removes this point of presence from the database. - -<DT><STRONG><A NAME="item_replace">replace OLD_RECORD</A></STRONG><DD> -<P> -Replaces OLD_RECORD with this one in the database. If there is an error, -returns the error, otherwise returns false. - -<DT><STRONG><A NAME="item_check">check</A></STRONG><DD> -<P> -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. - -</DL> -<P> -<HR> -<H1><A NAME="VERSION">VERSION</A></H1> -<P> -$Id: svc_acct_pop.html,v 1.1 1999-08-04 12:13:27 ivan Exp $ - -<P> -<HR> -<H1><A NAME="BUGS">BUGS</A></H1> -<P> -It should be renamed to part_pop. - -<P> -<HR> -<H1><A NAME="SEE_ALSO">SEE ALSO</A></H1> -<P> -<A HREF="../FS/Record.html">FS::Record</A>, <A HREF=".././FS/svc_acct.html#">the svc_acct manpage</A>, schema.html from the base documentation. - -</BODY> - -</HTML> diff --git a/htdocs/docs/man/FS/svc_acct_sm.html b/htdocs/docs/man/FS/svc_acct_sm.html deleted file mode 100644 index 2b8348544..000000000 --- a/htdocs/docs/man/FS/svc_acct_sm.html +++ /dev/null @@ -1,172 +0,0 @@ -<HTML> -<HEAD> -<TITLE>FS::svc_acct_sm - Object methods for svc_acct_sm records</TITLE> -<LINK REV="made" HREF="mailto:ivan@rootwood.sisd.com"> -</HEAD> - -<BODY> - -<!-- INDEX BEGIN --> - -<UL> - - <LI><A HREF="#NAME">NAME</A> - <LI><A HREF="#SYNOPSIS">SYNOPSIS</A> - <LI><A HREF="#DESCRIPTION">DESCRIPTION</A> - <LI><A HREF="#METHODS">METHODS</A> - <LI><A HREF="#VERSION">VERSION</A> - <LI><A HREF="#BUGS">BUGS</A> - <LI><A HREF="#SEE_ALSO">SEE ALSO</A> -</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> -<HR> -<H1><A NAME="SYNOPSIS">SYNOPSIS</A></H1> -<P> -<PRE> use FS::svc_acct_sm; -</PRE> -<P> -<PRE> $record = new FS::svc_acct_sm \%hash; - $record = new FS::svc_acct_sm { 'column' => 'value' }; -</PRE> -<P> -<PRE> $error = $record->insert; -</PRE> -<P> -<PRE> $error = $new_record->replace($old_record); -</PRE> -<P> -<PRE> $error = $record->delete; -</PRE> -<P> -<PRE> $error = $record->check; -</PRE> -<P> -<PRE> $error = $record->suspend; -</PRE> -<P> -<PRE> $error = $record->unsuspend; -</PRE> -<P> -<PRE> $error = $record->cancel; -</PRE> -<P> -<HR> -<H1><A NAME="DESCRIPTION">DESCRIPTION</A></H1> -<P> -An FS::svc_acct object represents a virtual mail alias. FS::svc_acct -inherits from FS::Record. The following fields are currently supported: - -<DL> -<DT><STRONG><A NAME="item_svcnum">svcnum - primary key (assigned automatcially for new accounts)</A></STRONG><DD> -<DT><STRONG><A NAME="item_domsvc">domsvc - svcnum of the virtual domain (see FS::svc_domain)</A></STRONG><DD> -<DT><STRONG><A NAME="item_domuid">domuid - uid of the target account (see FS::svc_acct)</A></STRONG><DD> -<DT><STRONG><A NAME="item_domuser">domuser - virtual username</A></STRONG><DD> -</DL> -<P> -<HR> -<H1><A NAME="METHODS">METHODS</A></H1> -<DL> -<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><DD> -<P> -Creates a new virtual mail alias. To add the virtual mail alias to the -database, see <A HREF="#insert">insert</A>. - -<DT><STRONG><A NAME="item_insert">insert</A></STRONG><DD> -<P> -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">FS::cust_svc</A>) should be defined. An FS::cust_svc record will be created and inserted. - -<P> -If the configuration values (see <A HREF="../FS/Conf.html">FS::Conf</A>) shellmachine and qmailmachines exist, and domuser is `*' (meaning a -catch-all mailbox), the command: - -<P> -<PRE> [ -e $dir/.qmail-$qdomain-default ] || { - touch $dir/.qmail-$qdomain-default; - chown $uid:$gid $dir/.qmail-$qdomain-default; - } -</PRE> -<P> -is executed on shellmachine via ssh (see <EM>dot-qmail</EM>). This behaviour can be surpressed by setting $FS::svc_acct_sm::nossh_hack -true. - -<DT><STRONG><A NAME="item_delete">delete</A></STRONG><DD> -<P> -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. - -<DT><STRONG><A NAME="item_replace">replace OLD_RECORD</A></STRONG><DD> -<P> -Replaces OLD_RECORD with this one in the database. If there is an error, -returns the error, otherwise returns false. - -<DT><STRONG><A NAME="item_suspend">suspend</A></STRONG><DD> -<P> -Just returns false (no error) for now. - -<P> -Called by the suspend method of FS::cust_pkg (see <A HREF="../FS/cust_pkg.html">FS::cust_pkg</A>). - -<DT><STRONG><A NAME="item_unsuspend">unsuspend</A></STRONG><DD> -<P> -Just returns false (no error) for now. - -<P> -Called by the unsuspend method of FS::cust_pkg (see <A HREF="../FS/cust_pkg.html">FS::cust_pkg</A>). - -<DT><STRONG><A NAME="item_cancel">cancel</A></STRONG><DD> -<P> -Just returns false (no error) for now. - -<P> -Called by the cancel method of FS::cust_pkg (see <A HREF="../FS/cust_pkg.html">FS::cust_pkg</A>). - -<DT><STRONG><A NAME="item_check">check</A></STRONG><DD> -<P> -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">FS::part_svc</A>. - -</DL> -<P> -<HR> -<H1><A NAME="VERSION">VERSION</A></H1> -<P> -$Id: svc_acct_sm.html,v 1.1 1999-08-04 12:13:27 ivan Exp $ - -<P> -<HR> -<H1><A NAME="BUGS">BUGS</A></H1> -<P> -The remote commands should be configurable. - -<P> -The <CODE>$recref</CODE> stuff in sub check should be cleaned up. - -<P> -<HR> -<H1><A NAME="SEE_ALSO">SEE ALSO</A></H1> -<P> -<A HREF="../FS/Record.html">FS::Record</A>, <A HREF="../FS/Conf.html">FS::Conf</A>, <A HREF="../FS/cust_svc.html">FS::cust_svc</A>, <A HREF="../FS/part_svc.html">FS::part_svc</A>, <A HREF="../FS/cust_pkg.html">FS::cust_pkg</A>, -<A HREF="../FS/svc_acct.html">FS::svc_acct</A>, <A HREF="../FS/svc_domain.html">FS::svc_domain</A>, <A HREF="../FS/SSH.html">FS::SSH</A>, <EM>ssh</EM>, <EM>dot-qmail</EM>, schema.html from the base documentation. - -</BODY> - -</HTML> diff --git a/htdocs/docs/man/FS/svc_domain.html b/htdocs/docs/man/FS/svc_domain.html deleted file mode 100644 index 9b5e1a53c..000000000 --- a/htdocs/docs/man/FS/svc_domain.html +++ /dev/null @@ -1,196 +0,0 @@ -<HTML> -<HEAD> -<TITLE>FS::svc_domain - Object methods for svc_domain records</TITLE> -<LINK REV="made" HREF="mailto:ivan@rootwood.sisd.com"> -</HEAD> - -<BODY> - -<!-- INDEX BEGIN --> - -<UL> - - <LI><A HREF="#NAME">NAME</A> - <LI><A HREF="#SYNOPSIS">SYNOPSIS</A> - <LI><A HREF="#DESCRIPTION">DESCRIPTION</A> - <LI><A HREF="#METHODS">METHODS</A> - <LI><A HREF="#VERSION">VERSION</A> - <LI><A HREF="#BUGS">BUGS</A> - <LI><A HREF="#SEE_ALSO">SEE ALSO</A> -</UL> -<!-- INDEX END --> - -<HR> -<P> -<H1><A NAME="NAME">NAME</A></H1> -<P> -FS::svc_domain - Object methods for svc_domain records - -<P> -<HR> -<H1><A NAME="SYNOPSIS">SYNOPSIS</A></H1> -<P> -<PRE> use FS::svc_domain; -</PRE> -<P> -<PRE> $record = new FS::svc_domain \%hash; - $record = new FS::svc_domain { 'column' => 'value' }; -</PRE> -<P> -<PRE> $error = $record->insert; -</PRE> -<P> -<PRE> $error = $new_record->replace($old_record); -</PRE> -<P> -<PRE> $error = $record->delete; -</PRE> -<P> -<PRE> $error = $record->check; -</PRE> -<P> -<PRE> $error = $record->suspend; -</PRE> -<P> -<PRE> $error = $record->unsuspend; -</PRE> -<P> -<PRE> $error = $record->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: - -<DL> -<DT><STRONG><A NAME="item_svcnum">svcnum - primary key (assigned automatically for new accounts)</A></STRONG><DD> -<DT><STRONG><A NAME="item_domain">domain</A></STRONG><DD> -</DL> -<P> -<HR> -<H1><A NAME="METHODS">METHODS</A></H1> -<DL> -<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><DD> -<P> -Creates a new domain. To add the domain to the database, see <A HREF="#insert">insert</A>. - -<DT><STRONG><A NAME="item_insert">insert</A></STRONG><DD> -<P> -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">FS::cust_svc</A>) should be defined. An FS::cust_svc record will be created and inserted. - -<P> -The additional field <EM>action</EM> should be set to <EM>N</EM> for new domains or <EM>M</EM> -for transfers. - -<P> -A registration or transfer email will be submitted unless -$FS::svc_domain::whois_hack is true. - -<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">FS::cust_pkg</A>) are searched. If there is exactly one svc_acct record in the same -package, it is automatically used. Otherwise an error is returned. - -<DT><STRONG><A NAME="item_delete">delete</A></STRONG><DD> -<P> -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. - -<DT><STRONG><A NAME="item_replace">replace OLD_RECORD</A></STRONG><DD> -<P> -Replaces OLD_RECORD with this one in the database. If there is an error, -returns the error, otherwise returns false. - -<DT><STRONG><A NAME="item_suspend">suspend</A></STRONG><DD> -<P> -Just returns false (no error) for now. - -<P> -Called by the suspend method of FS::cust_pkg (see <A HREF="../FS/cust_pkg.html">FS::cust_pkg</A>). - -<DT><STRONG><A NAME="item_unsuspend">unsuspend</A></STRONG><DD> -<P> -Just returns false (no error) for now. - -<P> -Called by the unsuspend method of FS::cust_pkg (see <A HREF="../FS/cust_pkg.html">FS::cust_pkg</A>). - -<DT><STRONG><A NAME="item_cancel">cancel</A></STRONG><DD> -<P> -Just returns false (no error) for now. - -<P> -Called by the cancel method of FS::cust_pkg (see <A HREF="../FS/cust_pkg.html">FS::cust_pkg</A>). - -<DT><STRONG><A NAME="item_check">check</A></STRONG><DD> -<P> -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">FS::part_svc</A>. - -<DT><STRONG><A NAME="item_whois">whois</A></STRONG><DD> -<P> -Returns the Net::Whois object corresponding to 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.) - -<DT><STRONG><A NAME="item__whois">_whois</A></STRONG><DD> -<P> -Depriciated. - -<DT><STRONG><A NAME="item_submit_internic">submit_internic</A></STRONG><DD> -<P> -Submits a registration email for this domain. - -</DL> -<P> -<HR> -<H1><A NAME="VERSION">VERSION</A></H1> -<P> -$Id: svc_domain.html,v 1.1 1999-08-04 12:13:27 ivan Exp $ - -<P> -<HR> -<H1><A NAME="BUGS">BUGS</A></H1> -<P> -All BIND/DNS fields should be included (and exported). - -<P> -Delete doesn't send a registration template. - -<P> -All registries should be supported. - -<P> -Should change action to a real field. - -<P> -The <CODE>$recref</CODE> stuff in sub check should be cleaned up. - -<P> -<HR> -<H1><A NAME="SEE_ALSO">SEE ALSO</A></H1> -<P> -<A HREF="../FS/svc_Common.html">FS::svc_Common</A>, <A HREF="../FS/Record.html">FS::Record</A>, <A HREF="../FS/Conf.html">FS::Conf</A>, <A HREF="../FS/cust_svc.html">FS::cust_svc</A>, -<A HREF="../FS/part_svc.html">FS::part_svc</A>, <A HREF="../FS/cust_pkg.html">FS::cust_pkg</A>, <A HREF="../FS/SSH.html">FS::SSH</A>, <A HREF="../Net/Whois.html">Net::Whois</A>, <EM>ssh</EM>, -<EM>dot-qmail</EM>, schema.html from the base documentation, config.html from the base -documentation. - -</BODY> - -</HTML> diff --git a/htdocs/docs/man/FS/type_pkgs.html b/htdocs/docs/man/FS/type_pkgs.html deleted file mode 100644 index aa55cce9d..000000000 --- a/htdocs/docs/man/FS/type_pkgs.html +++ /dev/null @@ -1,109 +0,0 @@ -<HTML> -<HEAD> -<TITLE>FS::type_pkgs - Object methods for type_pkgs records</TITLE> -<LINK REV="made" HREF="mailto:ivan@rootwood.sisd.com"> -</HEAD> - -<BODY> - -<!-- INDEX BEGIN --> - -<UL> - - <LI><A HREF="#NAME">NAME</A> - <LI><A HREF="#SYNOPSIS">SYNOPSIS</A> - <LI><A HREF="#DESCRIPTION">DESCRIPTION</A> - <LI><A HREF="#METHODS">METHODS</A> - <LI><A HREF="#VERSION">VERSION</A> - <LI><A HREF="#BUGS">BUGS</A> - <LI><A HREF="#SEE_ALSO">SEE ALSO</A> -</UL> -<!-- INDEX END --> - -<HR> -<P> -<H1><A NAME="NAME">NAME</A></H1> -<P> -FS::type_pkgs - Object methods for type_pkgs records - -<P> -<HR> -<H1><A NAME="SYNOPSIS">SYNOPSIS</A></H1> -<P> -<PRE> use FS::type_pkgs; -</PRE> -<P> -<PRE> $record = new FS::type_pkgs \%hash; - $record = new FS::type_pkgs { 'column' => 'value' }; -</PRE> -<P> -<PRE> $error = $record->insert; -</PRE> -<P> -<PRE> $error = $new_record->replace($old_record); -</PRE> -<P> -<PRE> $error = $record->delete; -</PRE> -<P> -<PRE> $error = $record->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">FS::agent_type</A>) to a billing item definition (see <A HREF="../FS/part_pkg.html">FS::part_pkg</A>). FS::type_pkgs inherits from FS::Record. The following fields are -currently supported: - -<DL> -<DT><STRONG><A NAME="item_typenum">typenum - Agent type, see FS::agent_type</A></STRONG><DD> -<DT><STRONG><A NAME="item_pkgpart">pkgpart - Billing item definition, see FS::part_pkg</A></STRONG><DD> -</DL> -<P> -<HR> -<H1><A NAME="METHODS">METHODS</A></H1> -<DL> -<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><DD> -<P> -Create a new record. To add the record to the database, see <A HREF="#insert">insert</A>. - -<DT><STRONG><A NAME="item_insert">insert</A></STRONG><DD> -<P> -Adds this record to the database. If there is an error, returns the error, -otherwise returns false. - -<DT><STRONG><A NAME="item_delete">delete</A></STRONG><DD> -<P> -Deletes this record from the database. If there is an error, returns the -error, otherwise returns false. - -<DT><STRONG><A NAME="item_replace">replace OLD_RECORD</A></STRONG><DD> -<P> -Replaces OLD_RECORD with this one in the database. If there is an error, -returns the error, otherwise returns false. - -<DT><STRONG><A NAME="item_check">check</A></STRONG><DD> -<P> -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. - -</DL> -<P> -<HR> -<H1><A NAME="VERSION">VERSION</A></H1> -<P> -$Id: type_pkgs.html,v 1.1 1999-08-04 12:13:27 ivan Exp $ - -<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">FS::Record</A>, <A HREF="../FS/agent_type.html">FS::agent_type</A>, <A HREF="../FS/part_pkgs.html">FS::part_pkgs</A>, schema.html from the base documentation. - -</BODY> - -</HTML> diff --git a/htdocs/docs/passwd.html b/htdocs/docs/passwd.html deleted file mode 100644 index a8f8151e2..000000000 --- a/htdocs/docs/passwd.html +++ /dev/null @@ -1,16 +0,0 @@ -<head> - <title>fs_passwd</title> -</head> -<body> - <h1>fs_passwd</h1> -You may use fs_passwd/fs_passwd as a "passwd", "chfn" and "chsh" replacement on your shell machine(s) to cause password, gecos and shell changes to update your freeside machine. This can pose a security risk if not configured correctly. <b>Do not use this feature unless you understand what you are doing!</b> -<br><br>Currently it is assumed that the the crypt(3) function in the C library is the same on the Freeside machine as on the target machine. -<ul> - <li>Create a freeside account on the shell machine(s). - <li>Append the identity.pub from the freeside user on your freeside machine to the authorized_keys file of the newly created freeside user on the shell machine(s). - <li>Copy fs_passwd/fs_passwd to /usr/local/bin on the shell machine(s). (chown freeside, chmod 4755). You may link it to passwd, chfn and chsh as well. - <li>Copy fs_passwd/fs_passwdd to /usr/local/sbin on the shell machine(s). (chown freeside, chmod 500) - <li>Create /usr/local/freeside on the shell machine(s). (chown freeside, chmod 700) - <li>Run an iteration of "fs_passwd/fs_passwd_server shell.machine" as the freeside user for each shell machine (this is a daemon process). -</ul> -</body> diff --git a/htdocs/docs/postgresql.html b/htdocs/docs/postgresql.html deleted file mode 100755 index 151081176..000000000 --- a/htdocs/docs/postgresql.html +++ /dev/null @@ -1,23 +0,0 @@ -<head> - <title>PostgreSQL notes</title> -</head> -<body> - <h1>PostgreSQL notes</h1> -<p> -PostgreSQL ships by default with a maximum of 31 character column names. If -you use arbitrary RADIUS attributes longer than 9 characters, fs-setup will -fail with `duplicate column' errors (in the part_svc table). -Solution: use a different database -engine, or recompile PostgreSQL with 64 character column names. -</p> -Future versions of Freeside will keep all column names under 31 characters to -avoid this problem. -</p> -<p> -( I've personally been unable to get PostgreSQL working with larger column names, -though the process does look like it should be straightforward. If anyone is -interested in assisting me with this, please get in touch. - -Ivan <a href="mailto:ivan@sisd.com"><ivan@sisd.com</a>> ) -</p> -</body> - diff --git a/htdocs/docs/schema.html b/htdocs/docs/schema.html deleted file mode 100644 index 3eea6f69d..000000000 --- a/htdocs/docs/schema.html +++ /dev/null @@ -1,227 +0,0 @@ -<head> - <title>Schema reference</title> -</head> -<body> - <h1>Schema reference</h1> - <ul> - <li><a name="agent">agent</a> - Agents are resellers of your service. Agents may be limited to a subset of your full offerings (via their agent type). - <ul> - <li>agentnum - primary key - <li>agent - name of this agent - <li>typenum - <a href="#agent_type">agent type</a> - <li>prog - (unimplemented) - <li>freq - (unimplemented) - </ul> - <li><a name="agent_type">agent_type</a> - Agent types define groups of packages that you can then assign to particular agents. - <ul> - <li>typenum - primary key - <li>atype - name of this agent type - </ul> - <li><a name="cust_bill">cust_bill</a> - Invoices - <ul> - <li>invnum - primary key - <li>custnum - <a href="#cust_main">customer</a> - <li>_date - <li>charged - amount of this invoice - <li>owed - amount still outstanding on this invoice - <li>printed - how many times this invoice has been printed automatically - </ul> - <li><a name="cust_bill_pkg">cust_bill_pkg</a> - Invoice line items - <ul> - <li>invnum - (multiple) key - <li>pkgnum - <a href="#cust_pkg">package</a> - <li>setup - setup fee - <li>recur - recurring fee - <li>sdate - starting date - <li>edate - ending date - </ul> - <li><a name="cust_credit">cust_credit</a> - Credits - <ul> - <li>crednum - primary key - <li>custnum - <a href="#cust_main">customer</a> - <li>amount - amount credited - <li>credited - amount still outstanding (not yet refunded) on this credit - <li>_date - <li>otaker - order taker - <li>reason - </ul> - <li><a name="cust_main">cust_main</a> - Customers - <ul> - <li>custnum - primary key - <li>agentnum - <a href="#agent">agent</a> - <li>refnum - <a href="#part_referral">referral</a> - <li>titlenum - <a href="#part_title">title</a> - <li>first - name - <li>middle - name - <li>last - name - <li>ss - social security number - <li>company - <li>address1 - <li>address2 - <li>city - <li>county - <li>state - <li>zip - <li>country - <li>daytime - phone - <li>night - phone - <li>fax - phone - <li>payby - CARD, BILL, or COMP - <li>payinfo - card number, P.O.#, or comp issuer - <li>paydate - expiration date - <li>payname - billing name (name on card) - <li>tax - tax exempt, Y or null - <li>otaker - order taker - </ul> - <li><a name="cust_main_invoice">cust_main_invoice</a> - Invoice destinations for email invoices - <ul> - <li>destnum - primary key - <li>custnum - <a href="#cust_main">customer</a> - <li>dest - Invoice destination: If numeric, a <a href="#svc_acct">svcnum</a>, if string, a literal email address, or `POST' to enable mailing (the default if no cust_main_invoice records exist) - </ul> - <li><a name="cust_main_county">cust_main_county</a> - Tax rates - <ul> - <li>taxnum - primary key - <li>state - <li>county - <li>country - <li>tax - % rate - </ul> - <li><a name="cust_pay">cust_pay</a> - Payments - <ul> - <li>paynum - primary key - <li>invnum - <a href="#cust_bill">invoice</a> - <li>paid - amount - <li>_date - <li>payby - CARD, BILL, or COMP - <li>payinfo - card number, P.O.#, or comp issuer - <li>paybatch - text field for tracking card processor batches - </ul> - <li><a name="cust_pay_batch">cust_pay_batch</a> - Pending batch - <ul> - <li>trancode - 77 for charges - <li>cardnum - <li>exp - card expiration - <li>amount - <li>invnum - <a href="#cust_bill">invoice</a> - <li>custnum - <a href="#cust_main">customer</a> - <li>payname - name on card - <li>first - name - <li>last - name - <li>address1 - <li>address2 - <li>city - <li>state - <li>zip - <li>country - </ul> - <li><a name="cust_pkg">cust_pkg</a> - Customer billing items - <ul> - <li>pkgnum - primary key - <li>custnum - <a href="#cust_main">customer</a> - <li>pkgpart - <a href="#part_pkg">Package definition</a> - <li>setup - date - <li>bill - next bill date - <li>susp - (past) suspension date - <li>expire - (future) cancellation date - <li>cancel - (past) cancellation date - <li>otaker - order taker - </ul> - <li><a name="cust_refund">cust_refund</a> - Refunds - <ul> - <li>refundnum - primary key - <li>crednum - <a href="#cust_credit">credit</a> - <li>refund - amount - <li>_date - <li>payby - CARD, BILL or COMP - <li>payinfo - card number, P.O.#, or comp issuer - <li>otaker - order taker - </ul> - <li><a name="cust_svc">cust_svc</a> - Customer services - <ul> - <li>svcnum - primary key - <li>pkgnum - <a href="#cust_pkg">package</a> - <li>svcpart - <a href="#part_svc">Service definition</a> - </ul> - <li><a name="part_pkg">part_pkg</a> - Package definitions - <ul> - <li>pkgpart - primary key - <li>pkg - package name - <li>comment - non-customer visable package comment - <li>setup - setup fee - <li>freq - recurring frequency (months) - <li>recur - recurring fee - </ul> - <li><a name="part_referral">part_referral</a> - Referral listing - <ul> - <li>refnum - primary key - <li>referral - referral - </ul> - <li><a name="part_svc">part_svc</a> - Service definitions - <ul> - <li>svcpart - primary key - <li>svc - name of this service - <li>svcdb - table used for this service: svc_acct, svc_acct_sm, svc_domain, svc_charge or svc_wo - <li><i>table</i>__<i>field</i> - Default or fixed value for <i>field</i> in <i>table</i> - <li><i>table</i>__<i>field</i>_flag - null, D or F - </ul> - <li><a name="part_title">part_title</a> - Personal titles - <ul> - <li>titlenum - primary key - <li>title - personal title (`Dr.' or `Mr.') - </ul> - <li><a name="pkg_svc">pkg_svc</a> - <ul> - <li>pkgpart - <a href="#part_pkg">Package definition</a> - <li>svcpart - <a href="#part_svc">Service definition</a> - <li>quantity - quantity of this service that this package includes - </ul> - <li><a name="prepay_credit">prepay_credit</a> - <ul> - <li>prepaynum - primary key - <li>identifier - text or numeric string used to receive this credit - <li>amount - amount of credit - </ul> - <li><a name="svc_acct">svc_acct</a> - Accounts - <ul> - <li>svcnum - <a href="#cust_svc">primary key</a> - <li>username - <li>_password - <li>popnum - <a href="#svc_acct_pop">Point of Presence</a> - <li>uid - <li>gid - <li>finger - GECOS - <li>dir - <li>shell - <li>quota - (unimplementd) - <li>slipip - IP address - <li>radius_<i>Radius_Attribute</i> - Radius-Attribute - </ul> - <li><a name="svc_acct_pop">svc_acct_pop</a> - Points of Presence - <ul> - <li>popnum - primary key - <li>city - <li>state - <li>ac - area code - <li>exch - exchange - <li>loc - rest of number - </ul> - <li><a name="svc_acct_sm">svc_acct_sm</a> - Domain mail aliases - <ul> - <li>svcnum - <a href="#cust_svc">primary key</a> - <li>domsvc - <a href="#svc_domain">Domain</a> (by svcnum) - <li>domuid - <a href="#svc_acct">Account</a> (by uid) - <li>domuser - domuser @ <a href="#svc_domain">Domain</a> forwards to <a href="#svc_acct">Account</a> - </ul> - <li><a name="svc_domain">svc_domain</a> - Domains - <ul> - <li>svcnum - <a href="#cust_svc">primary key</a> - <li>domain - </ul> - <li><a name="type_pkgs">type_pkgs</a> - <ul> - <li>typenum - <a href="#agent_type">agent type</a> - <li>pkgpart - <a href="#part_pkg">Package definition</a> - </ul> - </ul> -</body> diff --git a/htdocs/docs/signup.html b/htdocs/docs/signup.html deleted file mode 100644 index fbd19df62..000000000 --- a/htdocs/docs/signup.html +++ /dev/null @@ -1,47 +0,0 @@ -<head> - <title>Signup server</title> -</head> -<body> - <h1>Signup server</h1> -For security reasons, the signup server should run on an external public -webserver. On this machine, install: -<ul> - <li>A web server, such as <a href="http://www.apache-ssl.org">Apache-SSL</a> or <a href="http://www.apache.org">Apache</a> - <li><a href="ftp://ftp.cs.hut.fi/pub/ssh/">SSH</a> - <li><a href="http://www.perl.com/CPAN/doc/relinfo/INSTALL.html">Perl</a> (at least 5.004_05 for the 5.004 series or 5.005_03 for the 5.005 series. Don't enable experimental features like threads or the PerlIO abstraction layer.) - <li><a href="http://www.perl.com/CPAN/modules/by-module/Text/">Text::Template</a> - <li><a href="http://www.perl.com/CPAN/modules/by-author/IVAN/">HTTP::Headers::UserAgent</a> (version 2.0 or higher; not yet indexed correctly on CPAN) - - <li><a href="man/FS/SignupClient.html">FS::SignupClient</a> (copy the fs_signup/FS-SignupClient directory to the external machine, then: perl Makefile.PL; make; make install) -</ul> -Then: -<ul> - <li>Add the user `freeside' to the the external machine. - <li>Copy or symlink fs_signup/FS-SignupClient/cgi/signup.cgi into the web server's document space. - <li>Enable CGI execution for files with the `.cgi' extension. (with <a href="http://www.apache.org/docs/mod/mod_mime.html#addhandler">Apache</a>) - <li>Create the /usr/local/freeside directory on the external machine (owned by the freeside user). - <li>touch /usr/local/freeside/fs_signupd_socket; chown freeside /usr/local/freeside/fs_signupd_socket; chmod 600 /usr/local/freeside/fs_signupd_socket - <li>Use <a href="http://www.apache.org/docs/suexec.html">suEXEC</a> or <a href="http://www.perl.com/CPAN-local/doc/manual/html/pod/perlsec.html#Security_Bugs">setuid</a> (see <a href="install.html">install.html</a> for details) to run signup.cgi as the freeside user. - <li>Append the identity.pub from the freeside user on your freeside machine to the authorized_keys file of the newly created freeside user on the external machine(s). - <li>Run <pre>fs_signup_server <i>user</i> <i>machine</i> <i>agentnum</i> <i>refnum</i></pre> on the Freeside machine. - <ul> - <li><i>user</i> is a user from the mapsecrets file. - <li><i>machine</i> is the name of the external machine. - <li><i>agentnum</i> and <i>refnum</i> are the <a href="schema.html#agent">agent</a> and <a href="schema.html#part_referral">referral</a>, respectively, to use for customers who sign up via this signup server. - </ul> -</ul> -Optional: -<ul> - <li>If you create a <b>/usr/local/freeside/ieak.template</b> file on the external machine, it will be sent to IE users with MIME type <i>application/x-Internet-signup</i>. This file will be processed with <a href="http://search.cpan.org/doc/MJD/Text-Template-1.23/Template.pm">Text::Template</a> with the following variables available: - <ul> - <li>$ac - area code of selected POP - <li>$exch - exchange of selected POP - <li>$loc - local part of selected POP - <li>$username - <li>$password - <li>$email_name - first and last name - </ul> - (an example file is included as <b>fs_signup/ieak.template</b>) - <li>If there are any entries in the <i>prepay_credit</i> table, a user can enter a string matching the <b>identifier</i> column to receive the credit specified in the <b>amount</b> column, after which that <b>identifier</b> is no longer valid. This can be used to implement pre-paid "calling card" type signups. The <i>bin/generate-prepay</i> script can be used to populate the <i>prepay_credit</i> table. -</ul> -</body> diff --git a/htdocs/docs/trouble.html b/htdocs/docs/trouble.html deleted file mode 100644 index fce743928..000000000 --- a/htdocs/docs/trouble.html +++ /dev/null @@ -1,26 +0,0 @@ -<head> - <title>Troubleshooting</title> -</head> -<body> - <h1>Troubleshooting</h1> - <ul> - <li>When troubleshooting the web interface, helpful information is often in your web server's error log. - <li>If bin/svc_acct.import fails with an "Out of memory!" error using MySQL, upgrede MySQL and recompile the Perl DBD. There was a memory leak in some older versions of MySQL. - <li>If you get tons of errors in your web server's error log like this: -<pre> -Ambiguous use of value => resolved to "value" => -at /usr/lib/perl5/site_perl/File/CounterFile.pm line 132. -</pre> - This clutters up your log files but is otherwise harmless. Upgrade to the latest File::CounterFile. - <li>If you get errors like this: -<pre> -UID.pm: Can't open /var/spool/freeside/conf/secrets: Permission denied -at <i>/your/path</i>/site_perl/FS/UID.pm line 26. -BEGIN failed--compilation aborted at -<i>/your/path</i>/edit/process/part_svc.cgi line 15. -</pre> - Then the scripts are not running as the freeside freeside user. See -the <a href="install.html">New Installation</a> section of the documentation. - <li>If you receive `can not connect to server' errors using MySQL on a system that doesn't support native threading, you may need to specify the full hostname in your DBI datasource. See the <a href="http://www.mysql.com/Manual_chapter/manual_Problems.html#Can_not_connect_to_server">MySQL documentation</a>, DBI manpage and the DBD::mysql manpage for details. - </ul> -</body> diff --git a/htdocs/docs/upgrade.html b/htdocs/docs/upgrade.html deleted file mode 100644 index d2201f601..000000000 --- a/htdocs/docs/upgrade.html +++ /dev/null @@ -1,24 +0,0 @@ -<head> - <title>Upgrading to 1.1.x</title> -</head> -<body> -<h1>Upgrading to 1.1.x</h1> -<ul> - <li>Back up your data and current Freeside installation. - <li>Unpack a copy of the 1.0.0 distribution in a separate location. - <li>Diff your current installation against the 1.0.0 distribution. - <li>Apply all the diffs you found above, if applicable. - <li>Apply (at least) the following changes to your database: -<pre> -ALTER TABLE cust_main CHANGE ss ss char(11) NULL; -ALTER TABLE cust_main CHANGE day daytime varchar(20) NULL; -ALTER TABLE svc_acct CHANGE password _password varchar(25) NOT NULL; -ALTER TABLE part_svc CHANGE svc_acct__password svc_acct___password varchar(25) NULL; -ALTER TABLE part_svc CHANGE svc_acct__password_flag svc_acct___password_flag char(1) NULL; -ALTER TABLE agent_type CHANGE type atype varchar(80) NOT NULL; -</pre> - <li>Optionally change the field lengths and types to match a 1.1.x install; see `bin/fs-setup'. - <li>Create the necessary <a href="config.html">configuration files</a>, - <li>Copy or symlink htdocs and site_perl to the new 1.1.x copies. - <li>Run bin/dbdef-create. This file uses MySQL-specific syntax. If you are running a different database engine you will need to modify it slightly. -</body> diff --git a/htdocs/docs/upgrade2.html b/htdocs/docs/upgrade2.html deleted file mode 100644 index 7acae48f7..000000000 --- a/htdocs/docs/upgrade2.html +++ /dev/null @@ -1,11 +0,0 @@ -<head> - <title>Upgrading to 1.1.4</title> -</head> -<body> -<h1>Upgrading to 1.1.4 from 1.1.x</h1> -<ul> - <li>If migrating from 1.0.0, see these <a href="upgrade.html">instructions</a> first. - <li>Back up your data and current Freeside installation. - <li>If applicable, create the new <a href="config.html">configuration files</a>: lpr, cybercash2, cybercash3.2 - <li>Copy or symlink htdocs and site_perl to the new copies. -</body> diff --git a/htdocs/docs/upgrade3.html b/htdocs/docs/upgrade3.html deleted file mode 100644 index 0837e0207..000000000 --- a/htdocs/docs/upgrade3.html +++ /dev/null @@ -1,40 +0,0 @@ -<head> - <title>Upgrading to 1.2.x</title> -</head> -<body> -<h1>Upgrading to 1.2.x from 1.1.x</h1> -<ul> - <li>If migrating from 1.0.0, see these <a href="upgrade.html">instructions</a> first. - <li>If migrating from less than 1.1.4, see these <a href="upgrade2.html">instructions</a> first. - <li>Back up your data and current Freeside installation. - <li>Install the Perl module <a href="http://www.perl.com/CPAN/modules/by-module/String/">String-Approx</a> - <li><a href="config.html">Configuration file</a> location has changed! - <li>Move /var/spool/freeside/dbdef.<i>datasrc</i> to /usr/local/etc/freeside/dbdef.<i>datasrc</i>. - <li>Move /var/spool/freeside/counters to /usr/local/etc/freeside/counters.<i>datasrc</i>. - <li>Move /var/spool/freeside/export to /usr/local/etc/freeside/export.<i>datasrc</i>. - <li>Apply the following changes to your database: -<pre> -<!-- ALTER TABLE cust_main ADD middle varchar(80) NULL; -ALTER TABLE cust_main ADD titlenum int NULL; --->ALTER TABLE cust_main CHANGE state state varchar(80) NULL; -ALTER TABLE cust_main_county CHANGE state state varchar(80) NULL; -ALTER TABLE cust_main_county ADD country char(2); -ALTER TABLE cust_main CHANGE paydate paydate varchar(10); -UPDATE cust_main SET country = "US" where country IS NULL OR country = ''; -UPDATE cust_main_county SET country = "US" where country IS NULL OR country = ""; -<!--CREATE TABLE part_title ( - titlenum int NOT NULL, - title varchar(80) NOT NULL, - PRIMARY KEY (titlenum) -); --->CREATE TABLE cust_main_invoice ( - destnum int NOT NULL, - custnum int NOT NULL, - dest varchar(80) NOT NULL, - PRIMARY KEY (destnum), - INDEX ( custnum ) -); -</pre> - <li>Run bin/dbdef-create. This file uses MySQL-specific syntax. If you are running a different database engine you will need to modify it slightly. - <li>Copy or symlink htdocs and site_perl to the new copies. -</body> diff --git a/htdocs/docs/upgrade4.html b/htdocs/docs/upgrade4.html deleted file mode 100644 index 1d70f8b73..000000000 --- a/htdocs/docs/upgrade4.html +++ /dev/null @@ -1,27 +0,0 @@ -<head> - <title>Upgrading to 1.2.2</title> -</head> -<body> -<h1>Upgrading to 1.2.2 from 1.2.x</h1> -<ul> - <li>If migrating from 1.0.0, see these <a href="upgrade.html">instructions</a> first. - <li>If migrating from less than 1.1.4, see these <a href="upgrade2.html">instructions</a> first. - <li>If migrating from less than 1.2.0, see these <a href="upgrade3.html">instructions</a> first. - <li>Back up your data and current Freeside installation. - <li>Install the Perl modules <a href="http://www.perl.com/CPAN/modules/by-module/Locale/">Locale-Codes</a> and <a href="http://www.perl.com/CPAN/modules/by-module/Net/">Net-Whois</a>. - <li>Apply the following changes to your database: -<pre> -ALTER TABLE cust_pay_batch CHANGE exp exp VARCHAR(11); -</pre> - <li>Copy or symlink htdocs to the new copy. - <li>Remove the symlink or directory <i>(your_site_perl_directory)</i>/FS. - <li>Change to the FS directory in the new tarball, and build and install the - Perl modules: - <pre> -$ cd FS/ -$ perl Makefile.PL -$ make -$ su -# make install</pre> - <li>Run bin/dbdef-create. This file uses MySQL-specific syntax. If you are running a different database engine you will need to modify it slightly. -</body> diff --git a/htdocs/docs/upgrade5.html b/htdocs/docs/upgrade5.html deleted file mode 100644 index fc4bf2c39..000000000 --- a/htdocs/docs/upgrade5.html +++ /dev/null @@ -1,34 +0,0 @@ -<head> - <title>Upgrading to 1.3.0</title> -</head> -<body> -<h1>Upgrading to 1.3.0 from 1.2.2</h1> -<ul> - <li>If migrating from 1.0.0, see these <a href="upgrade.html">instructions</a> first. - <li>If migrating from less than 1.1.4, see these <a href="upgrade2.html">instructions</a> first. - <li>If migrating from less than 1.2.0, see these <a href="upgrade3.html">instructions</a> first. - <li>If migrating from less than 1.2.2, see these <a href="upgrade4.html">instructions</a> first. - <li>Back up your data and current Freeside installation. - <li>Apply the following changes to your database: -<pre> -ALTER TABLE svc_acct_pop ADD loc CHAR(4); -CREATE TABLE prepay_credit ( - prepaynum int NOT NULL, - identifier varchar(80) NOT NULL, - amount decimal(10,2) NOT NULL, - PRIMARY KEY (prepaynum), - INDEX (identifier) -); -</pre> - <li>Copy or symlink htdocs to the new copy. - <li>Remove the symlink or directory <i>(your_site_perl_directory)</i>/FS. - <li>Change to the FS directory in the new tarball, and build and install the - Perl modules: - <pre> -$ cd FS/ -$ perl Makefile.PL -$ make -$ su -# make install</pre> - <li>Run bin/dbdef-create. This file uses MySQL-specific syntax. If you are running a different database engine you will need to modify it slightly. -</body> |