7 - Not triple chars between letters
8 - usermgmt: add user delete
9 DONE - 10002 message when already clicked
10 DONE - trim spaces in apprentice form
11 DONE - Remove books from chat
12 DONE - usermgmt: add email
17 * Users Network construction
20 DONE - add apprentices tables
21 - enhance info interface
22 . disable parts of interface
23 - minisplash at end of the match
24 - differentiate table authorization
25 * add new kind of isolation for apprentice
27 * Double click on chat to open preferences
31 DONE - match counters (part 2)
32 DONE . migration script for old users
33 - guarantee for apprentice
40 DONE - match counters (part 2)
41 DONE . migration script for old users
45 DONE - correggere minuta giornaliera
46 DONE - aggiungere mask per autogar
47 DONE - correggere email per apprentice
48 DONE - verificare la variabile per tout IP ban apprentice
49 DONE - chat ban for apprentice
51 DONE - ip check and time limit
53 DONE . temporary table limitation
55 DONE - usermgmt extension
56 DONE - add close button
57 DONE - add apprentice icon
58 DONE - match counters (part 1)
59 DONE . sql for match counters
60 DONE - new info system
61 DONE - click management
62 DONE - show user info (RO)
63 DONE - require command/info
64 DONE - fix fiverank table
65 DONE - fix bug with bitwise
66 DONE - fix layout of tables
67 DONE - aggiungere books.png
78 . study how to move login delta injection
81 DONE . Guarantes for certified-only (buttons choice managed)
82 DONE . Tables for certified-only
84 . Placing for certified-only
87 DONE . BAN and BLACK lists added
88 DONE . update method to SIGHUP manager
89 DONE . create constructor refactored
91 - PLACEMENT-NORMALIZATION
92 DONE . Normalize previous points
93 DONE . Denormalize "Info" view
94 DONE . Denormalize explained matches
95 DONE . Check placement
96 DONE . Distinguish between inherited mult and local mult
99 DONE . Terms Of Service acceptance
100 DONE . print date of hard switch
102 DONE . user TOS acceptance (db field)
103 DONE . show TOS ([show me later, yes, no]/[yes, no])
104 DONE . switch-off date
107 DONE . show current TOS
108 DONE . disable user reason integer field and remove SUSPEND state (db, php)
109 DONE . fix tos layout
110 DONE . opt - download TOS
111 . opt - checkbox for anonimous users with message when not checked
112 . opt - button enabled when arrived to the bottom of the TOS only
113 . opt - check TOS version between config file and TOS file
114 DONE . show guarantee (/guar <login> command)
115 DONE . multi-language
116 DONE . command documentation
117 DONE . manage disagreeding users investigation
118 DONE . self guaranteed
119 . DONE New Users Guarantee Procedure
120 . DONE Change guarantee workflow
124 -------------------------------------------------------------------------
132 -------------------------------------------------------------------------
145 -------------------------------------------------------------------------
154 -------------------------------------------------------------------------
157 -------------------------------------------------------------------------
159 DONE . More user info in the list
160 DONE . Manage date to display when a user was required
161 . Email-address expiration check
165 DONE - CONTINUE FEATURE
166 DONE . replace explicit strings with multilanguage array
167 DONE . add a php downloader with filtering on allowed requests
168 DONE . save points every game
169 DONE . modify points calculation to include order and mazzo
170 DONE . exclude not standard types from statistics
171 DONE . daily reports (1 for each active tournament)
172 DONE . monthly stats (for normal match only)
173 DONE . show current match ID when created
174 DONE . add info about continue to the info page
175 DONE . add command to continue
176 DONE . check consistency of the request
177 DONE . rearrange users and game status to continue the selected match
178 DONE . investigate user reordering ??
180 - WEBSOCKET TRANSPORT
181 . refactoring $enc attribute management
182 DONE . reintroduced $enc = 'plain' for websocket
183 DONE . fallback for not correct WS version
184 DONE . fini of ws stream
185 DONE . reactivate compression
186 DONE . fix xynt_test01
187 DONE M2: brisk working
188 DONE . manage multiport apache config
189 DONE . manage headers correctly in sac-a-push
190 DONE . manage transport.close method where required
191 DONE . xynt_stream: manage fallback to multiple ports
192 DONE . manage fini for ws
193 POST . server: manage input data from clients
194 POST . manage ping/pong (seems not required)
196 DONE . client (xynt_streaming.js)
197 DONE . server (transport.phh)
199 DONE M1: xynt_test01.php working
203 . db update (add components, maybe single string)
204 . filter in index.php
205 . filter in index_wr.php
208 . prefs_assign(content): assign json content as output var
209 . prefs_apply(prefs_new): apply new content to g_prefs and system
210 . prefs_load(content): load json content and apply to g_prefs and system
212 . prefs_update: update preferences temporarly
213 . prefs_save: save to the server the new prefs
215 - preferences (listen into preferences)
216 // js var, volatile server, (db server || cookie)
217 temporary: js var, volatile server
218 permanent: js var, volatile server, (db server || cookie)
220 . data from db OR, if missing, from cookies
224 . MANAGE NOT AUTH USERS
226 - preferences (with "modifiable S")
227 . Mod. S: new flag into database
228 . graph infrastructure
229 . new box to edit color
233 - BUG: some connection to the named socket fails
234 - Not simultaneous more then one stream
239 WIP - try to be more antivirus-friendly
240 - multiple rows between games
241 - packetize and automatize php-ancillary and apache module
242 - DISABLED_TO_FIX: DNS access (perform blocking dns requests, must be fixed)
247 DONE - temporarly server hung not reflected on user timeouts
248 DONE - timeouted users are still be able to sit down (only the first at the table is banned)
249 DONE - page still opened after the server restart
250 DONE - log_legal address fix
251 DONE - manage too fast reload in xynt-streaming
252 DONE - add xhr as transport layer and manage different streams better
253 TEST - BUG: pari + 72 non fa 4x ma attualmente fa 3x, da correggere
254 TEST - BUG: lurker are logged out (and remain a pending socket opened (look the spush log)
255 DONE - save/restore database
256 DONE - into the room local step remains -1
257 DONE - centralize all '<script ...' incapsulation to allow multiple transport system.
258 DONE - BUG: access with password from 2 diff browsers the second go in strange "page not found"
259 in the first tentative, the second works
260 DONE - BUG: access with password from 2 diff browsers place the first in a strict loop (the
261 problem was a call to a static parent method instead of the overrided child method,
262 substitute self:: with the dynamically get class::)
263 DONE - garbage management
265 DONE/FROZEN - problem with getpeer (HOSTADDR)
267 DONE - slow cards distribution
268 DONE - substr to mb_substr
269 DONE - parametrizations:
270 . parametrization of $DOCUMENT_ROOT var in brisk-spush.phh file
271 . parametrization of SITE_PREFIX(_LEN) define
272 . move the name of the named socket into the configuration file
273 DONE - manage and test cross forwarder between table and room
274 DONE - setcookie (for tables only and persist prefs)
275 DONE - images flickering on slow windows: try to poll stream every 300 ms (seems to be download problem)
276 DONE - database connection fails after a while, check close and try PGSQL_CONNECT_FORCE_NEW.
277 DONE - unneeded garbage_time.expired access
278 DONE - BUG: fast loop on stream index_rd_ifra page (js watchdog start without timeout corrupt counts)
279 DONE - BUG: logout failed (fixed with a garbage_collector wrapper at sac-a-push level
280 DONE - 404 wrong page management (remove directories redirections (es. brisk/))
281 DONE - configuration file management
282 DONE - app level keep-alive
283 DONE - index_wr other issues
284 DONE - from room to table
285 DONE - from table to room
287 DONE - bug: read from a not resource handle (already closed because a new socket substitute it)
288 DONE - partial write for normal page management
289 DONE - index_rd_ifra: last_clean issue
290 DONE - fwrite failed error management (select, buffer where store unsent data, and fwrite check and retry)
291 DONE - bug: after restart index_rd.php receive from prev clients a lot of req
292 DONE - index_wr.php::chat
293 DONE - index_wr.php::exit
294 DONE - index_rd.php porting
295 DONE - generic var management from internet
296 DONE - index.php auth part
297 ABRT - index_wr.php::reload - reload is js-only function
298 ABRT - keepalive management - not interesting for our purposes
303 - STEP MANAGEMENT VERIFY
305 DONE - move the garbage timeout on file
306 DONE - in index_rd load all data only when required
308 DONE . extern del garb_timeout
309 DONE . user_load parameters verify
310 DONE . Bin5::load_data and Bin5::save_data refactoring with
312 . move many function into "Bin5 class"
313 - garbaging of .step files
316 DONE - configurabilitĂ file o db
317 DONE - aggiornare le funz di gestione db in modo che prevedano anche il flag DISABLE
318 DONE - travasatore file to pg
319 DONE - travaso punteggi
320 DONE - memorizzazione nuovi i punteggi nel db
321 DONE - gestione classifiche in SQL
326 DONE - points archiver
329 DONE - partial usability if database go down.
332 - sistema di inserimento nuovi utenti (riversatore da form di inserimento)
336 - ripristino password
339 - comunicazioni di aggiornamento (stato salvato sul server)
341 DONE - var $G_base aggiunta per gestire include in include da path differenti
347 DONE (WOW!) - js object with infos
348 DONE - main logic at login (cookie check in index_rd.php; show_message and createCookie via snippets with block
349 to prevent fast reload)
350 DONE - cookie per non assillare e visualizz.
351 DONE - graphical donameter
352 WIP content (in conf.)
354 DONE - numero di tavoli auth-only nel .brisk-install
356 TEST - ricalcolo delle persone in piedi quando si cambia modalitĂ
357 DONE - se si e' in isolation non si può cambiare nick perdendo l' auth
358 DONE - non leggere le chat di quelli non autenticati (in isolation)
359 DONE - regole per passare alla modalita' (in piedi o ai tavoli autenticati)
360 DONE - treni non auth da nascondere
361 DONE - verso gli altri ??: uguale a prima
363 finire multilingua (briskin5/index_wr.php e altri se ce ne sono)
366 placing limits to config file
370 - come vengono aggiornate le classifiche: ogni giorno alle 23:58
372 - cosa cambia tra le tre coppie di classifiche:
373 ci sono le classifiche dell' ultima settimana, quelle dell' ultimo mese, e quelle dell' ultimo trimestre,
374 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.
376 - 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.
378 Un esempio per chiarire:
380 l'utente 'pippo' che è nuovo gioca 4 partite nell'ultima settimana con i seguenti punteggi:
382 lo score viene { [ (-2) + (1) + (2) + (1) ] / 4 } * 100 = 50.0
384 a paritĂ di score tra utenti va piĂą in alto chi ha giocato piĂą partite.
386 Se dopo quelle 4 partite 'pippo' non ne giocherĂ piĂą, passata una settimana dall'ultima giocata
387 sparirĂ dalla classifica settimanale e rimarrĂ in quelle mensili e trimestrali.
398 DONE - paste da demauroparavia
399 DONE - recupero partita per re-login con password
400 DONE - problema "|" nei nomi (manca enhance degli script lato server)
401 - problema col treno se mouse sopra mentre stringe (verif)
411 DONE - skin della textarea
413 DONE - init client (read from cookie) - ALWAYS BY SERVER
415 DONE - after cookie check auth-only when no-auth case
416 DONE - aggiungi info accanto a "Chat"
418 DONE - img dei comandi
420 DONE - form per garantire utenti (accoda in un file nel formato corretto)
421 DONE - process request
425 DONE - process form js side
427 DONE - documentazione in help
431 DONE - aggiornare help
432 DONE - overflow management
437 - notify for long pages
440 - silenziastolti vari (fino al buddy import)
441 - restrict challenge per IP
442 - restricted charset for login
451 - studiare un anti-dos
466 DONE - questione "a monte" che:
467 DONE - lascia fuori il bottone
468 DONE - scrive à e compagnia
469 DONE - refresh act_table when unauthorized
470 DONE - problema ghost autenticato (ne prendi il posto ovunque sia)
474 DONE - refactoring of the owner name (auth attr for owner name)
476 DONE - at chat input line
477 DONE - in the chat output line
478 DONE - deauth management
480 DONE - at chat input line
481 DONE - in the chat output line
482 DONE - for user area of other users
483 DONE - deauth management
484 DONE - alart to one user
489 DONE - strong ban: "expire time|IP|session|(nick if authenticated)"
490 DONE - login: se auth - verifica solo gli expire per quel nick
491 DONE - se non auth - verifica gli expire per IP e sessione
492 DONE - riscrivere messaggi
496 DONE - richiede per l' utente un token (tutta la parte backend va un minimo studiata)
497 DONE - lo legge, ci hasha la password
498 DONE - invia la pass al server hashata
500 DONE - check del login e return corretto
501 DONE - oggetto in shm single table con ( "ip", "login", timestamp ) e suo management
502 DONE - rename ghost if logged
503 DONE - onunload_cb e onbeforeunload_cb !!!
504 DONE - da change attrs a change class (input field)
505 DONE - colore del bg per arrivare ad essere omogeneo
506 DONE - cambiare path e file di config
507 DONE - login with or without pass
508 DONE - registered nick notice (METTERE IL MSG NELLA PAG DI LOGIN)
509 DONE - segnalare tavoli solo per auth
510 DONE - rename restriction at auth table
511 DONE - change nick (strcasecmp)
512 DONE - refact js tables to handle flags
513 DONE - room javascript refactoring
515 DONE - work background
516 DONE - reserved tables
523 URGENT - tables spawn
524 DONE - link with photos
525 DONE - top banner in Etc file
526 DONE - spawn of a table
527 DONE - data to cookies (removed table_idx from xhr calls also)
528 DONE - set subst to shutdowner/shutdowned
529 DONE - return to index.php
531 DONE - recover of corrupted table data
532 DONE - closure of a table
533 DONE - flush of the table
534 DONE - security checks for right scope access
535 DONE - garbage collector management
536 DONE - recursive garbage - howto ?
537 DONE - stat & subst in browser
538 DONE - laccwr setting and exit if all players are unactive for some time
539 DONE - the list of test case
541 DONE - remove unused parts
544 DONE - cambiare titolo al tavolo
545 DONE - shutdowning lock tables
547 DONE - public announcements
548 DONE - 10 sec to exit from table
552 TRAIN - DONE - add again in reload
553 DONE - wag_set refact
554 DONE - filtra char speciali per title
555 DONE - chatt_send refact
556 DONE - elenco dei giocatori
557 DONE - documentazione online
558 DONE - timeout management
559 LATER - border color a muzzo
562 NORM - public announcements
563 NORM - 10 sec to exit from table
564 NORM - moving label for tables click
566 ----------------- join -----------------
569 NORM - restart preload img
570 NORM - tools dir with a main and some pages where check briscola tools.
573 NORM - chat vecchie in reload (forse)
578 - user assistant (with button to enable disable)
584 NORM - internationalization
585 NORM - img -> div + css
590 - link to stable/unstable
592 -------------------------------------------------------------------
596 ABORTED - asta: highlight buttons (css hover) - change pointer when over
598 DONE - special chars in js
599 DONE - ban temporaneo dai tavoli
600 DONE - flash player to play sound
601 DONEBUG - (aum. il timeout) - carte giocate che restano girate
602 Sembra non migliorare di molto la cosa, gestita la cache
603 correttamente, sono apposto.
605 DONE - one player reject a game, to less points (<= 2)
607 DONE - test di download per la cache
608 DONE - se passano tutti tranne l'ultimo l'asta va al penultimo.
609 Corretto il codice, occorre verificare se questo
610 ingenera qualche problema.
611 DONE - raddoppiato il numero di righe nella chat
612 DONE - corretto bug del /nick
613 DONE - carosello pubblicitĂ altout
615 DONE - unload of the stream
616 DONE - standup centrati
617 DONE - current player - in info
618 DONE - HELP butt con ABOUT, REGOLE, VERSIONE
619 DONE - welcome lines in the chats (room and table)
620 DONE - welcome lines in the chats (room and table)
621 DONE - nomi in primo piano se vai sul quadrato
622 DONE - to pass explicit config file to INSTALL.sh
623 DONE - flag to create a config file
624 ABRT - bottoni => immagini
625 DONE - aggiungere bottone al login
626 DONE - nomi in primo piano se vai sul quadrato
627 DONE - installer to set cookie path
629 DONE - automatic and manual logout
630 DONE - cache problems solved via .htaccess
631 DONE - all players out of the auction
632 DONE - time to send cards
633 DONE - hide cards before sends at a new game
634 DONE - well recognization of the browser and O.S.
635 DONE - login consistency !!!!
636 DONE - functionalization of garbage
637 DONE - call garbage function into login
639 DONE - manage the reload from scratch of the table page
641 DONE - sendcard => card_send(idx, ....)
642 DONE - show table for game
643 DONE - points calculation
644 DONE - make-up of the chooser
645 DONE - where place the briscola on the table
647 DONE - show current auction position
648 DONE - table with internal management of the transition between pages.
649 DONE - server side page abort management
650 DONE - cookie problem with Ajax
651 DONE - spostare il tasto "esco"
652 DONE - to pass explicit config file to INSTALL.sh
654 DONE - safety out management
655 DONE - info enhancement and related button (how win the last game and
656 with how much points ?)
667 Page abort (reload on http streaming case)
673 .htaccess AllowOverwrite mode for Cache-Control directive