Cleaning...
[euphorik.git] / modules / include / euphorik_bd.hrl
index 2eaf9e6..1fc17a2 100755 (executable)
@@ -1,4 +1,5 @@
-% Copyright 2008 Grégory Burri\r
+% coding: utf-8\r
+% Copyright 2008 Grégory Burri\r
 %\r
 % This file is part of Euphorik.\r
 %\r
 % along with Euphorik.  If not, see <http://www.gnu.org/licenses/>.\r
 %\r
 % @author GBurri\r
-
-
-% Version de la BD
--define(VERSION_BD, 2).
-
-
-% Pour générer des id\r
+\r
+\r
+% Version de la BD\r
+-define(VERSION_BD, 3).\r
+-define(TABLES, [counter, proprietes, minichat, reponse_minichat, user, ip_table, troll]).\r
+\r
+\r
+% Pour générer des id\r
 -record(counter,\r
    {\r
       key,\r
       value\r
    }).\r
-   
-   
-% Mémorse toutes les propriétés, entre autre la version des données
--record(proprietes,
-   {
-      nom,
-      valeur
+\r
+\r
+% Mémorse toutes les propriétés, entre autre la version des données\r
+-record(proprietes,\r
+   {\r
+      nom,\r
+      valeur\r
    }).\r
-
 \r
-% décrit un enregistrement d'un message\r
--record(minichat,
+\r
+% Contient tous les textes que peut envoyer le serveur vers client.\r
+-record(texte,\r
+   {\r
+      id,\r
+      fr\r
+   }).\r
+\r
+\r
+% décrit un enregistrement d'un message\r
+-record(minichat,\r
    {\r
       id, % integer\r
-      auteur_id, % -> #user.id
-      date, % erlang:now()
-      pseudo, % chaine de caractère
-      contenu, % chaine de caractère
-      troll_id = undefined, % l'id du troll associé correspondant
-      racine_id % la racine, par défaut correspond à l'id du message
+      auteur_id, % -> #user.id\r
+      date, % erlang:timestamp()\r
+      pseudo, % chaine de caractère\r
+      contenu, % chaine de caractère\r
+      racine_id = undefined, % la racine, par défaut correspond à l'id du message\r
+      status = normal % can be equal to normal, censored or deleted\r
    }).\r
-   
-   \r
+\r
+\r
 % type bag\r
-% 'repondant' repond à 'cible'\r
+% 'repondant' repond à 'cible'\r
 -record(reponse_minichat,\r
    {\r
       repondant, % -> #minichat.id\r
       cible % -> #minichat.id\r
-   }). \r
-
+   }).\r
+\r
+\r
+-record(profile, % attention : pas une table !\r
+   {\r
+      pseudo = [], % string()\r
+      email = [], % string()\r
+      css = [], % string()\r
+      nick_format = nick, %atom(), peut valoir 'nick', 'login' ou 'nick_login'\r
+      view_times = true,\r
+      view_tooltips = true,\r
+      ostentatious_master = light, % peut valoir invisible, light ou heavy. seulement pour ek_master\r
+      chat_order = reverse, % peut valoir chrono ou reverse\r
+      conversations = [] % [{integer(), bool}], la liste des messages correspondant au conversation {racine, reduite?}\r
+   }).\r
+\r
 \r
 -record(user,\r
    {\r
       id,\r
       cookie, % string()\r
-      pseudo = [], % string()
-      login = [], % string()
-      password = [], % string() (md5)
-      email = [], % string()\r
-      date_creation, % erlang:now()\r
-      date_derniere_connexion, % erlang:now(), est mis à jour lors de n'importe quelle activitée (envoie de message par exemple)\r
-      css = [], % string()
-      nick_format = nick, %atom(), peut valoir 'nick', 'login' ou 'nick_login'
-      view_times = true,
-      view_tooltips = true,
-      message_order = reverse, % can be normal or reverse
-      indice_flood = 0, % integer() est incrémenté lorsque l'utilisateur envoie trop rapidement des messages.
-      conversations = [], % [integer()], la liste des messages correspondant au conversation
-      ek_master = false,
+      login = [], % string()\r
+      password = [], % string() (md5)\r
+      profile = #profile{},\r
+      date_creation, % erlang:timestamp()\r
+      date_derniere_connexion, % erlang:timestamp(), est mis à jour lors de n'importe quelle activitée (envoie de message par exemple)\r
+      indice_flood = 0, % integer() est incrémenté lorsque l'utilisateur envoie trop rapidement des messages.\r
+      ek_master = false,\r
       last_ip = undefined % integer(), undefined si inconnu\r
-   }).
-
-
-% identificateur : (ip)
--record(ip_table,
-   {
-      ip, % {integer(), integer(), integer(), integer()}
-      ban = undefined, % la date du dernier bannissement
-      ban_duration = 0, % le temps de ban en minute
-      nb_try_register = 0,
-      nb_try_login = 0, % pour l'instant pas utilisé
-      date_last_try_register,
-      date_last_try_login % pour l'instant pas utilisé
-   }).
-   
-   
--record(troll,
-   {
-      id,
-      id_user,
-      date_create, % erlang:now()
-      date_post = undefined, % date à laquelle le troll est affiché sur la page principale. undefined initialement puis erlang:now() quand affiché
-      content % chaine de caractère
-   }).
-   
\ No newline at end of file
+   }).\r
+\r
+\r
+% identificateur : (ip)\r
+-record(ip_table,\r
+   {\r
+      ip, % {integer(), integer(), integer(), integer()}\r
+      ban = undefined, % la date du dernier bannissement\r
+      ban_duration = 0, % le temps de ban en minute\r
+      nb_try_register = 0,\r
+      nb_try_login = 0, % pour l'instant pas utilisé\r
+      date_last_try_register,\r
+      date_last_try_login % pour l'instant pas utilisé\r
+   }).\r
+\r
+\r
+-record(troll,\r
+   {\r
+      id,\r
+      id_user,\r
+      id_minichat = undefined, % l'id du message associé\r
+      date_create, % erlang:timestamp()\r
+      date_post = undefined, % date à laquelle le troll est affiché sur la page principale. undefined initialement puis erlang:timestamp() quand affiché\r
+      content % chaine de caractère\r
+   }).\r