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
34 . New Users Guarantee Procedure
35 . WIP Change guarantee workflow
37 . Send email with appropriate link embedded
40 DONE brisk -> DONE mail-table
46 DONE click-link -> TODO check with <- ¡WE ARE HERE NOW!
55 . Email-address expiration check
59 DONE - CONTINUE FEATURE
60 DONE . replace explicit strings with multilanguage array
61 DONE . add a php downloader with filtering on allowed requests
62 DONE . save points every game
63 DONE . modify points calculation to include order and mazzo
64 DONE . exclude not standard types from statistics
65 DONE . daily reports (1 for each active tournament)
66 DONE . monthly stats (for normal match only)
67 DONE . show current match ID when created
68 DONE . add info about continue to the info page
69 DONE . add command to continue
70 DONE . check consistency of the request
71 DONE . rearrange users and game status to continue the selected match
72 DONE . investigate user reordering ??
75 . refactoring $enc attribute management
76 DONE . reintroduced $enc = 'plain' for websocket
77 DONE . fallback for not correct WS version
78 DONE . fini of ws stream
79 DONE . reactivate compression
80 DONE . fix xynt_test01
81 DONE M2: brisk working
82 DONE . manage multiport apache config
83 DONE . manage headers correctly in sac-a-push
84 DONE . manage transport.close method where required
85 DONE . xynt_stream: manage fallback to multiple ports
86 DONE . manage fini for ws
87 POST . server: manage input data from clients
88 POST . manage ping/pong (seems not required)
90 DONE . client (xynt_streaming.js)
91 DONE . server (transport.phh)
93 DONE M1: xynt_test01.php working
97 . db update (add components, maybe single string)
99 . filter in index_wr.php
102 . prefs_assign(content): assign json content as output var
103 . prefs_apply(prefs_new): apply new content to g_prefs and system
104 . prefs_load(content): load json content and apply to g_prefs and system
106 . prefs_update: update preferences temporarly
107 . prefs_save: save to the server the new prefs
109 - preferences (listen into preferences)
110 // js var, volatile server, (db server || cookie)
111 temporary: js var, volatile server
112 permanent: js var, volatile server, (db server || cookie)
114 . data from db OR, if missing, from cookies
118 . MANAGE NOT AUTH USERS
120 - preferences (with "modifiable S")
121 . Mod. S: new flag into database
122 . graph infrastructure
123 . new box to edit color
127 - BUG: some connection to the named socket fails
128 - Not simultaneous more then one stream
133 WIP - try to be more antivirus-friendly
134 - multiple rows between games
135 - packetize and automatize php-ancillary and apache module
136 - DISABLED_TO_FIX: DNS access (perform blocking dns requests, must be fixed)
141 DONE - temporarly server hung not reflected on user timeouts
142 DONE - timeouted users are still be able to sit down (only the first at the table is banned)
143 DONE - page still opened after the server restart
144 DONE - log_legal address fix
145 DONE - manage too fast reload in xynt-streaming
146 DONE - add xhr as transport layer and manage different streams better
147 TEST - BUG: pari + 72 non fa 4x ma attualmente fa 3x, da correggere
148 TEST - BUG: lurker are logged out (and remain a pending socket opened (look the spush log)
149 DONE - save/restore database
150 DONE - into the room local step remains -1
151 DONE - centralize all '<script ...' incapsulation to allow multiple transport system.
152 DONE - BUG: access with password from 2 diff browsers the second go in strange "page not found"
153 in the first tentative, the second works
154 DONE - BUG: access with password from 2 diff browsers place the first in a strict loop (the
155 problem was a call to a static parent method instead of the overrided child method,
156 substitute self:: with the dynamically get class::)
157 DONE - garbage management
159 DONE/FROZEN - problem with getpeer (HOSTADDR)
161 DONE - slow cards distribution
162 DONE - substr to mb_substr
163 DONE - parametrizations:
164 . parametrization of $DOCUMENT_ROOT var in brisk-spush.phh file
165 . parametrization of SITE_PREFIX(_LEN) define
166 . move the name of the named socket into the configuration file
167 DONE - manage and test cross forwarder between table and room
168 DONE - setcookie (for tables only and persist prefs)
169 DONE - images flickering on slow windows: try to poll stream every 300 ms (seems to be download problem)
170 DONE - database connection fails after a while, check close and try PGSQL_CONNECT_FORCE_NEW.
171 DONE - unneeded garbage_time.expired access
172 DONE - BUG: fast loop on stream index_rd_ifra page (js watchdog start without timeout corrupt counts)
173 DONE - BUG: logout failed (fixed with a garbage_collector wrapper at sac-a-push level
174 DONE - 404 wrong page management (remove directories redirections (es. brisk/))
175 DONE - configuration file management
176 DONE - app level keep-alive
177 DONE - index_wr other issues
178 DONE - from room to table
179 DONE - from table to room
181 DONE - bug: read from a not resource handle (already closed because a new socket substitute it)
182 DONE - partial write for normal page management
183 DONE - index_rd_ifra: last_clean issue
184 DONE - fwrite failed error management (select, buffer where store unsent data, and fwrite check and retry)
185 DONE - bug: after restart index_rd.php receive from prev clients a lot of req
186 DONE - index_wr.php::chat
187 DONE - index_wr.php::exit
188 DONE - index_rd.php porting
189 DONE - generic var management from internet
190 DONE - index.php auth part
191 ABRT - index_wr.php::reload - reload is js-only function
192 ABRT - keepalive management - not interesting for our purposes
197 - STEP MANAGEMENT VERIFY
199 DONE - move the garbage timeout on file
200 DONE - in index_rd load all data only when required
202 DONE . extern del garb_timeout
203 DONE . user_load parameters verify
204 DONE . Bin5::load_data and Bin5::save_data refactoring with
206 . move many function into "Bin5 class"
207 - garbaging of .step files
210 DONE - configurabilità file o db
211 DONE - aggiornare le funz di gestione db in modo che prevedano anche il flag DISABLE
212 DONE - travasatore file to pg
213 DONE - travaso punteggi
214 DONE - memorizzazione nuovi i punteggi nel db
215 DONE - gestione classifiche in SQL
220 DONE - points archiver
223 DONE - partial usability if database go down.
226 - sistema di inserimento nuovi utenti (riversatore da form di inserimento)
229 - aggiornare le funz di gestione db in modo che prevedano anche il flag SUSPEND
231 - ripristino password
234 - comunicazioni di aggiornamento (stato salvato sul server)
236 DONE - var $G_base aggiunta per gestire include in include da path differenti
242 DONE (WOW!) - js object with infos
243 DONE - main logic at login (cookie check in index_rd.php; show_message and createCookie via snippets with block
244 to prevent fast reload)
245 DONE - cookie per non assillare e visualizz.
246 DONE - graphical donameter
247 WIP content (in conf.)
249 DONE - numero di tavoli auth-only nel .brisk-install
251 TEST - ricalcolo delle persone in piedi quando si cambia modalità
252 DONE - se si e' in isolation non si può cambiare nick perdendo l' auth
253 DONE - non leggere le chat di quelli non autenticati (in isolation)
254 DONE - regole per passare alla modalita' (in piedi o ai tavoli autenticati)
255 DONE - treni non auth da nascondere
256 DONE - verso gli altri ??: uguale a prima
258 finire multilingua (briskin5/index_wr.php e altri se ce ne sono)
261 placing limits to config file
265 - come vengono aggiornate le classifiche: ogni giorno alle 23:58
267 - cosa cambia tra le tre coppie di classifiche:
268 ci sono le classifiche dell' ultima settimana, quelle dell' ultimo mese, e quelle dell' ultimo trimestre,
269 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.
271 - 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.
273 Un esempio per chiarire:
275 l'utente 'pippo' che è nuovo gioca 4 partite nell'ultima settimana con i seguenti punteggi:
277 lo score viene { [ (-2) + (1) + (2) + (1) ] / 4 } * 100 = 50.0
279 a parità di score tra utenti va più in alto chi ha giocato più partite.
281 Se dopo quelle 4 partite 'pippo' non ne giocherà più, passata una settimana dall'ultima giocata
282 sparirà dalla classifica settimanale e rimarrà in quelle mensili e trimestrali.
293 DONE - paste da demauroparavia
294 DONE - recupero partita per re-login con password
295 DONE - problema "|" nei nomi (manca enhance degli script lato server)
296 - problema col treno se mouse sopra mentre stringe (verif)
306 DONE - skin della textarea
308 DONE - init client (read from cookie) - ALWAYS BY SERVER
310 DONE - after cookie check auth-only when no-auth case
311 DONE - aggiungi info accanto a "Chat"
313 DONE - img dei comandi
315 DONE - form per garantire utenti (accoda in un file nel formato corretto)
316 DONE - process request
320 DONE - process form js side
322 DONE - documentazione in help
326 DONE - aggiornare help
327 DONE - overflow management
332 - notify for long pages
335 - silenziastolti vari (fino al buddy import)
336 - restrict challenge per IP
337 - restricted charset for login
346 - studiare un anti-dos
361 DONE - questione "a monte" che:
362 DONE - lascia fuori il bottone
363 DONE - scrive à e compagnia
364 DONE - refresh act_table when unauthorized
365 DONE - problema ghost autenticato (ne prendi il posto ovunque sia)
369 DONE - refactoring of the owner name (auth attr for owner name)
371 DONE - at chat input line
372 DONE - in the chat output line
373 DONE - deauth management
375 DONE - at chat input line
376 DONE - in the chat output line
377 DONE - for user area of other users
378 DONE - deauth management
379 DONE - alart to one user
384 DONE - strong ban: "expire time|IP|session|(nick if authenticated)"
385 DONE - login: se auth - verifica solo gli expire per quel nick
386 DONE - se non auth - verifica gli expire per IP e sessione
387 DONE - riscrivere messaggi
391 DONE - richiede per l' utente un token (tutta la parte backend va un minimo studiata)
392 DONE - lo legge, ci hasha la password
393 DONE - invia la pass al server hashata
395 DONE - check del login e return corretto
396 DONE - oggetto in shm single table con ( "ip", "login", timestamp ) e suo management
397 DONE - rename ghost if logged
398 DONE - onunload_cb e onbeforeunload_cb !!!
399 DONE - da change attrs a change class (input field)
400 DONE - colore del bg per arrivare ad essere omogeneo
401 DONE - cambiare path e file di config
402 DONE - login with or without pass
403 DONE - registered nick notice (METTERE IL MSG NELLA PAG DI LOGIN)
404 DONE - segnalare tavoli solo per auth
405 DONE - rename restriction at auth table
406 DONE - change nick (strcasecmp)
407 DONE - refact js tables to handle flags
408 DONE - room javascript refactoring
410 DONE - work background
411 DONE - reserved tables
418 URGENT - tables spawn
419 DONE - link with photos
420 DONE - top banner in Etc file
421 DONE - spawn of a table
422 DONE - data to cookies (removed table_idx from xhr calls also)
423 DONE - set subst to shutdowner/shutdowned
424 DONE - return to index.php
426 DONE - recover of corrupted table data
427 DONE - closure of a table
428 DONE - flush of the table
429 DONE - security checks for right scope access
430 DONE - garbage collector management
431 DONE - recursive garbage - howto ?
432 DONE - stat & subst in browser
433 DONE - laccwr setting and exit if all players are unactive for some time
434 DONE - the list of test case
436 DONE - remove unused parts
439 DONE - cambiare titolo al tavolo
440 DONE - shutdowning lock tables
442 DONE - public announcements
443 DONE - 10 sec to exit from table
447 TRAIN - DONE - add again in reload
448 DONE - wag_set refact
449 DONE - filtra char speciali per title
450 DONE - chatt_send refact
451 DONE - elenco dei giocatori
452 DONE - documentazione online
453 DONE - timeout management
454 LATER - border color a muzzo
457 NORM - public announcements
458 NORM - 10 sec to exit from table
459 NORM - moving label for tables click
461 ----------------- join -----------------
464 NORM - restart preload img
465 NORM - tools dir with a main and some pages where check briscola tools.
468 NORM - chat vecchie in reload (forse)
473 - user assistant (with button to enable disable)
479 NORM - internationalization
480 NORM - img -> div + css
485 - link to stable/unstable
487 -------------------------------------------------------------------
491 ABORTED - asta: highlight buttons (css hover) - change pointer when over
493 DONE - special chars in js
494 DONE - ban temporaneo dai tavoli
495 DONE - flash player to play sound
496 DONEBUG - (aum. il timeout) - carte giocate che restano girate
497 Sembra non migliorare di molto la cosa, gestita la cache
498 correttamente, sono apposto.
500 DONE - one player reject a game, to less points (<= 2)
502 DONE - test di download per la cache
503 DONE - se passano tutti tranne l'ultimo l'asta va al penultimo.
504 Corretto il codice, occorre verificare se questo
505 ingenera qualche problema.
506 DONE - raddoppiato il numero di righe nella chat
507 DONE - corretto bug del /nick
508 DONE - carosello pubblicità altout
510 DONE - unload of the stream
511 DONE - standup centrati
512 DONE - current player - in info
513 DONE - HELP butt con ABOUT, REGOLE, VERSIONE
514 DONE - welcome lines in the chats (room and table)
515 DONE - welcome lines in the chats (room and table)
516 DONE - nomi in primo piano se vai sul quadrato
517 DONE - to pass explicit config file to INSTALL.sh
518 DONE - flag to create a config file
519 ABRT - bottoni => immagini
520 DONE - aggiungere bottone al login
521 DONE - nomi in primo piano se vai sul quadrato
522 DONE - installer to set cookie path
524 DONE - automatic and manual logout
525 DONE - cache problems solved via .htaccess
526 DONE - all players out of the auction
527 DONE - time to send cards
528 DONE - hide cards before sends at a new game
529 DONE - well recognization of the browser and O.S.
530 DONE - login consistency !!!!
531 DONE - functionalization of garbage
532 DONE - call garbage function into login
534 DONE - manage the reload from scratch of the table page
536 DONE - sendcard => card_send(idx, ....)
537 DONE - show table for game
538 DONE - points calculation
539 DONE - make-up of the chooser
540 DONE - where place the briscola on the table
542 DONE - show current auction position
543 DONE - table with internal management of the transition between pages.
544 DONE - server side page abort management
545 DONE - cookie problem with Ajax
546 DONE - spostare il tasto "esco"
547 DONE - to pass explicit config file to INSTALL.sh
549 DONE - safety out management
550 DONE - info enhancement and related button (how win the last game and
551 with how much points ?)
562 Page abort (reload on http streaming case)
568 .htaccess AllowOverwrite mode for Cache-Control directive