7 - rename prefsf to prefs and cleanup
11 - usermgmt: add user delete (with mail)
12 DONE - constraint on username (no more than 2 consecutive digits)
13 - manage isolation consistently
17 * Users Network construction
18 - minisplash at end of the match
19 - differentiate table authorization
20 * add new kind of isolation for apprentice
22 * Double click on chat to open preferences
26 DONE - match counters (part 2)
27 DONE . migration script for old users
28 - guarantee for apprentice
34 DONE - Not sequence of 3 same chars
35 DONE . check server side with test
36 DONE - Global vars checker
37 DONE - 10002 message when already clicked
38 DONE - trim spaces in apprentice form
39 DONE - Remove books from chat
40 DONE - usermgmt: add email
46 * Users Network construction
49 DONE - add apprentices tables
50 DONE - remove entry when set unknown
51 DONE - enhance info interface
52 DONE . SQL to show current evaluation
53 DONE . disable parts of interface
54 DONE . add title to items
57 - minisplash at end of the match
58 - differentiate table authorization
59 * add new kind of isolation for apprentice
61 * Double click on chat to open preferences
65 DONE - match counters (part 2)
66 DONE . migration script for old users
67 - guarantee for apprentice
74 DONE - match counters (part 2)
75 DONE . migration script for old users
79 DONE - correggere minuta giornaliera
80 DONE - aggiungere mask per autogar
81 DONE - correggere email per apprentice
82 DONE - verificare la variabile per tout IP ban apprentice
83 DONE - chat ban for apprentice
85 DONE - ip check and time limit
87 DONE . temporary table limitation
89 DONE - usermgmt extension
90 DONE - add close button
91 DONE - add apprentice icon
92 DONE - match counters (part 1)
93 DONE . sql for match counters
94 DONE - new info system
95 DONE - click management
96 DONE - show user info (RO)
97 DONE - require command/info
98 DONE - fix fiverank table
99 DONE - fix bug with bitwise
100 DONE - fix layout of tables
101 DONE - aggiungere books.png
112 . study how to move login delta injection
115 DONE . Guarantes for certified-only (buttons choice managed)
116 DONE . Tables for certified-only
118 . Placing for certified-only
121 DONE . BAN and BLACK lists added
122 DONE . update method to SIGHUP manager
123 DONE . create constructor refactored
125 - PLACEMENT-NORMALIZATION
126 DONE . Normalize previous points
127 DONE . Denormalize "Info" view
128 DONE . Denormalize explained matches
129 DONE . Check placement
130 DONE . Distinguish between inherited mult and local mult
133 DONE . Terms Of Service acceptance
134 DONE . print date of hard switch
136 DONE . user TOS acceptance (db field)
137 DONE . show TOS ([show me later, yes, no]/[yes, no])
138 DONE . switch-off date
141 DONE . show current TOS
142 DONE . disable user reason integer field and remove SUSPEND state (db, php)
143 DONE . fix tos layout
144 DONE . opt - download TOS
145 . opt - checkbox for anonimous users with message when not checked
146 . opt - button enabled when arrived to the bottom of the TOS only
147 . opt - check TOS version between config file and TOS file
148 DONE . show guarantee (/guar <login> command)
149 DONE . multi-language
150 DONE . command documentation
151 DONE . manage disagreeding users investigation
152 DONE . self guaranteed
153 . DONE New Users Guarantee Procedure
154 . DONE Change guarantee workflow
158 -------------------------------------------------------------------------
166 -------------------------------------------------------------------------
179 -------------------------------------------------------------------------
188 -------------------------------------------------------------------------
191 -------------------------------------------------------------------------
193 DONE . More user info in the list
194 DONE . Manage date to display when a user was required
195 . Email-address expiration check
199 DONE - CONTINUE FEATURE
200 DONE . replace explicit strings with multilanguage array
201 DONE . add a php downloader with filtering on allowed requests
202 DONE . save points every game
203 DONE . modify points calculation to include order and mazzo
204 DONE . exclude not standard types from statistics
205 DONE . daily reports (1 for each active tournament)
206 DONE . monthly stats (for normal match only)
207 DONE . show current match ID when created
208 DONE . add info about continue to the info page
209 DONE . add command to continue
210 DONE . check consistency of the request
211 DONE . rearrange users and game status to continue the selected match
212 DONE . investigate user reordering ??
214 - WEBSOCKET TRANSPORT
215 . refactoring $enc attribute management
216 DONE . reintroduced $enc = 'plain' for websocket
217 DONE . fallback for not correct WS version
218 DONE . fini of ws stream
219 DONE . reactivate compression
220 DONE . fix xynt_test01
221 DONE M2: brisk working
222 DONE . manage multiport apache config
223 DONE . manage headers correctly in sac-a-push
224 DONE . manage transport.close method where required
225 DONE . xynt_stream: manage fallback to multiple ports
226 DONE . manage fini for ws
227 POST . server: manage input data from clients
228 POST . manage ping/pong (seems not required)
230 DONE . client (xynt_streaming.js)
231 DONE . server (transport.phh)
233 DONE M1: xynt_test01.php working
237 . db update (add components, maybe single string)
238 . filter in index.php
239 . filter in index_wr.php
242 . prefs_assign(content): assign json content as output var
243 . prefs_apply(prefs_new): apply new content to g_prefs and system
244 . prefs_load(content): load json content and apply to g_prefs and system
246 . prefs_update: update preferences temporarly
247 . prefs_save: save to the server the new prefs
249 - preferences (listen into preferences)
250 // js var, volatile server, (db server || cookie)
251 temporary: js var, volatile server
252 permanent: js var, volatile server, (db server || cookie)
254 . data from db OR, if missing, from cookies
258 . MANAGE NOT AUTH USERS
260 - preferences (with "modifiable S")
261 . Mod. S: new flag into database
262 . graph infrastructure
263 . new box to edit color
267 - BUG: some connection to the named socket fails
268 - Not simultaneous more then one stream
273 WIP - try to be more antivirus-friendly
274 - multiple rows between games
275 - packetize and automatize php-ancillary and apache module
276 - DISABLED_TO_FIX: DNS access (perform blocking dns requests, must be fixed)
281 DONE - temporarly server hung not reflected on user timeouts
282 DONE - timeouted users are still be able to sit down (only the first at the table is banned)
283 DONE - page still opened after the server restart
284 DONE - log_legal address fix
285 DONE - manage too fast reload in xynt-streaming
286 DONE - add xhr as transport layer and manage different streams better
287 TEST - BUG: pari + 72 non fa 4x ma attualmente fa 3x, da correggere
288 TEST - BUG: lurker are logged out (and remain a pending socket opened (look the spush log)
289 DONE - save/restore database
290 DONE - into the room local step remains -1
291 DONE - centralize all '<script ...' incapsulation to allow multiple transport system.
292 DONE - BUG: access with password from 2 diff browsers the second go in strange "page not found"
293 in the first tentative, the second works
294 DONE - BUG: access with password from 2 diff browsers place the first in a strict loop (the
295 problem was a call to a static parent method instead of the overrided child method,
296 substitute self:: with the dynamically get class::)
297 DONE - garbage management
299 DONE/FROZEN - problem with getpeer (HOSTADDR)
301 DONE - slow cards distribution
302 DONE - substr to mb_substr
303 DONE - parametrizations:
304 . parametrization of $DOCUMENT_ROOT var in brisk-spush.phh file
305 . parametrization of SITE_PREFIX(_LEN) define
306 . move the name of the named socket into the configuration file
307 DONE - manage and test cross forwarder between table and room
308 DONE - setcookie (for tables only and persist prefs)
309 DONE - images flickering on slow windows: try to poll stream every 300 ms (seems to be download problem)
310 DONE - database connection fails after a while, check close and try PGSQL_CONNECT_FORCE_NEW.
311 DONE - unneeded garbage_time.expired access
312 DONE - BUG: fast loop on stream index_rd_ifra page (js watchdog start without timeout corrupt counts)
313 DONE - BUG: logout failed (fixed with a garbage_collector wrapper at sac-a-push level
314 DONE - 404 wrong page management (remove directories redirections (es. brisk/))
315 DONE - configuration file management
316 DONE - app level keep-alive
317 DONE - index_wr other issues
318 DONE - from room to table
319 DONE - from table to room
321 DONE - bug: read from a not resource handle (already closed because a new socket substitute it)
322 DONE - partial write for normal page management
323 DONE - index_rd_ifra: last_clean issue
324 DONE - fwrite failed error management (select, buffer where store unsent data, and fwrite check and retry)
325 DONE - bug: after restart index_rd.php receive from prev clients a lot of req
326 DONE - index_wr.php::chat
327 DONE - index_wr.php::exit
328 DONE - index_rd.php porting
329 DONE - generic var management from internet
330 DONE - index.php auth part
331 ABRT - index_wr.php::reload - reload is js-only function
332 ABRT - keepalive management - not interesting for our purposes
337 - STEP MANAGEMENT VERIFY
339 DONE - move the garbage timeout on file
340 DONE - in index_rd load all data only when required
342 DONE . extern del garb_timeout
343 DONE . user_load parameters verify
344 DONE . Bin5::load_data and Bin5::save_data refactoring with
346 . move many function into "Bin5 class"
347 - garbaging of .step files
350 DONE - configurabilitĂ file o db
351 DONE - aggiornare le funz di gestione db in modo che prevedano anche il flag DISABLE
352 DONE - travasatore file to pg
353 DONE - travaso punteggi
354 DONE - memorizzazione nuovi i punteggi nel db
355 DONE - gestione classifiche in SQL
360 DONE - points archiver
363 DONE - partial usability if database go down.
366 - sistema di inserimento nuovi utenti (riversatore da form di inserimento)
370 - ripristino password
373 - comunicazioni di aggiornamento (stato salvato sul server)
375 DONE - var $G_base aggiunta per gestire include in include da path differenti
381 DONE (WOW!) - js object with infos
382 DONE - main logic at login (cookie check in index_rd.php; show_message and createCookie via snippets with block
383 to prevent fast reload)
384 DONE - cookie per non assillare e visualizz.
385 DONE - graphical donameter
386 WIP content (in conf.)
388 DONE - numero di tavoli auth-only nel .brisk-install
390 TEST - ricalcolo delle persone in piedi quando si cambia modalitĂ
391 DONE - se si e' in isolation non si può cambiare nick perdendo l' auth
392 DONE - non leggere le chat di quelli non autenticati (in isolation)
393 DONE - regole per passare alla modalita' (in piedi o ai tavoli autenticati)
394 DONE - treni non auth da nascondere
395 DONE - verso gli altri ??: uguale a prima
397 finire multilingua (briskin5/index_wr.php e altri se ce ne sono)
400 placing limits to config file
404 - come vengono aggiornate le classifiche: ogni giorno alle 23:58
406 - cosa cambia tra le tre coppie di classifiche:
407 ci sono le classifiche dell' ultima settimana, quelle dell' ultimo mese, e quelle dell' ultimo trimestre,
408 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.
410 - 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.
412 Un esempio per chiarire:
414 l'utente 'pippo' che è nuovo gioca 4 partite nell'ultima settimana con i seguenti punteggi:
416 lo score viene { [ (-2) + (1) + (2) + (1) ] / 4 } * 100 = 50.0
418 a paritĂ di score tra utenti va piĂą in alto chi ha giocato piĂą partite.
420 Se dopo quelle 4 partite 'pippo' non ne giocherĂ piĂą, passata una settimana dall'ultima giocata
421 sparirĂ dalla classifica settimanale e rimarrĂ in quelle mensili e trimestrali.
432 DONE - paste da demauroparavia
433 DONE - recupero partita per re-login con password
434 DONE - problema "|" nei nomi (manca enhance degli script lato server)
435 - problema col treno se mouse sopra mentre stringe (verif)
445 DONE - skin della textarea
447 DONE - init client (read from cookie) - ALWAYS BY SERVER
449 DONE - after cookie check auth-only when no-auth case
450 DONE - aggiungi info accanto a "Chat"
452 DONE - img dei comandi
454 DONE - form per garantire utenti (accoda in un file nel formato corretto)
455 DONE - process request
459 DONE - process form js side
461 DONE - documentazione in help
465 DONE - aggiornare help
466 DONE - overflow management
471 - notify for long pages
474 - silenziastolti vari (fino al buddy import)
475 - restrict challenge per IP
476 - restricted charset for login
485 - studiare un anti-dos
500 DONE - questione "a monte" che:
501 DONE - lascia fuori il bottone
502 DONE - scrive à e compagnia
503 DONE - refresh act_table when unauthorized
504 DONE - problema ghost autenticato (ne prendi il posto ovunque sia)
508 DONE - refactoring of the owner name (auth attr for owner name)
510 DONE - at chat input line
511 DONE - in the chat output line
512 DONE - deauth management
514 DONE - at chat input line
515 DONE - in the chat output line
516 DONE - for user area of other users
517 DONE - deauth management
518 DONE - alart to one user
523 DONE - strong ban: "expire time|IP|session|(nick if authenticated)"
524 DONE - login: se auth - verifica solo gli expire per quel nick
525 DONE - se non auth - verifica gli expire per IP e sessione
526 DONE - riscrivere messaggi
530 DONE - richiede per l' utente un token (tutta la parte backend va un minimo studiata)
531 DONE - lo legge, ci hasha la password
532 DONE - invia la pass al server hashata
534 DONE - check del login e return corretto
535 DONE - oggetto in shm single table con ( "ip", "login", timestamp ) e suo management
536 DONE - rename ghost if logged
537 DONE - onunload_cb e onbeforeunload_cb !!!
538 DONE - da change attrs a change class (input field)
539 DONE - colore del bg per arrivare ad essere omogeneo
540 DONE - cambiare path e file di config
541 DONE - login with or without pass
542 DONE - registered nick notice (METTERE IL MSG NELLA PAG DI LOGIN)
543 DONE - segnalare tavoli solo per auth
544 DONE - rename restriction at auth table
545 DONE - change nick (strcasecmp)
546 DONE - refact js tables to handle flags
547 DONE - room javascript refactoring
549 DONE - work background
550 DONE - reserved tables
557 URGENT - tables spawn
558 DONE - link with photos
559 DONE - top banner in Etc file
560 DONE - spawn of a table
561 DONE - data to cookies (removed table_idx from xhr calls also)
562 DONE - set subst to shutdowner/shutdowned
563 DONE - return to index.php
565 DONE - recover of corrupted table data
566 DONE - closure of a table
567 DONE - flush of the table
568 DONE - security checks for right scope access
569 DONE - garbage collector management
570 DONE - recursive garbage - howto ?
571 DONE - stat & subst in browser
572 DONE - laccwr setting and exit if all players are unactive for some time
573 DONE - the list of test case
575 DONE - remove unused parts
578 DONE - cambiare titolo al tavolo
579 DONE - shutdowning lock tables
581 DONE - public announcements
582 DONE - 10 sec to exit from table
586 TRAIN - DONE - add again in reload
587 DONE - wag_set refact
588 DONE - filtra char speciali per title
589 DONE - chatt_send refact
590 DONE - elenco dei giocatori
591 DONE - documentazione online
592 DONE - timeout management
593 LATER - border color a muzzo
596 NORM - public announcements
597 NORM - 10 sec to exit from table
598 NORM - moving label for tables click
600 ----------------- join -----------------
603 NORM - restart preload img
604 NORM - tools dir with a main and some pages where check briscola tools.
607 NORM - chat vecchie in reload (forse)
612 - user assistant (with button to enable disable)
618 NORM - internationalization
619 NORM - img -> div + css
624 - link to stable/unstable
626 -------------------------------------------------------------------
630 ABORTED - asta: highlight buttons (css hover) - change pointer when over
632 DONE - special chars in js
633 DONE - ban temporaneo dai tavoli
634 DONE - flash player to play sound
635 DONEBUG - (aum. il timeout) - carte giocate che restano girate
636 Sembra non migliorare di molto la cosa, gestita la cache
637 correttamente, sono apposto.
639 DONE - one player reject a game, to less points (<= 2)
641 DONE - test di download per la cache
642 DONE - se passano tutti tranne l'ultimo l'asta va al penultimo.
643 Corretto il codice, occorre verificare se questo
644 ingenera qualche problema.
645 DONE - raddoppiato il numero di righe nella chat
646 DONE - corretto bug del /nick
647 DONE - carosello pubblicitĂ altout
649 DONE - unload of the stream
650 DONE - standup centrati
651 DONE - current player - in info
652 DONE - HELP butt con ABOUT, REGOLE, VERSIONE
653 DONE - welcome lines in the chats (room and table)
654 DONE - welcome lines in the chats (room and table)
655 DONE - nomi in primo piano se vai sul quadrato
656 DONE - to pass explicit config file to INSTALL.sh
657 DONE - flag to create a config file
658 ABRT - bottoni => immagini
659 DONE - aggiungere bottone al login
660 DONE - nomi in primo piano se vai sul quadrato
661 DONE - installer to set cookie path
663 DONE - automatic and manual logout
664 DONE - cache problems solved via .htaccess
665 DONE - all players out of the auction
666 DONE - time to send cards
667 DONE - hide cards before sends at a new game
668 DONE - well recognization of the browser and O.S.
669 DONE - login consistency !!!!
670 DONE - functionalization of garbage
671 DONE - call garbage function into login
673 DONE - manage the reload from scratch of the table page
675 DONE - sendcard => card_send(idx, ....)
676 DONE - show table for game
677 DONE - points calculation
678 DONE - make-up of the chooser
679 DONE - where place the briscola on the table
681 DONE - show current auction position
682 DONE - table with internal management of the transition between pages.
683 DONE - server side page abort management
684 DONE - cookie problem with Ajax
685 DONE - spostare il tasto "esco"
686 DONE - to pass explicit config file to INSTALL.sh
688 DONE - safety out management
689 DONE - info enhancement and related button (how win the last game and
690 with how much points ?)
701 Page abort (reload on http streaming case)
707 .htaccess AllowOverwrite mode for Cache-Control directive