add points archiver, manages the upper limit of time in placing to produce exactly...
[brisk.git] / TODO.txt
index cb46e5c..9856008 100644 (file)
--- a/TODO.txt
+++ b/TODO.txt
-/* 
+======== 
+  TODO
+========
 
- BUG
- ===
- DONE   righe troncate
-    problema col treno se mouse sopra mentre stringe (verif)
+ BRISK4 (mammuth)
+ ======
+ DB: - initial usage
+     DONE - configurabilità file o db
+     DONE - aggiornare le funz di gestione db in modo che prevedano anche il flag DISABLE
+     DONE - travasatore file to pg
+       DONE - travaso punteggi
+       DONE - memorizzazione nuovi i punteggi nel db
+       DONE - gestione classifiche in SQL
+         DONE - produrle
+         DONE - mostrarle
 
+     STEP 1.1
+       DONE - points archiver
 
- TODO
- ====
-   - login 
- DONE  se pass:
- DONE     richiede per l' utente un token (tutta la parte backend va un minimo studiata)
- DONE     lo legge, ci hasha la password
- DONE     invia la pass al server hashata
- DONE  se non pass:
- DONE     check del login e return corretto
- DONE       oggetto in shm single table con ( "ip", "login", timestamp ) e suo management
- DONE       rename ghost if logged
- DONE       onunload_cb e onbeforeunload_cb !!! 
- DONE     da change attrs a change class (input field)
- DONE      colore del bg per arrivare ad essere omogeneo
- DONE      cambiare path e file di config
- DONE     login with or without pass
- DONE      registered nick notice (METTERE IL MSG NELLA PAG DI LOGIN)
- DONE     segnalare tavoli solo per auth
-      rename restriction at auth table
-      restrict challenge per IP
-      refact js tables to handle flags
-
-   - login modify
- DONE  - db (fake)
- DONE  - display auth
-     - manage preferences 
-   - db (minimal)
-     - db admin page
-     - user db admin
-     - use db 
-     - admin db
- DONE  - work background
- DONE  - reserved tables
+     STEP 1.5
+       - sistema di inserimento nuovi utenti (riversatore da form di inserimento)
+
+     STEP 2
+     - aggiornare le funz di gestione db in modo che prevedano anche il flag SUSPEND
+     - modifica password   
+     - ripristino password 
+
+     STEP 3
+     - comunicazioni di aggiornamento (stato salvato sul server) 
+
+ DONE - var $G_base aggiunta per gestire include in include da path differenti
+
+ BRISK3 (trusty)
+ ======
+  DONE - donameter
+    DONE - G_donors
+    DONE (WOW!) - js object with infos
+    DONE - main logic at login (cookie check in index_rd.php; show_message and createCookie via snippets with block
+           to prevent fast reload)
+    DONE - cookie per non assillare e visualizz.
+    DONE - graphical donameter
+    WIP content (in conf.)
+
+  DONE - numero di tavoli auth-only nel .brisk-install
+  - isolation
+    TEST - ricalcolo delle persone in piedi quando si cambia modalità
+    DONE - se si e' in isolation non si può cambiare nick perdendo l' auth
+    DONE - non leggere le chat di quelli non autenticati (in isolation)
+    DONE - regole per passare alla modalita' (in piedi o ai tavoli autenticati) 
+    DONE - treni non auth da nascondere 
+    DONE - verso gli altri ??: uguale a prima
+
+  finire multilingua (briskin5/index_wr.php e altri se ce ne sono)
+  coniglio
+  only auth strictly
+  placing limits to config file
+
+Dunque, 
+
+- come vengono aggiornate le classifiche: ogni giorno alle 23:58
+
+- cosa cambia tra le tre coppie di classifiche: 
+  ci sono le classifiche dell' ultima settimana, quelle dell' ultimo mese,  e quelle dell' ultimo trimestre,
+  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.
+
+- 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.
+
+Un esempio per chiarire:
+
+  l'utente 'pippo' che è nuovo gioca 4 partite nell'ultima settimana con i seguenti punteggi:
+    -2, 1, 2, 1
+  lo score viene { [ (-2) + (1) + (2) + (1) ] / 4 }  * 100 = 50.0
+  
+  a parità di score tra utenti va più in alto chi ha giocato più partite.
 
+Se dopo quelle 4 partite 'pippo' non ne giocherà più, passata una settimana dall'ultima giocata 
+sparirà dalla classifica settimanale e rimarrà in quelle mensili e trimestrali.
+
+
+  
 
-   - strong ban: "expire time|IP|session|(nick if authenticated)"
-     login: se auth      -  verifica solo gli expire per quel nick
-            se non auth  -  verifica gli expire per IP e sessione
 
-      change nick (strcasecmp)
-      restricted charset
 
-      STUDIARE UN ANTI-DOS
 
+ BUG
+ ---
+  DONE - paste da demauroparavia
+  DONE - recupero partita per re-login con password
+  DONE - problema "|" nei nomi (manca enhance degli script lato server)
+  - problema col treno se mouse sopra mentre stringe (verif)
   
-   DONE - room javascript refactoring
+ MINOR
+ -----
+
+ NORMAL
+ ------
+
+  - win test
+  WIP - /listen 
+    DONE - skin della textarea
+    DONE - set cookie 
+    DONE - init client (read from cookie) - ALWAYS BY SERVER
+    DONE - init server
+    DONE - after cookie check auth-only when no-auth case
+    DONE - aggiungi info accanto a "Chat"
+  DONE - /mesgtoadm
+  DONE - img dei comandi
+
+  DONE - form per garantire utenti (accoda in un file nel formato corretto)
+  DONE -   process request
+  DONE -   show form
+  DONE -   close butt
+  DONE -   submit form
+  DONE -   process form js side 
+  DONE -   process form
+  DONE -   documentazione in help
+
+  DONE - user status
+
+  DONE - aggiornare help
+  DONE -   overflow management
+  DONE -   for status
+  -   for password
+
+  DONE - reload home
+  - notify for long pages
+
+  - buddy list
+  - silenziastolti vari (fino al buddy import)
+  - restrict challenge per IP
+  - restricted charset for login
+  - watchdog
+
+  - db (minimal)
+    - db admin page
+    - user db admin
+    - use db 
+    - admin db
+
+    - studiare un anti-dos
+  - login modify
+ DONE  - db (fake)
+ DONE  - display auth
+    - manage preferences 
 
  minor
  -----
    - auth after login
 
+----- done ------
+
+ BUG
+ ---
+  DONE   righe troncate
+  DONE - questione "a monte" che:
+  DONE   - lascia fuori il bottone
+  DONE   - scrive &agrave e compagnia
+  DONE - refresh act_table when unauthorized
+  DONE - problema ghost autenticato (ne prendi il posto ovunque sia)
+
+ MINOR
+ -----
+  DONE - refactoring of the owner name (auth attr for owner name)
+  DONE   - room
+  DONE     - at chat input line 
+  DONE     - in the chat output line
+  DONE     - deauth management
+  DONE - table
+  DONE   - at chat input line
+  DONE   - in the chat output line
+  DONE   - for user area of other users
+  DONE   - deauth management
+  DONE - alart to one user
+
+
+ NORMAL
+ ------
+  DONE - strong ban: "expire time|IP|session|(nick if authenticated)"
+  DONE   - login: se auth      -  verifica solo gli expire per quel nick
+  DONE   -        se non auth  -  verifica gli expire per IP e sessione
+  DONE   - riscrivere messaggi
+
+  DONE - login 
+  DONE   - se pass:
+  DONE     - richiede per l' utente un token (tutta la parte backend va un minimo studiata)
+  DONE     - lo legge, ci hasha la password
+  DONE     - invia la pass al server hashata
+  DONE   - se non pass:
+  DONE     - check del login e return corretto
+  DONE     - oggetto in shm single table con ( "ip", "login", timestamp ) e suo management
+  DONE     - rename ghost if logged
+  DONE     - onunload_cb e onbeforeunload_cb !!! 
+  DONE   - da change attrs a change class (input field)
+  DONE     - colore del bg per arrivare ad essere omogeneo
+  DONE     - cambiare path e file di config
+  DONE   - login with or without pass
+  DONE   - registered nick notice (METTERE IL MSG NELLA PAG DI LOGIN)
+  DONE     - segnalare tavoli solo per auth
+  DONE     - rename restriction at auth table
+  DONE     - change nick (strcasecmp)
+  DONE   - refact js tables to handle flags
+  DONE - room javascript refactoring
+
+  DONE - work background
+  DONE - reserved tables
+
 
  BRISK2 (spawn)
  ======