root / pykota / trunk / TODO @ 2446

Revision 2446, 4.4 kB (checked in by jerome, 19 years ago)

New item added

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
Line 
1# $Id$
2
3PyKota - Print Quota for CUPS and LPRng
4
5(c) 2003, 2004, 2005 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        - PJL for non-networked backends (see ML's history)
25       
26        - --freemoney/--freepages command line option for edpykota :
27          don't modify the totals or payments, but instead set
28          a freemoney/freepages attribute which will be decremented/incremented
29          **before** the real one.
30         
31        - Very good idea from Martin Oesterund : comment field for
32          payments !!!
33         
34        - Another one : add a third value like 'nocheck' or something
35          like that to allow an user to print with no limitation while
36          still updating the balance and number of pages printed.
37         
38        - Make the SNMP and PJL delay and number of loops a new configuration
39          directive.
40       
41        - Ensure that deleted or modified entries are flushed from the cache.
42       
43        - Adds configurability to what happens when the user/group doesn't exist
44          when running edpykota. Rewrite the main loop to be able to abort
45          early, before any modification has taken place.
46         
47        - Add the listing of the member printers in pkprinters if the printer
48          is a printer group.
49         
50        - Allow several levels of administrative priviledges by allowing
51          files like ~pykota/pykotadmin.someusername.conf (readonly by
52          user 'someusername'), and have the database server deal
53          with the permissions : no need for additionnal code or data
54          in PyKota's database !
55       
56        - Try to talk to education based distribution coordinators
57          (SambaEdu, SkoleLinux, K12LTSP, ...) to see how to
58          better integrate PyKota with these.
59         
60        - Allow soft and hard limits to be increased/decreased.
61       
62        - Add most configuration directives to the database itself,
63          while still allowing to overwrite them with the configuration
64          files at run time.
65       
66        - Ink accounting ala PrintBill.
67       
68        - Price and statistics per page format.
69       
70        - Allow the admin to choose an action to take when the database
71          is unavailable (server is down or something like that), so
72          introduce two directives :
73         
74            nodb: accept|reject|hold
75            lognodb: /path/to/file/for/later/batch/update/of/database
76       
77        - CUPS accepts the "STATE: ..." message as backchannel
78          data : use this to tell CUPS what action has been taken
79          for current job. I did some testing but wasn't able to
80          make it work...
81         
82        - Think about some possible client <=> PyKota dialog
83          possibilities, like embedding a small web server in
84          PyKota for example, or something like that.
85       
86        - Finish implementation of quota-then-balance and
87          balance-then-quota.
88         
89        - Introduce the pkusers command.
90          pkusers --nogroup
91          pkusers --ingroups gr1,gr2,... --outgroups gr3,gr4,...
92         
93        - Allow the --ingroups command line option to repykota, to
94          report only users members of the specified groups.
95         
96        - Documentation...
97         
98        - Learn more bits of PHP to help with phpPyKotaAdmin, which
99          is a GREAT tool !
100       
101        - Multidatabase support, e.g. store users in LDAP, quota 
102          related datas in PostgreSQL, history in text file,
103          and so on... For 2.0, probably not before.
104       
105       
106============================================================
107
108Please e-mail bugs to: alet@librelogiciel.com (Jerome Alet)
Note: See TracBrowser for help on using the browser.