X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=TODO;h=5dbfab2561abd839ce8cf11dbd6d36ebea7569f3;hp=363c42adbf4702f0d9397215921a9fcf9dfb8fd4;hb=ff9083f7660a3397d73377efec15feff432d5958;hpb=6e5eed5d49163fdb06f16c735ab43486c047011d diff --git a/TODO b/TODO index 363c42adb..5dbfab256 100644 --- a/TODO +++ b/TODO @@ -1,31 +1,107 @@ -$Id: TODO,v 1.20 1999-01-25 12:09:48 ivan Exp $ +$Id: TODO,v 1.30 1999-04-14 13:14:54 ivan Exp $ If you are interested in helping with any of these, please join the mailing list (send a blank message to ivan-freeside-subscribe@sisd.com) to avoid duplication of effort. --- before 1.2b1 -- +--- -Can't use [e]idiot with mod_perl. +default (and ordering) state/county/country config file +expand the +cust_main_county table to provide a preferred ordering, so the most common +entries would be at the top of the selection box. automatically, based on +recent selections? -Lay out the forms a bit better. +hmm... maybe svc_acct__shell should check off the legal shells list if +applicable? yeah... cool. -libwww regression test - since it will create sample data, can also use this -for the web demo -make fs-setup option to add sample data so you can click on "New Customer" right away? so people understand what this stuff is? +payinfo field should me much larger than 16 + + +[Mon Apr 12 20:31:21 1999] [error] [Mon Apr 12 20:31:21 1999] null: Error closing true: Broken pipe at /usr/local/lib/site_perl/FS/cust_main.pm line 615. + +javascript (yuck!) "are you sure?" confirmation on cancelations, etc. +(view/cust_pkg and view/svc_*) + +get rid of time2str("%D") which formats dates in a non-y2k-safe looking fashion +(all the actual date handling uses UNIX timestamps and is fine) + +uncomment expire in view/cust_pkg.cgi and find the expire cron from fsold + +(Test this) +one-time/per-customer/? changes in rates and descriptions ('remembered +invoices'): implement by creating a new package on the fly... but it isn't +associated with any agent types so it won't show up for other customers to buy. +(but also... make sure they go away when the customer does! - need this? : + one-off package edits! : need a cust_pkgs or cust_part_pkgs or something table, + with custnum and partpkg (like type_pkgs) +(what happens if you hit "custom pricing" but the pricing is already custom?) + +Lay out any remaining ugly forms better. + +remove "records identical" warning? gets in the way of more important stuff. +or fix logic which tries to update identical records?? +1.2 should be quiet enough that the error log is useful, hopefully. + +Postgres has a maximum column length of 31 characters (but see NAMEDATALEN in +postgres_ext.h). part_svc has columns like: svc_acct__radius_Attribute_flag +(22 characters!) It seems that stuff over the limit is silently ignored, +so we get 4 characters back. So, Radius_Attributes are max 13 characters with +stock Postgres. see rfc2138 for what's affected +What's a good fix? (besides recompiling postgres with NAMEDATALEN 64) +(mysql has a 64 character max column length. others?) + +[Mon Mar 29 06:57:56 1999] -e: Use of uninitialized value at /usr/lib/perl5/Date/Format.pm line 333. +(when sending mail in cust_main.pm::bill or svc_domain.pm) + +look at DBIx::Recordset! (and Tie::DBI, and...) + +undefined conf/lpr gives this uninfomative error: +[Fri Feb 26 16:42:36 1999] bill.cgi: Can't do bidirectional pipe at +/usr/lib/per +l5/site_perl/FS/cust_main.pm line 629. +[Fri Feb 26 16:42:38 1999] bill.cgi: Error closing : Broken pipe at +/usr/lib/per +l5/site_perl/FS/cust_main.pm line 631. +So give a meaningful error! + +password and slipip stuff in svc_acct.pm store need to be split into two fields or something, so the silliness in svc_acct.pm and svc_acct.export with looking at the data to decide what to do with it can be fixed + +i10n: Apache::Language + +Apache::Session? Other useful Apache::* ? + +email invoices are only sent for the BILL payby. If setup, should statements +(since they're not invoices) be sent for COMP and CARD as well? + +$cgi->keywords is causing the (hard to trace) error: + Use of uninitialized value at (eval 5) line 5 + +edit/cust_main.cgi gives an uninformative error message: +> Can't call method "agentnum" without a package or object reference at +> /usr/local/apache-ssl/htdocs/freeside/edit/cust_main.cgi line 116. +if there are no agents. + +(is this missing on any web screens? (easy with $cust_svc->label) +Add the ability for services to filter information up to the package level +for web screens, so you can select a particlar package based +on username or domain name, etc. Allow a cancelled/suspended/active status from packages to bubble up to the customer lists. Put active, then suspended, then cancelled accounts. Similar ordering on the package listing inside a single customer. -Add the ability for services to filter information up to the package level -for invoices and web screens, so you can select a particlar package based -on username or domain name, etc. +false laziness: edit/cust_main.cgi got some parts copied from edit/svc_acct.cgi +the web interface in general needs to be redone in a more abstract way. -You can't delete the stuff under administration yet. Add this, -_including_ making sure the thing you are deleting is not in use! +false laziness: some of search/svc_acct_sm.cgi was copied to search/svc_domain.cgi. but web interface in general needs to be rewritten in a mucho cleaner way. + +Portability: in FS::Record, $sth->execute does not return a number of rows for all DBD's. see man DBI + +subroutine the where clause (eventually all SQL) as OO perhaps (has anyone done this?) + +add a select method to FS::Record? -(Test this) one-time/per-customer/? changes in rates and descriptions ('remembered invoices'): implement by creating a new package on the fly... but it isn't associated with any agent types so it won't show up for other customers to buy. @@ -34,11 +110,10 @@ associated with any agent types so it won't show up for other customers to buy. with custnum and partpkg (like type_pkgs) (what happens if you hit "custom pricing" but the pricing is already custom?) -update site_perl/table_template* (pry out of date) - -update web demo +You can't delete the stuff under administration yet. Add this, +_including_ making sure the thing you are deleting is not in use! --- before or after --- +add links on view/cust_main.cgi to setup services, like view/cust_pkg.cgi FS::cust_pkg _require_'s FS::$svc, but this won't work with %FS::UID::callback loading of configuration. (pry need same idea, but will run immediately if @@ -60,12 +135,13 @@ whois accordingly. .us domains and others! site_perl/svc_domain.cgi (hmm... or maybe should have a button? or maybe svc_domain.pm should handle this) should set $whois_hack for non-internic domains, so you can add them... +turn on the depriciation warnings for [e]idiot in FS::CGI. Stop using [e]idiot +the last places it is (htdocs/search/ htdocs/misc/ htdocs/misc/process) + (test cust_main.pm with cybercash v2 and v3, especially with the callback stuff AND with mod_perl w/cybercash v2 kludge in package main) (callback stuff should be eliminated by now) --- after -- - bah, table/itable/*table in FS::CGI is silly. doc Apache::AuthDBI as well @@ -367,8 +443,6 @@ configuration/setup should get web interface ... (probably as part of some automated installation process?) -password and slipip stuff in svc_acct.pm store need to be split into two fields or something, so the silliness in svc_acct.pm and svc_acct.export with looking at the data to decide what to do with it can be fixed (1.2) - This requires some serious magic in FS::Record: ok, if date_type in fs-setup is to be something besides int, now we need to create wrappers