/ggc/fonction_parse.php

https://github.com/relaismago/outils · PHP · 82 lines · 54 code · 28 blank · 0 comment · 4 complexity · edcf4cff3005712102663e695a496cf5 MD5 · raw file

  1. <?php
  2. function parseCompGGC( $data, $bdd, $db_link ){
  3. $texte = addslashes(trim($data["copiercoller"]));
  4. if ( isEventInDb( $data["idLanceur"], $data, $bdd, $db_link ) )
  5. return "La compétence ". $data["nom"]. " à ". $data["date"]. " pour la cible " .$data["idCible"]. " a déja été enregistré !";
  6. else
  7. mysql_db_query($bdd,"INSERT INTO `ggc_event` (`id_event`, `id_lanceur` , `id_cible` , `type` , `nom` , `texte` , `date` ) VALUES (NULL, '" .intval($data["idLanceur"]). "', '" .intval($data["idCible"]). "', '" .addslashes($data["type"]). "', '" .addslashes($data["nom"]). "', '$texte', '" .addslashes($data["date"]). "' );",$db_link) or die(mysql_error());
  8. return "Compétence ajouté pour votre GGC !";
  9. }
  10. function parseSortGGC( $data, $bdd, $db_link ){
  11. $texte = addslashes(trim($data["copiercoller"]));
  12. if ( isEventInDb( $data["idLanceur"], $data, $bdd, $db_link ) )
  13. return "Le Sortilège ". $data["nom"]. " à ". $data["date"]. " pour la cible " .$data["idCible"]. " a déja été enregistré !";
  14. else
  15. mysql_db_query($bdd,"INSERT INTO `ggc_event` (`id_event`, `id_lanceur` , `id_cible` , `type` , `nom` , `texte` , `date` ) VALUES (NULL, '" .intval($data["idLanceur"]). "', '" .intval($data["idCible"]). "', '" .addslashes($data["type"]). "', '" .addslashes($data["nom"]). "', '$texte', '" .addslashes($data["date"]). "' );",$db_link) or die(mysql_error());
  16. return "Sortilège ajouté pour votre GGC !";
  17. }
  18. function addTreasure( $data, $bdd, $db_link ){
  19. $text = trim(preg_replace( "#.+\D(\d+ - .+)Le trésor se trouve à vos pieds en.+#", "$1", str_replace( "<|>", "", $data) ));
  20. $id = preg_replace( "#(\d+) - .+#", "$1", $text );
  21. $nom = preg_replace( "#.+ - (.+) \(.*\)#", "$1", $text );
  22. $desc = preg_replace( "#.+\((.*)\)#", "$1", $text );
  23. mysql_db_query($bdd,"INSERT INTO `ggc_tresor` (`id_tresor`, `nom` , `desc`) VALUES (" .intval($id). ", '" .addslashes($nom). "', '" .addslashes($desc). "');",$db_link) or die(mysql_error());
  24. }
  25. function addTrap( $data, $bdd, $db_link ){
  26. $text = trim(preg_replace( "#.+(Vous avez posé un Piège à .+ Maîtrise Magique\s+est de \d+).+#", "$1", str_replace( "<|>", "", $data["copiercoller"])));
  27. $type = (preg_match( "#.+Feu.+#", $text )) ? "Feu" : "Glue";
  28. $texte = "Piège posé par <a class=\"AllLinks\" onclick=\"EnterPJView(" .intval($data["idLanceur"]). ",750,550)\" href=\"javascript:\">" .intval($data["idLanceur"]). "</a> MM=".preg_replace( "#.+Maîtrise Magique\s+est de (\d+)#", "$1", $text );
  29. $X = preg_replace( "#.+X = (-?\d+).+#", "$1", $text );
  30. $Y = preg_replace( "#.+Y = (-?\d+).+#", "$1", $text );
  31. $N = preg_replace( "#.+N = (-?\d+).+#", "$1", $text );
  32. mysql_db_query($bdd,"INSERT INTO `ggc_piege` (`id_piege`, `id_troll`, `type`, `texte`, `date`, `X`, `Y`, `N`) VALUES (NULL, '".intval($data["idLanceur"])."', '$type', '" .addslashes($texte). "', '" .addslashes($data["date"]). "', '$X', '$Y', '$N');",$db_link) or die(mysql_error());
  33. }
  34. function removeTrap( $data, $bdd, $db_link ){
  35. $text = trim(preg_replace( "#.+(a déclenché votre Piège à .+\d\.).+#", "$1", str_replace( "<|>", "", $data["trapInfo"])));
  36. $type = (preg_match( "#.+Feu.+#", $text )) ? "Feu" : "Glue";
  37. $X = preg_replace( "#.+X =\s+(-?\d+).+#", "$1", $text );
  38. $Y = preg_replace( "#.+Y =\s+(-?\d+).+#", "$1", $text );
  39. $N = preg_replace( "#.+N =\s+(-?\d+).+#", "$1", $text );
  40. mysql_db_query($bdd,"DELETE FROM `ggc_piege` WHERE `ggc_piege`.`id_troll` = ".intval($data["idLanceur"])." AND `ggc_piege`.`type` = '$type' AND `ggc_piege`.`X` = $X AND `ggc_piege`.`Y` = $Y AND `ggc_piege`.`N` = $N;",$db_link) or die(mysql_error());
  41. }
  42. function isEventInDb( $id_lanceur, $data, $bdd, $db_link ){
  43. $date = preg_split( "# #", $data["date"] );
  44. $dmY = preg_split( "#/#", $date[0] );
  45. $hms = preg_split( "#:#", $date[1] );
  46. $date = mktime( $hms[0], $hms[1], $hms[2], $dmY[1], $dmY[0], $dmY[2] );
  47. $sql = "SELECT date FROM ggc_event e WHERE id_lanceur = '" .intval($id_lanceur). "' ";
  48. $sql .= "AND nom = '" .addslashes($data["nom"]). "' ";
  49. $sql .= "AND UNIX_TIMESTAMP(STR_TO_DATE( (SELECT date FROM ggc_event WHERE id_event = e.id_event), '%d/%m/%Y %H:%i:%s' )) - '" .$date. "' > -10 AND UNIX_TIMESTAMP(STR_TO_DATE( (SELECT date FROM ggc_event WHERE id_event = e.id_event), '%d/%m/%Y %H:%i:%s' )) - '" .$date. "' < 10 ";
  50. $sql .= "AND id_cible = '" .intval($data["idCible"]). "';";
  51. $result = mysql_db_query($bdd,$sql,$db_link) or die(mysql_error());
  52. return mysql_num_rows($result);
  53. }
  54. ?>