X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS.pm;h=462815db3d716a72b84c59f90e0a6f869cee05ca;hb=3a977998566f58dd5b16745f95cf6f30a27f0b0a;hp=ed61db4c8a3b8087cd4a7c27812572eb54ad59c5;hpb=f3235d39d083518d47f21cd5585e5f9a13070763;p=freeside.git diff --git a/FS/FS.pm b/FS/FS.pm index ed61db4c8..462815db3 100644 --- a/FS/FS.pm +++ b/FS/FS.pm @@ -3,7 +3,10 @@ package FS; use strict; use vars qw($VERSION); -$VERSION = '0.01'; +$VERSION = '%%%VERSION%%%'; + +#find missing entries in this file with: +# for a in `ls *pm | cut -d. -f1`; do grep 'L' ../FS.pm >/dev/null || echo "missing $a" ; done 1; __END__ @@ -14,78 +17,236 @@ FS - Freeside Perl modules =head1 SYNOPSIS -FS is the unofficial (i.e. non-CPAN) prefix for the Perl module portion of the -Freeside ISP billing software. This includes: +Freeside perl modules and CLI utilities. =head2 Utility classes +L - Freeside database schema + +L - Setup subroutines + L - Freeside configuration values +L - Freeside configuration option meta-data. + +L - Freeside configuration default and available values + L - User class (not yet OO) -L - 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 - Package representing the current user + +L - Non OO-subroutines for the web interface. + +L - Message catalog + +L - Search cache + +L - RADIUS dictionary + +L - Access control rights. + +L - Report data objects + +L - Report data objects + +L - Report data objects + +L - Backend XML::RPC server + +L - Miscellaneous subroutines + +L - Payment types + +L - A pony =head2 Database record classes L - Database record base class +L - Mixin class for classes in a many-to-many relationship + +L - Base class for tables with a related table listing names + +L - Base class for option sub-classes + +L - Package class class + +L - Mixin class for records in tables that contain payinfo. + +L - Employees / internal users + +L - Employee preferences + +L - Employee groups + +L - Employee group membership + +L - Group reseller access + +L - Access rights + L - POP (Point of Presence, not Post Office Protocol) class +L - Local calling area class + L - Referral class L - Locale (tax rate) class +L - Tax exemption record class + +L - Line-item specific tax exemption record class + L - Service base class +L - Mixin class for svc_ classes with a parent_svcnum field + L - Account (shell, RADIUS, POP3) class +L - External mail account class + +L - RADIUS groups + L - Domain class L - DNS zone entries -L - Vitual mail alias class +L - Domain registrar class + +L - Mail forwarding class L - Web virtual host class. +L - DSL, wireless and other broadband class. + +L - Address block class + +L - Router class + +L - Broadband virtual field class + +L - Phone service class + +L - Call Detail Record class + +L - CDR calltype class + +L - CDR carrier class + +L - CDR upstream rate class + +L - CDR type class + +L - Externally tracked service class. + +L - Inventory classes + +L - Inventory items + L - Service definition class -L - Package (billing item) definition class +L - Column constraint class + +L - Class linking service definitions (see L) +with exports (see L) -L - Class linking package (billing item) -definitions (see L) with service definitions -(see L) +L - External provisioning export class + +L - Export option class + +L - Package class class + +L - Package definition class + +L - Package definition option class + +L - Class linking package definitions (see L) with +service definitions (see L) + +L - One-time registration codes + +L - Class linking registration codes (see L) with package definitions (see L) + +L - Rate plans for call billing + +L - Rate regions for call billing + +L - Rate region prefixes for call billing + +L - Rate plan detail for call billing L - Agent (reseller) class L - Agent type class -L - Class linking agent types (see -L) with package (billing item) definitions -(see L) +L - Class linking agent types (see L) with package definitions (see L) + +L - Payment gateway class + +L - Payment gateway option class + +L - Agent payment gateway class L - Service class -L - Package (billing item) class +L - Customer package class + +L - Customer package option class + +L - Reason type class + +L - Reason class + +L - Package reason class L - Customer class -L - Invoice destination -class +L - Mixin class for records that contain fields from cust_main + +L - Invoice destination class + +L - Customer note class + +L - Banned payment information class L - Invoice class L - Invoice line item class +L - Invoice line item detail class + +L - Invoice event definition class + +L - Completed invoice event class + +L - Base class for bill application classes + L - Payment class +L - Voided payment class + +L - Payment application class + +L - Line-item specific payment application class + +L - Batch payment application class + L - Credit class L - Refund class -L - Credit card transaction queue class +L - Refund application to credit class + +L - Credit application to invoice class + +L - Line-item specific credit application to invoice class + +L - Refund application to payment class + +L - Credit card transaction queue class + +L - Credit card transaction member queue class L - Prepaid "calling card" credit class. @@ -95,60 +256,142 @@ L - NAS port class L - User login session class -=head2 User Interface classes (under development; not yet usable) +L - Job queue + +L - Job arguments + +L - Job dependencies + +L - Message catalogs + +L + +L + +=head2 Historical database record classes + +L - History table base class + +L - Historical record of customer tax changes (old-style) + +L - Object method for h_cust_svc objects + +L - Historical record of customer tax changes (old-style) + +L - Historical DNS entry objects + +L - Historical account objects + +L - Historical broadband connection objects + +L - Historical domain objects -L - User-interface base class +L - Historical externally tracked service objects -L - Gtk user-interface class +L - Historical mail forwarding alias objects -L - CGI (HTML) user-interface class +L - Historical phone number objects -L - agent table user-interface class +L - Historical web virtual host objects -=head2 Notes +=head2 Client API + +L + +L + +L + +L + +L + +L + +=head2 Remote API modules + +L + +L + +L + +L (deprecated in favor of the self-service server) + +=head2 User Interface classes + +L - Web user-interface class + +L - Byte counter user-interface class + +=head2 Command-line utilities + +L + +L + +L + +L + +L + +L + +L + +L + +L + +L + +L + +=head1 Notes To quote perl(1), "If you're intending to read these straight through for the first time, the suggested order will tend to reduce the number of forward references." +If you've never used OO modules before, +http://www.perl.com/doc/FMTEYEWTK/easy_objects.html might help you out. + =head1 DESCRIPTION -Freeside is a billing and administration package for Internet Service -Providers. +Freeside is a billing and administration package for wired and wireless ISPs, +VoIP, hosting, service and content providers and other online businesses. The Freeside home page is at . -The main documentation is in htdocs/docs. - -=head1 VERSION - -$Id: FS.pm,v 1.5 2001-04-23 12:40:30 ivan Exp $ +The main documentation is at . =head1 SUPPORT -A mailing list for users and developers is available. Send a blank message to - to subscribe. +A mailing list for users is available. Send a blank message to + 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 + to subscribe. Commercial support is available; see . -=head1 AUTHOR +=head1 AUTHORS -Primarily Ivan Kohler , with help from many kind folks. +Primarily Ivan Kohler, with help from many kind folks, including core +contributors Jeff Finucane, Kristian Hoffman, Jason Hall and Peter Bowen. See the CREDITS file in the Freeside distribution for a (hopefully) complete list and the individal files for details. =head1 SEE ALSO -perl(1), main Freeside documentation in htdocs/docs/ +perl(1), main Freeside documentation at =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, renamed appropriately and uploaded to CPAN. So far: DBIx::DBSchema, Net::SSH and Net::SCP...