root / pykota / trunk / TODO @ 3153

Revision 3153, 3.6 kB (checked in by jerome, 18 years ago)

Don't ask for confirmation anymore if there's not enough credits
to print.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
Line 
1it's a pyt# $Id$
2
3PyKota - Print Quotas for CUPS and LPRng
4
5(c) 2003, 2004, 2005, 2006, 2007 Jerome Alet <alet@librelogiciel.com>
6This program is free software; you can redistribute it and/or modify
7it under the terms of the GNU General Public License as published by
8the Free Software Foundation; either version 2 of the License, or
9(at your option) any later version.
10
11This program is distributed in the hope that it will be useful,
12but WITHOUT ANY WARRANTY; without even the implied warranty of
13MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14GNU General Public License for more details.
15
16You should have received a copy of the GNU General Public License
17along with this program; if not, write to the Free Software
18Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
19
20============================================================
21
22TODO, in no particular order :
23       
24        - --orderby and --order ASC|DESC for dumpykota (or --asc | --desc)
25       
26        - Document the PYKOTA_HOME environment variable.
27       
28        - LDAP : See if setting cn=ThePrinter for user print quota entries
29          could be done, only in the case where userquotabase=user
30          (idem for groups). Would make direct modifications (e.g.
31          with gq) more easy.
32         
33        - Allow the disabling of an user print quota entry without
34          deleting it.
35       
36        - Store the value of the user's account balance in the
37          printing history (the value at the time of printing)
38          as well as in the payments history (as a safety check
39          in case an user complains).
40         
41        - PJL for non-networked backends (see ML's history)
42       
43        - Add the listing of the member printers in pkprinters if the printer
44          is a printer group.
45         
46        - Allow several levels of administrative priviledges by allowing
47          files like ~pykota/pykotadmin.someusername.conf (readonly by
48          user 'someusername'), and have the database server deal
49          with the permissions : no need for additionnal code or data
50          in PyKota's database !
51       
52        - Try to talk to education based distribution coordinators
53          (SambaEdu, SkoleLinux, K12LTSP, ...) to see how to
54          better integrate PyKota with these.
55         
56        - Add most configuration directives to the database itself,
57          while still allowing to overwrite them with the configuration
58          files at run time.
59       
60        - Price and statistics per page format.
61       
62        - Allow the admin to choose an action to take when the database
63          is unavailable (server is down or something like that), so
64          introduce two directives :
65         
66            nodb: accept|reject|hold
67            lognodb: /path/to/file/for/later/batch/update/of/database
68       
69        - CUPS accepts the "STATE: ..." message as backchannel
70          data : use this to tell CUPS what action has been taken
71          for current job. I did some testing but wasn't able to
72          make it work...
73         
74        - Documentation...
75         
76        - Learn more bits of PHP to help with phpPyKotaAdmin, which
77          is a GREAT tool !
78       
79        - Multidatabase support, e.g. store users in LDAP, quota 
80          related datas in PostgreSQL, history in text file,
81          and so on... For 2.0, probably not before.
82         
83        - Re-add support for LPRng if interest is high enough (it is
84          not for now)
85       
86       
87============================================================
88
89Please e-mail bugs to: alet@librelogiciel.com (Jerome Alet)
Note: See TracBrowser for help on using the browser.