rpgillusion

RPG Illusion: French fork of Dragon Knight
git clone https://git.neuralcrash.com/rpgillusion.git
Log | Files | Refs | README

admin.php (108858B)


      1 <?php // admin.php :: Adminstration du jeu.
      2 
      3 error_reporting(E_ALL);
      4 session_start();
      5 
      6 include('kernel/functions.php');
      7 include('kernel/display.php');
      8 include('class/bbcode.php');
      9 
     10 $link = opendb();
     11 $page ='<img src="images/jeu/actions/administration.jpg" width="580" height="82" alt="Administration"><br><br>';
     12 
     13 $controlquery = doquery("SELECT * FROM {{table}} WHERE id='1' LIMIT 1", "control");
     14 $controlrow = mysql_fetch_array($controlquery);
     15 
     16 if ($_SESSION == true) {
     17 $userquery = doquery("SELECT authlevel, email FROM {{table}} WHERE id='".addslashes($_SESSION['id'])."' LIMIT 1", "users");
     18 $userrow = mysql_fetch_array($userquery);
     19 }else{
     20 $userrow = null;
     21 }
     22 
     23 if ($userrow == false) { die('Identifiez vous à cette adresse : <a href="../login.php?do=login">game</a>, pour pouvoir accéder au panneau d\'administration.'); }
     24 if ($userrow["authlevel"] != 1) { die('Vous devez avoir les privilèges d\'administrateur pour accéder au panneau d\'administration.'); }
     25 
     26 if(isset($_GET["do"])) {
     27   $do = explode(":",$_GET["do"]);
     28   switch ($do[0]) {
     29   case 'main': main(); break;
     30   case 'items': items(); break;
     31   case 'edititem': edititem($do[1]); break;
     32   case 'drops': drops(); break;
     33   case 'editdrop': editdrop($do[1]); break;
     34   case 'towns': towns(); break;
     35   case 'edittown': edittown($do[1]); break;
     36   case 'monsters': monsters(); break;
     37   case 'editmonster': editmonster($do[1]); break;
     38   case 'spells': spells(); break;
     39   case 'editspell': editspell($do[1]); break;
     40   case 'levels': levels(); break;
     41   case 'editlevel': editlevel(); break;
     42   case 'users': users(); break;
     43   case 'edituser': edituser($do[1]); break;
     44   case 'addnews': addnews(); break;
     45   case 'addpoll': addpoll(); break;
     46   case 'addnewsletter': addnewsletter(); break;
     47   case 'editpartner': editpartner(); break;
     48   case 'editcopyright': editcopyright(); break;
     49   case 'editbabblebox': editbabblebox(); break;
     50   case 'editmenuusers': editmenuusers(); break;
     51   }  
     52 } 
     53 
     54 function main() {//Réglages principaux.
     55 
     56 global $controlrow, $page;
     57    
     58      if (isset($_POST['submit'])) {
     59         extract($_POST);
     60         $errors = 0;
     61         $errorlist = "";
     62         if (trim($gamename) == "") { $errors++; $errorlist .= "- Le nom de jeu est exigé.<br>"; }
     63 		if (trim($gameurl) == "") { $errors++; $errorlist .= "- L'url du jeu est exigé.<br>"; }
     64         if (($gamesize % 5) != 0) { $errors++; $errorlist .= "- La taille de carte doit être divisible par cinq.<br>"; }
     65         if (!is_numeric($gamesize)) { $errors++; $errorlist .= "- La taille de la carte doit être un nombre.<br>"; }
     66         if (trim($class1name) == "") { $errors++; $errorlist .= "- Le nom de la classe 1 est exigé.<br>"; }
     67         if (trim($class2name) == "") { $errors++; $errorlist .= "- Le nom de la classe 2 est exigé.<br>"; }
     68         if (trim($class3name) == "") { $errors++; $errorlist .= "- Le nom de la classe 3 est exigé.<br>"; }
     69         if (trim($diff1name) == "") { $errors++; $errorlist .= "- Le nom de la difficulté 1 est exigé.<br>"; }
     70         if (trim($diff2name) == "") { $errors++; $errorlist .= "- Le nom de la difficulté 2 est exigé.<br>"; }
     71         if (trim($diff3name) == "") { $errors++; $errorlist .= "- Le nom de la difficulté 3 est exigé.<br>"; }
     72         if (trim($diff2mod) == "") { $errors++; $errorlist .= "- La valeur de la difficulté 2 est exigée.<br>"; }
     73         if (trim($diff3mod) == "") { $errors++; $errorlist .= "- La valeur de la difficulté 3 est exigée.<br>"; }
     74 		if (preg_match("/[\^*+<>?#]/", $gamename)==1) { $errors++; $errorlist .= "- Le nom du jeu doit être écrit en caractères alphanumériques.<br>"; }
     75         if (preg_match("/[\^*+<>?#]/", $class1name)==1) { $errors++; $errorlist .= "- Le nom de la classe 1 doit être écrit en caractères alphanumériques.<br>"; }
     76         if (preg_match("/[\^*+<>?#]/", $class2name)==1) { $errors++; $errorlist .= "- Le nom de la classe 2 doit être écrit en caractères alphanumériques.<br>"; }
     77    		if (preg_match("/[\^*+<>?#]/", $class3name)==1) { $errors++; $errorlist .= "- Le nom de la classe 3 doit être écrit en caractères alphanumériques.<br>"; }
     78 		if (preg_match("/[\^*+<>?#]/", $diff1name)==1) { $errors++; $errorlist .= "- Le nom de la difficulté 1 doit être écrit en caractères alphanumériques.<br>"; }
     79 		if (preg_match("/[\^*+<>?#]/", $diff2name)==1) { $errors++; $errorlist .= "- Le nom de la difficulté 2 doit être écrit en caractères alphanumériques.<br>"; }
     80 		if (preg_match("/[\^*+<>?#]/", $diff3name)==1) { $errors++; $errorlist .= "- Le nom de la difficulté 3 doit être écrit en caractères alphanumériques.<br>"; }
     81 
     82         if ($errors == 0) { 
     83 		
     84             $update = doquery("UPDATE {{table}} SET gamename='".addslashes($gamename)."',gamesize='$gamesize',compression='$compression',class1name='".addslashes($class1name)."',class2name='".addslashes($class2name)."',class3name='".addslashes($class3name)."',diff1name='".addslashes($diff1name)."',diff2name='".addslashes($diff2name)."',diff3name='".addslashes($diff3name)."',showbabble='$showbabble',showonline='$showonline',diff2mod='$diff2mod',diff3mod='$diff3mod',gameopen='$gameopen',verifyemail='$verifyemail',gameurl='$gameurl',adminemail='".addslashes($adminemail)."' WHERE id='1' LIMIT 1", "control");
     85             $page .='Les réglages principaux ont été mis à jours!<br><br>Maintenant vous pouvez:<br><br><a href="index.php">» retourner au jeu</a><br>» Sélectionner une autre rubrique à administrer';  
     86         } else {
     87             $page .= 'La mise à jour n\'a pas pu se faire, car les erreur(s) suivante(s) se sont produite(s):<br><br><span class="alerte">'.$errorlist.'</span><br><br>Maintenant vous pouvez:<br><br><a href="?do=main">» retourner et réessayer</a><br><a href="index.php">» retourner au jeu</a>'; 
     88         }
     89     } else
     90   { 
     91 
     92     if ($controlrow['compression'] == 0) { $controlrow['selectcomp0'] = 'selected="selected" '; } else { $controlrow['selectcomp0'] = ""; }
     93     if ($controlrow['compression'] == 1) { $controlrow['selectcomp1'] = 'selected="selected" '; } else { $controlrow['selectcomp1'] = ""; }
     94     if ($controlrow['verifyemail'] == 0) { $controlrow['selectverify0'] = 'selected="selected" '; } else { $controlrow['selectverify0'] = ""; }
     95     if ($controlrow['verifyemail'] == 1) { $controlrow['selectverify1'] = 'selected="selected" '; } else { $controlrow['selectverify1'] = ""; }
     96     if ($controlrow['gameopen'] == 1) { $controlrow['open1select'] = 'selected="selected" '; } else { $controlrow['open1select'] = ""; }
     97     if ($controlrow['gameopen'] == 0) { $controlrow['open0select'] = 'selected="selected" '; } else { $controlrow['open0select'] = ""; }
     98     if ($controlrow["showbabble"] == 0) { $controlrow["selectbabble0"] = 'selected="selected" '; } else { $controlrow['selectbabble0'] = ""; }
     99     if ($controlrow["showbabble"] == 1) { $controlrow["selectbabble1"] = 'selected="selected" '; } else { $controlrow['selectbabble1'] = ""; }
    100     if ($controlrow["showonline"] == 0) { $controlrow["selectonline0"] = 'selected="selected" '; } else { $controlrow["selectonline0"] = ""; }
    101     if ($controlrow["showonline"] == 1) { $controlrow["selectonline1"] = 'selected="selected" '; } else { $controlrow["selectonline1"] = ""; }
    102 $page .= '
    103 <img src="images/jeu/puce4.gif" alt=""> <span class="mauve2"><b>Les réglages principaux:</b></span><br><br>
    104 <form enctype="multipart/form-data" action="" method="post">
    105 <table width="580" border="0" cellspacing="0" cellpadding="0">
    106 
    107 <tr valign="top"><td style="width:110px">Statut du jeu:</td><td><select name="gameopen"><option value="1" '.$controlrow['open1select'].'>Ouvert</option><option value="0" '.$controlrow['open0select'].'>Fermé</option></select><br>Fermez le jeu si vous êtes faites de la maintance dessus.<br><br></td></tr>
    108 <tr valign="top"><td style="width:110px">Nom du jeu:</td><td><input type="text" name="gamename" size="30" maxlength="50" value="'.$controlrow['gamename'].'"><br>Le nom du jeu par defaut est "RPG illusion". Mais vous pouvez librement le modifier.<br><br></td></tr>
    109 <tr valign="top"><td style="width:110px">URL du jeu:</td><td><input type="text" name="gameurl" size="50" maxlength="100" value="'.$controlrow['gameurl'].'"><br>Veuillez indiquer l\'URL complète du jeu("http://www.votre_site.com/repertoire_du_jeu/").<br><br></td></tr>
    110 <tr valign="top"><td style="width:110px">E-mail admin:</td><td><input type="text" name="adminemail" size="30" maxlength="100" value="'.$controlrow['adminemail'].'"><br>Veuillez indiquer votre adresse e-mail.  Les utilisateurs qui auront besoin d\'aide utiliseront cette adresse pour vous écrire.<br><br></td></tr>
    111 <tr valign="top"><td style="width:110px">Taille carte:</td><td><input type="text" name="gamesize" size="3" maxlength="3" value="'.$controlrow['gamesize'].'"><br>250 par défault. C\'est la taille de la carte en longitude et en latitude. Notez aussi que les niveaux des monstres augmentent tous les 5 espaces, ainsi vous devriez vous assurer que la valeur actuelle de la carte est supérieur à 5. Dans le cas contraire le nombre de monstres seront très limités. Avec une taille de carte de 250, vous aurez 50 niveaux de monstre.<br><br></td></tr>
    112 <tr valign="top"><td style="width:110px">Compréssion:</td><td><select name="compression"><option value="0" '.$controlrow['selectcomp0'].'>Aucune</option><option value="1" '.$controlrow['selectcomp1'].'>Activé</option></select><br>Si vous compressez les pages du jeu, ceci réduira considérablement la bande passante utilisée par le jeu.<br><br></td></tr>
    113 <tr valign="top"><td style="width:110px">Email de vérification:</td><td><select name="verifyemail"><option value="0" '.$controlrow['selectverify0'].'>Aucun</option><option value="1" '.$controlrow['selectverify1'].'>Activé</option></select><br>Incitez les utilisateurs à vérifier leur adresse e-mail pour plus de sécuritée.<br><br></td></tr>
    114 <tr valign="top"><td style="width:110px">Babble box activé:</td><td><select name="showbabble"><option value="1" '.$controlrow["selectbabble1"].'>Oui</option><option value="0" '.$controlrow["selectbabble0"].'>Non</option></select><br>Cette option permet d\'afficher ou non la babble box dans toutes les villes.<br><br></td></tr>
    115 <tr valign="top"><td style="width:110px">Online activé:</td><td><select name="showonline"><option value="1" '.$controlrow["selectonline1"].'>Oui</option><option value="0" '.$controlrow["selectonline0"].'>Non</option></select><br>Cette option permet d\'afficher ou non les connectés dans toutes les villes.<br><br></td></tr>
    116 <tr valign="top"><td style="width:110px">Nom classe 1:</td><td><input type="text" name="class1name" size="20" maxlength="50" value="'.$controlrow['class1name'].'"><br><br><br></td></tr>
    117 <tr valign="top"><td style="width:110px">Nom classe 2:</td><td><input type="text" name="class2name" size="20" maxlength="50" value="'.$controlrow['class2name'].'"><br><br><br></td></tr>
    118 <tr valign="top"><td style="width:110px">Nom classe 3:</td><td><input type="text" name="class3name" size="20" maxlength="50" value="'.$controlrow['class3name'].'"><br><br><br></td></tr>
    119 <tr valign="top"><td style="width:110px">Nom difficulté 1:</td><td><input type="text" name="diff1name" size="20" maxlength="50" value="'.$controlrow['diff1name'].'"><br><br><br></td></tr>
    120 <tr valign="top"><td style="width:110px">Nom difficulté 2:</td><td><input type="text" name="diff2name" size="20" maxlength="50" value="'.$controlrow['diff2name'].'"><br><br><br></td></tr>
    121 <tr valign="top"><td style="width:110px">Valeur difficulté 2:</td><td><input type="text" name="diff2mod" size="3" maxlength="3" value="'.$controlrow['diff2mod'].'"><br>1.2 par défault. Indiquez une valeur pour la difficultée moyenne ici.<br><br></td></tr>
    122 <tr valign="top"><td style="width:110px">Nom difficulté 3:</td><td><input type="text" name="diff3name" size="20" maxlength="50" value="'.$controlrow['diff3name'].'"><br><br></td></tr>
    123 <tr valign="top"><td style="width:110px">Valeur difficulté 3:</td><td><input type="text" name="diff3mod" size="3" maxlength="3" value="'.$controlrow['diff2mod'].'"><br>1.2 par défault. Indiquez une valeur pour la difficultée optimale ici.<br><br></td></tr>
    124 
    125 <tr valign="top"><td style="width:1px"></td><td>
    126 
    127 <div style="text-align: center"><input type="submit" name="submit" value="Valider"> <input type="button" value="Retour" OnClick="javascript:location=\'index.php\'"></div></td></tr>
    128 </table>
    129 
    130 </form><br><br>';
    131   }
    132 
    133   display(parsetemplate($page, $controlrow), 'Réglages principaux', true);
    134 
    135 }
    136 
    137 
    138 function items() {// Visualisation des objets.
    139 
    140 global $page;
    141     
    142     $itemsquery = doquery("SELECT * FROM {{table}} ORDER BY name", "items");
    143     $page .='<img src="images/jeu/puce4.gif" alt=""> <span class="mauve2"><b>Editer les objets:</b></span><br><br>Pour éditer un objet, cliquez sur celui de votre choix, dans la liste ci-dessous.<br><br>(<span class="alerte">*</span>) signifie que l\'objet possède un attribut spécial.<br><br>';
    144     while ($itemsrow = mysql_fetch_array($itemsquery)) {
    145         if ($itemsrow['special'] != "Aucun") { $special = '*'; } else { $special = ''; } 
    146 		if ($itemsrow['type'] == 1) { $categorie = "Pouvoir d'attaque:"; } else  { $categorie = "Pouvoir de défense:"; } 
    147         if ($itemsrow['type'] == 1) { $type = 'Arme'; $pouvoir ='d\'attaque';} 
    148         if ($itemsrow['type'] == 2) { $type = 'Armure'; $pouvoir ='de défense'; } 
    149         if ($itemsrow['type'] == 3) { $type = 'Bouclier'; $pouvoir ='de défense'; } 
    150    
    151    $page .='<div class="bloc_rose"><div style="float:left"><img src="images/objets/'.$itemsrow['id'].'.jpg" alt="'.$itemsrow['name'].'"></div><a href="?do=edititem:'.$itemsrow['id'].'"><b><span class="mauve2">'.$itemsrow['name'].'<span class="alerte">'.$special.'</span></span></b></a> - <i>type: <span class="mauve1">'.$type.'</span> - Pouvoir '.$pouvoir.': <span class="mauve1">'.$itemsrow['attribute'].'</span></i> <span class="alerte">('.$itemsrow['buycost'].' rubis)</span><br><span class="taille1">'.$itemsrow['description'].'</span></div><br>';
    152    }
    153    
    154    if (mysql_num_rows($itemsquery) == 0) { $page .= '<span class="alerte"> Il y a aucun objets trouvé!</span><br><br>'; }
    155    $page .='<br><a href="index.php">» retourner au jeu</a><br><br>';
    156    
    157   display($page, "Editer les objets");
    158     
    159 }
    160 
    161 
    162 function edititem($id) {// Edition des objets.
    163 
    164 global $page;
    165 
    166 $itemsquery = doquery("SELECT * FROM {{table}} WHERE id='$id' LIMIT 1", "items");
    167 $itemsrow = mysql_fetch_array($itemsquery);
    168     
    169      if (isset($_POST['submit'])) {
    170       extract($_POST);
    171       $errors = 0;
    172       $errorlist = "";
    173      if (trim($name) == "") { $errors++; $errorlist .= "- Le nom de l'objet est exigé.<br>"; }
    174       if (preg_match("/[\^*+<>?#]/", $name)==1) { $errors++; $errorlist .= "- Le nom de l'objet doit être écrit en caractères alphanumériques.<br>"; }
    175       if (trim($buycost) == "") { $errors++; $errorlist .= "- Le prix est exigé.<br>"; }
    176       if (!is_numeric($buycost)) { $errors++; $errorlist .= "- Le prix doit être un nombre!<br>"; }
    177       if (trim($attribute) == "") { $errors++; $errorlist .= "- L'attribut est exigé.<br>"; }
    178       if (!is_numeric($attribute)) { $errors++; $errorlist .= "- L'attribut doit être un nombre.<br>"; }
    179       if (trim($special) == "") { $special = "Aucun"; }
    180 	  if (trim($description) == "") { $description = "Aucune description"; }
    181       if ($errors == 0) { 
    182            
    183       $update = doquery("UPDATE {{table}} SET name='".addslashes($name)."',type='$type',buycost='$buycost',description='".addslashes($description)."',attribute='$attribute',special='$special' WHERE id=$id LIMIT 1", "items");
    184       $page .='L\'objet '.$itemsrow['name'].' a été mis à jour!<br><br>Maintenant vous pouvez:<br><br><a href="index.php">» retourner au jeu</a><br>» Sélectionner une autre rubrique à administrer';  
    185       } else {
    186       $page .= 'La mise à jour n\'a pas pu se faire, car les erreur(s) suivante(s) se sont produite(s):<br><br><span class="alerte">'.$errorlist.'</span><br><br>Maintenant vous pouvez:<br><br><a href="?do=edititem:'.$id.'">» retourner et réessayer</a><br><a href="index.php">» retourner au jeu</a>'; 
    187       }   	
    188     }else{  
    189 	
    190 	if ($itemsrow["type"] == 1) { $itemsrow["type1select"] = "selected=\"selected\" "; } else { $itemsrow["type1select"] = ""; }
    191     if ($itemsrow["type"] == 2) { $itemsrow["type2select"] = "selected=\"selected\" "; } else { $itemsrow["type2select"] = ""; }
    192     if ($itemsrow["type"] == 3) { $itemsrow["type3select"] = "selected=\"selected\" "; } else { $itemsrow["type3select"] = ""; }
    193 
    194 $page .= '
    195 <img src="images/jeu/puce4.gif" alt=""> <span class="mauve2"><b>Editer les objets:</b></span><br><br>
    196 
    197 <form enctype="multipart/form-data" action="" method="post">
    198 <table width="580" border="0" cellspacing="0" cellpadding="0">
    199 <tr valign="top"><td style="width:110px">ID:</td><td>'.$itemsrow['id'].'<br><br></td></tr>
    200 <tr valign="top"><td style="width:110px">Nom:</td><td><input type="text" name="name" size="30" maxlength="30" value="'.$itemsrow['name'].'"><br><br></td></tr>
    201 <tr valign="top"><td style="width:110px">Image:</td><td><img src="images/objets/'.$itemsrow['id'].'.jpg" alt="'.$itemsrow['name'].'"><br><br></td></tr>
    202 <tr valign="top"><td style="width:110px">Type:</td><td><select name="type"><option value="1" '.$itemsrow['type1select'].'>Arme</option><option value="2" '.$itemsrow['type2select'].'>Armure</option><option value="3" '.$itemsrow['type3select'].'>Protection</option></select><br><br></td></tr>
    203 <tr valign="top"><td style="width:110px">Prix:</td><td><input type="text" name="buycost" size="5" maxlength="10" value="'.$itemsrow['buycost'].'"> rubis<br><br></td></tr>
    204 <tr valign="top"><td style="width:110px">Description:</td><td><textarea name="description" rows="5" cols="50">'.$itemsrow['description'].'</textarea><br><br></td></tr>
    205 <tr valign="top"><td style="width:110px">Attribut:</td><td><input type="text" name="attribute" size="5" maxlength="10" value="'.$itemsrow['attribute'].'"><br>Le nombre de points que l\'objet ajoute au pouvoir d\'attaque (armes) ou au pouvoir de défense (armures/protections).<br><br></td></tr>
    206 <tr valign="top"><td style="width:110px">Special:</td><td><input type="text" name="special" size="30" maxlength="50" value="'.$itemsrow['special'].'"><br>Laissez "Aucun" pour donner aucun attribut spécial à l\'objet.<br><br></td></tr>
    207 <tr valign="top"><td style="width:1px"></td><td>
    208 
    209 <div style="text-align: center"><input type="submit" name="submit" value="Valider"> <input type="button" value="Retour" OnClick="javascript:location=\'index.php\'"></div></td></tr>
    210 </table>
    211 
    212 </form><br>
    213 <span class="mauve1"><b>Attributs spéciaux des objets:</b></span><br>
    214 Des attributs spéciaux peuvent être ajoutés à tous les objets, ce qui a pour but d\'augmenter les capacités des personnages. Par exemple si vous voulez qu\'un objet donne 50 HP à un personnage, il suffit d\'écrire maxhp,50. Ceci marche aussi dans le sens négatif. Donc si vous voulez qu\'un objet enlève 50 HP à un personnage, il suffit d\'écrire maxhp,-50.<br><br>
    215 
    216 <img src="images/jeu/puce4.gif" alt=""> <b>maxhp:</b> Donne des points hit (HP)<br>
    217 <img src="images/jeu/puce4.gif" alt=""> <b>maxmp:</b> Donne des points de magie (MP)<br>
    218 <img src="images/jeu/puce4.gif" alt=""> <b>maxtp:</b> Donne des points de voyages<br>
    219 <img src="images/jeu/puce4.gif" alt=""> <b>goldbonus:</b> Donne un bonnus de rubis (en pourcentage)<br>
    220 <img src="images/jeu/puce4.gif" alt=""> <b>expbonus:</b> Donne un bonnus d\'expérience (en pourcentage)<br>
    221 <img src="images/jeu/puce4.gif" alt=""> <b>strength:</b> Donne de la force (qui s\'ajoute également au pouvoir d\'attaque)<br>
    222 <img src="images/jeu/puce4.gif" alt=""> <b>dexterity:</b> Donne de la dextérité (qui s\'ajoute également au pouvoir de défense)<br>
    223 <img src="images/jeu/puce4.gif" alt=""> <b>attackpower:</b> Donne un pouvoir d\'attaque<br>
    224 <img src="images/jeu/puce4.gif" alt=""> <b>defensepower:</b> Donne un pouvoir de défense<br><br>
    225 ';
    226 }
    227    
    228     display($page, "Editer les objets");
    229     
    230 }
    231 
    232 
    233 function drops() {// Visualisation objets perdus.
    234 
    235 global $page;
    236     
    237     $dropsquery = doquery("SELECT id, name, attribute1, attribute2 FROM {{table}} ORDER BY name", "drops");
    238     $page .='<img src="images/jeu/puce4.gif" alt=""> <span class="mauve2"><b>Editer les objets perdus:</b></span><br><br>Pour éditer un objet, cliquez sur celui de votre choix, dans la liste ci-dessous.<br><br>';
    239      
    240   while ($dropsrow = mysql_fetch_array($dropsquery)) {
    241 
    242   $page .='<div class="bloc_rose"><div style="float:left"><img src="images/objets/'.$dropsrow['id'].'.jpg" alt="'.$dropsrow['name'].'"></div><a href="?do=editdrop:'.$dropsrow['id'].'"><b><span class="mauve2">'.$dropsrow['name'].'</span></b></a> - <i>Attribut 1: <span class="mauve1">'.$dropsrow['attribute1'].'</span> - Attribut 2: <span class="mauve1">'.$dropsrow['attribute2'].'</span></i> <br><span class="taille1">Description bientot ici</span></div><br>';
    243 
    244   }
    245   if (mysql_num_rows($dropsquery) == 0) { $page .= '<span class="alerte"> Il y a aucun objets perdus de trouvé!</span><br><br>'; }
    246   $page .='<br><a href="index.php">» retourner au jeu</a><br><br>';
    247   
    248   display($page, 'Editer les objets perdus');
    249     
    250 }
    251 
    252 
    253 function editdrop($id) {// Edition objets perdus.
    254 
    255 global $page;
    256     
    257 $dropsquery = doquery("SELECT * FROM {{table}} WHERE id='$id' LIMIT 1", "drops");
    258 $dropsrow = mysql_fetch_array($dropsquery);	
    259 	
    260 if (isset($_POST['submit'])) {
    261         
    262       extract($_POST);
    263       $errors = 0;
    264       $errorlist = "";
    265       if (trim($name) == "") { $errors++; $errorlist .= "- Le nom de l'objet est exigé.<br>"; }
    266       if (preg_match("/[\^*+<>?#]/", $name)==1) { $errors++; $errorlist .= "- Le nom de l'objet doit être écrit en caractères alphanumériques.<br>"; }
    267       if (trim($mlevel) == "") { $errors++; $errorlist .= "- Le niveau de l'objet est exigé.<br>"; }
    268       if (!is_numeric($mlevel)) { $errors++; $errorlist .= "- Le niveau de l'objet doit être en chiffre.<br>"; }
    269       if (trim($attribute1) == ""|| $attribute1 == "Aucun") { $errors++; $errorlist .= "- Le premier attribut est exigé.<br>"; }
    270       if (trim($attribute2) == "") { $attribute2 = "Aucun"; }
    271 		
    272       if ($errors == 0) { 
    273           $update = doquery("UPDATE {{table}} SET name='".addslashes($name)."',mlevel='$mlevel',attribute1='$attribute1',attribute2='$attribute2' WHERE id='".$dropsrow['id']."' LIMIT 1", "drops");
    274       $page .='L\'objet perdu '.$dropsrow['name'].' a été mis à jour!<br><br>Maintenant vous pouvez:<br><br><a href="index.php">» retourner au jeu</a><br>» Sélectionner une autre rubrique à administrer';  
    275       } else {
    276       $page .= 'La mise à jour n\'a pas pu se faire, car les erreur(s) suivante(s) se sont produite(s):<br><br><span class="alerte">'.$errorlist.'</span><br><br>Maintenant vous pouvez:<br><br><a href="?do=editdrop:'.$id.'">» retourner et réessayer</a><br><a href="index.php">» retourner au jeu</a>'; 
    277         }        
    278  }else{
    279    
    280 $page .= '
    281 <img src="images/jeu/puce4.gif" alt=""> <span class="mauve2"><b>Editer les objets perdus (par les monstres):</b></span><br><br>
    282 
    283 <form enctype="multipart/form-data" action="" method="post">
    284 <table width="580" border="0" cellspacing="0" cellpadding="0">
    285 <tr valign="top"><td style="width:110px">ID:</td><td>'.$dropsrow['id'].'<br><br></td></tr>
    286 <tr valign="top"><td style="width:110px">Nom:</td><td><input type="text" name="name" size="30" maxlength="30" value="'.$dropsrow['name'].'"><br><br></td></tr>
    287 <tr valign="top"><td style="width:110px">Image:</td><td><img src="images/objets/'.$dropsrow['id'].'.jpg" alt="'.$dropsrow['name'].'"><br><br></td></tr>
    288 <tr valign="top"><td style="width:110px">Niveau du monstre:</td><td><input type="text" name="mlevel" size="5" maxlength="10" value="'.$dropsrow['mlevel'].'"><br>Niveau de probabilité pour qu\'un monstre laisse tomber cet objet.<br><br></td></tr>
    289 <tr valign="top"><td style="width:110px">Attribut 1:</td><td><input type="text" name="attribute1" size="30" maxlength="50" value="'.$dropsrow['attribute1'].'"><br>Doit être un code spécial.  Le premier attribut ne peut pas être vide. Éditez ce champ très soigneusement, parce que les erreurs d\'orthographe peuvent créer des problèmes dans le jeu.<br><br></td></tr>
    290 <tr valign="top"><td style="width:110px">Attribut 2:</td><td><input type="text" name="attribute2" size="30" maxlength="50" value="'.$dropsrow['attribute2'].'"><br>Laissez "Aucun" pour ne mettre aucun attribut spécial. Sinon éditez ce champ très soigneusement, parce que les erreurs d\'orthographe peuvent créer des problèmes dans le jeu.<br><br></td></tr>
    291 <tr valign="top"><td style="width:1px"></td><td>
    292 
    293 <div style="text-align: center"><input type="submit" name="submit" value="Valider"> <input type="button" value="Retour" OnClick="javascript:location=\'index.php\'"></div></td></tr>
    294 </table>
    295 
    296 </form><br>
    297 <span class="mauve1"><b>Attributs spéciaux des objets:</b></span><br>
    298 Des attributs spéciaux peuvent être ajoutés à tous les objets, ce qui a pour but d\'augmenter les capacités des personnages. Par exemple si vous voulez qu\'un objet donne 50 HP à un personnage, il suffit d\'écrire maxhp,50. Ceci marche aussi dans le sens négatif. Donc si vous voulez qu\'un objet enlève 50 HP à un personnage, il suffit d\'écrire maxhp,-50.<br><br>
    299 
    300 <img src="images/jeu/puce4.gif" alt=""> <b>maxhp:</b> Donne des points hit (HP)<br>
    301 <img src="images/jeu/puce4.gif" alt=""> <b>maxmp:</b> Donne des points de magie (MP)<br>
    302 <img src="images/jeu/puce4.gif" alt=""> <b>maxtp:</b> Donne des points de voyages<br>
    303 <img src="images/jeu/puce4.gif" alt=""> <b>goldbonus:</b> Donne un bonnus de rubis (en pourcentage)<br>
    304 <img src="images/jeu/puce4.gif" alt=""> <b>expbonus:</b> Donne un bonnus d\'expérience (en pourcentage)<br>
    305 <img src="images/jeu/puce4.gif" alt=""> <b>strength:</b> Donne de la force (qui s\'ajoute également au pouvoir d\'attaque)<br>
    306 <img src="images/jeu/puce4.gif" alt=""> <b>dexterity:</b> Donne de la dextérité (qui s\'ajoute également au pouvoir de défense)<br>
    307 <img src="images/jeu/puce4.gif" alt=""> <b>attackpower:</b> Donne un pouvoir d\'attaque<br>
    308 <img src="images/jeu/puce4.gif" alt=""> <b>defensepower:</b> Donne un pouvoir de défense<br><br>
    309 ';
    310  } 
    311     
    312  display($page, 'Editer les objets perdus');
    313     
    314 }
    315 
    316 
    317 function towns() {// Visualisation des villes.
    318 
    319 global $page;
    320     
    321   $townquery = doquery("SELECT id, name, latitude, longitude, innprice FROM {{table}} ORDER BY id", "towns");
    322   $page .='<img src="images/jeu/puce4.gif" alt=""> <span class="mauve2"><b>Editer les villes:</b></span><br><br>Pour éditer une ville, cliquez sur celle de votre choix, dans la liste ci-dessous.<br><br>';
    323   
    324   while ($townrow = mysql_fetch_array($townquery)) {
    325   $page .='<div class="bloc_rose"><a href="?do=edittown:'.$townrow['id'].'"><b><span class="mauve2">'.$townrow['name'].'</span></b></a> - <i>Lat.: <span class="mauve1">'.$townrow['latitude'].'</span> - Long.: <span class="mauve1">'.$townrow['longitude'].'</span></i> <span class="alerte">('.$townrow['innprice'].' rubis l\'auberge)</span></div><br>';
    326   }
    327   if (mysql_num_rows($townquery) == 0) { $page .= '<span class="alerte"> Il y a aucune ville de trouvé!</span><br><br>'; }
    328   $page .='<br><a href="index.php">» retourner au jeu</a><br><br>';
    329   
    330   display($page, 'Editer les villes');
    331     
    332 }
    333 
    334 
    335 function edittown($id) {// Edition des villes.
    336 
    337 global $page;
    338 
    339 $townquery = doquery("SELECT * FROM {{table}} WHERE id='$id' ", "towns");
    340 $townrow = mysql_fetch_array($townquery);
    341     
    342    if (isset($_POST['submit'])) {
    343         
    344         extract($_POST);
    345         $errors = 0;
    346         $errorlist = "";
    347         if (trim($name) == "") { $errors++; $errorlist .= "- Le nom est exigé.<br>"; }
    348 		if (preg_match("/[\^*+<>?#]/", $name)==1) { $errors++; $errorlist .= "- Le nom de la ville doit être écrit en caractères alphanumériques.<br>"; }
    349         if (trim($latitude) == "") { $errors++; $errorlist .= "- La latitude est exigée.<br>"; }
    350         if (!is_numeric($latitude)) { $errors++; $errorlist .= "- La latitude doit être un nombre.<br>"; }
    351         if (trim($longitude) == "") { $errors++; $errorlist .= "- La longitude est exigée.<br>"; }
    352         if (!is_numeric($longitude)) { $errors++; $errorlist .= "- La longitude doit être un nombre.<br>"; }
    353         if (trim($innprice) == "") { $errors++; $errorlist .= "- Le prix de l'auberge est exigé.<br>"; }
    354         if (!is_numeric($innprice)) { $errors++; $errorlist .= "- Le prix de l'auberge doir être un nombre.<br>"; }
    355         if (trim($mapprice) == "") { $errors++; $errorlist .= "- Le prix de la carte est exigé.<br>"; }
    356         if (!is_numeric($mapprice)) { $errors++; $errorlist .= "- Le prix de la carte doit être un nombre.<br>"; }
    357         if (trim($travelpoints) == "") { $errors++; $errorlist .= "- Les points de voyages sont exigés.<br>"; }
    358         if (!is_numeric($travelpoints)) { $errors++; $errorlist .= "- Les points de voyages doivent êtres des nombres.<br>"; }
    359         if (trim($itemslist) == "") { $errors++; $errorlist .= "- La liste des objets est exigée.<br>"; }
    360         
    361         if ($errors == 0) { 
    362             $update = doquery("UPDATE {{table}} SET name='".addslashes($name)."', latitude='$latitude',longitude='$longitude',innprice='$innprice',mapprice='$mapprice',travelpoints='$travelpoints',itemslist='$itemslist' WHERE id='".$townrow['id']."' LIMIT 1", "towns");
    363         $page .='La ville '.$townrow['name'].' a été mis à jour!<br><br>Maintenant vous pouvez:<br><br><a href="index.php">» retourner au jeu</a><br>» Sélectionner une autre rubrique à administrer';  
    364         } else {
    365         $page .= 'La mise à jour n\'a pas pu se faire, car les erreur(s) suivante(s) se sont produite(s):<br><br><span class="alerte">'.$errorlist.'</span><br><br>Maintenant vous pouvez:<br><br><a href="?do=edittown:'.$id.'">» retourner et réessayer</a><br><a href="index.php">» retourner au jeu</a>'; 
    366         }         
    367     }else{
    368    
    369 $page .= '
    370 <img src="images/jeu/puce4.gif" alt=""> <span class="mauve2"><b>Editer les villes:</b></span><br><br>
    371 
    372 <form enctype="multipart/form-data" action="" method="post">
    373 <table width="580" border="0" cellspacing="0" cellpadding="0">
    374 <tr valign="top"><td style="width:110px">ID:</td><td>'.$townrow['id'].'<br><br></td></tr>
    375 <tr valign="top"><td style="width:110px">Nom:</td><td><input type="text" name="name" size="30" maxlength="30" value="'.$townrow['name'].'"><br><br></td></tr>
    376 <tr valign="top"><td style="width:110px">Latitude:</td><td><input type="text" name="latitude" size="5" maxlength="10" value="'.$townrow['latitude'].'"><br><br></td></tr>
    377 <tr valign="top"><td style="width:110px">Longitude:</td><td><input type="text" name="longitude" size="5" maxlength="10" value="'.$townrow['longitude'].'"><br><br></td></tr>
    378 <tr valign="top"><td style="width:110px">Prix de l\'auberge:</td><td><input type="text" name="innprice" size="5" maxlength="10" value="'.$townrow['innprice'].'"> rubis<br><br></td></tr>
    379 <tr valign="top"><td style="width:110px">Prix de la carte:</td><td><input type="text" name="mapprice" size="5" maxlength="10" value="'.$townrow['mapprice'].'"> rubis<br>Prix de la carte de cette ville.<br><br></td></tr>
    380 <tr valign="top"><td style="width:110px">Points de voyage:</td><td><input type="text" name="travelpoints" size="5" maxlength="10" value="'.$townrow['travelpoints'].'"><br>Nombre de Points de voyage (TP) consommés pour aller à cette ville.<br><br></td></tr>
    381 <tr valign="top"><td style="width:110px">Liste des objets:</td><td><input type="text" name="itemslist" size="30" maxlength="200" value="'.$townrow['itemslist'].'"><br>Liste des objets disponible dans le magasin de cette ville. (Exemple: 1,2,3,6,9,10,13,20) Note: L\'objet numéro 1 correspond à l\'ID numéro 1 (pour voir l\'ID des objets rendez vous dans la rubrique Editer objets).<br><br></td></tr>
    382 <tr valign="top"><td style="width:1px"></td><td>
    383 
    384 <div style="text-align: center"><input type="submit" name="submit" value="Valider"> <input type="button" value="Retour" OnClick="javascript:location=\'index.php\'"></div></td></tr>
    385 </table>
    386 </form><br><br>';
    387  }
    388  
    389   display($page, 'Editer les villes');
    390  
    391 }
    392 
    393 
    394 function monsters() {// Visualisation des monstres.
    395     
    396 global $controlrow, $page;
    397     
    398   $statquery = doquery("SELECT level FROM {{table}} ORDER BY level DESC LIMIT 1", "monsters");
    399   $statrow = mysql_fetch_array($statquery);
    400     
    401   $monstersquery = doquery("SELECT id, name, immune, level, maxhp FROM {{table}} ORDER BY name", "monsters");
    402   $page .='<img src="images/jeu/puce4.gif" alt=""> <span class="mauve2"><b>Editer les monstres:</b></span><br><br>Pour éditer un monstre, cliquez sur celui de votre choix, dans la liste ci-dessous.<br><br>';
    403     
    404   if (($controlrow['gamesize']/5) != $statrow['level']) {
    405        $page .= '<b>Note:</b> Le niveau élevé des monstre ne s\'assortit pas avec le taille de la carte.  Le niveau le plus élevé de monstre devrait être '.($controlrow['gamesize']/5).', le votre est '.$statrow['level'].'. Veuillez modifier la valeur avant d\'ouvrir le jeu au public.<br><br>';
    406   } else { $page .= 'Le niveau des monstres correspondent parfaitement avec la taille de la carte, aucunes modifications n\'est exigé.<br><br>'; }
    407      
    408     while ($monstersrow = mysql_fetch_array($monstersquery)) {
    409      if ($monstersrow['immune'] == 0) {$immune = "rien"; }
    410 	 if ($monstersrow['immune'] == 1) {$immune = "Attaques"; }
    411      if ($monstersrow['immune'] == 2) {$immune = "Attaques et sommeils"; }
    412   $page .='<div class="bloc_rose"><div style="float:left"><img src="images/monstres/'.$monstersrow['id'].'.jpg" alt="'.$monstersrow['name'].'"></div><a href="?do=editmonster:'.$monstersrow['id'].'"><b><span class="mauve2">'.$monstersrow['name'].'</span></b></a> - <i>Niveau: <span class="mauve1">'.$monstersrow['level'].'</span> - Maxhp: <span class="mauve1">'.$monstersrow['maxhp'].'</span> - Immunisé contre: <span class="mauve1">'.$immune.'</span></i><br></div><br>';
    413     }
    414   if (mysql_num_rows($monstersquery) == 0) { $page .= '<span class="alerte"> Il y a aucun monstres de trouvé!</span><br><br>'; }
    415   $page .='<br><a href="index.php">» retourner au jeu</a><br><br>';
    416   
    417   display($page, "Editer les monstres");
    418     
    419 }
    420 
    421 
    422 function editmonster($id) {// Edition des monstres.
    423 
    424 
    425 global $page;
    426 
    427 $monstersquery = doquery("SELECT * FROM {{table}} WHERE id='$id' ", "monsters");
    428 $monstersrow = mysql_fetch_array($monstersquery);
    429     
    430       if (isset($_POST['submit'])) {
    431         
    432         extract($_POST);
    433         $errors = 0;
    434         $errorlist = "";
    435          if (trim($name) == "") { $errors++; $errorlist .= "- Le nom est exigé.<br>"; }
    436 		if (preg_match("/[\^*+<>?#]/", $name)==1) { $errors++; $errorlist .= "- Le nom du monstre doit être écrit en caractères alphanumériques.<br>"; }
    437          if (trim($maxhp) == "") { $errors++; $errorlist .= "- Le max de HP est exigé.<br>"; }
    438         if (!is_numeric($maxhp)) { $errors++; $errorlist .= "- Le max de HP doit être un nombre.<br>"; }
    439          if (trim($maxdam) == "") { $errors++; $errorlist .= "- Le max de dommage est exigé.<br>"; }
    440         if (!is_numeric($maxdam)) { $errors++; $errorlist .= "- Le max de dommage doit être un nombre.<br>"; }
    441          if (trim($armor) == "") { $errors++; $errorlist .= "- Le niveau de l'armure est exigé.<br>"; }
    442         if (!is_numeric($armor)) { $errors++; $errorlist .= "- Le niveau de l'armure doir être un nombre.<br>"; }
    443          if (trim($level) == "") { $errors++; $errorlist .= "- Le niveau du monstre est exigé.<br>"; }
    444         if (!is_numeric($level)) { $errors++; $errorlist .= "- Le niveau du monstre doit être un nombre.<br>"; }
    445          if (trim($maxexp) == "") { $errors++; $errorlist .= "- Le max d'expérience est exigé.<br>"; }
    446         if (!is_numeric($maxexp)) { $errors++; $errorlist .= "- Le max d'expérience doit être un nombre.<br>"; }
    447          if (trim($maxgold) == "") { $errors++; $errorlist .= "- Le max de rubis est exigé.<br>"; }
    448         if (!is_numeric($maxgold)) { $errors++; $errorlist .= "- Le max de rubis doit être un nombre.<br>"; }
    449 		
    450         if ($errors == 0) { 
    451             $update = doquery("UPDATE {{table}} SET name='".addslashes($name)."',maxhp='$maxhp',maxdam='$maxdam',armor='$armor',level='$level',maxexp='$maxexp',maxgold='$maxgold',immune='$immune' WHERE id='".$monstersrow['id']."' LIMIT 1", "monsters");
    452         $page .='Le monstre '.$monstersrow['name'].' a été mis à jour!<br><br>Maintenant vous pouvez:<br><br><a href="index.php">» retourner au jeu</a><br>» Sélectionner une autre rubrique à administrer';  
    453         } else {
    454         $page .= 'La mise à jour n\'a pas pu se faire, car les erreur(s) suivante(s) se sont produite(s):<br><br><span class="alerte">'.$errorlist.'</span><br><br>Maintenant vous pouvez:<br><br><a href="?do=editmonster:'.$id.'">» retourner et réessayer</a><br><a href="index.php">» retourner au jeu</a>'; 
    455         }          
    456     }else{
    457  
    458   if ($monstersrow['immune'] == 0) { $monstersrow['immune0select'] = 'selected="selected" '; } else { $monstersrow['immune0select'] = ""; }
    459   if ($monstersrow['immune'] == 1) { $monstersrow['immune1select'] = 'selected="selected" '; } else { $monstersrow['immune1select'] = ""; }
    460   if ($monstersrow['immune'] == 2) { $monstersrow['immune2select'] = 'selected="selected" '; } else { $monstersrow['immune2select'] = ""; }
    461   if ($monstersrow['immune'] == 3) { $monstersrow['immune3select'] = 'selected="selected" '; } else { $monstersrow['immune3select'] = ""; }
    462 
    463   
    464 $page .= '
    465 <img src="images/jeu/puce4.gif" alt=""> <span class="mauve2"><b>Editer les monstres:</b></span><br><br>
    466 
    467 <form enctype="multipart/form-data" action="" method="post">
    468 <table width="580" border="0" cellspacing="0" cellpadding="0">
    469 <tr valign="top"><td style="width:110px">ID:</td><td>'.$monstersrow['id'].'<br><br></td></tr>
    470 <tr valign="top"><td style="width:110px">Nom:</td><td><input type="text" name="name" size="30" maxlength="30" value="'.$monstersrow['name'].'"><br><br></td></tr>
    471 <tr valign="top"><td style="width:110px">Portait:</td><td><img src="images/monstres/'.$monstersrow['image'].'.jpg"  width="71" height="59" alt="'.$monstersrow['name'].'"><br><br></td></tr>
    472 <tr valign="top"><td style="width:110px">Max de HP:</td><td><input type="text" name="maxhp" size="5" maxlength="10" value="'.$monstersrow['maxhp'].'"><br><br></td></tr>
    473 <tr valign="top"><td style="width:110px">Max de dommages:</td><td><input type="text" name="maxdam" size="5" maxlength="10" value="'.$monstersrow['maxdam'].'"><br>Agit en fonction du pouvoir d\'attaque du joueur.<br><br></td></tr>
    474 <tr valign="top"><td style="width:110px">Armures:</td><td><input type="text" name="armor" size="5" maxlength="10" value="'.$monstersrow['armor'].'"><br>Agit en fonction du pouvoir de défense du joueur.<br><br></td></tr>
    475 <tr valign="top"><td style="width:110px">Niveau du monstre:</td><td><input type="text" name="level" size="5" maxlength="10" value="'.$monstersrow['level'].'"><br>Plus le niveau sera élevé, plus les joueurs seront confronté au monstre sur une latitude et une longitude élevée.<br><br></td></tr>
    476 <tr valign="top"><td style="width:110px">Max d\'experience:</td><td><input type="text" name="maxexp" size="5" maxlength="10" value="'.$monstersrow['maxexp'].'"><br>Le maximum d\'expérience qui sera donné au joueur, après avoir battu le monstre.<br><br></td></tr>
    477 <tr valign="top"><td style="width:110px">Max de rubis:</td><td><input type="text" name="maxgold" size="5" maxlength="10" value="'.$monstersrow['maxgold'].'"><br>Le maximum de rubis qui sera donné au joueur, après avoir battu le monstre.<br><br></td></tr>
    478 <tr valign="top"><td style="width:110px">Immunisé contre les sorts:</td><td><select name="immune"><option value="0" '.$monstersrow['immune0select'].'>Aucuns sorts</option><option value="1" '.$monstersrow['immune1select'].'>Sorts d\'attaques</option><option value="2" '.$monstersrow['immune2select'].'>Sorts d\'attaques & Sommeils</option></select><br>Déterminez à quels types de sorts le monstre sera immunisé.<br><br></td></tr>
    479 <tr valign="top"><td style="width:1px"></td><td>
    480 
    481 <div style="text-align: center"><input type="submit" name="submit" value="Valider"> <input type="button" value="Retour" OnClick="javascript:location=\'index.php\'"></div></td></tr>
    482 </table>
    483 </form><br><br>
    484 ';
    485   } 
    486     
    487  display($page, 'Editer les monstres');
    488     
    489 }
    490 
    491 
    492 function spells() {// Visualisation des sorts.
    493 
    494 global $page;
    495     
    496 $spellsquery = doquery("SELECT id, name, attribute, type FROM {{table}} ORDER BY name", "spells");
    497 $page .='<img src="images/jeu/puce4.gif" alt=""> <span class="mauve2"><b>Editer les sorts:</b></span><br><br>Pour éditer un objet, cliquez sur celui de votre choix, dans la liste ci-dessous.<br><br>';
    498     
    499   while ($spellsrow = mysql_fetch_array($spellsquery)) {
    500    
    501      if ($spellsrow['type'] == 1) {$type = "Soin"; }
    502 	 if ($spellsrow['type'] == 2) {$type = "Attaque"; }
    503      if ($spellsrow['type'] == 3) {$type = "Sommeil"; }
    504      if ($spellsrow['type'] == 4) {$type = "Attaque d'Uber"; }
    505      if ($spellsrow['type'] == 5) {$type = "Défense d'Uber"; }
    506 	 
    507     $page .='<div class="bloc_rose"><a href="?do=editspell:'.$spellsrow['id'].'"><b><span class="mauve2">'.$spellsrow['name'].'</span></b></a> - <i>Attribut.: <span class="mauve1">'.$spellsrow['attribute'].'</span> - Type: <span class="mauve1">'.$type.'</span></i></div><br>';    }
    508   if (mysql_num_rows($spellsquery) == 0) { $page .= '<span class="alerte"> Il y a aucun sorts de trouvé!</span><br><br>'; }
    509   $page .='<br><a href="index.php">» retourner au jeu</a><br><br>';
    510    
    511  display($page, 'Editer les sorts');
    512     
    513 }
    514 
    515 
    516 function editspell($id) {// Edition des sorts.
    517 
    518 global $page;
    519  
    520 $spellsquery = doquery("SELECT * FROM {{table}} WHERE id='$id' ", "spells");
    521 $spellsrow = mysql_fetch_array($spellsquery);
    522   
    523   if (isset($_POST['submit'])) {
    524         
    525         extract($_POST);
    526         $errors = 0;
    527         $errorlist = "";
    528          if (trim($name) == "") { $errors++; $errorlist .= "- Le nom est exigé.<br>"; }
    529 		if (preg_match("/[\^*+<>?#]/", $name)==1) { $errors++; $errorlist .= "- Le nom du sorts doit être écrit en caractères alphanumériques.<br>"; }
    530          if (trim($mp) == "") { $errors++; $errorlist .= "- Les MP sont exigés.<br>"; }
    531         if (!is_numeric($mp)) { $errors++; $errorlist .= "- Les MP doivent êtres des nombres.<br>"; }
    532          if (trim($attribute) == "") { $errors++; $errorlist .= "- L\'attribut est exigé.<br>"; }
    533         if (!is_numeric($attribute)) { $errors++; $errorlist .= "- L\'attribut doit être un nombre.<br>"; } 
    534 		
    535         if ($errors == 0) { 
    536             $update = doquery("UPDATE {{table}} SET name='".addslashes($name)."',mp='$mp',attribute='$attribute',type='$type' WHERE id='".$spellsrow['id']."' LIMIT 1", "spells");
    537         $page .='Le sorts '.$spellsrow['name'].' a été mis à jour!<br><br>Maintenant vous pouvez:<br><br><a href="index.php">» retourner au jeu</a><br>» Sélectionner une autre rubrique à administrer';  
    538         } else {
    539         $page .= 'La mise à jour n\'a pas pu se faire, car les erreur(s) suivante(s) se sont produite(s):<br><br><span class="alerte">'.$errorlist.'</span><br><br>Maintenant vous pouvez:<br><br><a href="?do=editspell:'.$id.'">» retourner et réessayer</a><br><a href="index.php">» retourner au jeu</a>'; 
    540         }           
    541     }else{
    542   
    543   if ($spellsrow['type'] == 1) { $spellsrow['type1select'] = 'selected="selected" '; } else { $spellsrow['type1select'] = ""; }
    544   if ($spellsrow['type'] == 2) { $spellsrow['type2select'] = 'selected="selected" '; } else { $spellsrow['type2select'] = ""; }
    545   if ($spellsrow['type'] == 3) { $spellsrow['type3select'] = 'selected="selected" '; } else { $spellsrow['type3select'] = ""; }
    546   if ($spellsrow['type'] == 4) { $spellsrow['type4select'] = 'selected="selected" '; } else { $spellsrow['type4select'] = ""; }
    547   if ($spellsrow['type'] == 5) { $spellsrow['type5select'] = 'selected="selected" '; } else { $spellsrow['type5select'] = ""; }
    548 
    549 	
    550 $page .= '
    551 <img src="images/jeu/puce4.gif" alt=""> <span class="mauve2"><b>Editer les sorts:</b></span><br><br>
    552 
    553 <form enctype="multipart/form-data" action="" method="post">
    554 <table width="580" border="0" cellspacing="0" cellpadding="0">
    555 <tr valign="top"><td style="width:110px">ID:</td><td>'.$spellsrow['id'].'<br><br></td></tr>
    556 <tr valign="top"><td style="width:110px">Nom:</td><td><input type="text" name="name" size="30" maxlength="30" value="'.$spellsrow['name'].'"><br><br></td></tr>
    557 <tr valign="top"><td style="width:110px">Points de magie:</td><td><input type="text" name="mp" size="5" maxlength="10" value="'.$spellsrow['mp'].'"><br>MP requis pour éxécuter ce sort.<br><br></td></tr>
    558 <tr valign="top"><td style="width:110px">Attribut:</td><td><input type="text" name="attribute" size="5" maxlength="10" value="'.$spellsrow['attribute'].'"><br>Valeur numérique du type de sorts que vous avez choisi ci-dessous.<br><br></td></tr>
    559 <tr valign="top"><td style="width:110px">Type:</td><td><select name="type"><option value="1" '.$spellsrow['type1select'].'>Soin</option><option value="2" '.$spellsrow['type2select'].'>Attaque</option><option value="3" '.$spellsrow['type3select'].'>Sommeil</option><option value="4" '.$spellsrow['type4select'].'>Attaque d\'Uber</option><option value="5" '.$spellsrow['type5select'].'>Défense d\'Uber</option></select><br>- "Soin" redonne des HP au joueur.<br>- "Attaque" cause des dommages au monstre.<br>- "Sommeil" endort le monstre. Note: Si vous mettez l\'attribut du sommeil sur 2, le monstre aura très peu de chance de s\'endormir, par contre si vous le mettez sur 15, le monstre s\'endormira plus facilement (l\'attribut du sommeil varie de 1 à 15).<br>- L\'attaque d\'Uber augmente les dommages d\'attaque totale de 50% sur le monstre, si vous mettez par exemple dans les attributs 50.<br>- La défense d\'Uber augmente la défense totale du perso de 50%, si par exemple vous mettez dans les attributs 50.<br><br> 
    560 <tr valign="top"><td style="width:1px"></td><td>
    561 
    562 <div style="text-align: center"><input type="submit" name="submit" value="Valider"> <input type="button" value="Retour" OnClick="javascript:location=\'index.php\'"></div></td></tr>
    563 </table>
    564 </form><br><br>';  
    565  } 
    566     
    567   display($page, 'Editer les sorts');
    568     
    569 }
    570 
    571 
    572 function levels() {// Visualisation des niveaux.
    573 
    574 global $page;
    575 
    576   $levelsquery = doquery("SELECT id FROM {{table}} ORDER BY id DESC LIMIT 1", "levels");
    577   $levelsrow = mysql_fetch_array($levelsquery);
    578 
    579   $options = '';
    580   for($i=2; $i<$levelsrow['id']; $i++) {
    581   $options .= '<option value="'.$i.'">'.$i.'</option>';
    582   }
    583     
    584 $page .= '
    585 <img src="images/jeu/puce4.gif" alt=""> <span class="mauve2"><b>Editer les niveaux:</b></span><br><br>
    586 
    587 <form enctype="multipart/form-data" action="admin.php?do=editlevel" method="post">
    588 <div>Niveau à éditer : <select name="level">
    589 '.$options.'
    590 </select><br><br></div>
    591 <div style="text-align: center"><input type="submit" name="validation" value="Valider"> <input type="button" value="Retour" OnClick="javascript:location=\'index.php\'"></div>
    592 </form><br><br>';
    593 
    594  display($page, 'Editer les niveaux');
    595     
    596 }
    597 
    598 
    599 function editlevel() {// Edition des niveaux.
    600 
    601 global $controlrow, $page;
    602     
    603         if (isset($_POST['submit'])) {
    604         
    605         extract($_POST);
    606         $errors = 0;
    607         $errorlist = "";
    608         if (trim($_POST['exp_1']) == "") { $errors++; $errorlist .= "- L'expérience de la classe 1 est exigée.<br>"; }
    609         if (trim($_POST['hp_1']) == "") { $errors++; $errorlist .= "- Le HP de la classe 1 est exigé.<br>"; }
    610         if (trim($_POST['mp_1']) == "") { $errors++; $errorlist .= "- Le MP de la classe 1 est exigé.<br>"; }
    611         if (trim($_POST['tp_1']) == "") { $errors++; $errorlist .= "- Le TP de la classe 1 est exigé.<br>"; }
    612         if (trim($_POST['strength_1']) == "") { $errors++; $errorlist .= "- La force de la classe 1 est exigée.<br>"; }
    613         if (trim($_POST['dexterity_1']) == "") { $errors++; $errorlist .= "- La dextérité de la classe 1 est exigée.<br>"; }
    614         if (trim($_POST['spells_1']) == "") { $errors++; $errorlist .= "- Le sort de la classe 1 est exigée.<br>"; }
    615         if (!is_numeric($_POST['exp_1'])) { $errors++; $errorlist .= "- L'expérience de la classe 1 doit être un nombre.<br>"; }
    616         if (!is_numeric($_POST['hp_1'])) { $errors++; $errorlist .= "- Le HP de la classe 1 doit être un nombre.<br>"; }
    617         if (!is_numeric($_POST['mp_1'])) { $errors++; $errorlist .= "- Le MP de la classe 1 doit être un nombre.<br>"; }
    618         if (!is_numeric($_POST['tp_1'])) { $errors++; $errorlist .= "- Le TP de la classe 1 doit être un nombre.<br>"; }
    619         if (!is_numeric($_POST['strength_1'])) { $errors++; $errorlist .= "- La force de la classe 1 doit être un nombre.<br>"; }
    620         if (!is_numeric($_POST['dexterity_1'])) { $errors++; $errorlist .= "- La dextérité de la classe 1 doit être un nombre.<br>"; }
    621         if (!is_numeric($_POST['spells_1'])) { $errors++; $errorlist .= "- Le sort de la classe 1 doit être un nombre.<br>"; }
    622 
    623        if (trim($_POST['exp_2']) == "") { $errors++; $errorlist .= "- L'expérience de la classe 2 est exigée.<br>"; }
    624        if (trim($_POST['hp_2']) == "") { $errors++; $errorlist .= "- Le HP de la classe 2 est exigé.<br>"; }
    625        if (trim($_POST['mp_2']) == "") { $errors++; $errorlist .= "- Le MP de la classe 2 est exigé.<br>"; }
    626        if (trim($_POST['tp_2']) == "") { $errors++; $errorlist .= "- Le TP de la classe 2 est exigé.<br>"; }
    627        if (trim($_POST['strength_2']) == "") { $errors++; $errorlist .= "- La force de la classe 2 est exigée.<br>"; }
    628        if (trim($_POST['dexterity_2']) == "") { $errors++; $errorlist .= "- La dextérité de la classe 2 est exigée.<br>"; }
    629        if (trim($_POST['spells_2']) == "") { $errors++; $errorlist .= "- Le sort de la classe 2 est exigé.<br>"; }
    630         if (!is_numeric($_POST['exp_2'])) { $errors++; $errorlist .= "- L'expérience de la classe 2 doit être un nombre.<br>"; }
    631         if (!is_numeric($_POST['hp_2'])) { $errors++; $errorlist .= "- Le HP de la classe 2 doit être un nombre.<br>"; }
    632         if (!is_numeric($_POST['mp_2'])) { $errors++; $errorlist .= "- Le MP de la classe 2 doit être un nombre.<br>"; }
    633         if (!is_numeric($_POST['tp_2'])) { $errors++; $errorlist .= "- Le TP de la classe 2 doit être un nombre.<br>"; }
    634         if (!is_numeric($_POST['strength_2'])) { $errors++; $errorlist .= "- La force de la classe 2 doit être un nombre.<br>"; }
    635         if (!is_numeric($_POST['dexterity_2'])) { $errors++; $errorlist .= "- La dextérité de la classe 2 doit être un nombre.<br>"; }
    636         if (!is_numeric($_POST['spells_2'])) { $errors++; $errorlist .= "- Le sort de la classe 2 doit être un nombre.<br>"; }
    637                 
    638        if (trim($_POST['exp_3']) == "") { $errors++; $errorlist .= "- L'expérience de la classe 3 est exigée.<br>"; }
    639        if (trim($_POST['hp_3']) == "") { $errors++; $errorlist .= "- Le HP de la classe 3 est exigé.<br>"; }
    640        if (trim($_POST['mp_3']) == "") { $errors++; $errorlist .= "- Le MP de la classe 3 est exigé.<br>"; }
    641        if (trim($_POST['tp_3']) == "") { $errors++; $errorlist .= "- Le TP de la classe 3 est exigé.<br>"; }
    642        if (trim($_POST['strength_3']) == "") { $errors++; $errorlist .= "- La force de la classe 3 est exigée.<br>"; }
    643        if (trim($_POST['dexterity_3']) == "") { $errors++; $errorlist .= "- La dextérité de la classe 3 est exigée.<br>"; }
    644        if (trim($_POST['spells_3']) == "") { $errors++; $errorlist .= "- Le sort de la classe 3 est exigé.<br>"; }
    645         if (!is_numeric($_POST['exp_3'])) { $errors++; $errorlist .= "- L'expérience de la classe 3 doit être un nombre.<br>"; }
    646         if (!is_numeric($_POST['hp_3'])) { $errors++; $errorlist .= "- Le HP de la classe 3 doit être un nombre.<br>"; }
    647         if (!is_numeric($_POST['mp_3'])) { $errors++; $errorlist .= "- Le MP de la classe 3 doit être un nombre.<br>"; }
    648         if (!is_numeric($_POST['tp_3'])) { $errors++; $errorlist .= "- Le TP de la classe 3 doit être un nombre.<br>"; }
    649         if (!is_numeric($_POST['strength_3'])) { $errors++; $errorlist .= "- La force de la classe 3 doit être un nombre.<br>"; }
    650         if (!is_numeric($_POST['dexterity_3'])) { $errors++; $errorlist .= "- La dextérité de la classe 3 doit être un nombre.<br>"; }
    651         if (!is_numeric($_POST['spells_3'])) { $errors++; $errorlist .= "- Le sort de la classe 3 doit être un nombre.<br>"; }
    652 
    653         if ($errors == 0) {
    654 	
    655 $update = doquery("UPDATE {{table}} SET
    656         1_exp='$exp_1', 1_hp='$hp_1', 1_mp='$mp_1', 1_tp='$tp_1', 1_strength='$strength_1', 1_dexterity='$dexterity_1', 1_spells='$spells_1',
    657         2_exp='$exp_2', 2_hp='$hp_2', 2_mp='$mp_2', 2_tp='$tp_2', 2_strength='$strength_2', 2_dexterity='$dexterity_2', 2_spells='$spells_2',
    658         3_exp='$exp_3', 3_hp='$hp_3', 3_mp='$mp_3', 3_tp='$tp_3', 3_strength='$strength_3', 3_dexterity='$dexterity_3', 3_spells='$spells_3'
    659         WHERE id='".$_POST['id']."' LIMIT 1", "levels");
    660 
    661          $page .='Le niveau '.$_POST['id'].' a été mis à jour!<br><br>Maintenant vous pouvez:<br><br><a href="index.php">» retourner au jeu</a><br>» Sélectionner une autre rubrique à administrer';  
    662         } else {
    663          $page .= 'La mise à jour n\'a pas pu se faire, car les erreur(s) suivante(s) se sont produite(s):<br><br><span class="alerte">'.$errorlist.'</span><br><br>Maintenant vous pouvez:<br><br><a href="?do=levels">» retourner et réessayer</a><br><a href="index.php">» retourner au jeu</a>'; 
    664         }        
    665         
    666     }else{
    667     $levelquery = doquery("SELECT * FROM {{table}} WHERE id='".$_POST['level']."' LIMIT 1", "levels");
    668     $levelrow = mysql_fetch_array($levelquery);	
    669   	
    670     $class1name = $controlrow['class1name'];
    671     $class2name = $controlrow['class2name'];
    672     $class3name = $controlrow['class3name'];
    673 
    674 $page .= '
    675 <img src="images/jeu/puce4.gif" alt=""> <span class="mauve2"><b>Editer les niveaux:</b></span><br><br>
    676 
    677 <form enctype="multipart/form-data" action="" method="post">
    678 <table width="580" border="0" cellspacing="0" cellpadding="0">
    679 <tr valign="top"><td style="width:110px">ID:</td><td> '.$levelrow['id'].'<input type="hidden" name="id" size="5"  value="'.$levelrow['id'].'"><br><br></td></tr>
    680 
    681 <tr><td colspan="2" class="rose2">&nbsp;</td></tr>
    682 
    683 <tr valign="top"><td style="width:110px">Experience du '.$class1name.':</td><td><input type="text" name="exp_1" size="10" maxlength="8" value="'.$levelrow['1_exp'].'"><br><br></td></tr>
    684 <tr valign="top"><td style="width:110px">HP du '.$class1name.':</td><td><input type="text" name="hp_1" size="5" maxlength="5" value="'.$levelrow['1_hp'].'"><br><br></td></tr>
    685 <tr valign="top"><td style="width:110px">MP du '.$class1name.':</td><td><input type="text" name="mp_1" size="5" maxlength="5" value="'.$levelrow['1_mp'].'"><br><br></td></tr>
    686 <tr valign="top"><td style="width:110px">TP du '.$class1name.':</td><td><input type="text" name="tp_1" size="5" maxlength="5" value="'.$levelrow['1_tp'].'"><br><br></td></tr>
    687 <tr valign="top"><td style="width:110px">Force du '.$class1name.':</td><td><input type="text" name="strength_1" size="5" maxlength="5" value="'.$levelrow['1_strength'].'"><br><br></td></tr>
    688 <tr valign="top"><td style="width:110px">Dextérité du '.$class1name.':</td><td><input type="text" name="dexterity_1" size="5" maxlength="5" value="'.$levelrow['1_dexterity'].'"><br><br></td></tr>
    689 <tr valign="top"><td style="width:110px">Sorts du '.$class1name.':</td><td><input type="text" name="spells_1" size="5" maxlength="3" value="'.$levelrow['1_spells'].'"><br><br></td></tr>
    690 
    691 <tr><td colspan="2" class="rose2">&nbsp;</td></tr>
    692 
    693 <tr valign="top"><td style="width:110px">Expérience du '.$class2name.':</td><td><input type="text" name="exp_2" size="10" maxlength="8" value="'.$levelrow['2_exp'].'"><br><br></td></tr>
    694 <tr valign="top"><td style="width:110px">HP du '.$class2name.':</td><td><input type="text" name="hp_2" size="5" maxlength="5" value="'.$levelrow['2_hp'].'"><br><br></td></tr>
    695 <tr valign="top"><td style="width:110px">MP du '.$class2name.':</td><td><input type="text" name="mp_2" size="5" maxlength="5" value="'.$levelrow['2_mp'].'"><br><br></td></tr>
    696 <tr valign="top"><td style="width:110px">TP du '.$class2name.':</td><td><input type="text" name="tp_2" size="5" maxlength="5" value="'.$levelrow['2_tp'].'"><br><br></td></tr>
    697 <tr valign="top"><td style="width:110px">Force du '.$class2name.':</td><td><input type="text" name="strength_2" size="5" maxlength="5" value="'.$levelrow['2_strength'].'"><br><br></td></tr>
    698 <tr valign="top"><td style="width:110px">Dextérité du '.$class2name.':</td><td><input type="text" name="dexterity_2" size="5" maxlength="5" value="'.$levelrow['2_dexterity'].'"><br><br></td></tr>
    699 <tr valign="top"><td style="width:110px">Sorts du '.$class2name.':</td><td><input type="text" name="spells_2" size="5" maxlength="3" value="'.$levelrow['2_spells'].'"><br><br></td></tr>
    700 
    701 <tr><td colspan="2" class="rose2">&nbsp;</td></tr>
    702 
    703 <tr valign="top"><td style="width:110px">Experience du '.$class3name.':</td><td><input type="text" name="exp_3" size="10" maxlength="8" value="'.$levelrow['3_exp'].'"><br><br></td></tr>
    704 <tr valign="top"><td style="width:110px">HP du '.$class3name.':</td><td><input type="text" name="hp_3" size="5" maxlength="5" value="'.$levelrow['3_hp'].'"><br><br></td></tr>
    705 <tr valign="top"><td style="width:110px">MP du '.$class3name.':</td><td><input type="text" name="mp_3" size="5" maxlength="5" value="'.$levelrow['3_mp'].'"><br><br></td></tr>
    706 <tr valign="top"><td style="width:110px">TP du '.$class3name.':</td><td><input type="text" name="tp_3" size="5" maxlength="5" value="'.$levelrow['3_tp'].'"><br><br></td></tr>
    707 <tr valign="top"><td style="width:110px">Force du '.$class3name.':</td><td><input type="text" name="strength_3" size="5" maxlength="5" value="'.$levelrow['3_strength'].'"><br><br></td></tr>
    708 <tr valign="top"><td style="width:110px">Dextérité du '.$class3name.':</td><td><input type="text" name="dexterity_3" size="5" maxlength="5" value="'.$levelrow['3_dexterity'].'"><br><br></td></tr>
    709 <tr valign="top"><td style="width:110px">Sorts du '.$class3name.':</td><td><input type="text" name="spells_3" size="5" maxlength="3" value="'.$levelrow['3_spells'].'"><br><br></td></tr>
    710 <tr valign="top"><td style="width:1px"></td><td>
    711 
    712 <div style="text-align: center"><input type="submit" name="submit" value="Valider"> <input type="button" value="Retour" OnClick="javascript:location=\'index.php\'"><input type="hidden" name="validation"></div></td></tr>
    713 </table>
    714 </form><br><br>';              
    715     
    716  }
    717     
    718  display($page, 'Editer les niveaux');
    719     
    720 }
    721 
    722 
    723 function users() {// Visualisation des utilisateurs.
    724 
    725 global $controlrow, $page;
    726 
    727 if( isset($_GET['page']) && is_numeric($_GET['page']) ){
    728 $nav = $_GET['page'];
    729 }else{
    730 $nav = 1;
    731 }  
    732 $pagination = 10;
    733 $limit_start = ($nav - 1) * $pagination;
    734 
    735 $usersquery = doquery("SELECT id, charname, charclass, level, currentaction, currentmp, currenttp, currenthp FROM {{table}} ORDER BY charname ASC LIMIT $limit_start, $pagination", "users");
    736 
    737 $page .='<img src="images/jeu/puce4.gif" alt=""> <span class="mauve2"><b>Editer les utilisateurs:</b></span><br><br>Pour éditer un utilisateur, cliquez sur celui de votre choix, dans la liste ci-dessous.<br><br>';
    738 
    739    while ($usersrow = mysql_fetch_array($usersquery)) {
    740 	 if ($usersrow['charclass'] == 1) {$class = $controlrow['class1name']; }
    741 	 if ($usersrow['charclass'] == 2) {$class = $controlrow['class2name']; }
    742      if ($usersrow['charclass'] == 3) {$class = $controlrow['class3name']; }
    743 	 
    744     $page .='<div class="bloc_rose"><a href="?do=edituser:'.$usersrow['id'].'"><b><span class="mauve2">'.$usersrow['charname'].'</span></b></a> - <i>Niv.: <span class="mauve1">'.$usersrow['level'].'</span> - Classe: <span class="mauve1">'.$class.'</span> - Actuellement: <span class="mauve1">'.$usersrow['currentaction'].'</span> - <span class="mauve2"><b>HP</b></span>: <span class="mauve1">'.$usersrow['currenthp'].'</span> - <span class="mauve1"><b>MP</b></span>: <span class="mauve1">'.$usersrow['currentmp'].'</span> - <span class="rouge1"><b>TP</b></span>: <span class="mauve1">'.$usersrow['currenttp'].'</span></i></div><br>';
    745     }
    746 	
    747 if (mysql_num_rows($usersquery) == 0) { $page .= '<span class="alerte"> Il y a aucun utilisateur de trouvé!</span><br><br>'; }
    748 	
    749 mysql_free_result($usersquery);	
    750 
    751 $nb_total = doquery("SELECT COUNT(*) AS nb_total FROM {{table}} ORDER BY id", "users");
    752 $nb_total = mysql_fetch_array($nb_total);
    753 $nb_total = $nb_total['nb_total'];
    754 
    755 $nb_pages  = ceil($nb_total / $pagination);
    756 
    757 $page .='[ Page : ';
    758 
    759 for ($i = 1 ; $i <= $nb_pages ; $i++) {
    760   if ($i == $nav ){
    761 $page .= '<b>'.$i.'</b> ';
    762   }else{
    763 $page .='<a href="?do=users&amp;page='.$i.'">'.$i.'</a> ';}
    764 }
    765 $page .=' ]<br>';
    766 
    767 $page .='<br><a href="index.php">» retourner au jeu</a><br><br>';
    768   
    769   display($page, 'Editer les utilisateurs');
    770 
    771 }
    772 
    773 
    774 function edituser($id) {// Edition des utilisateurs.
    775 
    776 global $controlrow, $page;
    777 
    778 $usersquery = doquery("SELECT * FROM {{table}} WHERE id='$id' LIMIT 1", "users");
    779 $usersrow = mysql_fetch_array($usersquery);
    780   
    781   if (isset($_POST['submit'])) {
    782         
    783         extract($_POST);
    784         $errors = 0;
    785         $errorlist = "";
    786 
    787        if (trim($email) == "") { $errors++; $errorlist .= "- L'Email est exigé.<br>"; }
    788        if (trim($verify) == "") { $errors++; $errorlist .= "- La vérification de l'email est exigée.<br>"; }
    789        if (trim($charname) == "") { $errors++; $errorlist .= "- Le nom du personnage est exigé.<br>"; }
    790        if (trim($authlevel) == "") { $errors++; $errorlist .= "- Le niveau d'accès est exigé.<br>"; }
    791        if (trim($latitude) == "") { $errors++; $errorlist .= "- La latitude est exigée.<br>"; }
    792        if (trim($longitude) == "") { $errors++; $errorlist .= "- La longitude est exigée.<br>"; }
    793        if (trim($difficulty) == "") { $errors++; $errorlist .= "- La difficulté est exigée.<br>"; }
    794        if (trim($charclass) == "") { $errors++; $errorlist .= "- La classe du personnagee est exigée.<br>"; }
    795        if (trim($currentaction) == "") { $errors++; $errorlist .= "- L'action actuel est exigée.<br>"; }
    796        if (trim($currentfight) == "") { $errors++; $errorlist .= "- Le combat en cours est exigé.<br>"; }
    797         
    798        if (trim($currentmonster) == "") { $errors++; $errorlist .= "- L'ID du monstre actuel est exigé.<br>"; }
    799        if (trim($currentmonsterhp) == "") { $errors++; $errorlist .= "- Le HP du monstre actuel est exigé.<br>"; }
    800        if (trim($currentmonstersleep) == "") { $errors++; $errorlist .= "- L'ID des sorts du monstre actuel est exigés.<br>"; }
    801        if (trim($currentmonsterimmune) == "") { $errors++; $errorlist .= "- L'immunité du monstre actuel est exigée.<br>"; }
    802        if (trim($currentuberdamage) == "") { $errors++; $errorlist .= "- Le dommage actuel d'Uber est exigé.<br>"; }
    803        if (trim($currentuberdefense) == "") { $errors++; $errorlist .= "- La défense actuel d'Uber est exigé.<br>"; }
    804        if (trim($currenthp) == "") { $errors++; $errorlist .= "- Le HP actuel est exigé.<br>"; }
    805        if (trim($currentmp) == "") { $errors++; $errorlist .= "- Le MP actuel est exigé.<br>"; }
    806        if (trim($currenttp) == "") { $errors++; $errorlist .= "- Le TP actuel est exigé.<br>"; }
    807        if (trim($maxhp) == "") { $errors++; $errorlist .= "- Le HP max est exigé.<br>"; }
    808 
    809        if (trim($maxmp) == "") { $errors++; $errorlist .= "- Le MP max est exigé.<br>"; }
    810        if (trim($maxtp) == "") { $errors++; $errorlist .= "- Le TP max est exigé.<br>"; }
    811        if (trim($level) == "") { $errors++; $errorlist .= "- Le niveau est exigé.<br>"; }
    812        if (trim($gold) == "") { $errors++; $errorlist .= "- Les rubis sont exigés.<br>"; }
    813        if (trim($experience) == "") { $errors++; $errorlist .= "- L'experience est exigée.<br>"; }
    814        if (trim($goldbonus) == "") { $errors++; $errorlist .= "- Les rubis bonnus sont exigés.<br>"; }
    815        if (trim($expbonus) == "") { $errors++; $errorlist .= "- L'experience Bonus est exigé.<br>"; }
    816        if (trim($strength) == "") { $errors++; $errorlist .= "- La force est exigée.<br>"; }
    817        if (trim($dexterity) == "") { $errors++; $errorlist .= "- La dextérité est exigée.<br>"; }
    818        if (trim($attackpower) == "") { $errors++; $errorlist .= "- Le pouvoir d'attaque est exigé.<br>"; }
    819 
    820        if (trim($defensepower) == "") { $errors++; $errorlist .= "- Le pouvoir de défense est exigé.<br>"; }
    821        if (trim($weaponid) == "") { $weaponid == "Aucun"; }
    822        if (trim($armorid) == "") { $armorid == "Aucun"; }
    823        if (trim($shieldid) == "") { $shieldid == "Aucun"; }
    824        if (trim($slot1id) == "") { $slot1id = 0; }
    825        if (trim($slot2id) == "") { $slot2id = 0; }
    826        if (trim($slot3id) == "") { $slot3id = 0; }
    827        if (trim($weaponname) == "") { $weaponname = "Aucun"; }
    828        if (trim($armorname) == "") { $armorname = "Aucun";; }
    829        if (trim($shieldname) == "") { $shieldname = "Aucun";; }
    830 
    831        if (trim($slot1name) == "") { $slot1name	= "Aucun"; }
    832        if (trim($slot2name) == "") { $slot2name	= "Aucun";; }
    833        if (trim($slot3name) == "") { $slot3name	= "Aucun";; }
    834        if (trim($dropcode) == "") { $dropcode = 0; }
    835        if (trim($spells) == "") { $spells = 0; }
    836        if (trim($towns) == "") { $towns = 0; }
    837 
    838         if (!is_numeric($authlevel)) { $errors++; $errorlist .= "- Le niveau d'accès doit être un nombre.<br>"; }
    839         if (!is_numeric($latitude)) { $errors++; $errorlist .= "- La latitude doit être un nombre.<br>"; }
    840         if (!is_numeric($longitude)) { $errors++; $errorlist .= "- La longitude doit être un nombre.<br>"; }
    841         if (!is_numeric($difficulty)) { $errors++; $errorlist .= "- La difficultée doit être un nombre.<br>"; }
    842         if (!is_numeric($charclass)) { $errors++; $errorlist .= "- La classe du personnage doit être un nombre.<br>"; }
    843         if (!is_numeric($currentfight)) { $errors++; $errorlist .= "- Le combat en cours doit être un nombre.<br>"; }
    844         if (!is_numeric($currentmonster)) { $errors++; $errorlist .= "- L'ID monstre actuel doit être un nombre.<br>"; }
    845         if (!is_numeric($currentmonsterhp)) { $errors++; $errorlist .= "- Le HP du monstre actuel doit être un nombre.<br>"; }
    846         if (!is_numeric($currentmonstersleep)) { $errors++; $errorlist .= "- L'ID des sorts du monstre actuel doit être un nombre.<br>"; }
    847         
    848         if (!is_numeric($currentmonsterimmune)) { $errors++; $errorlist .= "- L'immunité du monstre actuel doit être nombre.<br>"; }
    849         if (!is_numeric($currentuberdamage)) { $errors++; $errorlist .= "- Le dommage actuel d'Uber doit être un nombre.<br>"; }
    850         if (!is_numeric($currentuberdefense)) { $errors++; $errorlist .= "- La défense actuel d'Uber doit être un nombre.<br>"; }
    851         if (!is_numeric($currenthp)) { $errors++; $errorlist .= "- Le HP actuel doit être un nombre.<br>"; }
    852         if (!is_numeric($currentmp)) { $errors++; $errorlist .= "- Le MP actuel doit être un nombre.<br>"; }
    853         if (!is_numeric($currenttp)) { $errors++; $errorlist .= "- Le TP actuel doit être un nombre.<br>"; }
    854         if (!is_numeric($maxhp)) { $errors++; $errorlist .= "- Le HP Max doit àtre un nombre.<br>"; }
    855         if (!is_numeric($maxmp)) { $errors++; $errorlist .= "- Le MP Max doit àtre un nombre.<br>"; }
    856         if (!is_numeric($maxtp)) { $errors++; $errorlist .= "- Le TP Max doit àtre un nombre.<br>"; }
    857         if (!is_numeric($level)) { $errors++; $errorlist .= "- Le niveau doit être un nombre.<br>"; }
    858         
    859         if (!is_numeric($gold)) { $errors++; $errorlist .= "- Les rubis doivent êtres des nombres.<br>"; }
    860         if (!is_numeric($experience)) { $errors++; $errorlist .= "- L'expérience doit être un nombre.<br>"; }
    861         if (!is_numeric($goldbonus)) { $errors++; $errorlist .= "- Les rubis bonnus doivent êtres des nombres.<br>"; }
    862         if (!is_numeric($expbonus)) { $errors++; $errorlist .= "- L'expérience bonnus doit être un nombre.<br>"; }
    863         if (!is_numeric($strength)) { $errors++; $errorlist .= "- La force doit être un nombre.<br>"; }
    864         if (!is_numeric($dexterity)) { $errors++; $errorlist .= "- La dextérité doit être un nombre.<br>"; }
    865         if (!is_numeric($attackpower)) { $errors++; $errorlist .= "- Le pouvoir d'attaque doit être un nombre.<br>"; }
    866         if (!is_numeric($defensepower)) { $errors++; $errorlist .= "- Le pouvoir de défense doit être un nombre.<br>"; }
    867         if (!is_numeric($weaponid)) { $errors++; $errorlist .= "- L'ID de la l'arme doit être un nombre.<br>"; }
    868         if (!is_numeric($armorid)) { $errors++; $errorlist .= "- L'ID de l'armure doit être un nombre.<br>"; }
    869         
    870         if (!is_numeric($shieldid)) { $errors++; $errorlist .= "- L'ID de la protection doit tre un nombre.<br>"; }
    871         if (!is_numeric($slot1id)) { $errors++; $errorlist .= "- L'ID de la fente 1 doit être un nombre.<br>"; }
    872         if (!is_numeric($slot2id)) { $errors++; $errorlist .= "- L'ID de la fente 2 doit être un nombre.<br>"; }
    873         if (!is_numeric($slot3id)) { $errors++; $errorlist .= "- L'ID de la fente 3 doit être un nombre.<br>"; }
    874         if (!is_numeric($dropcode)) { $errors++; $errorlist .= "Drop Code must be a number.<br />"; }
    875 
    876         if ($errors == 0) { 
    877 
    878 $update = doquery("UPDATE {{table}} SET
    879 email='".addslashes($email)."', verify='$verify', charname='".addslashes($charname)."', authlevel='$authlevel', latitude='$latitude',
    880 longitude='$longitude', difficulty='$difficulty', charclass='$charclass', currentaction='$currentaction', currentfight='$currentfight',
    881 currentmonster='$currentmonster', currentmonsterhp='$currentmonsterhp', currentmonstersleep='$currentmonstersleep', currentmonsterimmune='$currentmonsterimmune', currentuberdamage='$currentuberdamage',
    882 currentuberdefense='$currentuberdefense', currenthp='$currenthp', currentmp='$currentmp', currenttp='$currenttp', maxhp='$maxhp',
    883 maxmp='$maxmp', maxtp='$maxtp', level='$level', gold='$gold', experience='$experience',
    884 goldbonus='$goldbonus', expbonus='$expbonus', strength='$strength', dexterity='$dexterity', attackpower='$attackpower',
    885 defensepower='$defensepower', weaponid='$weaponid', armorid='$armorid', shieldid='$shieldid', slot1id='$slot1id',
    886 slot2id='$slot2id', slot3id='$slot3id', weaponname='".addslashes($weaponname)."', armorname='".addslashes($armorname)."', shieldname='".addslashes($shieldname)."',
    887 slot1name='".addslashes($slot1name)."', slot2name='".addslashes($slot2name)."', slot3name='".addslashes($slot3name)."', dropcode='$dropcode', spells='$spells',
    888 towns='$towns' WHERE id='".$usersrow['id']."' LIMIT 1", "users");
    889 			
    890          $page .='L\'utilisateur '.addslashes($charname).' a été mis à jour!<br><br>Maintenant vous pouvez:<br><br><a href="index.php">» retourner au jeu</a><br>» Sélectionner une autre rubrique à administrer';  
    891         } else {
    892          $page .= 'La mise à jour n\'a pas pu se faire, car les erreur(s) suivante(s) se sont produite(s):<br><br><span class="alerte">'.$errorlist.'</span><br><br>Maintenant vous pouvez:<br><br><a href="?do=edituser:'.$id.'">» retourner et réessayer</a><br><a href="index.php">» retourner au jeu</a>'; 
    893         }           
    894     }else{   
    895     
    896     $diff1name = $controlrow['diff1name'];
    897     $diff2name = $controlrow['diff2name'];
    898     $diff3name = $controlrow['diff3name'];
    899     $class1name = $controlrow['class1name'];
    900     $class2name = $controlrow['class2name'];
    901     $class3name = $controlrow['class3name'];
    902 	
    903 	if ($usersrow['authlevel'] == 0) { $usersrow['auth0select'] = 'selected="selected" '; } else { $usersrow['auth0select'] = ""; }
    904     if ($usersrow['authlevel'] == 1) { $usersrow['auth1select'] = 'selected="selected" '; } else { $usersrow['auth1select'] = ""; }
    905     if ($usersrow['authlevel'] == 2) { $usersrow['auth2select'] = 'selected="selected" '; } else { $usersrow['auth2select'] = ""; }
    906     if ($usersrow['charclass'] == 1) { $usersrow['class1select'] = 'selected="selected" '; } else { $usersrow['class1select'] = ""; }
    907     if ($usersrow['charclass'] == 2) { $usersrow['class2select'] = 'selected="selected" '; } else { $usersrow['class2select'] = ""; }
    908     if ($usersrow['charclass'] == 3) { $usersrow['class3select'] = 'selected="selected" '; } else { $usersrow['class3select'] = ""; }
    909     if ($usersrow['difficulty'] == 1) { $usersrow['diff1select'] = 'selected="selected" '; } else { $usersrow['diff1select'] = ""; }
    910     if ($usersrow['difficulty'] == 2) { $usersrow['diff2select'] = 'selected="selected" '; } else { $usersrow['diff2select'] = ""; }
    911     if ($usersrow['difficulty'] == 3) { $usersrow['diff3select'] = 'selected="selected" '; } else { $usersrow['diff3select'] = ""; }
    912 
    913 
    914 $page .= '
    915 <img src="images/jeu/puce4.gif" alt=""> <span class="mauve2"><b>Editer les utilisateurs:</b></span><br><br>
    916 
    917 <form enctype="multipart/form-data" action="" method="post">
    918 <table width="580" border="0" cellspacing="0" cellpadding="0">
    919 <tr valign="top"><td style="width:110px">Joueur numéro:</td><td>'.$usersrow['id'].'<br><br></td></tr>
    920 <tr valign="top"><td style="width:110px">ID:</td><td>'.$usersrow['username'].'<br><br></td></tr>
    921 <tr valign="top"><td style="width:110px">Avatar:</td><td><img src="images/avatars/jeu/'.$usersrow['avatar'].'.gif" alt="'.$usersrow['charname'].'"><br><br></td></tr>
    922 <tr valign="top"><td style="width:110px">Email:</td><td><input type="text" name="email" size="30" maxlength="100" value="'.$usersrow['email'].'"><br><br></td></tr>
    923 <tr valign="top"><td style="width:110px">Verifié:</td><td><input type="text" name="verify" size="30" maxlength="8" value="'.$usersrow['verify'].'"><br><br></td></tr>
    924 <tr valign="top"><td style="width:110px">Pseudo:</td><td><input type="text" name="charname" size="30" maxlength="30" value="'.$usersrow['charname'].'"><br><br></td></tr>
    925 <tr valign="top"><td style="width:110px">Date d\'inscription:</td><td>'.$usersrow['regdate'].'<br><br></td></tr>
    926 <tr valign="top"><td style="width:110px">Dernière fois en ligne:</td><td>'.$usersrow['onlinetime'].'<br><br></td></tr>
    927 <tr valign="top"><td style="width:110px">Niv. d\'accès:</td><td><select name="authlevel"><option value="0" '.$usersrow['auth0select'].'>Simple joueur</option><option value="1" '.$usersrow['auth1select'].'>Administrateur</option><option value="2" '.$usersrow['auth2select'].'>Bloqué</option></select><br>Sélectionnez "bloqué" pour empêcher un utilisateur d\'accèder au jeu.<br><br></td></tr>
    928 
    929 <tr valign="top"><td colspan="2" class="rose2">&nbsp;</td></tr>
    930 
    931 <tr valign="top"><td style="width:110px">Latitude:</td><td><input type="text" name="latitude" size="5" maxlength="6" value="'.$usersrow['latitude'].'"><br><br></td></tr>
    932 <tr valign="top"><td style="width:110px">Longitude:</td><td><input type="text" name="longitude" size="5" maxlength="6" value="'.$usersrow['longitude'].'"><br><br></td></tr>
    933 <tr valign="top"><td style="width:110px">Difficulté:</td><td><select name="difficulty"><option value="1" '.$usersrow['diff1select'].'>'.$diff1name.'</option><option value="2" '.$usersrow['diff2select'].'>'.$diff2name.'</option><option value="3" '.$usersrow['diff3select'].'>'.$diff3name.'</option></select><br><br></td></tr>
    934 <tr valign="top"><td style="width:110px">Classe du personnage:</td><td><select name="charclass"><option value="1" '.$usersrow['class1select'].'>'.$class1name.'</option><option value="2" '.$usersrow['class2select'].'>'.$class2name.'</option><option value="3" '.$usersrow['class3select'].'>'.$class3name.'</option></select><br><br></td></tr>
    935 
    936 <tr valign="top"><td colspan="2" class="rose2">&nbsp;</td></tr>
    937 
    938 <tr valign="top"><td style="width:110px">Action en cours:</td><td><input type="text" name="currentaction" size="30" maxlength="30" value="'.$usersrow['currentaction'].'"><br><br></td></tr>
    939 <tr valign="top"><td style="width:110px">Combat en cours:</td><td><input type="text" name="currentfight" size="5" maxlength="4" value="'.$usersrow['currentfight'].'"><br><br></td></tr>
    940 <tr valign="top"><td style="width:110px">ID du monstre:</td><td><input type="text" name="currentmonster" size="5" maxlength="6" value="'.$usersrow['currentmonster'].'"><br><br></td></tr>
    941 <tr valign="top"><td style="width:110px">HP du monstre:</td><td><input type="text" name="currentmonsterhp" size="5" maxlength="6" value="'.$usersrow['currentmonsterhp'].'"><br><br></td></tr>
    942 <tr valign="top"><td style="width:110px">ID des sorts du monstre:</td><td><input type="text" name="currentmonsterimmune" size="5" maxlength="3" value="'.$usersrow['currentmonsterimmune'].'"><br><br></td></tr>
    943 <tr valign="top"><td style="width:110px">Immunité du monstre:</td><td><input type="text" name="currentmonstersleep" size="5" maxlength="3" value="'.$usersrow['currentmonstersleep'].'"><br><br></td></tr>
    944 <tr valign="top"><td style="width:110px">Dommage actuel d\'Uber:</td><td><input type="text" name="currentuberdamage" size="5" maxlength="3" value="'.$usersrow['currentuberdamage'].'"><br><br></td></tr>
    945 <tr valign="top"><td style="width:110px">Défense actuel d\'Uber:</td><td><input type="text" name="currentuberdefense" size="5" maxlength="3" value="'.$usersrow['currentuberdefense'].'"><br><br></td></tr>
    946 
    947 <tr valign="top"><td colspan="2" class="rose2">&nbsp;</td></tr>
    948 
    949 <tr valign="top"><td style="width:110px">HP actuel:</td><td><input type="text" name="currenthp" size="5" maxlength="6" value="'.$usersrow['currenthp'].'"><br><br></td></tr>
    950 <tr valign="top"><td style="width:110px">MP actuel:</td><td><input type="text" name="currentmp" size="5" maxlength="6" value="'.$usersrow['currentmp'].'"><br><br></td></tr>
    951 <tr valign="top"><td style="width:110px">TP actuel:</td><td><input type="text" name="currenttp" size="5" maxlength="6" value="'.$usersrow['currenttp'].'"><br><br></td></tr>
    952 <tr valign="top"><td style="width:110px">Max HP:</td><td><input type="text" name="maxhp" size="5" maxlength="6" value="'.$usersrow['maxhp'].'"><br><br></td></tr>
    953 <tr valign="top"><td style="width:110px">Max MP:</td><td><input type="text" name="maxmp" size="5" maxlength="6" value="'.$usersrow['maxmp'].'"><br><br></td></tr>
    954 <tr valign="top"><td style="width:110px">Max TP:</td><td><input type="text" name="maxtp" size="5" maxlength="6" value="'.$usersrow['maxtp'].'"><br><br></td></tr>
    955 
    956 <tr valign="top"><td colspan="2" class="rose2">&nbsp;</td></tr>
    957 
    958 <tr valign="top"><td style="width:110px">Niveau:</td><td><input type="text" name="level" size="5" maxlength="5" value="'.$usersrow['level'].'"><br><br></td></tr>
    959 <tr valign="top"><td style="width:110px">Rubis:</td><td><input type="text" name="gold" size="10" maxlength="8" value="'.$usersrow['gold'].'"><br><br></td></tr>
    960 <tr valign="top"><td style="width:110px">Experience:</td><td><input type="text" name="experience" size="10" maxlength="8" value="'.$usersrow['experience'].'"><br><br></td></tr>
    961 <tr valign="top"><td style="width:110px">Bonnus rubis:</td><td><input type="text" name="goldbonus" size="5" maxlength="5" value="'.$usersrow['goldbonus'].'"><br><br></td></tr>
    962 <tr valign="top"><td style="width:110px">Bonnus experience :</td><td><input type="text" name="expbonus" size="5" maxlength="5" value="'.$usersrow['expbonus'].'"><br><br></td></tr>
    963 <tr valign="top"><td style="width:110px">Force:</td><td><input type="text" name="strength" size="5" maxlength="5" value="'.$usersrow['strength'].'"><br><br></td></tr>
    964 <tr valign="top"><td style="width:110px">Dextérité:</td><td><input type="text" name="dexterity" size="5" maxlength="5" value="'.$usersrow['dexterity'].'"><br><br></td></tr>
    965 <tr valign="top"><td style="width:110px">Pouvoir d\'attaque:</td><td><input type="text" name="attackpower" size="5" maxlength="5" value="'.$usersrow['attackpower'].'"><br><br></td></tr>
    966 <tr valign="top"><td style="width:110px">Pouvoir de défense:</td><td><input type="text" name="defensepower" size="5" maxlength="5" value="'.$usersrow['defensepower'].'"><br><br></td></tr>
    967 
    968 <tr valign="top"><td colspan="2" class="rose2">&nbsp;</td></tr>
    969 
    970 <tr valign="top"><td style="width:110px">ID de l\'arme:</td><td><input type="text" name="weaponid" size="5" maxlength="5" value="'.$usersrow['weaponid'].'"><br><br></td></tr>
    971 <tr valign="top"><td style="width:110px">ID del\'armure:</td><td><input type="text" name="armorid" size="5" maxlength="5" value="'.$usersrow['armorid'].'"><br><br></td></tr>
    972 <tr valign="top"><td style="width:110px">ID de la protection:</td><td><input type="text" name="shieldid" size="5" maxlength="5" value="'.$usersrow['shieldid'].'"><br><br></td></tr>
    973 <tr valign="top"><td style="width:110px">ID de la fente 1:</td><td><input type="text" name="slot1id" size="5" maxlength="5" value="'.$usersrow['slot1id'].'"><br><br></td></tr>
    974 <tr valign="top"><td style="width:110px">ID de la fente 2:</td><td><input type="text" name="slot2id" size="5" maxlength="5" value="'.$usersrow['slot2id'].'"><br><br></td></tr>
    975 <tr valign="top"><td style="width:110px">ID de la fente 3:</td><td><input type="text" name="slot3id" size="5" maxlength="5" value="'.$usersrow['slot3id'].'"><br><br></td></tr>
    976 <tr valign="top"><td style="width:110px">Nom de l\'arme:</td><td><input type="text" name="weaponname" size="30" maxlength="30" value="'.$usersrow['weaponname'].'"><br><br></td></tr>
    977 <tr valign="top"><td style="width:110px">Nom de l\'armure:</td><td><input type="text" name="armorname" size="30" maxlength="30" value="'.$usersrow['armorname'].'"><br><br></td></tr>
    978 <tr valign="top"><td style="width:110px">Nom de la protec.:</td><td><input type="text" name="shieldname" size="30" maxlength="30" value="'.$usersrow['shieldname'].'"><br><br></td></tr>
    979 <tr valign="top"><td style="width:110px">Nom de la fente 1:</td><td><input type="text" name="slot1name" size="30" maxlength="30" value="'.$usersrow['slot1name'].'"><br><br></td></tr>
    980 <tr valign="top"><td style="width:110px">Nom de la fente 2:</td><td><input type="text" name="slot2name" size="30" maxlength="30" value="'.$usersrow['slot2name'].'"><br><br></td></tr>
    981 <tr valign="top"><td style="width:110px">Nom de la fente 3:</td><td><input type="text" name="slot3name" size="30" maxlength="30" value="'.$usersrow['slot3name'].'"><br><br></td></tr>
    982 
    983 <tr valign="top"><td colspan="2" class="rose2">&nbsp;</td></tr>
    984 
    985 <tr valign="top"><td style="width:110px">Code drop:</td><td><input type="text" name="dropcode" size="5" maxlength="8" value="'.$usersrow['dropcode'].'"><br><br></td></tr>
    986 <tr valign="top"><td style="width:110px">Sorts:</td><td><input type="text" name="spells" size="50" maxlength="50" value="'.$usersrow['spells'].'"><br><br></td></tr>
    987 <tr valign="top"><td style="width:110px">Ville:</td><td><input type="text" name="towns" size="50" maxlength="50" value="'.$usersrow['towns'].'"><br><br><br><br></td></tr>
    988 <tr valign="top"><td style="width:1px"></td><td>
    989 
    990 <div style="text-align: center"><input type="submit" name="submit" value="Valider"> <input type="button" value="Retour" OnClick="javascript:location=\'index.php\'"></div></td></tr>
    991 </table>
    992 </form><br><br>';
    993  
    994  }
    995     
    996 display($page, 'Editer les utilisateurs');
    997     
    998 }
    999 
   1000 
   1001 function addnews() {// Edition des news.
   1002 
   1003 global $controlrow, $page;
   1004 
   1005     if (isset($_POST['submit'])) {
   1006         
   1007         extract($_POST);
   1008         $errors = 0;
   1009         $errorlist = "";
   1010 		if (trim($titre) == "") { $errors++; $errorlist .= "- Le titre de la news exigé.<br>"; }
   1011         if (trim($resume) == "") { $errors++; $errorlist .= "- Le résumé de la news est exigé.<br>"; }
   1012          
   1013         if ($errors == 0) { 
   1014            $update = doquery("INSERT INTO {{table}} SET id='',date='".time()."',title='$titre', resume='$resume', content='$message'", "news");
   1015 		   $page .='La news vient d\'être posté!<br><br>Maintenant vous pouvez:<br><br><a href="index.php">» retourner au jeu</a><br>» Sélectionner une autre rubrique à administrer';  
   1016         } else {
   1017            $page .= 'La news n\'a pas pu être posté, car les erreur(s) suivante(s) se sont produite(s):<br><br><span class="alerte">'.$errorlist.'</span><br><br>Maintenant vous pouvez:<br><br><a href="?do=addnews">» retourner et réessayer</a><br><a href="index.php">» retourner au jeu</a>'; 
   1018         }            
   1019     }else{
   1020 
   1021 if(isset($_POST['previsualiser'])) {
   1022 	$texte = new texte();
   1023 	$bbcode  = $texte->ms_format($_POST['message']);
   1024 	  
   1025     }else{
   1026 	$bbcode = $_POST['message'] = $_POST['resume'] = $_POST['titre'] = null;
   1027 	}	
   1028           
   1029 $page .= '
   1030 <img src="images/jeu/puce4.gif" alt=""> <span class="mauve2"><b>Editer une news:</b></span><br><br>
   1031 
   1032 <form enctype="multipart/form-data" action="" method="post" name="post">
   1033 <table width="580" border="0" cellspacing="0" cellpadding="0">
   1034 <tr valign="top"><td style="width:110px">Titre:</td><td><input type="text" name="titre" size="40" value="'.$_POST['titre'].'"><br><br></td></tr>
   1035 <tr valign="top"><td style="width:110px">Résumé:</td><td><textarea name="resume" rows="5" cols="54">'.$_POST['resume'].'</textarea><br><br></td></tr>
   1036 <tr valign="top"><td style="width:110px">BBcode:</td><td><select class="taille2" onchange="bbfontstyle(\'[color=\' + this.form.couleur.options[this.form.couleur.selectedIndex].value + \']\', \'[/color]\');this.selectedIndex=0;" name="couleur"><option style="color: black;" value="#000000">Couleur</option><option style="color: red;" value="#FF0000">Rouge</option><option style="color: orange;" value="#FFA500">Orange</option><option style="color: yellow;" value="#FFFF00">Jaune</option><option style="color: green;" value="#008000">Vert</option><option style="color: violet;" value="#EE82EE">Violet</option><option style="color: blue;" value="#0000FF">Bleu</option><option style="color: indigo;" value="#4B0082">Indigo</option></select> <select onchange="bbfontstyle(\'[size=\' + this.form.taille.options[this.form.taille.selectedIndex].value + \']\', \'[/size]\')" name="taille"> <option value="9">Très petit</option> <option value="10">Petit</option> <option value=3 selected>Normal</option> <option value="14">Grand</option> <option value="20">Très grand</option></select><input onclick="bbstyle(0)" type="button" value="G" class="taille2" style="font-weight: bold;"> <input onclick="bbstyle(2)" type="button" value="I" class="taille2" style="font-style: italic;"> <input onclick="bbstyle(4)" type="button" value="U" class="taille2" style="text-decoration: underline;"> <input onclick="bbstyle(6)" type="button" value="Url" class="taille2"> <input onclick="bbstyle(8)" type="button" value="Image" class="taille2"></td></tr>
   1037 <tr valign="top"><td style="width:110px"></td><td style="height:4px"></td></tr>
   1038 <tr valign="top"><td style="width:110px"></td><td><a href="javascript:emoticon(\':D\')"><img src="images/jeu/blog/smileys/sourire.gif" style="border:0"  alt=""></a> <a href="javascript:emoticon(\';\)\')"><img src="images/jeu/blog/smileys/clin.gif" style="border:0" alt=""></a> <a href="javascript:emoticon(\':\(\')"><img src="images/jeu/blog/smileys/triste.gif" style="border:0" alt=""></a> <a href="javascript:emoticon(\':surpris:\')"><img src="images/jeu/blog/smileys/yeuxrond.gif" style="border:0" alt=""></a> <a href="javascript:emoticon(\':o\')"><img src="images/jeu/blog/smileys/etonne.gif" style="border:0" alt=""></a> <a href="javascript:emoticon(\':confus:\')"><img src="images/jeu/blog/smileys/confus.gif" style="border:0" alt=""></a> <a href="javascript:emoticon(\':lol:\')"><img src="images/jeu/blog/smileys/lol.gif" style="border:0" alt=""></a> <a href="javascript:emoticon(\':fire:\')"><img src="images/jeu/blog/smileys/flame.gif" style="border:0" alt=""></a> <a href="javascript:emoticon(\':splif:\')"><img src="images/jeu/blog/smileys/petard.gif" style="border:0" alt=""></a> <a href="javascript:emoticon(\':bigsmile:\')"><img src="images/jeu/blog/smileys/green.gif" style="border:0" alt=""></a> <a href="javascript:emoticon(\':x\')"><img src="images/jeu/blog/smileys/mad.gif" style="border:0" alt=""></a> <a href="javascript:emoticon(\':roll:\')"><img src="images/jeu/blog/smileys/rolleyes.gif" style="border:0" alt=""></a> <a href="javascript:emoticon(\':bigcry:\')"><img src="images/jeu/blog/smileys/crying.gif" style="border:0" alt=""></a> <a href="javascript:emoticon(\':colere:\')"><img src="images/jeu/blog/smileys/colere.gif" style="border:0" alt=""></a> <a href="javascript:emoticon(\':P\')"><img src="images/jeu/blog/smileys/razz.gif" style="border:0" alt=""></a> <a href="javascript:emoticon(\'8\)\')"><img src="images/jeu/blog/smileys/lunettes.gif" style="border:0" alt=""></a> <a href="javascript:emoticon(\':\)\')"><img src="images/jeu/blog/smileys/sourire2.gif" style="border:0" alt=""></a> <a href="javascript:emoticon(\':oops:\')"><img src="images/jeu/blog/smileys/redface.gif" style="border:0" alt=""></a><br><br></td></tr>
   1039 <tr valign="top"><td style="width:110px">News complète:</td><td><textarea name="message" rows="5" cols="54">'.$_POST['message'].'</textarea><br><br></td></tr>
   1040 <tr valign="top"><td style="width:110px"></td><td><input type="submit" name="submit" value="Envoyer"> <input type="button" value="Retour" OnClick="javascript:location=\'index.php\'"> <input type="submit" name="previsualiser" value="Prévisualiser"><br><br></td></tr>
   1041 <tr valign="top"><td style="width:110px"></td><td style="width:340px">'.$bbcode.'</td></tr>
   1042 </table>
   1043 </form><br><br>
   1044 ';
   1045 } 
   1046    
   1047 display($page, 'Editer les news');
   1048 
   1049 } 
   1050 
   1051 
   1052 function addpoll() {// Edition du sondage.
   1053 
   1054 global $page;
   1055 
   1056     if (isset($_POST['submit'])) {
   1057         
   1058         extract($_POST);
   1059         $errors = 0;
   1060         $errorlist = "";
   1061         if (trim($question) == "") { $errors++; $errorlist .= "- La question est obligatoire.<br>"; }
   1062 	    if (trim($answer1) == "") { $errors++; $errorlist .= "- La réponse 1  est obligatoire.<br>"; }
   1063 		if (trim($answer2) == "") { $errors++; $errorlist .= "- La réponse 2 est obligatoire.<br>"; }
   1064 		if (preg_match("/[\^*+<>#]/", $question)==1) { $errors++; $errorlist .= "- La question doit être écrit en caractères alphanumériques.<br>"; }
   1065         if (preg_match("/[\^*+<>#]/", $answer1)==1) { $errors++; $errorlist .= "- La réponse 1 doit être écrit en caractères alphanumériques.<br>"; }
   1066         if (preg_match("/[\^*+<>#]/", $answer2)==1) { $errors++; $errorlist .= "- La réponse 2 doit être écrit en caractères alphanumériques.<br>"; }
   1067 		if (preg_match("/[\^*+<>#]/", $answer3)==1) { $errors++; $errorlist .= "- La réponse 3 doit être écrit en caractères alphanumériques.<br>"; }
   1068 		if (preg_match("/[\^*+<>#]/", $answer4)==1) { $errors++; $errorlist .= "- La réponse 4 doit être écrit en caractères alphanumériques.<br>"; }
   1069 
   1070 		
   1071         if ($errors == 0) { 
   1072            $update = doquery("INSERT INTO {{table}} SET id='',question='".addslashes($question)."',answer1='".addslashes($answer1)."',answer2='".addslashes($answer2)."',answer3='".addslashes($answer3)."',answer4='".addslashes($answer4)."'", "poll");
   1073            $page .='Le sondage vient d\'être posté!<br><br>Maintenant vous pouvez:<br><br><a href="index.php">» retourner au jeu</a><br>» Sélectionner une autre rubrique à administrer';  
   1074         } else {
   1075            $page .= 'Le sondage n\'a pas pu être posté, car les erreur(s) suivante(s) se sont produite(s):<br><br><span class="alerte">'.$errorlist.'</span><br><br>Maintenant vous pouvez:<br><br><a href="?do=addpoll">» retourner et réessayer</a><br><a href="index.php">» retourner au jeu</a>'; 
   1076         }            
   1077     }else{   
   1078              
   1079 $page .= '
   1080 <img src="images/jeu/puce4.gif" alt=""> <span class="mauve2"><b>Ajouter un sondage:</b></span><br><br>
   1081 
   1082 <form enctype="multipart/form-data" action="" method="post">
   1083 <table width="580" border="0" cellspacing="0" cellpadding="0">
   1084 <tr valign="top"><td style="width:110px">Question :</td><td><input type="text" name="question" size="20"><br><br></td></tr>
   1085 <tr valign="top"><td style="width:110px">Réponse 1 :</td><td><input type="text" name="answer1" size="20" maxlength="18"><br><br></td></tr>
   1086 <tr valign="top"><td style="width:110px">Réponse 2 :</td><td><input type="text" name="answer2" size="20" maxlength="18"><br><br></td></tr>
   1087 <tr valign="top"><td style="width:110px">Réponse 3 :</td><td><input type="text" name="answer3" size="20" maxlength="18"> ( si nécéssaire)<br><br></td></tr>
   1088 <tr valign="top"><td style="width:110px">Réponse 4 :</td><td><input type="text" name="answer4" size="20" maxlength="18"> ( si nécéssaire)<br><br></td></tr>
   1089 <tr valign="top"><td style="width:1px"></td><td>
   1090 
   1091 <div style="text-align: center"><input type="submit" name="submit" value="Créer"> <input type="button" value="Retour" OnClick="javascript:location=\'index.php\'"></div></td></tr>
   1092 </table>
   1093 </form><br><br>';
   1094 }  
   1095      
   1096 display($page, 'Editer le sondage');
   1097 
   1098 }
   1099 
   1100 
   1101 function addnewsletter() {// Edition des newsletters.
   1102 
   1103 global $controlrow, $page, $userrow;
   1104   
   1105     if (isset($_POST['submit'])) {
   1106    
   1107         extract($_POST);
   1108         $errors = 0;
   1109         $errorlist = "";
   1110 		if (trim($expediteur) == "") { $errors++; $errorlist .= "- L'adresse de l'expéditeur est exigée.<br>"; }
   1111 		if (! is_email($expediteur)) { $errors++; $errorlist .= "- L'adresse de l'expéditeur est invalide.<br>"; }
   1112         if (trim($sujet) == "") { $errors++; $errorlist .= "- Le sujet du mail est exigé.<br>"; }
   1113 	    if (trim($message) == "") { $errors++; $errorlist .= "- Le message du mail est exigé.<br>"; }
   1114         if (preg_match('/[<>\[\]]/',  $message)==1 && $format == "plain"){ $errors++; $errorlist .= "- Le message est incorrect au format texte.<br>"; }
   1115  
   1116         
   1117         if ($errors == 0) {
   1118 		if ($format == 'html') { 
   1119 	
   1120 		 $texte = new texte();
   1121 		
   1122 		 $body= $texte->ms_format($_POST['message']).'<br><br>A bientot sur <a href='.$controlrow['gameurl'].'>'.$controlrow['gamename'].'</a>'; 
   1123 		
   1124 		}else {
   1125 		
   1126 		 $body = $_POST['message']."\n \n A bientot sur ".$controlrow['gamename']."(".$controlrow['gameurl'].")"; 
   1127 		
   1128 		}
   1129    $usersquery = doquery("SELECT * FROM {{table}} WHERE verify=1", "users");  
   1130      
   1131    while ($usersrow=mysql_fetch_array($usersquery)){
   1132 	 
   1133        $to = $usersrow['email'];		   
   1134        $title = $controlrow['gamename'].' : '.$_POST['sujet']; 
   1135        $head  = 'De:'.$_POST['expediteur'].'\n'; 
   1136        $head .= "MIME-version: 1.0\n"; 
   1137        $head .= 'Content-type: text/'.$format.'; charset= iso-8859-1\n';
   1138        $body;
   1139 	   
   1140 	   mail($to,$title,$body,$head); 
   1141    }
   1142            $page .='La newsletter vient d\'être posté!<br><br>Maintenant vous pouvez:<br><br><a href="index.php">» retourner au jeu</a><br>» Sélectionner une autre rubrique à administrer';  
   1143         } else {
   1144            $page .= 'La newsletter n\'a pas pu être posté, car les erreur(s) suivante(s) se sont produite(s):<br><br><span class="alerte">'.$errorlist.'</span><br><br>Maintenant vous pouvez:<br><br><a href="?do=addnewsletter">» retourner et réessayer</a><br><a href="index.php">» retourner au jeu</a>'; 
   1145         }            
   1146     }else{
   1147 	
   1148 	if(isset($_POST['previsualiser'])&& $_POST['format'] == 'html') {
   1149 	$texte = new texte();
   1150 	$bbcode  = $texte->ms_format($_POST['message']);
   1151 	  
   1152     }elseif(isset($_POST['previsualiser'])&& $_POST['format'] == 'plain') {
   1153 	
   1154 	$bbcode = nl2br($_POST['message']);
   1155 	
   1156 	}else{
   1157 	$bbcode = $_POST['message'] = $_POST['sujet'] = null;
   1158 	}
   1159 	
   1160 $page .= '
   1161 <img src="images/jeu/puce4.gif" alt=""> <span class="mauve2"><b>Editer une newsletter:</b></span><br><br>
   1162 
   1163 <form enctype="multipart/form-data" action="" method="post" name="post">
   1164 <table width="580" border="0" cellspacing="0" cellpadding="0">
   1165 <tr valign="top"><td style="width:110px">Expéditeur:</td><td><input type="text" name="expediteur" size="20" value="'.$userrow['email'].'"><br><br></td></tr>
   1166 <tr valign="top"><td style="width:110px">Sujet du mail:</td><td><input type="text" name="sujet" size="40" value="'.$_POST['sujet'].'"><br><br></td></tr>
   1167 <tr valign="top"><td style="width:110px">Format:</td><td><input type="radio" value="plain" name="format">Texte <span class="alerte">(pas de BBcode)</span> <input type="radio" value="html" name="format" checked>Html<br><br></td></tr>
   1168 <tr valign="top"><td style="width:110px">BBcode:</td><td><select class="taille2" onchange="bbfontstyle(\'[color=\' + this.form.couleur.options[this.form.couleur.selectedIndex].value + \']\', \'[/color]\');this.selectedIndex=0;" name="couleur"><option style="color: black;" value="#000000">Couleur</option><option style="color: red;" value="#FF0000">Rouge</option><option style="color: orange;" value="#FFA500">Orange</option><option style="color: yellow;" value="#FFFF00">Jaune</option><option style="color: green;" value="#008000">Vert</option><option style="color: violet;" value="#EE82EE">Violet</option><option style="color: blue;" value="#0000FF">Bleu</option><option style="color: indigo;" value="#4B0082">Indigo</option></select> <select onchange="bbfontstyle(\'[size=\' + this.form.taille.options[this.form.taille.selectedIndex].value + \']\', \'[/size]\')" name="taille"> <option value="9">Très petit</option> <option value="10">Petit</option> <option value=3 selected>Normal</option> <option value="14">Grand</option> <option value="20">Très grand</option></select><input onclick="bbstyle(0)" type="button" value="G" class="taille2" style="font-weight: bold;"> <input onclick="bbstyle(2)" type="button" value="I" class="taille2" style="font-style: italic;"> <input onclick="bbstyle(4)" type="button" value="U" class="taille2" style="text-decoration: underline;"> <input onclick="bbstyle(6)" type="button" value="Url" class="taille2"> <input onclick="bbstyle(8)" type="button" value="Image" class="taille2"></td></tr>
   1169 <tr valign="top"><td style="width:110px"></td><td style="height:4px"></td></tr>
   1170 <tr valign="top"><td style="width:110px"></td><td><a href="javascript:emoticon(\':D\')"><img src="images/jeu/blog/smileys/sourire.gif" style="border:0"  alt=""></a> <a href="javascript:emoticon(\';\)\')"><img src="images/jeu/blog/smileys/clin.gif" style="border:0" alt=""></a> <a href="javascript:emoticon(\':\(\')"><img src="images/jeu/blog/smileys/triste.gif" style="border:0" alt=""></a> <a href="javascript:emoticon(\':surpris:\')"><img src="images/jeu/blog/smileys/yeuxrond.gif" style="border:0" alt=""></a> <a href="javascript:emoticon(\':o\')"><img src="images/jeu/blog/smileys/etonne.gif" style="border:0" alt=""></a> <a href="javascript:emoticon(\':confus:\')"><img src="images/jeu/blog/smileys/confus.gif" style="border:0" alt=""></a> <a href="javascript:emoticon(\':lol:\')"><img src="images/jeu/blog/smileys/lol.gif" style="border:0" alt=""></a> <a href="javascript:emoticon(\':fire:\')"><img src="images/jeu/blog/smileys/flame.gif" style="border:0" alt=""></a> <a href="javascript:emoticon(\':splif:\')"><img src="images/jeu/blog/smileys/petard.gif" style="border:0" alt=""></a> <a href="javascript:emoticon(\':bigsmile:\')"><img src="images/jeu/blog/smileys/green.gif" style="border:0" alt=""></a> <a href="javascript:emoticon(\':x\')"><img src="images/jeu/blog/smileys/mad.gif" style="border:0" alt=""></a> <a href="javascript:emoticon(\':roll:\')"><img src="images/jeu/blog/smileys/rolleyes.gif" style="border:0" alt=""></a> <a href="javascript:emoticon(\':bigcry:\')"><img src="images/jeu/blog/smileys/crying.gif" style="border:0" alt=""></a> <a href="javascript:emoticon(\':colere:\')"><img src="images/jeu/blog/smileys/colere.gif" style="border:0" alt=""></a> <a href="javascript:emoticon(\':P\')"><img src="images/jeu/blog/smileys/razz.gif" style="border:0" alt=""></a> <a href="javascript:emoticon(\'8\)\')"><img src="images/jeu/blog/smileys/lunettes.gif" style="border:0" alt=""></a> <a href="javascript:emoticon(\':\)\')"><img src="images/jeu/blog/smileys/sourire2.gif" style="border:0" alt=""></a> <a href="javascript:emoticon(\':oops:\')"><img src="images/jeu/blog/smileys/redface.gif" style="border:0" alt=""></a><br><br></td></tr>
   1171 <tr valign="top"><td style="width:110px">Message :</td><td><textarea name="message" rows="5" cols="54">'.$_POST['message'].'</textarea><br><br></td></tr>
   1172 <tr valign="top"><td style="width:110px"></td><td><input type="submit" name="submit" value="Envoyer"> <input type="button" value="Retour" OnClick="javascript:location=\'index.php\'"> <input type="submit" name="previsualiser" value="Prévisualiser"><br><br></td></tr>
   1173 <tr valign="top"><td style="width:110px"></td><td style="width:340px">'.$bbcode.'</td></tr>
   1174 </table>
   1175 </form><br><br>
   1176 ';
   1177 }
   1178 
   1179 display($page, 'Editer les newsletters');
   1180 
   1181 }
   1182 
   1183 
   1184 function editpartner() {// Edition des partenaires.
   1185 
   1186 global $page;
   1187     
   1188     if (isset($_POST['submit'])) {
   1189         
   1190         extract($_POST);
   1191         $errors = 0;
   1192         $errorlist = "";
   1193 		if (trim($name) == "") { $errors++; $errorlist .= "- Le nom du site est exigé.<br>"; }
   1194         if (trim($url) == "") { $errors++; $errorlist .= "- L'adresse du site est exigée.<br>"; }
   1195 		if (trim($description) == "") { $errors++; $errorlist .= "- La description du site est exigée.<br>"; }
   1196 		if (preg_match("/[\^*+<>?#]/", $name)==1) { $errors++; $errorlist .= "- Le nom du site doit être écrit en caractères alphanumériques.<br>"; }
   1197         if (preg_match("/[\^*+<>#]/", $url)==1) { $errors++; $errorlist .= "- L'adresse du site est incorrecte.<br>"; }
   1198         if (preg_match("/[\^*+<>?#\"']/", $description)==1) { $errors++; $errorlist .= "- La description du site doit être écrit en caractères alphanumériques.<br>"; }
   1199         if (preg_match("/[\^*+<>#\"']/", $button)==1) { $errors++; $errorlist .= "- L'adresse du bouton du site est incorrect.<br>"; }
   1200 
   1201         if ($errors == 0) { 
   1202            $update = doquery("INSERT INTO {{table}} SET id='',name='$name', description='$description', url='$url', button='$button'", "partners");
   1203            $page .='Le partenaire '.$name.' vient d\'être ajouté!<br><br>Maintenant vous pouvez:<br><br><a href="index.php">» retourner au jeu</a><br>» Sélectionner une autre rubrique à administrer';  
   1204         } else {
   1205            $page .= 'Le partenaire n\'a pas pu être ajouté, car les erreur(s) suivante(s) se sont produite(s):<br><br><span class="alerte">'.$errorlist.'</span><br><br>Maintenant vous pouvez:<br><br><a href="?do=editpartner">» retourner et réessayer</a><br><a href="index.php">» retourner au jeu</a>'; 
   1206         }          
   1207     }else{  
   1208           
   1209 $page .= '
   1210 <img src="images/jeu/puce4.gif" alt=""> <span class="mauve2"><b>Editer les partenaires:</b></span><br><br>
   1211 
   1212 <form enctype="multipart/form-data" action="" method="post">
   1213 <table width="580" border="0" cellspacing="0" cellpadding="0">
   1214 <tr valign="top"><td style="width:110px">Nom du site:</td><td><input type="text" name="name" size="20"><br><br></td></tr>
   1215 <tr valign="top"><td style="width:110px">URL du site:</td><td><input type="text" name="url" size="20"> avec (http://)<br><br></td></tr>
   1216 <tr valign="top"><td style="width:110px">URL du bouton:</td><td><input type="text" name="button" size="20"> taille: 81x31<br><br></td></tr>
   1217 <tr valign="top"><td style="width:110px">Description:</td><td><textarea name="description" rows="5" cols="54"></textarea><br><br></td></tr>
   1218 <tr valign="top"><td style="width:1px"></td><td>
   1219 
   1220 <div style="text-align: center"><input type="submit" name="submit" value="Ajouter"> <input type="button" value="Retour" OnClick="javascript:location=\'index.php\'"></div></td></tr>
   1221 </table>
   1222 </form><br><br>';
   1223 } 
   1224     
   1225 display($page, 'Editer les partenaires');
   1226   
   1227 } 
   1228 
   1229 
   1230 function editcopyright() {// Edition du copyright.
   1231 
   1232 global $controlrow, $page;
   1233     
   1234     if (isset($_POST['submit'])) {
   1235         
   1236         extract($_POST);
   1237         $errors = 0;
   1238         $errorlist = "";
   1239 		if (trim($copyright) == "") { $errors++; $errorlist .= "- Le copyright est obligatoire.<br>"; }
   1240         if (preg_match('/[<>\[\]]/', $copyright)==1) { $errors++; $errorlist .= "- Le copyright doit être écrit en caractères alphanumériques.<br>"; }
   1241 
   1242        if ($errors == 0) { 
   1243            $update = doquery("UPDATE {{table}} SET copyright='".addslashes($copyright)."'", "control");
   1244            $page .='Le copyright vient d\'être modifié!<br><br>Maintenant vous pouvez:<br><br><a href="index.php">» retourner au jeu</a><br>» Sélectionner une autre rubrique à administrer';  
   1245         } else {
   1246            $page .= 'Le copyright n\'a pas pu être modifié, car les erreur(s) suivante(s) se sont produite(s):<br><br><span class="alerte">'.$errorlist.'</span><br><br>Maintenant vous pouvez:<br><br><a href="?do=editcopyright">» retourner et réessayer</a><br><a href="index.php">» retourner au jeu</a>'; 
   1247         }             
   1248     }else{  
   1249  
   1250 $page .= '
   1251 <img src="images/jeu/puce4.gif" alt=""> <span class="mauve2"><b>Editer le copyright:</b></span><br><br>
   1252 
   1253 <form enctype="multipart/form-data" action="" method="post">
   1254 <table width="580" border="0" cellspacing="0" cellpadding="0">
   1255 <tr valign="top"><td style="width:110px">Nouveau: </td><td><input type="text" name="copyright" size="40" value=""><br>Merci de laisser la mention "© RPGillusion.net", pour le bien de la communauté Open Source(GNU/ GPL).<br><br></td></tr>
   1256 <tr valign="top"><td style="width:110px">Ancien: </td><td><input type="text" name="ancien" size="40" value="'.$controlrow['copyright'].'"><br><br></td></tr>
   1257 <tr valign="top"><td style="width:1px"></td><td>
   1258 
   1259 <div style="text-align: center"><input type="submit" name="submit" value="Valider"> <input type="button" value="Retour" OnClick="javascript:location=\'index.php\'"></div></td></tr>
   1260 </table>
   1261 </form><br><br>';
   1262 }
   1263 
   1264 display($page, 'Editer le copyright');
   1265 
   1266 }  
   1267 
   1268 
   1269 function editbabblebox() {// Edition du t'chat (vider).    
   1270 
   1271 global $page;
   1272 
   1273   if (isset($_POST['submit'])) {
   1274         
   1275 	$delete = doquery("DELETE FROM {{table}}", "babble");
   1276            
   1277     $page .='Le t\'chat vient d\'être vidé!<br><br>Maintenant vous pouvez:<br><br><a href="index.php">» retourner au jeu</a><br>» Sélectionner une autre rubrique à administrer';  
   1278          
   1279     }else{ 
   1280 	
   1281 $page .= '
   1282 	
   1283 <img src="images/jeu/puce4.gif" alt=""> <span class="mauve2"><b>Editer le copyright:</b></span><br><br>Pour vider le t\'chat il vous suffit de cliquer sur le bouton nommé "vider".<br><br><span class="alerte">Note:</span> Cette action est irréversible.<br><br>
   1284 
   1285 <form enctype="multipart/form-data" action="" method="post">
   1286 <div style="text-align: center"><input type="submit" name="submit" value="Vider"> <input type="button" value="Retour" OnClick="javascript:location=\'index.php\'"></div>
   1287 </form><br><br> 
   1288 ';
   1289 }	
   1290 
   1291 display($page, 'Editer le t\'chat (vider)');
   1292 
   1293 }
   1294 
   1295 
   1296 function editmenuusers() {// Edition du contenu du menu users.
   1297 
   1298 global $page;
   1299 
   1300 $menuquery = doquery("SELECT * FROM {{table}} WHERE id='1' LIMIT 1", "menu_users");
   1301 $menurow = mysql_fetch_array($menuquery);
   1302 
   1303     if (isset($_POST['submit'])) {
   1304         
   1305         extract($_POST);
   1306         $errors = 0;
   1307         $errorlist = "";
   1308 		if (trim($content) == "") { $errors++; $errorlist .= "- Le contenu du menu est exigé.<br>"; }
   1309          
   1310         if ($errors == 0) { 
   1311            $update = doquery("UPDATE {{table}} SET content='$content' WHERE id='1' LIMIT 1", "menu_users");
   1312 		   $page .='Le contenu vient d\'être posté!<br><br>Maintenant vous pouvez:<br><br><a href="index.php">» retourner au jeu</a><br>» Sélectionner une autre rubrique à administrer';  
   1313         } else {
   1314            $page .= 'La contenu n\'a pas pu être posté, car les erreur(s) suivante(s) se sont produite(s):<br><br><span class="alerte">'.$errorlist.'</span><br><br>Maintenant vous pouvez:<br><br><a href="?do=editmenuusers">» retourner et réessayer</a><br><a href="index.php">» retourner au jeu</a>'; 
   1315         }            
   1316     }else{	
   1317           
   1318 $page .= '
   1319 <img src="images/jeu/puce4.gif" alt=""> <span class="mauve2"><b>Editer le menu users:</b></span><br><br>Vous pouvez ajouter dans le menu "Users" des publicités ou d\'autres contenus Un minimum de connaissance en language HTML est requis en cas d\'ajout d\'une publucité.<br><br>
   1320 
   1321 <form enctype="multipart/form-data" action="" method="post" name="post">
   1322 <table width="580" border="0" cellspacing="0" cellpadding="0">
   1323 <tr valign="top"><td style="width:110px">Le contenu:</td><td><textarea name="content" rows="5" cols="54">'.$menurow['content'].'</textarea><br><br></td></tr>
   1324 <tr valign="top"><td style="width:110px"></td><td><input type="submit" name="submit" value="Envoyer"> <input type="button" value="Retour" OnClick="javascript:location=\'index.php\'"><br><br></td></tr>
   1325 </table>
   1326 </form><br><br>
   1327 ';
   1328 } 
   1329    
   1330 display($page, 'Editer le menu users');
   1331 
   1332 }
   1333 
   1334 
   1335 ?>