User management logic half-debugged
[vchess.git] / TODO
CommitLineData
8a477a7e
BA
1// TODO: decodeURIComponent() for GET/DELETE parameters
2
7192f471
BA
31) Finish problems tab
42) Integrate computer play into rules tab
53) Retrieve users system from old code
64) Allow correspondance play (no need for P2P: online moves through the server (which also store them))
75) Write my-games tab (included current/finished/imported)
8 Use Dexie.js, or anything to store games locally
95) Write room tab
10 Use this: https://github.com/feross/simple-peer for online games+challenges+chat
116) Test... and publish
12
263eef68 13Finish rules translation in Spanish + improve existing ones
69f3d801 14Design: final touch (gain extra space on top, using space on the right)
684e1cac 15Crazyhouse: center reserves, grey if zero available, numbers superimposed
263eef68
BA
16Promotions: increase pieces sizes, better background.
17Code: use two spaces instead of tabs, everywhere.
d5dd0008
BA
18Increase code line length to 100 or more?
19(http://katafrakt.me/2017/09/16/80-characters-line-length-limit/)
edcd679a
BA
20Chat button should be more apparent after game ends (color ?)
21Reinforce security for problems upload (how ?)
c5fa5762 22
edcd679a
BA
23The mode switch between human/computer/friend (+ problem) is a mess
24(example: finished computer game, ongoing friend game, reload, friend game is unreachable)
25
26Later:
27Let choice of time control, allow correspondance play, several games at the same time
28==> need to use indexedDB instead of localStorage. Maybe with Dexie https://dexie.org/
29Each user would have a unique identifier stored in the client DB.
30Allow to cancel games (if opponent doesn't connect again)
31Identity would be browser-based: different games on smartphone, home computer, work computer... (why not ?)
32Index might still look the same, and variant page would have another tab "Games"
33==> running, and finished (which can be deleted from local memory)
34(A true analysis mode could be implemented also, to navigate in completed games --> use a button)
35Allow challenging a specific player (by his chosen name)
36But keep the random pairings as main playing way + always playing in ZEN mode,
37except when accepting an individual challenge.
8280382c
BA
38
39style menu : surligner onglet courant
40
41Interface :
c5fa5762
BA
42 - newGame: une modalBox à paramètres, timeControl, type d'adversaire ==> "new Game")
43 - friend-->renommé en 'analyse' et devenant un vrai mode analyse (on garde ces trois modes ?)
8280382c
BA
44
45problèmes : récupérer 20 ou 50 depuis le serveur, puis les afficher un par un en les analysant directement,
46comme sur le site de ProgramFOX ==> présentation unifiée échiquier avec instructions dessus et soluce cachée dessous
47
48==> il faut pouvoir faire "new Interface(variables)" pour lancer une analyse de problème sans repasser par le mode jeu...
49
50Importer des parties : nécessite de parser le PGN produit (possible, un peu pénible)
51mais permettrait mode analyse (avec bouton "analyse", comme sur ancien site).
52
53espagnol : jugada ou movimiento ?
54fin de la partida au lieu de final de partida ?
81da2786
BA
55
56Bouton new game ==> human only. Indiquer adversaire (éventuellement), cadence (ou "infini")
57Mode analyse : accessible à tout moment d'une partie (HH, ou computer) terminée.
58
59Coordonnées sur échiquier: sur cases, à gauche (verticale) ou en bas (horizontale)
60
61Import game : en local dans indexedDb, affichage dans "Games --> Imported"
62
63Checkered : si intervention d'un 3eme joueur, initialiser son temps à la moyenne des temps restants des deux autres...
64
65Mode contre ordinateur : seulement accessible depuis onglet "Rules" (son principal intérêt)
66
67Hexachess: McCooey et Shafran (deux tailles, randomisation OK)
68http://www.math.bas.bg/~iad/tyalie/shegra/shegrax.html
69http://www.quadibloc.com/chess/ch0401.htm