X-Git-Url: http://git.euphorik.ch/?p=euphorik.git;a=blobdiff_plain;f=modules%2Finclude%2Feuphorik_bd.hrl;fp=modules%2Finclude%2Feuphorik_bd.hrl;h=de1c5e472be2ef3c4c5b27367036892ce688fd98;hp=4838b30d9d6fc29f1ed15d5080e3ae7ac5ab9a0d;hb=81393a74d648e4830dc8c7c562fa203f50a105f6;hpb=828daf607fdce322ea17c1786dff84f712aa1632 diff --git a/modules/include/euphorik_bd.hrl b/modules/include/euphorik_bd.hrl index 4838b30..de1c5e4 100755 --- a/modules/include/euphorik_bd.hrl +++ b/modules/include/euphorik_bd.hrl @@ -1,124 +1,123 @@ -% coding: utf-8 -% Copyright 2008 Grégory Burri -% -% This file is part of Euphorik. -% -% Euphorik is free software: you can redistribute it and/or modify -% it under the terms of the GNU General Public License as published by -% the Free Software Foundation, either version 3 of the License, or -% (at your option) any later version. -% -% Euphorik is distributed in the hope that it will be useful, -% but WITHOUT ANY WARRANTY; without even the implied warranty of -% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -% GNU General Public License for more details. -% -% You should have received a copy of the GNU General Public License -% along with Euphorik. If not, see . -% -% @author GBurri - - -% Version de la BD --define(VERSION_BD, 3). --define(TABLES, [counter, proprietes, minichat, reponse_minichat, user, ip_table, troll]). - - -% Pour générer des id --record(counter, - { - key, - value - }). - - -% Mémorse toutes les propriétés, entre autre la version des données --record(proprietes, - { - nom, - valeur - }). - - -% 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() - pseudo, % chaine de caractère - contenu, % chaine de caractère - 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(profile, % attention : pas une table ! - { - pseudo = [], % string() - email = [], % string() - css = [], % string() - nick_format = nick, %atom(), peut valoir 'nick', 'login' ou 'nick_login' - view_times = true, - view_tooltips = true, - 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?} +% coding: utf-8 +% Copyright 2008 Grégory Burri +% +% This file is part of Euphorik. +% +% Euphorik is free software: you can redistribute it and/or modify +% it under the terms of the GNU General Public License as published by +% the Free Software Foundation, either version 3 of the License, or +% (at your option) any later version. +% +% Euphorik is distributed in the hope that it will be useful, +% but WITHOUT ANY WARRANTY; without even the implied warranty of +% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +% GNU General Public License for more details. +% +% You should have received a copy of the GNU General Public License +% along with Euphorik. If not, see . +% +% @author GBurri + + +% Version de la BD +-define(VERSION_BD, 3). +-define(TABLES, [counter, proprietes, minichat, reponse_minichat, user, ip_table, troll]). + + +% Pour générer des id +-record(counter, + { + key, + value }). - - --record(user, - { - id, - cookie, % string() - login = [], % string() - password = [], % string() (md5) - profile = #profile{}, - date_creation, % erlang:now() - date_derniere_connexion, % erlang:now(), 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. - ek_master = false, - last_ip = undefined % integer(), undefined si inconnu - }). - - -% 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, + + +% Mémorse toutes les propriétés, entre autre la version des données +-record(proprietes, + { + nom, + valeur + }). + + +% 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() + pseudo, % chaine de caractère + contenu, % chaine de caractère + 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(profile, % attention : pas une table ! + { + pseudo = [], % string() + email = [], % string() + css = [], % string() + nick_format = nick, %atom(), peut valoir 'nick', 'login' ou 'nick_login' + view_times = true, + view_tooltips = true, + 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:now() + date_derniere_connexion, % erlang:now(), 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. + ek_master = false, + last_ip = undefined % integer(), undefined si inconnu + }). + + +% 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, - id_minichat = undefined, % l'id du message associé - 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 + id_minichat = undefined, % l'id du message associé + 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 + }).