public function set($var, $val, $isSave = false) { $this->isModif = true; foreach (formxTools::domSearch(formxTools::domGetRoot($this->dom), 'ITEM') as $item) { if ($item->getAttribute('id') == $var) { try { formxTools::domSetTagValue($item, 'Val', $val); if ($isSave) { $this->save(); } return true; } catch (Exception $e) { eko("attention"); } } } //eko('pas trouve'); //si on est encore là c'est qu'on a pas trouvé la balise.on va la créer //TODO découpler ci dessous $bal = $this->dom->createElement('ITEM'); $this->dom->getElementsByTagName('GLOBVARS')->item(0)->appendChild($bal); $bal->setAttribute('id', $var); formxTools::createTagValue($bal, 'Val', $val, $this->dom); if ($isSave) { $this->save(); } return true; }
public function makeBalVal($item, $bal = 'Val', $val, $xmlobj = '') { if (!$xmlobj) { $xmlobj = $this->XMLDOM; } formxTools::createTagValue($item, $bal, $val, $xmlobj); return; //On regarde si la balise existe $hasValBal = ''; //eko("je set ".$item->getAttribute("id")." à ".$val); foreach ($item->childNodes as $child) { if ($child->nodeName == $bal) { $hasValBal = 'y'; break; } } //si elle existe pas on la crée if (!$hasValBal) { $BalVal = $xmlobj->createElement($bal); $item->appendChild($BalVal); } //suppression des caracteres interdits $conv = array('§' => ''); $val = strtr($val, $conv); //on regle le pb du caractere & $val = preg_replace("#&(?!(amp|lt|gt);)#U", "&", $val); //On donne la bonne valeur à la balise $item->getElementsByTagName($bal)->item(0)->nodeValue = utf8_encode($val); //eko("nouvelle valeur: ".$item->getElementsByTagName($bal)->item(0)->nodeValue); }