MOD restructuration de la doc
authorGreg Burri <greg.burri@gmail.com>
Wed, 5 Dec 2007 14:56:27 +0000 (14:56 +0000)
committerGreg Burri <greg.burri@gmail.com>
Wed, 5 Dec 2007 14:56:27 +0000 (14:56 +0000)
22 files changed:
doc/fonctionnement_minichat.txt [deleted file]
doc/fond.xcf [deleted file]
doc/graphiques/fond.xcf [new file with mode: 0755]
doc/graphiques/icones/exclamation.xcf [new file with mode: 0755]
doc/graphiques/icones/fermer.xcf [new file with mode: 0755]
doc/graphiques/icones/information.xcf [new file with mode: 0755]
doc/graphiques/icones/interrogation.xcf [new file with mode: 0755]
doc/graphiques/logo_1.xcf [new file with mode: 0755]
doc/graphiques/logo_2.xcf [new file with mode: 0755]
doc/graphiques/old.xcf [new file with mode: 0755]
doc/graphiques/old_piedpage.xcf [new file with mode: 0755]
doc/graphiques/return.xcf [new file with mode: 0755]
doc/icones/exclamation.xcf [deleted file]
doc/icones/fermer.xcf [deleted file]
doc/icones/information.xcf [deleted file]
doc/icones/interrogation.xcf [deleted file]
doc/logo_1.xcf [deleted file]
doc/logo_2.xcf [deleted file]
doc/old.xcf [deleted file]
doc/old_piedpage.xcf [deleted file]
doc/protocole.txt [new file with mode: 0755]
doc/return.xcf [deleted file]

diff --git a/doc/fonctionnement_minichat.txt b/doc/fonctionnement_minichat.txt
deleted file mode 100755 (executable)
index 2ae4681..0000000
+++ /dev/null
@@ -1,203 +0,0 @@
-Euphorik - minichat\r
--------------------\r
-\r
-A. Introduction\r
----------------\r
-\r
-Le minichat utilise AJAX. Tous les messages sont au format XML\r
-Eventuellement utiliser comet comme décrit ici\r
- : http://www.zeitoun.net/index.php?2007/06/22/46-how-to-implement-comet-with-php\r
-\r
-\r
-Structure :\r
------------\r
-\r
-Les objets globaux :\r
- - Messages (liste des messages actuellement affichés, permet de recupérer les nouveaux messages)\r
- - Connexion (Information sur la connexion, information sur le user actuel)\r
\r
-\r
-B. Principe\r
------------\r
-Termes : serveur, client, utilisateur\r
-\r
- 1 Chargement de la page html.\r
- 2 Le client écoute les derniers messages au serveur (asynchrone).\r
- 3 Le client est initialement déconnecté, il regarde si un cookie existe sur la machine cliente :\r
-  a Si oui : il tente un login avec le cookie, si ok alors le client est connecté sinon il reste dans l'état déconnecté.\r
-  b Si non : il demande au serveur la génération d'un captcha et l'affiche.  \r
- 4 L'utilisateur peut alors envoyer un message. Il doit saisir le captcha s'il l'état et déconnecté.\r
-  a Si le captcha a été saisie le client envoie une requête de login\r
- 5 Le message est posté\r
-\r
-\r
-Principe concernant le rafraichissement:\r
- * Le client envoie une demande au serveur avec l'id du dernier message (via XMLHttpRequest ou un méthode de JQuery)\r
- * Le serveur maintient la connexion bloqué si le client est à jour.\r
- * Dès que le serveur n'est plus à jours, il envoie les messages manquants.\r
\r
-Problème :\r
- * Comment faire de l'attente passive sur le serveur en écoutant l'arrivée d'un nouveau message au niveau de la bd\r
-  -> en utilisant le "event handling" de mnesia : http://www.erlang.org//doc/apps/mnesia/part_frame.html\r
-     chapitre 5.7 et 5.7.2\r
-
-\r
-C. Protocole\r
-------------\r
-c : client\r
-s : server\r
-\r
-C.1. Demande de génération d'un nouveau captcha :\r
------------------------------------------------\r
-\r
-c -> s\r
-<action name="generationCaptcha">\r
-</action>\r
-\r
-s -> c\r
-<reponse name="generationCaptcha">\r
-   <chemin>img/tmp/b1b1b4e72e6f3d00e477cf37cced5851.jpg</chemin>\r
-   <captchaCrypt>b1b1b4e72e6f3d00e477cf37cced5851</captchaCrypt>\r
-</action>\r
-\r
-C.2. Login :\r
-------------\r
-le message du client est posté par la méthode POST et se nomme 'action'.\r
-\r
-c -> s\r
-(nouveau user) (obsolète)\r
- <action name="loginCaptcha">\r
-   <captchaCrypt>b1b1b4e72e6f3d00e477cf37cced5851</captchaCrypt>\r
-   <captchaInput>LKJDLA</captchaInput>\r
- </action>\r
\r
-ou\r
-(ne sert pour l'instant qu'a mettre à jour user.date_derniere_connexion)\r
-(si le login est faut, une temporisation est effectuée)\r
- <action name="login">\r
-   <cookie>LKJDLAKSJBFLKASN</cookie>\r
- </action>
-ou 
- <action name="login">
-   <login>Paul</login>
-   <password>IJKJDHHSAD9081238</password>
- </action>
- <action name="login">
-   <login>Paul</login>
-   <password>IJKJDHHSAD9081238</password>
- </action>
-ou (login et password peuvent être omis)
- <action name="register">
-   <login>Paul</login>
-   <password>IJKJDHHSAD9081238</password>
- </action>\r
-   \r
-s -> c
-(<information> et <pseudo> pas obligatoire)\r
- <reponse name="login">\r
-   <statut>enregistre|identifie|erreur</statut>\r
-   <cookie>LKJDLAKSJBFLKASN</cookie>\r
-   <id>7ZS</id> <!-- l'id est en base 36 -->\r
-   <pseudo>Paul</pseudo>
-   <login>paul49</login>
-   <email>paul@pierre.com</email>
-   <css>css/lite.css</css>\r
-   <information>blabla</information>\r
- </reponse>\r
\r
\r
-C.3. Logout :\r
--------------\r
-c -> s\r
- <action name="logout">\r
-   <cookie>LKJDLAKSJBFLKASN</cookie> \r
- </action>
-C.4. Profile :
---------------
-modification du profile, seul 'cookie' est obligatoire
-
-c -> s
- <action name="profile">
-   <cookie>LKJDLAKSJBFLKASN</cookie>
-   <login>paul49</login>
-   <password>IJKJDHHSAD9081238</password>
-   <pseudo>Paul</pseudo>
-   <email>paul@pierre.com</email>
-   <css>css/dark.css</css>
- </action>
-s -> c
- <reponse name="profile">
-   <statut>ok|pas ok</statut>
-   <information>balbla></information>
- </reponse>\r
-\r
-\r
-C.5. Refresh messages :\r
------------------------\r
-\r
-Si dernierMessageId est absent alors le client ne possède pas de message.\r
-Page peut être omis, il a alors la valeur 1 (première page)\r
-dernierMessageId est en base 36 (l'histoire de rigoler un peu)
-\r
-c -> s\r
- <action name="refreshMessages">
-  <cookie>LKJDLAKSJBFLKASN</cookie>\r
-  <dernierMessageId>6ZR</dernierMessageId>\r
-  <nombreMessage>10</nombreMessage>\r
-  <page>1</page>\r
- </action>\r
\r
-s -> c\r
- <reponse name="refreshMessages">\r
-  <nbPage>4</nbPage> <!-- le nombre de page total -->
-  <message id="1F5">\r
-   <date>Hier 17:26:54</date>
-   <systeme></system> <!-- est-ce un message système ? -->\r
-   <proprietaire></proprietaire> <!-- est-ce que le message appartient à l'utilisateur courant ? "true" ou "false" -->\r
-   <repondu></repondu>  <!-- est-ce que l'utilisateur courant a répondu à ce message ? "true" ou "false" -->\r
-   <reponse></reponse> <!-- est-ce que c'est une réponse à un message de l'utilisateur courant ? "true" ou "false" -->\r
-   <pseudo>Paul</pseudo>
-   <login>paul_22</login>\r
-   <contenu>Salut</contenu>\r
-   <repondA>
-      <!-- id est l'id d'un message -->\r
-      <id id="DE2" pseudo="Pierre" login="pierre_45"> 
-      <!-- [..] -->\r
-   </repondA>\r
-  </message>\r
-  <!-- [..] -->\r
- </reponse>\r
-\r
-ou\r
-\r
- <reponse name="refreshMessages">\r
-  <erreur>raison</erreur>\r
- </reponse>\r
-\r
-C.6. Envoie message :\r
----------------------\r
-\r
-Un client envoie un message, le message peut répondre à un certain nombre d'autres messages.\r
-<reponses> n'est pas obligatoire.\r
-c -> s\r
- <action name="message">\r
-  <cookie>LKJDLAKSJBFLKASN</cookie>\r
-  <pseudo>Paul</pseudo> <!-- il est possible que la personne change de pseudo -->\r
-  <contenu>Bonjour</contenu>\r
-  <reponses>\r
-   <reponse id="RT5" />\r
-   <reponse id="39K" />\r
-   <!-- [..] -->\r
-  </reponses>\r
- </action>\r
\r
-s -> c\r
- <reponse name="message">\r
-   <statut>ok|pas ok</statut>\r
- </reponse>\r
\r
diff --git a/doc/fond.xcf b/doc/fond.xcf
deleted file mode 100755 (executable)
index 96e905f..0000000
Binary files a/doc/fond.xcf and /dev/null differ
diff --git a/doc/graphiques/fond.xcf b/doc/graphiques/fond.xcf
new file mode 100755 (executable)
index 0000000..96e905f
Binary files /dev/null and b/doc/graphiques/fond.xcf differ
diff --git a/doc/graphiques/icones/exclamation.xcf b/doc/graphiques/icones/exclamation.xcf
new file mode 100755 (executable)
index 0000000..96381e0
Binary files /dev/null and b/doc/graphiques/icones/exclamation.xcf differ
diff --git a/doc/graphiques/icones/fermer.xcf b/doc/graphiques/icones/fermer.xcf
new file mode 100755 (executable)
index 0000000..9dc1f7b
Binary files /dev/null and b/doc/graphiques/icones/fermer.xcf differ
diff --git a/doc/graphiques/icones/information.xcf b/doc/graphiques/icones/information.xcf
new file mode 100755 (executable)
index 0000000..a44fedb
Binary files /dev/null and b/doc/graphiques/icones/information.xcf differ
diff --git a/doc/graphiques/icones/interrogation.xcf b/doc/graphiques/icones/interrogation.xcf
new file mode 100755 (executable)
index 0000000..8b7cfd8
Binary files /dev/null and b/doc/graphiques/icones/interrogation.xcf differ
diff --git a/doc/graphiques/logo_1.xcf b/doc/graphiques/logo_1.xcf
new file mode 100755 (executable)
index 0000000..f4993a8
Binary files /dev/null and b/doc/graphiques/logo_1.xcf differ
diff --git a/doc/graphiques/logo_2.xcf b/doc/graphiques/logo_2.xcf
new file mode 100755 (executable)
index 0000000..dc069c9
Binary files /dev/null and b/doc/graphiques/logo_2.xcf differ
diff --git a/doc/graphiques/old.xcf b/doc/graphiques/old.xcf
new file mode 100755 (executable)
index 0000000..ac44d56
Binary files /dev/null and b/doc/graphiques/old.xcf differ
diff --git a/doc/graphiques/old_piedpage.xcf b/doc/graphiques/old_piedpage.xcf
new file mode 100755 (executable)
index 0000000..9975be0
Binary files /dev/null and b/doc/graphiques/old_piedpage.xcf differ
diff --git a/doc/graphiques/return.xcf b/doc/graphiques/return.xcf
new file mode 100755 (executable)
index 0000000..086db3a
Binary files /dev/null and b/doc/graphiques/return.xcf differ
diff --git a/doc/icones/exclamation.xcf b/doc/icones/exclamation.xcf
deleted file mode 100755 (executable)
index 96381e0..0000000
Binary files a/doc/icones/exclamation.xcf and /dev/null differ
diff --git a/doc/icones/fermer.xcf b/doc/icones/fermer.xcf
deleted file mode 100755 (executable)
index 9dc1f7b..0000000
Binary files a/doc/icones/fermer.xcf and /dev/null differ
diff --git a/doc/icones/information.xcf b/doc/icones/information.xcf
deleted file mode 100755 (executable)
index a44fedb..0000000
Binary files a/doc/icones/information.xcf and /dev/null differ
diff --git a/doc/icones/interrogation.xcf b/doc/icones/interrogation.xcf
deleted file mode 100755 (executable)
index 8b7cfd8..0000000
Binary files a/doc/icones/interrogation.xcf and /dev/null differ
diff --git a/doc/logo_1.xcf b/doc/logo_1.xcf
deleted file mode 100755 (executable)
index f4993a8..0000000
Binary files a/doc/logo_1.xcf and /dev/null differ
diff --git a/doc/logo_2.xcf b/doc/logo_2.xcf
deleted file mode 100755 (executable)
index dc069c9..0000000
Binary files a/doc/logo_2.xcf and /dev/null differ
diff --git a/doc/old.xcf b/doc/old.xcf
deleted file mode 100755 (executable)
index ac44d56..0000000
Binary files a/doc/old.xcf and /dev/null differ
diff --git a/doc/old_piedpage.xcf b/doc/old_piedpage.xcf
deleted file mode 100755 (executable)
index 9975be0..0000000
Binary files a/doc/old_piedpage.xcf and /dev/null differ
diff --git a/doc/protocole.txt b/doc/protocole.txt
new file mode 100755 (executable)
index 0000000..2ae4681
--- /dev/null
@@ -0,0 +1,203 @@
+Euphorik - minichat\r
+-------------------\r
+\r
+A. Introduction\r
+---------------\r
+\r
+Le minichat utilise AJAX. Tous les messages sont au format XML\r
+Eventuellement utiliser comet comme décrit ici\r
+ : http://www.zeitoun.net/index.php?2007/06/22/46-how-to-implement-comet-with-php\r
+\r
+\r
+Structure :\r
+-----------\r
+\r
+Les objets globaux :\r
+ - Messages (liste des messages actuellement affichés, permet de recupérer les nouveaux messages)\r
+ - Connexion (Information sur la connexion, information sur le user actuel)\r
\r
+\r
+B. Principe\r
+-----------\r
+Termes : serveur, client, utilisateur\r
+\r
+ 1 Chargement de la page html.\r
+ 2 Le client écoute les derniers messages au serveur (asynchrone).\r
+ 3 Le client est initialement déconnecté, il regarde si un cookie existe sur la machine cliente :\r
+  a Si oui : il tente un login avec le cookie, si ok alors le client est connecté sinon il reste dans l'état déconnecté.\r
+  b Si non : il demande au serveur la génération d'un captcha et l'affiche.  \r
+ 4 L'utilisateur peut alors envoyer un message. Il doit saisir le captcha s'il l'état et déconnecté.\r
+  a Si le captcha a été saisie le client envoie une requête de login\r
+ 5 Le message est posté\r
+\r
+\r
+Principe concernant le rafraichissement:\r
+ * Le client envoie une demande au serveur avec l'id du dernier message (via XMLHttpRequest ou un méthode de JQuery)\r
+ * Le serveur maintient la connexion bloqué si le client est à jour.\r
+ * Dès que le serveur n'est plus à jours, il envoie les messages manquants.\r
\r
+Problème :\r
+ * Comment faire de l'attente passive sur le serveur en écoutant l'arrivée d'un nouveau message au niveau de la bd\r
+  -> en utilisant le "event handling" de mnesia : http://www.erlang.org//doc/apps/mnesia/part_frame.html\r
+     chapitre 5.7 et 5.7.2\r
+
+\r
+C. Protocole\r
+------------\r
+c : client\r
+s : server\r
+\r
+C.1. Demande de génération d'un nouveau captcha :\r
+-----------------------------------------------\r
+\r
+c -> s\r
+<action name="generationCaptcha">\r
+</action>\r
+\r
+s -> c\r
+<reponse name="generationCaptcha">\r
+   <chemin>img/tmp/b1b1b4e72e6f3d00e477cf37cced5851.jpg</chemin>\r
+   <captchaCrypt>b1b1b4e72e6f3d00e477cf37cced5851</captchaCrypt>\r
+</action>\r
+\r
+C.2. Login :\r
+------------\r
+le message du client est posté par la méthode POST et se nomme 'action'.\r
+\r
+c -> s\r
+(nouveau user) (obsolète)\r
+ <action name="loginCaptcha">\r
+   <captchaCrypt>b1b1b4e72e6f3d00e477cf37cced5851</captchaCrypt>\r
+   <captchaInput>LKJDLA</captchaInput>\r
+ </action>\r
\r
+ou\r
+(ne sert pour l'instant qu'a mettre à jour user.date_derniere_connexion)\r
+(si le login est faut, une temporisation est effectuée)\r
+ <action name="login">\r
+   <cookie>LKJDLAKSJBFLKASN</cookie>\r
+ </action>
+ou 
+ <action name="login">
+   <login>Paul</login>
+   <password>IJKJDHHSAD9081238</password>
+ </action>
+ <action name="login">
+   <login>Paul</login>
+   <password>IJKJDHHSAD9081238</password>
+ </action>
+ou (login et password peuvent être omis)
+ <action name="register">
+   <login>Paul</login>
+   <password>IJKJDHHSAD9081238</password>
+ </action>\r
+   \r
+s -> c
+(<information> et <pseudo> pas obligatoire)\r
+ <reponse name="login">\r
+   <statut>enregistre|identifie|erreur</statut>\r
+   <cookie>LKJDLAKSJBFLKASN</cookie>\r
+   <id>7ZS</id> <!-- l'id est en base 36 -->\r
+   <pseudo>Paul</pseudo>
+   <login>paul49</login>
+   <email>paul@pierre.com</email>
+   <css>css/lite.css</css>\r
+   <information>blabla</information>\r
+ </reponse>\r
\r
\r
+C.3. Logout :\r
+-------------\r
+c -> s\r
+ <action name="logout">\r
+   <cookie>LKJDLAKSJBFLKASN</cookie> \r
+ </action>
+C.4. Profile :
+--------------
+modification du profile, seul 'cookie' est obligatoire
+
+c -> s
+ <action name="profile">
+   <cookie>LKJDLAKSJBFLKASN</cookie>
+   <login>paul49</login>
+   <password>IJKJDHHSAD9081238</password>
+   <pseudo>Paul</pseudo>
+   <email>paul@pierre.com</email>
+   <css>css/dark.css</css>
+ </action>
+s -> c
+ <reponse name="profile">
+   <statut>ok|pas ok</statut>
+   <information>balbla></information>
+ </reponse>\r
+\r
+\r
+C.5. Refresh messages :\r
+-----------------------\r
+\r
+Si dernierMessageId est absent alors le client ne possède pas de message.\r
+Page peut être omis, il a alors la valeur 1 (première page)\r
+dernierMessageId est en base 36 (l'histoire de rigoler un peu)
+\r
+c -> s\r
+ <action name="refreshMessages">
+  <cookie>LKJDLAKSJBFLKASN</cookie>\r
+  <dernierMessageId>6ZR</dernierMessageId>\r
+  <nombreMessage>10</nombreMessage>\r
+  <page>1</page>\r
+ </action>\r
\r
+s -> c\r
+ <reponse name="refreshMessages">\r
+  <nbPage>4</nbPage> <!-- le nombre de page total -->
+  <message id="1F5">\r
+   <date>Hier 17:26:54</date>
+   <systeme></system> <!-- est-ce un message système ? -->\r
+   <proprietaire></proprietaire> <!-- est-ce que le message appartient à l'utilisateur courant ? "true" ou "false" -->\r
+   <repondu></repondu>  <!-- est-ce que l'utilisateur courant a répondu à ce message ? "true" ou "false" -->\r
+   <reponse></reponse> <!-- est-ce que c'est une réponse à un message de l'utilisateur courant ? "true" ou "false" -->\r
+   <pseudo>Paul</pseudo>
+   <login>paul_22</login>\r
+   <contenu>Salut</contenu>\r
+   <repondA>
+      <!-- id est l'id d'un message -->\r
+      <id id="DE2" pseudo="Pierre" login="pierre_45"> 
+      <!-- [..] -->\r
+   </repondA>\r
+  </message>\r
+  <!-- [..] -->\r
+ </reponse>\r
+\r
+ou\r
+\r
+ <reponse name="refreshMessages">\r
+  <erreur>raison</erreur>\r
+ </reponse>\r
+\r
+C.6. Envoie message :\r
+---------------------\r
+\r
+Un client envoie un message, le message peut répondre à un certain nombre d'autres messages.\r
+<reponses> n'est pas obligatoire.\r
+c -> s\r
+ <action name="message">\r
+  <cookie>LKJDLAKSJBFLKASN</cookie>\r
+  <pseudo>Paul</pseudo> <!-- il est possible que la personne change de pseudo -->\r
+  <contenu>Bonjour</contenu>\r
+  <reponses>\r
+   <reponse id="RT5" />\r
+   <reponse id="39K" />\r
+   <!-- [..] -->\r
+  </reponses>\r
+ </action>\r
\r
+s -> c\r
+ <reponse name="message">\r
+   <statut>ok|pas ok</statut>\r
+ </reponse>\r
\r
diff --git a/doc/return.xcf b/doc/return.xcf
deleted file mode 100755 (executable)
index 086db3a..0000000
Binary files a/doc/return.xcf and /dev/null differ