6 - PLACEMENT-NORMALIZATION
7 DONE . Normalize previous points
8 DONE . Denormalize "Info" view
9 DONE . Denormalize explained matches
10 DONE . Check placement
11 DONE . Distinguish between inherited mult and local mult
14 DONE . Terms Of Service acceptance
15 DONE . print date of hard switch
17 DONE . user TOS acceptance (db field)
18 DONE . show TOS ([show me later, yes, no]/[yes, no])
19 DONE . switch-off date
22 DONE . show current TOS
23 DONE . disable user reason integer field and remove SUSPEND state (db, php)
25 DONE . opt - download TOS
26 . opt - checkbox for anonimous users with message when not checked
27 . opt - button enabled when arrived to the bottom of the TOS only
28 . opt - check TOS version between config file and TOS file
29 DONE . show guarantee (/guar <login> command)
31 DONE . command documentation
32 DONE . manage disagreeding users investigation
33 DONE . self guaranteed
35 DONE . userauth command works
36 DONE . use it by the usermgmt page
37 . finish to implement the user management system
42 DONE - CONTINUE FEATURE
43 DONE . replace explicit strings with multilanguage array
44 DONE . add a php downloader with filtering on allowed requests
45 DONE . save points every game
46 DONE . modify points calculation to include order and mazzo
47 DONE . exclude not standard types from statistics
48 DONE . daily reports (1 for each active tournament)
49 DONE . monthly stats (for normal match only)
50 DONE . show current match ID when created
51 DONE . add info about continue to the info page
52 DONE . add command to continue
53 DONE . check consistency of the request
54 DONE . rearrange users and game status to continue the selected match
55 DONE . investigate user reordering ??
58 . refactoring $enc attribute management
59 DONE . reintroduced $enc = 'plain' for websocket
60 DONE . fallback for not correct WS version
61 DONE . fini of ws stream
62 DONE . reactivate compression
63 DONE . fix xynt_test01
64 DONE M2: brisk working
65 DONE . manage multiport apache config
66 DONE . manage headers correctly in sac-a-push
67 DONE . manage transport.close method where required
68 DONE . xynt_stream: manage fallback to multiple ports
69 DONE . manage fini for ws
70 POST . server: manage input data from clients
71 POST . manage ping/pong (seems not required)
73 DONE . client (xynt_streaming.js)
74 DONE . server (transport.phh)
76 DONE M1: xynt_test01.php working
80 . db update (add components, maybe single string)
82 . filter in index_wr.php
85 . prefs_assign(content): assign json content as output var
86 . prefs_apply(prefs_new): apply new content to g_prefs and system
87 . prefs_load(content): load json content and apply to g_prefs and system
89 . prefs_update: update preferences temporarly
90 . prefs_save: save to the server the new prefs
92 - preferences (listen into preferences)
93 // js var, volatile server, (db server || cookie)
94 temporary: js var, volatile server
95 permanent: js var, volatile server, (db server || cookie)
97 . data from db OR, if missing, from cookies
101 . MANAGE NOT AUTH USERS
103 - preferences (with "modifiable S")
104 . Mod. S: new flag into database
105 . graph infrastructure
106 . new box to edit color
110 - BUG: some connection to the named socket fails
111 - Not simultaneous more then one stream
116 WIP - try to be more antivirus-friendly
117 - multiple rows between games
118 - packetize and automatize php-ancillary and apache module
119 - DISABLED_TO_FIX: DNS access (perform blocking dns requests, must be fixed)
124 DONE - temporarly server hung not reflected on user timeouts
125 DONE - timeouted users are still be able to sit down (only the first at the table is banned)
126 DONE - page still opened after the server restart
127 DONE - log_legal address fix
128 DONE - manage too fast reload in xynt-streaming
129 DONE - add xhr as transport layer and manage different streams better
130 TEST - BUG: pari + 72 non fa 4x ma attualmente fa 3x, da correggere
131 TEST - BUG: lurker are logged out (and remain a pending socket opened (look the spush log)
132 DONE - save/restore database
133 DONE - into the room local step remains -1
134 DONE - centralize all '<script ...' incapsulation to allow multiple transport system.
135 DONE - BUG: access with password from 2 diff browsers the second go in strange "page not found"
136 in the first tentative, the second works
137 DONE - BUG: access with password from 2 diff browsers place the first in a strict loop (the
138 problem was a call to a static parent method instead of the overrided child method,
139 substitute self:: with the dynamically get class::)
140 DONE - garbage management
142 DONE/FROZEN - problem with getpeer (HOSTADDR)
144 DONE - slow cards distribution
145 DONE - substr to mb_substr
146 DONE - parametrizations:
147 . parametrization of $DOCUMENT_ROOT var in brisk-spush.phh file
148 . parametrization of SITE_PREFIX(_LEN) define
149 . move the name of the named socket into the configuration file
150 DONE - manage and test cross forwarder between table and room
151 DONE - setcookie (for tables only and persist prefs)
152 DONE - images flickering on slow windows: try to poll stream every 300 ms (seems to be download problem)
153 DONE - database connection fails after a while, check close and try PGSQL_CONNECT_FORCE_NEW.
154 DONE - unneeded garbage_time.expired access
155 DONE - BUG: fast loop on stream index_rd_ifra page (js watchdog start without timeout corrupt counts)
156 DONE - BUG: logout failed (fixed with a garbage_collector wrapper at sac-a-push level
157 DONE - 404 wrong page management (remove directories redirections (es. brisk/))
158 DONE - configuration file management
159 DONE - app level keep-alive
160 DONE - index_wr other issues
161 DONE - from room to table
162 DONE - from table to room
164 DONE - bug: read from a not resource handle (already closed because a new socket substitute it)
165 DONE - partial write for normal page management
166 DONE - index_rd_ifra: last_clean issue
167 DONE - fwrite failed error management (select, buffer where store unsent data, and fwrite check and retry)
168 DONE - bug: after restart index_rd.php receive from prev clients a lot of req
169 DONE - index_wr.php::chat
170 DONE - index_wr.php::exit
171 DONE - index_rd.php porting
172 DONE - generic var management from internet
173 DONE - index.php auth part
174 ABRT - index_wr.php::reload - reload is js-only function
175 ABRT - keepalive management - not interesting for our purposes
180 - STEP MANAGEMENT VERIFY
182 DONE - move the garbage timeout on file
183 DONE - in index_rd load all data only when required
185 DONE . extern del garb_timeout
186 DONE . user_load parameters verify
187 DONE . Bin5::load_data and Bin5::save_data refactoring with
189 . move many function into "Bin5 class"
190 - garbaging of .step files
193 DONE - configurabilità file o db
194 DONE - aggiornare le funz di gestione db in modo che prevedano anche il flag DISABLE
195 DONE - travasatore file to pg
196 DONE - travaso punteggi
197 DONE - memorizzazione nuovi i punteggi nel db
198 DONE - gestione classifiche in SQL
203 DONE - points archiver
206 DONE - partial usability if database go down.
209 - sistema di inserimento nuovi utenti (riversatore da form di inserimento)
212 - aggiornare le funz di gestione db in modo che prevedano anche il flag SUSPEND
214 - ripristino password
217 - comunicazioni di aggiornamento (stato salvato sul server)
219 DONE - var $G_base aggiunta per gestire include in include da path differenti
225 DONE (WOW!) - js object with infos
226 DONE - main logic at login (cookie check in index_rd.php; show_message and createCookie via snippets with block
227 to prevent fast reload)
228 DONE - cookie per non assillare e visualizz.
229 DONE - graphical donameter
230 WIP content (in conf.)
232 DONE - numero di tavoli auth-only nel .brisk-install
234 TEST - ricalcolo delle persone in piedi quando si cambia modalità
235 DONE - se si e' in isolation non si può cambiare nick perdendo l' auth
236 DONE - non leggere le chat di quelli non autenticati (in isolation)
237 DONE - regole per passare alla modalita' (in piedi o ai tavoli autenticati)
238 DONE - treni non auth da nascondere
239 DONE - verso gli altri ??: uguale a prima
241 finire multilingua (briskin5/index_wr.php e altri se ce ne sono)
244 placing limits to config file
248 - come vengono aggiornate le classifiche: ogni giorno alle 23:58
250 - cosa cambia tra le tre coppie di classifiche:
251 ci sono le classifiche dell' ultima settimana, quelle dell' ultimo mese, e quelle dell' ultimo trimestre,
252 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.
254 - 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.
256 Un esempio per chiarire:
258 l'utente 'pippo' che è nuovo gioca 4 partite nell'ultima settimana con i seguenti punteggi:
260 lo score viene { [ (-2) + (1) + (2) + (1) ] / 4 } * 100 = 50.0
262 a parità di score tra utenti va più in alto chi ha giocato più partite.
264 Se dopo quelle 4 partite 'pippo' non ne giocherà più, passata una settimana dall'ultima giocata
265 sparirà dalla classifica settimanale e rimarrà in quelle mensili e trimestrali.
276 DONE - paste da demauroparavia
277 DONE - recupero partita per re-login con password
278 DONE - problema "|" nei nomi (manca enhance degli script lato server)
279 - problema col treno se mouse sopra mentre stringe (verif)
289 DONE - skin della textarea
291 DONE - init client (read from cookie) - ALWAYS BY SERVER
293 DONE - after cookie check auth-only when no-auth case
294 DONE - aggiungi info accanto a "Chat"
296 DONE - img dei comandi
298 DONE - form per garantire utenti (accoda in un file nel formato corretto)
299 DONE - process request
303 DONE - process form js side
305 DONE - documentazione in help
309 DONE - aggiornare help
310 DONE - overflow management
315 - notify for long pages
318 - silenziastolti vari (fino al buddy import)
319 - restrict challenge per IP
320 - restricted charset for login
329 - studiare un anti-dos
344 DONE - questione "a monte" che:
345 DONE - lascia fuori il bottone
346 DONE - scrive à e compagnia
347 DONE - refresh act_table when unauthorized
348 DONE - problema ghost autenticato (ne prendi il posto ovunque sia)
352 DONE - refactoring of the owner name (auth attr for owner name)
354 DONE - at chat input line
355 DONE - in the chat output line
356 DONE - deauth management
358 DONE - at chat input line
359 DONE - in the chat output line
360 DONE - for user area of other users
361 DONE - deauth management
362 DONE - alart to one user
367 DONE - strong ban: "expire time|IP|session|(nick if authenticated)"
368 DONE - login: se auth - verifica solo gli expire per quel nick
369 DONE - se non auth - verifica gli expire per IP e sessione
370 DONE - riscrivere messaggi
374 DONE - richiede per l' utente un token (tutta la parte backend va un minimo studiata)
375 DONE - lo legge, ci hasha la password
376 DONE - invia la pass al server hashata
378 DONE - check del login e return corretto
379 DONE - oggetto in shm single table con ( "ip", "login", timestamp ) e suo management
380 DONE - rename ghost if logged
381 DONE - onunload_cb e onbeforeunload_cb !!!
382 DONE - da change attrs a change class (input field)
383 DONE - colore del bg per arrivare ad essere omogeneo
384 DONE - cambiare path e file di config
385 DONE - login with or without pass
386 DONE - registered nick notice (METTERE IL MSG NELLA PAG DI LOGIN)
387 DONE - segnalare tavoli solo per auth
388 DONE - rename restriction at auth table
389 DONE - change nick (strcasecmp)
390 DONE - refact js tables to handle flags
391 DONE - room javascript refactoring
393 DONE - work background
394 DONE - reserved tables
401 URGENT - tables spawn
402 DONE - link with photos
403 DONE - top banner in Etc file
404 DONE - spawn of a table
405 DONE - data to cookies (removed table_idx from xhr calls also)
406 DONE - set subst to shutdowner/shutdowned
407 DONE - return to index.php
409 DONE - recover of corrupted table data
410 DONE - closure of a table
411 DONE - flush of the table
412 DONE - security checks for right scope access
413 DONE - garbage collector management
414 DONE - recursive garbage - howto ?
415 DONE - stat & subst in browser
416 DONE - laccwr setting and exit if all players are unactive for some time
417 DONE - the list of test case
419 DONE - remove unused parts
422 DONE - cambiare titolo al tavolo
423 DONE - shutdowning lock tables
425 DONE - public announcements
426 DONE - 10 sec to exit from table
430 TRAIN - DONE - add again in reload
431 DONE - wag_set refact
432 DONE - filtra char speciali per title
433 DONE - chatt_send refact
434 DONE - elenco dei giocatori
435 DONE - documentazione online
436 DONE - timeout management
437 LATER - border color a muzzo
440 NORM - public announcements
441 NORM - 10 sec to exit from table
442 NORM - moving label for tables click
444 ----------------- join -----------------
447 NORM - restart preload img
448 NORM - tools dir with a main and some pages where check briscola tools.
451 NORM - chat vecchie in reload (forse)
456 - user assistant (with button to enable disable)
462 NORM - internationalization
463 NORM - img -> div + css
468 - link to stable/unstable
470 -------------------------------------------------------------------
474 ABORTED - asta: highlight buttons (css hover) - change pointer when over
476 DONE - special chars in js
477 DONE - ban temporaneo dai tavoli
478 DONE - flash player to play sound
479 DONEBUG - (aum. il timeout) - carte giocate che restano girate
480 Sembra non migliorare di molto la cosa, gestita la cache
481 correttamente, sono apposto.
483 DONE - one player reject a game, to less points (<= 2)
485 DONE - test di download per la cache
486 DONE - se passano tutti tranne l'ultimo l'asta va al penultimo.
487 Corretto il codice, occorre verificare se questo
488 ingenera qualche problema.
489 DONE - raddoppiato il numero di righe nella chat
490 DONE - corretto bug del /nick
491 DONE - carosello pubblicità altout
493 DONE - unload of the stream
494 DONE - standup centrati
495 DONE - current player - in info
496 DONE - HELP butt con ABOUT, REGOLE, VERSIONE
497 DONE - welcome lines in the chats (room and table)
498 DONE - welcome lines in the chats (room and table)
499 DONE - nomi in primo piano se vai sul quadrato
500 DONE - to pass explicit config file to INSTALL.sh
501 DONE - flag to create a config file
502 ABRT - bottoni => immagini
503 DONE - aggiungere bottone al login
504 DONE - nomi in primo piano se vai sul quadrato
505 DONE - installer to set cookie path
507 DONE - automatic and manual logout
508 DONE - cache problems solved via .htaccess
509 DONE - all players out of the auction
510 DONE - time to send cards
511 DONE - hide cards before sends at a new game
512 DONE - well recognization of the browser and O.S.
513 DONE - login consistency !!!!
514 DONE - functionalization of garbage
515 DONE - call garbage function into login
517 DONE - manage the reload from scratch of the table page
519 DONE - sendcard => card_send(idx, ....)
520 DONE - show table for game
521 DONE - points calculation
522 DONE - make-up of the chooser
523 DONE - where place the briscola on the table
525 DONE - show current auction position
526 DONE - table with internal management of the transition between pages.
527 DONE - server side page abort management
528 DONE - cookie problem with Ajax
529 DONE - spostare il tasto "esco"
530 DONE - to pass explicit config file to INSTALL.sh
532 DONE - safety out management
533 DONE - info enhancement and related button (how win the last game and
534 with how much points ?)
545 Page abort (reload on http streaming case)
551 .htaccess AllowOverwrite mode for Cache-Control directive