root / pykota / trunk / TODO @ 2902

Revision 2902, 4.0 kB (checked in by jerome, 18 years ago)

Added a note about MySQL "features".

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
Line 
1# $Id$
2
3PyKota - Print Quotas for CUPS and LPRng
4
5(c) 2003, 2004, 2005, 2006 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        - Work around some of MySQL "features" like this one :
25       
26          --- CUT --- 
27          mysql> SELECT datelimit FROM userpquota WHERE userid=1 AND printerid=1;
28          +---------------------+
29          | datelimit           |
30          +---------------------+
31          | 2006-05-31 16:20:03 |
32          +---------------------+
33          1 row in set (0.00 sec)
34         
35          mysql> UPDATE userpquota SET datelimit=NULL WHERE userid=1 AND printerid=1;
36          Query OK, 1 row affected (0.05 sec)
37          Rows matched: 1  Changed: 1  Warnings: 0
38         
39          mysql> SELECT datelimit FROM userpquota WHERE userid=1 AND printerid=1;
40          +---------------------+
41          | datelimit           |
42          +---------------------+
43          | 2006-05-31 16:27:45 |
44          +---------------------+
45          1 row in set (0.00 sec)
46         
47          mysql>
48          --- CUT --- 
49         
50        - Add a pkrefund command line tool & optional CGI script.
51       
52        - PJL for non-networked backends (see ML's history)
53       
54        - Make the SNMP and PJL delay and number of loops a new configuration
55          directive.
56       
57        - Add the listing of the member printers in pkprinters if the printer
58          is a printer group.
59         
60        - Allow several levels of administrative priviledges by allowing
61          files like ~pykota/pykotadmin.someusername.conf (readonly by
62          user 'someusername'), and have the database server deal
63          with the permissions : no need for additionnal code or data
64          in PyKota's database !
65       
66        - Try to talk to education based distribution coordinators
67          (SambaEdu, SkoleLinux, K12LTSP, ...) to see how to
68          better integrate PyKota with these.
69         
70        - Add most configuration directives to the database itself,
71          while still allowing to overwrite them with the configuration
72          files at run time.
73       
74        - Ink accounting ala PrintBill.
75       
76        - Price and statistics per page format.
77       
78        - Allow the admin to choose an action to take when the database
79          is unavailable (server is down or something like that), so
80          introduce two directives :
81         
82            nodb: accept|reject|hold
83            lognodb: /path/to/file/for/later/batch/update/of/database
84       
85        - CUPS accepts the "STATE: ..." message as backchannel
86          data : use this to tell CUPS what action has been taken
87          for current job. I did some testing but wasn't able to
88          make it work...
89         
90        - Documentation...
91         
92        - Learn more bits of PHP to help with phpPyKotaAdmin, which
93          is a GREAT tool !
94       
95        - Multidatabase support, e.g. store users in LDAP, quota 
96          related datas in PostgreSQL, history in text file,
97          and so on... For 2.0, probably not before.
98         
99        - Re-add support for LPRng if interest is high enough (it is
100          not for now)
101       
102       
103============================================================
104
105Please e-mail bugs to: alet@librelogiciel.com (Jerome Alet)
Note: See TracBrowser for help on using the browser.