updated
[brisk.git] / TODO.txt
1 ======== 
2   TODO
3 ========
4
5
6  BRISK3 (trusty)
7  ======
8   - donameter
9     DONE - G_donors
10     DONE (WOW!) - js object with infos
11     DONE - main logic at login (cookie check in index_rd.php; show_message and createCookie via snippets with block
12            to prevent fast reload)
13     DONE - cookie per non assillare e visualizz.
14     graphical donameter
15     WIP content (in conf.)
16
17   DONE - numero di tavoli auth-only nel .brisk-install
18   - isolation
19     TEST - ricalcolo delle persone in piedi quando si cambia modalità
20     DONE - se si e' in isolation non si può cambiare nick perdendo l' auth
21     DONE - non leggere le chat di quelli non autenticati (in isolation)
22     DONE - regole per passare alla modalita' (in piedi o ai tavoli autenticati) 
23     DONE - treni non auth da nascondere 
24     DONE - verso gli altri ??: uguale a prima
25
26   finire multilingua (briskin5/index_wr.php e altri se ce ne sono)
27   coniglio
28   only auth strictly
29   placing limits to config file
30
31 Dunque, 
32
33 - come vengono aggiornate le classifiche: ogni giorno alle 23:58
34
35 - cosa cambia tra le tre coppie di classifiche: 
36   ci sono le classifiche dell' ultima settimana, quelle dell' ultimo mese,  e quelle dell' ultimo trimestre,
37   per ognuno di questi lassi di tempo poi c'è la classifica di chi ha giocato più di TOT partite o meno di TOT partite, con TOT che cambia a seconda del lasso di tempo.
38
39 - come vengono calcolate le classifiche: per ogni utente vengono presi tutti i punti fatti ai tavoli con lucchetto nel lasso di tempo preso in considerazione (ultima settimana, ultimo mese o ultimo trimestre), sommati e divisi per il numero di partite fatte in quello stesso lasso di tempo per normalizzare i valori; poi siccome la gente quando vede 0.18734 sbarella ho deciso di moltiplicare il tutto per 100.
40
41 Un esempio per chiarire:
42
43   l'utente 'pippo' che è nuovo gioca 4 partite nell'ultima settimana con i seguenti punteggi:
44     -2, 1, 2, 1
45   lo score viene { [ (-2) + (1) + (2) + (1) ] / 4 }  * 100 = 50.0
46   
47   a parità di score tra utenti va più in alto chi ha giocato più partite.
48
49 Se dopo quelle 4 partite 'pippo' non ne giocherà più, passata una settimana dall'ultima giocata 
50 sparirà dalla classifica settimanale e rimarrà in quelle mensili e trimestrali.
51
52
53   
54
55
56
57
58  BUG
59  ---
60  
61   DONE - paste da demauroparavia
62   DONE - recupero partita per re-login con password
63   DONE - problema "|" nei nomi (manca enhance degli script lato server)
64   - problema col treno se mouse sopra mentre stringe (verif)
65   
66  MINOR
67  -----
68
69  NORMAL
70  ------
71
72   - win test
73   WIP - /listen 
74     DONE - skin della textarea
75     DONE - set cookie 
76     DONE - init client (read from cookie) - ALWAYS BY SERVER
77     DONE - init server
78     DONE - after cookie check auth-only when no-auth case
79     DONE - aggiungi info accanto a "Chat"
80   DONE - /mesgtoadm
81   DONE - img dei comandi
82
83   DONE - form per garantire utenti (accoda in un file nel formato corretto)
84   DONE -   process request
85   DONE -   show form
86   DONE -   close butt
87   DONE -   submit form
88   DONE -   process form js side 
89   DONE -   process form
90   DONE -   documentazione in help
91
92   DONE - user status
93
94   DONE - aggiornare help
95   DONE -   overflow management
96   DONE -   for status
97   -   for password
98
99   DONE - reload home
100   - notify for long pages
101
102   - buddy list
103   - silenziastolti vari (fino al buddy import)
104   - restrict challenge per IP
105   - restricted charset for login
106   - watchdog
107
108   - db (minimal)
109     - db admin page
110     - user db admin
111     - use db 
112     - admin db
113
114     - studiare un anti-dos
115   - login modify
116  DONE  - db (fake)
117  DONE  - display auth
118     - manage preferences 
119
120  minor
121  -----
122    - auth after login
123
124 ----- done ------
125
126  BUG
127  ---
128   DONE   righe troncate
129   DONE - questione "a monte" che:
130   DONE   - lascia fuori il bottone
131   DONE   - scrive &agrave e compagnia
132   DONE - refresh act_table when unauthorized
133   DONE - problema ghost autenticato (ne prendi il posto ovunque sia)
134
135  MINOR
136  -----
137   DONE - refactoring of the owner name (auth attr for owner name)
138   DONE   - room
139   DONE     - at chat input line 
140   DONE     - in the chat output line
141   DONE     - deauth management
142   DONE - table
143   DONE   - at chat input line
144   DONE   - in the chat output line
145   DONE   - for user area of other users
146   DONE   - deauth management
147   DONE - alart to one user
148
149
150  NORMAL
151  ------
152   DONE - strong ban: "expire time|IP|session|(nick if authenticated)"
153   DONE   - login: se auth      -  verifica solo gli expire per quel nick
154   DONE   -        se non auth  -  verifica gli expire per IP e sessione
155   DONE   - riscrivere messaggi
156
157   DONE - login 
158   DONE   - se pass:
159   DONE     - richiede per l' utente un token (tutta la parte backend va un minimo studiata)
160   DONE     - lo legge, ci hasha la password
161   DONE     - invia la pass al server hashata
162   DONE   - se non pass:
163   DONE     - check del login e return corretto
164   DONE     - oggetto in shm single table con ( "ip", "login", timestamp ) e suo management
165   DONE     - rename ghost if logged
166   DONE     - onunload_cb e onbeforeunload_cb !!! 
167   DONE   - da change attrs a change class (input field)
168   DONE     - colore del bg per arrivare ad essere omogeneo
169   DONE     - cambiare path e file di config
170   DONE   - login with or without pass
171   DONE   - registered nick notice (METTERE IL MSG NELLA PAG DI LOGIN)
172   DONE     - segnalare tavoli solo per auth
173   DONE     - rename restriction at auth table
174   DONE     - change nick (strcasecmp)
175   DONE   - refact js tables to handle flags
176   DONE - room javascript refactoring
177
178   DONE - work background
179   DONE - reserved tables
180
181
182  BRISK2 (spawn)
183  ======
184
185    
186    URGENT - tables spawn
187             DONE - link with photos
188             DONE - top banner in Etc file
189             DONE - spawn of a table
190             DONE - data to cookies (removed table_idx from xhr calls also)
191             DONE - set subst to shutdowner/shutdowned
192             DONE - return to index.php
193             DONE - game's token
194             DONE - recover of corrupted table data
195             DONE - closure of a table
196             DONE - flush of the table
197             DONE - security checks for right scope access
198             DONE - garbage collector management
199             DONE -    recursive garbage - howto ?
200             DONE - stat & subst in browser
201             DONE - laccwr setting and exit if all players are unactive for some time
202             DONE - the list of test case
203             DONE - shm dimension
204             DONE - remove unused parts
205             DONE - move images
206             DONE - optimizations
207             DONE - cambiare titolo al tavolo
208             DONE - shutdowning lock tables
209             DONE - topbanner
210             DONE - public announcements
211             DONE - 10 sec to exit from table
212
213             FAR - inheritances
214    
215    TRAIN  -  DONE - add again in reload   
216              DONE - wag_set refact
217              DONE - filtra char speciali per title
218              DONE - chatt_send refact 
219              DONE - elenco dei giocatori
220              DONE - documentazione online
221              DONE - timeout management     
222              LATER - border color a muzzo
223        
224    NORM   - testament
225    NORM   - public announcements
226    NORM   - 10 sec to exit from table
227    NORM   - moving label for tables click
228
229 ----------------- join -----------------
230    NORM   - map
231
232    NORM   - restart preload img
233    NORM   - tools dir with a main and some pages where check briscola tools.
234    NORM   - watchdog
235
236    NORM   - chat vecchie in reload (forse)
237
238  MIDDLE TODO
239  ===========
240
241    - user assistant (with button to enable disable)
242    - documentation
243
244
245  FAR TODO
246  ========
247    NORM - internationalization
248    NORM - img -> div + css
249    
250  WEB
251  ===
252
253    - link to stable/unstable
254
255 -------------------------------------------------------------------
256  DONE
257  ====
258
259    ABORTED - asta: highlight buttons (css hover) - change pointer when over
260    DONE - step proxy
261    DONE - special chars in js
262    DONE - ban temporaneo dai tavoli
263    DONE - flash player to play sound
264    DONEBUG - (aum. il timeout) - carte giocate che restano girate
265          Sembra non migliorare di molto la cosa, gestita la cache
266          correttamente, sono apposto.
267
268    DONE - one player reject a game, to less points (<= 2)
269    DONE - help page
270    DONE - test di download per la cache
271    DONE - se passano tutti tranne l'ultimo l'asta va al penultimo.
272           Corretto il codice, occorre verificare se questo
273           ingenera qualche problema.
274    DONE - raddoppiato il numero di righe nella chat
275    DONE - corretto bug del /nick
276    DONE - carosello pubblicità altout
277    DONE - smammamorti
278    DONE - unload of the stream
279    DONE - standup centrati
280    DONE - current player - in info
281    DONE - HELP butt con ABOUT, REGOLE, VERSIONE
282    DONE - wellcome lines in the chats (room and table)
283    DONE - wellcome lines in the chats (room and table)
284    DONE - nomi in primo piano se vai sul quadrato   
285    DONE - to pass explicit config file to INSTALL.sh
286    DONE - flag to create a config file
287    ABRT - bottoni => immagini
288    DONE - aggiungere bottone al login
289    DONE - nomi in primo piano se vai sul quadrato   
290    DONE - installer to set cookie path
291    DONE - change name
292    DONE - automatic and manual logout
293    DONE - cache problems solved via .htaccess
294    DONE - all players out of the auction
295    DONE - time to send cards
296    DONE - hide cards before sends at a new game
297    DONE - well recognization of the browser and O.S.
298    DONE - login consistency !!!!
299    DONE - functionalization of garbage
300    DONE - call garbage function into login
301    DONE - game
302    DONE - manage the reload from scratch of the table page
303    DONE - table reset
304    DONE - sendcard => card_send(idx, ....)
305    DONE - show table for game
306    DONE - points calculation
307    DONE - make-up of the chooser
308    DONE - where place the briscola on the table
309    DONE - users info
310    DONE - show current auction position
311    DONE - table with internal management of the transition between pages.
312    DONE - server side page abort management  
313    DONE - cookie problem with Ajax
314    DONE - spostare il tasto "esco"
315    DONE - to pass explicit config file to INSTALL.sh 
316    DONE - 8 tables
317    DONE - safety out management
318    DONE - info enhancement and related button (how win the last game and
319           with how much points ?)
320
321  WEB
322    DONE - homepage
323    DONE - screenshots
324
325 DOC
326    CHAPTERS
327       HTTP Streaming
328       Local serializer
329       Database on shmem
330       Page abort (reload on http streaming case)
331       Chat
332       Cookies management
333       CSS tricks
334
335 CHECK ON NEW SERVERS
336 .htaccess AllowOverwrite mode for Cache-Control directive
337
338
339
340
341 */
342