Exemple #1
0
<?php

header('Content-Type: text/html; charset=iso-8859-1');
require_once "easyem_functions.php";
$xpath = new DOMXPath(getEMComposantVariable());
if ($_POST["type"] == 'composant') {
    $composants = $xpath->query("/Elements/Element[@nom='" . $_POST["nom"] . "' and @emplacement='" . $_POST["emplacement"] . "']");
}
$xpath = new DOMXPath(getComposant());
if ($_POST["type"] == 'compotroll') {
    $composants = $xpath->query("/Elements/Element[contains(child::text(),'" . $_POST["nom"] . "') and @emplacement='" . $_POST["emplacement"] . "']");
}
if ($_POST["type"] == 'recherchecompotroll') {
    if ($_POST["famille"]) {
        $_POST["famille"] = '="' . $_POST["famille"] . '"';
    }
    if ($_POST["nom"]) {
        $_POST["nom"] = '="' . $_POST["nom"] . '"';
    }
    $emplacements = explode("|", $_POST["emplacement"]);
    unset($emplacements[count($emplacements) - 1]);
    $stremplacement = "(@emplacement";
    foreach ($emplacements as $i => $emplacement) {
        $stremplacement .= $i != count($emplacements) - 1 ? "='{$emplacement}' or @emplacement" : "='{$emplacement}') and ";
    }
    if (!$emplacements) {
        $stremplacement = "not(@emplacement) and ";
    }
    $composants = $xpath->query('/Elements/Element[' . $stremplacement . '@famille' . $_POST["famille"] . ' and @monstre' . $_POST["nom"] . ' and @niveau>="' . intval($_POST["min"]) . '" and @niveau<="' . intval($_POST["max"]) . '"]');
}
foreach ($composants as $composant) {
function updateTanieresComposant()
{
    $retour = "";
    $dom = new DOMDocument("1.0", "UTF-8");
    $dom->preserveWhiteSpace = false;
    $root = $dom->createElement("Elements");
    $dom->appendChild($root);
    $xpath = new DOMXPath(getEMRecettes());
    foreach ($xpath->query("/Recettes/Recette/composant[not(@mundidey)]") as $composantFixe) {
        $arraySortilege[] = $composantFixe;
        $patternNomFixe[] = $composantFixe->getAttribute("nom");
    }
    $xpath = new DOMXPath(getEMComposantVariable());
    foreach ($xpath->query("/Elements/Element") as $composantFixe) {
        $arrayFixe[] = $composantFixe;
        $patternNomMundidey[] = $composantFixe->getAttribute("nom");
    }
    $xpath = new DOMXPath(getComposants());
    foreach ($xpath->query("/Elements/Element") as $composant) {
        if ($composant->nodeValue) {
            $composant = getSortilegeNameByComposant(implode("|", $patternNomFixe), $arraySortilege, $composant);
            $composant = getFixeByComposant(implode("|", $patternNomMundidey), $arrayFixe, $composant);
            $root->appendChild($dom->importNode($composant, true));
        }
    }
    $dom->formatOutput = true;
    $dom->save("em/composant_tanieres.xml");
}