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