recommend HTML::Mason
[freeside.git] / FS / FS.pm
index 7831739..36c3a17 100644 (file)
--- a/FS/FS.pm
+++ b/FS/FS.pm
@@ -5,6 +5,9 @@ use vars qw($VERSION);
 
 $VERSION = '0.01';
 
 
 $VERSION = '0.01';
 
+#find missing entries in this file with:
+# for a in `ls *pm | cut -d. -f1`; do grep 'L<FS::'$a'>' ../FS.pm >/dev/null || echo "missing $a" ; done
+
 1;
 __END__
 
 1;
 __END__
 
@@ -14,122 +17,184 @@ FS - Freeside Perl modules
 
 =head1 SYNOPSIS
 
 
 =head1 SYNOPSIS
 
-FS is the temporary prefix for many disparate modules written for the Freeside
-ISP billing software.  This includes:
+Freeside perl modules and CLI utilities.
 
 
-=head2 Database metadata classes
+=head2 Utility classes
 
 
-=over 4
+L<FS::Conf> - Freeside configuration values
 
 
-=item L<FS::dbdef|FS::dbdef> - Database class
+L<FS::ConfItem> - Freeside configuration option meta-data.
 
 
-=item L<FS::dbdef_table|FS::dbdef_table> - Database table class
+L<FS::UID> - User class (not yet OO)
 
 
-=item L<FS::dbdef_column|FS::dbdef_column> - Database column class
+L<FS::CGI> - Non OO-subroutines for the web interface.
 
 
-=item L<FS::dbdef_colgroup|FS::dbdef_colgroup> - Database column group class
+L<FS::Msgcat> - Message catalog
 
 
-=item L<FS::dbdef_index|FS::dbdef_index> - Database index class
+L<FS::SearchCache> - Search cache
 
 
-=item L<FS::dbdef_unique|FS::dbdef_unique> - Database unique index class
+L<FS::raddb> - RADIUS dictionary
 
 
-=back
+=head2 Database record classes
 
 
-=head2 Utility classes
+L<FS::Record> - Database record base class
 
 
-=over 4
+L<FS::svc_acct_pop> - POP (Point of Presence, not Post
+Office Protocol) class
 
 
-=item L<FS::SSH|FS::SSH> - Simple wrappers around ssh and scp commands.
+L<FS::part_pop_local> - Local calling area class
 
 
-=item L<FS::Conf|FS::Conf> - Freeside configuration values
+L<FS::part_referral> - Referral class
 
 
-=item L<FS::UID|FS::UID> - User class (not yet OO)
+L<FS::cust_main_county> - Locale (tax rate) class
 
 
-=item L<FS::CGI|FS::CGI> - Non OO-subroutines for the web interface.  This is
-depriciated.  Future development will be focused on the FS::UI user-interface
-classes (see below).
+L<FS::cust_tax_exempt> - Tax exemption record class
 
 
-=back
+L<FS::svc_Common> - Service base class
 
 
-=head2 Database record classes
+L<FS::svc_acct> - Account (shell, RADIUS, POP3) class
 
 
-=over 4
+L<FS::acct_snarf> - External mail account class
 
 
-=item L<FS::Record|FS::Record> - Database record base class
+L<FS::radius_usergroup> - RADIUS groups
 
 
-=item L<FS::svc_acct_pop|FS::svc_acct_pop> - POP (Point of Presence, not Post
-Office Protocol) class
+L<FS::svc_domain> - Domain class
+
+L<FS::domain_record> - DNS zone entries
+
+L<FS::svc_forward> - Mail forwarding class
 
 
-=item L<FS::part_referral|FS::part_referral> - Referral class
+L<FS::svc_www> - Web virtual host class.
 
 
-=item L<FS::cust_main_county|FS::cust_main_county> - Locale (tax rate) class
+L<FS::svc_broadband> - DSL, wireless and other broadband class.
 
 
-=item L<FS::svc_Common|FS::svc_Common> - Service base class
+L<FS::svc_external> - Externally tracked service class.
 
 
-=item L<FS::svc_acct|FS::svc_acct> - Account (shell, RADIUS, POP3) class
+L<FS::part_svc> - Service definition class
 
 
-=item L<FS::svc_domain|FS::svc_domain> - Domain class
+L<FS::part_svc_column> - Column constraint class
 
 
-=item L<FS::svc_acct_sm|FS::svc_acct_sm> - Vitual mail alias class
+L<FS::export_svc> - Class linking service definitions (see L<FS::part_svc>)
+with exports (see L<FS::part_export>)
 
 
-=item L<FS::part_svc|FS::part_svc> - Service definition class
+L<FS::part_export> - External provisioning export class
 
 
-=item L<FS::part_pkg|FS::part_pkg> - Package (billing item) definition class
+L<FS::part_export_option> - Export option class
 
 
-=item L<FS::pkg_svc|FS::pkg_svc> - Class linking package (billing item)
+L<FS::part_pkg> - Package (billing item) definition class
+
+L<FS::pkg_svc> - Class linking package (billing item)
 definitions (see L<FS::part_pkg>) with service definitions
 (see L<FS::part_svc>)
 
 definitions (see L<FS::part_pkg>) with service definitions
 (see L<FS::part_svc>)
 
-=item L<FS::agent|FS::agent> - Agent (reseller) class
+L<FS::agent> - Agent (reseller) class
 
 
-=item L<FS::agent_type|FS::agent_type> - Agent type class
+L<FS::agent_type> - Agent type class
 
 
-=item L<FS::type_pkgs|FS::type_pkgs> - Class linking agent types (see
+L<FS::type_pkgs> - Class linking agent types (see
 L<FS::agent_type>) with package (billing item) definitions
 (see L<FS::part_pkg>)
 
 L<FS::agent_type>) with package (billing item) definitions
 (see L<FS::part_pkg>)
 
-=item L<FS::cust_svc|FS::cust_svc> - Service class
+L<FS::cust_svc> - Service class
 
 
-=item L<FS::cust_pkg|FS::cust_pkg> - Package (billing item) class
+L<FS::cust_pkg> - Package (billing item) class
 
 
-=item L<FS::cust_main|FS::cust_main> - Customer class
+L<FS::cust_main> - Customer class
 
 
-=item L<FS::cust_main_invoice|FS::cust_main_invoice> - Invoice destination
+L<FS::cust_main_invoice> - Invoice destination
 class
 
 class
 
-=item L<FS::cust_bill|FS::cust_bill> - Invoice class
+L<FS::cust_bill> - Invoice class
 
 
-=item L<FS::cust_bill_pkg|FS::cust_bill_pkg> - Invoice line item class
+L<FS::cust_bill_pkg> - Invoice line item class
 
 
-=item L<FS::cust_pay|FS::cust_pay> - Payment class
+L<FS::cust_bill_pkg_detail> - Invoice line item detail class
 
 
-=item L<FS::cust_credit|FS::cust_credit> - Credit class
+L<FS::part_bill_event> - Invoice event definition class
 
 
-=item L<FS::cust_refund|FS::cust_refund> - Refund class
+L<FS::cust_bill_event> - Completed invoice event class
 
 
-=item L<FS::cust_pay_batch|FS::cust_pay_batch> - Credit card transaction queue
-class
+L<FS::cust_pay> - Payment class
+
+L<FS::cust_bill_pay> - Payment application class
+
+L<FS::cust_credit> - Credit class
+
+L<FS::cust_refund> - Refund class
+
+L<FS::cust_credit_refund> - Refund application class
+
+L<FS::cust_credit_bill> - Credit invoice application class
+
+L<FS::cust_pay_batch> - Credit card transaction queue class
+
+L<FS::prepay_credit> - Prepaid "calling card" credit class.
+
+L<FS::nas> - Network Access Server class
+
+L<FS::port> - NAS port class
+
+L<FS::session> - User login session class
+
+L<FS::queue> - Job queue
 
 
-=back
+L<FS::queue_arg> - Job arguments
 
 
-=head2 User Interface classes (under development; not yet usable)
+L<FS::queue_depend> - Job dependencies
 
 
-=over 4
+L<FS::msgcat> - Message catalogs
 
 
-=item L<FS::UI::Base|FS::UI::Base> - User-interface base class
+=head1 Remote API modules
 
 
-=item L<FS::UI::Gtk|FS::UI::Gtk> - Gtk user-interface class
+L<FS::SignupClient>
 
 
-=item L<FS::UI::CGI|FS::UI::CGI> - CGI (HTML) user-interface class
+L<FS::SessionClient>
 
 
-=item L<FS::UI::agent|FS::UI::agent> - agent table user-interface class
+L<FS::MailAdminServer>
 
 
-=back
+=head2 Command-line utilities
+
+L<freeside-adduser>
+
+L<freeside-queued>
+
+L<freeside-daily>
+
+L<freeside-expiration-alerter>
+
+L<freeside-email>
+
+L<freeside-cc-receipts-report>
+
+L<freeside-credit-report>
+
+L<freeside-receivables-report>
+
+L<freeside-tax-report>
+
+L<freeside-bill>
+
+L<freeside-overdue>
+
+=head2 User Interface classes (under (stalled) development; not yet usable)
+
+L<FS::UI::Base> - User-interface base class
+
+L<FS::UI::Gtk> - Gtk user-interface class
+
+L<FS::UI::CGI> - CGI (HTML) user-interface class
+
+L<FS::UI::agent> - agent table user-interface class
+
+=head2 Notes
 
 To quote perl(1), "If you're intending to read these straight through for the
 first time, the suggested order will tend to reduce the number of forward
 references."
 
 
 To quote perl(1), "If you're intending to read these straight through for the
 first time, the suggested order will tend to reduce the number of forward
 references."
 
+If you've never used OO modules before,
+http://www.perl.com/doc/FMTEYEWTK/easy_objects.html might help you out.
+
 =head1 DESCRIPTION
 
 Freeside is a billing and administration package for Internet Service
 =head1 DESCRIPTION
 
 Freeside is a billing and administration package for Internet Service
@@ -137,17 +202,17 @@ Providers.
 
 The Freeside home page is at <http://www.sisd.com/freeside>.
 
 
 The Freeside home page is at <http://www.sisd.com/freeside>.
 
-The main documentation is in htdocs/docs.
-
-=head1 VERSION
-
-$Id: FS.pm,v 1.2 1999-08-04 07:34:15 ivan Exp $
+The main documentation is in httemplate/docs.
 
 =head1 SUPPORT
 
 
 =head1 SUPPORT
 
-A mailing list for users and developers is available.  Send a blank message to
+A mailing list for users is available.  Send a blank message to
 <ivan-freeside-subscribe@sisd.com> to subscribe.
 
 <ivan-freeside-subscribe@sisd.com> to subscribe.
 
+A mailing list for developers is available.  It is intended to be lower volume
+and higher SNR than the users list.  Send a blank message to
+<ivan-freeside-devel-subscribe@sisd.com> to subscribe.
+
 Commercial support is available; see
 <http://www.sisd.com/freeside/commercial.html>.
 
 Commercial support is available; see
 <http://www.sisd.com/freeside/commercial.html>.
 
@@ -164,12 +229,9 @@ perl(1), main Freeside documentation in htdocs/docs/
 
 =head1 BUGS
 
 
 =head1 BUGS
 
-The version number of the FS Perl extension differs from the version of the
-Freeside distribution, which are both different from the CVS version tag for
-each file, which appears under the VERSION heading.
-
 Those modules which would be useful separately should be pulled out, 
 Those modules which would be useful separately should be pulled out, 
-renamed appropriately and uploaded to CPAN.
+renamed appropriately and uploaded to CPAN.  So far: DBIx::DBSchema, Net::SSH
+and Net::SCP...
 
 =cut
 
 
 =cut