+% coding: utf-8
% Copyright 2008 Grégory Burri
%
% This file is part of Euphorik.
% Version de la BD
--define(VERSION_BD, 2).
+-define(VERSION_BD, 3).
+-define(TABLES, [counter, proprietes, minichat, reponse_minichat, user, ip_table, troll]).
% Pour générer des id
key,
value
}).
-
-
+
+
% Mémorse toutes les propriétés, entre autre la version des données
-record(proprietes,
{
}).
+% Contient tous les textes que peut envoyer le serveur vers client.
+-record(texte,
+ {
+ id,
+ fr
+ }).
+
+
% décrit un enregistrement d'un message
-record(minichat,
{
id, % integer
auteur_id, % -> #user.id
- date, % erlang:now()
+ date, % erlang:timestamp()
pseudo, % chaine de caractère
contenu, % chaine de caractère
- troll_id = undefined, % l'id du troll associé correspondant
- racine_id = undefined % la racine, par défaut correspond à l'id du message
+ racine_id = undefined, % la racine, par défaut correspond à l'id du message
+ status = normal % can be equal to normal, censored or deleted
}).
-
-
+
+
% type bag
% 'repondant' repond à 'cible'
-record(reponse_minichat,
{
repondant, % -> #minichat.id
cible % -> #minichat.id
- }).
+ }).
--record(user,
+-record(profile, % attention : pas une table !
{
- id,
- cookie, % string()
pseudo = [], % string()
- login = [], % string()
- password = [], % string() (md5)
email = [], % string()
- date_creation, % erlang:now()
- date_derniere_connexion, % erlang:now(), est mis à jour lors de n'importe quelle activitée (envoie de message par exemple)
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
+ ostentatious_master = light, % peut valoir invisible, light ou heavy. seulement pour ek_master
+ chat_order = reverse, % peut valoir chrono ou reverse
+ conversations = [] % [{integer(), bool}], la liste des messages correspondant au conversation {racine, reduite?}
+ }).
+
+
+-record(user,
+ {
+ id,
+ cookie, % string()
+ login = [], % string()
+ password = [], % string() (md5)
+ profile = #profile{},
+ date_creation, % erlang:timestamp()
+ date_derniere_connexion, % erlang:timestamp(), est mis à jour lors de n'importe quelle activitée (envoie de message par exemple)
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,
last_ip = undefined % integer(), undefined si inconnu
}).
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é
+ id_minichat = undefined, % l'id du message associé
+ date_create, % erlang:timestamp()
+ date_post = undefined, % date à laquelle le troll est affiché sur la page principale. undefined initialement puis erlang:timestamp() quand affiché
content % chaine de caractère
}).
-
\ No newline at end of file