static function getinstances($idformx, $values = '', $filtre = "FX_getInstances", $date1 = "", $date2 = "") { formxSession::getInstance()->addErreur("getinstances est une fonction obsolette"); if ($date1) { $date1 = clFoRmXtOoLs::anydate2datetime($date1); } if ($date2) { $date2 = clFoRmXtOoLs::anydate2datetime($date2); } if (!$filtre) { $filtre = "FX_getInstances"; } $param = array(); if ($date1 && $date2) { $param['cwdate'] = " AND dt_modif >= '{$date1}' and dt_creation <= '{$date2}' "; } elseif ($date1) { $param['cwdate'] = " AND dt_modif >= '{$date1}' "; } elseif ($date2) { $param['cwdate'] = " AND dt_modif <= '{$date2}' "; } else { $param['cwdate'] = " AND 1=1 "; } if ($values) { if (!is_array($values)) { $values = array($values); } } if (is_array($idformx)) { $param['listeidformx'] = "'" . implode("','", $idformx) . "' AND"; // $param['cwdate'] = " AND " . $para['cwdate']; } else { $param['listeidformx'] = "'" . $idformx . "' AND"; // $param['cwdate'] = " AND " . $para['cwdate']; } //print affTab ( $param ) ; return ; $req = new clResultQuery(); if (defined('FX_INSTANCES')) { $param['table'] = FX_INSTANCES; } else { $param['table'] = TABLEFORMX; } $res = $req->Execute("Fichier", $filtre, $param, "ResultQuery"); $nb = $res['INDIC_SVC'][2]; //print affTab ( $res['INDIC_SVC'] ) ; if ($nb == 0) { return array(); } $ret = array(); $ret['ids'] = array(); $ret['id_instance'] = array(); $ret['dt_creation'] = array(); $ret['dt_modif'] = array(); $ret['idformx'] = array(); $ret['libelle'] = array(); $ret['status'] = array(); $ret['author'] = array(); for ($i = 0; $i < $nb; $i++) { $ret['ids'][$i] = $res['ids'][$i]; $ret['id_instance'][$i] = $res['id_instance'][$i]; $ret['dt_creation'][$i] = $res['dt_creation'][$i]; $ret['dt_modif'][$i] = $res['dt_modif'][$i]; $ret['idformx'][$i] = $res['idformx'][$i]; $ret['libelle'][$i] = $res['libelle'][$i]; $ret['status'][$i] = $res['status'][$i]; $ret['author'][$i] = $res['author'][$i]; $newInstance = new clFoRmX($res['ids'][$i], 'NO_POST_THREAT'); $newInstance->loadInstance($res['id_instance'][$i]); if (!$values) { $values = $newInstance->getAllItems(); } foreach ($values as $val) { if (!isset($ret[$val])) { $ret[$val] = array(); } $ret[$val][$i] = utf8_decode($newInstance->getFormVar($val)); } unset($newInstance); } $ret['INDIC_SVC'][2] = $nb; return $ret; }
function getAllValuesFromFormx($idformx, $values = '', $ids = '', $options = "") { if (!$ids) { $ids = $this->ids; } if ($values) { if (!is_array($values)) { $values = array($values); } } $array_oef = array(); if (ereg("idinstance", $options)) { $res['id_instance'][0] = $idformx; $nb = 1; } else { $base = $this->getSession()->getBase(); $table = $this->getSession()->getTable(); $obReq = $this->getSession()->getObjRequete('', $base, $table); return $obReq->getGen(" idformx = '{$idformx}' AND ids = '{$ids}' ORDER BY dt_modif DESC ", 'resultquery'); /* $req = new clResultQuery ; $param = array(); $param['table']=$this->session->tableInstances; $param['idformx']=$idformx; $param['ids']=$ids; $res = $req -> Execute ( "Fichier", "FX_getValuesInstance", $param, "ResultQuery" ) ; $nb = $res['INDIC_SVC'][2]; if ( $nb == 0 ) return array("INDIC_SVC" => array( 2 => 0 ) ); * */ } $ret = array(); for ($i = 0; $i < $nb; $i++) { $newInstance = new clFoRmX($this->ids, 'NO_POST_THREAT'); $r = $newInstance->loadInstance($res['id_instance'][$i]); if (!$r) { return array("INDIC_SVC" => array(2 => 0)); } if (!$values) { $values = $newInstance->getAllItems(); //eko("ttval"); } else { //eko($values); } foreach ($values as $val) { if (!isset($ret[$val])) { $ret[$val] = array(); } $ret[$val][$i] = utf8_decode($newInstance->getFormVar($val)); } if (ereg("moreinfos", $options, $array_oef)) { $ret["infosmore_auteur"][$i] = $res['author'][$i]; $date_creation = new clDate($res['dt_creation'][$i]); $ret["infosmore_dt_creation"][$i] = $date_creation->getDateTextFull(); } } unset($newInstance); $ret['INDIC_SVC'][2] = $nb; return $ret; }
function Creation_Dossier_AEV_Synthese($formx) { global $session; global $options; global $patient; //recuperation de toutes les variables du formulaire dans un tableau pour que ça aille plus vite $dom = $formx->XMLDOM; $listItems = $dom->getElementsByTagName('ITEM'); foreach ($listItems as $item) { $nomItem = $item->getAttribute('id'); $valItem = $item->getElementsByTagName('Val')->item(0)->nodeValue; $tabValeurs[$nomItem] = utf8_decode($valItem); } //------------------------------------------- //fonctions qui utililsent DOM //------------------------------------------- function createEtape($objFormx, $idEtape, $libelleEtape, $tabAttributs) { $neudFormx = $objFormx->XMLDOM->getElementsByTagName('FORMX')->item(0); $etapeTemp = $objFormx->XMLDOM->createElement('ETAPE'); $etape = $neudFormx->appendChild($etapeTemp); foreach ($tabAttributs as $key => $value) { $etape->setAttribute($key, utf8_encode($value)); } $libelle = $objFormx->XMLDOM->createElement('Libelle', utf8_encode($libelleEtape)); $etape->appendChild($libelle); return $etape; } function createItem($objFormx, $etape, $id, $libelle, $type, $val) { $item = $objFormx->XMLDOM->createElement('ITEM'); $item = $etape->appendChild($item); //Atributs de l'item $item->setAttribute('id', $id); $item->setAttribute('type', $type); //libelle de l'item $libelle = $objFormx->XMLDOM->createElement('Libelle', utf8_encode($libelle)); $item->appendChild($libelle); //creation et affectation de la balise Val $val = $objFormx->XMLDOM->createElement('Val', utf8_encode($val)); $item->appendChild($val); } //----------------------------------- //Exemples d'utilisation //----------------------------------- //Creation d'un nouveau formulaire de type 'coin' $ids = $formx->getIDS(); // On va supprimer tous les fichiers Dossier_AEV_Synthese de la table formx $requete = new clRequete(FX_BDD, TABLEFORMX, $param); $sql = $requete->delRecord("idformx='Dossier_AEV_Synthese' and ids='" . $ids . "'"); $formx2 = new clFoRmX($ids, 'NO_POST_THREAT'); $formx2->loadForm('Dossier_AEV_Synthese'); //ajout d 'une étape $etape = createEtape($formx2, '1', 'DOSSIER DU PATIENT ' . $tabValeurs['Val_IDENT_NomPatient'] . ' ' . $tabValeurs['Val_IDENT_PrenomPatient'] . ' DONT LE NUMERO DE SEJOUR EST:' . $tabValeurs['Val_IDENT_SEJPatient'], array('etat' => 'fini')); createItem($formx2, $etape, 'id1', '<span style="color:green;">Nom</span>', 'TXT', $tabValeurs['Val_IDENT_NomPatient']); createItem($formx2, $etape, 'id2', '<span style="color:green;">Prénom</span>', 'TXT', $tabValeurs['Val_IDENT_PrenomPatient']); createItem($formx2, $etape, 'id4', '<span style="color:green;">Date de naissance</span>', 'TXT', $tabValeurs['Val_IDENT_DateNPat2']); createItem($formx2, $etape, 'id5', '<span style="color:green;">Age</span>', 'TXT', $tabValeurs['Val_IDENT_AgePat']); if ($patient->getSexe() == "F") { createItem($formx2, $etape, 'id6', '<span style="color:green;">Sexe</span>', 'TXT', "Féminin"); } else { createItem($formx2, $etape, 'id6', '<span style="color:green;">Sexe</span>', 'TXT', "Masculin"); } createItem($formx2, $etape, 'id7', '<span style="color:green;">Adresse</span>', 'TXT', $tabValeurs['Val_IDENT_AdressePat']); createItem($formx2, $etape, 'id8', '<span style="color:green;">Code postal</span>', 'TXT', $tabValeurs['Val_IDENT_CodePPat']); createItem($formx2, $etape, 'id9', '<span style="color:green;">Ville</span>', 'TXT', $tabValeurs['Val_IDENT_VillePat']); createItem($formx2, $etape, 'id10', '<span style="color:green;">Telephone</span>', 'TXT', $tabValeurs['Val_IDENT_TelPat']); createItem($formx2, $etape, 'id11', '<span style="color:green;">IDU</span>', 'TXT', $tabValeurs['Val_IDENT_IDUPatient']); createItem($formx2, $etape, 'id12', '<span style="color:green;">ILP</span>', 'TXT', $tabValeurs['Val_IDENT_ILPPatient']); createItem($formx2, $etape, 'id13', '<span style="color:green;">SEJ</span>', 'TXT', $tabValeurs['Val_IDENT_SEJPatient']); createItem($formx2, $etape, 'id14', '<span style="color:green;">Etablissement</span>', 'TXT', $tabValeurs['Val_Etablissement_Etablissement']); createItem($formx2, $etape, 'd1', '', 'TXT', ''); createItem($formx2, $etape, 'd2', '', 'TXT', ''); createItem($formx2, $etape, 'd3', '', 'TXT', ''); // On selectionne tous les formulaires du patient en fonction de l'IDU (ids) $requete = new clResultQuery(); unset($paramRq); $paramRq["ids"] = $ids; $paramRq["base"] = FX_BDD; $formulaireAEV = $requete->Execute("Fichier", "getAllFormulaireAEVfromIDS", $paramRq, "ResultQuery"); // On parcourt la liste des formulaires for ($i = 0; $i < $formulaireAEV["INDIC_SVC"][2]; $i++) { $idstemp = $formx->getIDS(); $tabValeurs = array(); $formxtemp = new clFoRmX($idstemp, 'NO_POST_THREAT'); $formxtemp->loadInstance($formulaireAEV["id_instance"][$i]); $domtemp = $formxtemp->XMLDOM; $listItemstemp = $domtemp->getElementsByTagName('ITEM'); foreach ($listItemstemp as $itemtemp) { $nomItemtemp = $itemtemp->getAttribute('id'); $valItemtemp = $itemtemp->getElementsByTagName('Val')->item(0)->nodeValue; $tabValeurstemp[$nomItemtemp] = utf8_decode($valItemtemp); } // En fonction des formulaires, on crée les items // On sélectionne aussi les formulaires en fonction du séjour if ($tabValeurstemp["Val_IDENT_SEJPatient"] == $patient->getNSej()) { //file 1 = file 2 = file 19 = file 20 //file 3 = file 10 = file 11 = file 12 //file 4 = file 5 = file 6 = file 7 = file 8 = file 22 = file 23 = file 24 = file 25 = file 26 //file 9 = file 21 = file 27 //file 13 = file 14 = file 15 = file 16 = file 17 = file 18 //file 28 (without message) = file 29 (without message) //file 30 () = //file 31 () = file 32 () = file 36 () //file 33 () = file 35 () //file 34 () if ($formulaireAEV["idformx"][$i] == "Dossier_AEV_Situation_1") { include "Creation_Dossier_AEV_Situation_1_Synthese.php"; } if ($formulaireAEV["idformx"][$i] == "Dossier_AEV_Situation_2") { include "Creation_Dossier_AEV_Situation_2_Synthese.php"; } if ($formulaireAEV["idformx"][$i] == "Dossier_AEV_Situation_3") { include "Creation_Dossier_AEV_Situation_3_Synthese.php"; } if ($formulaireAEV["idformx"][$i] == "Dossier_AEV_Situation_4") { include "Creation_Dossier_AEV_Situation_4_Synthese.php"; } if ($formulaireAEV["idformx"][$i] == "Dossier_AEV_Situation_5") { include "Creation_Dossier_AEV_Situation_5_Synthese.php"; } if ($formulaireAEV["idformx"][$i] == "Dossier_AEV_Situation_6") { include "Creation_Dossier_AEV_Situation_6_Synthese.php"; } if ($formulaireAEV["idformx"][$i] == "Dossier_AEV_Situation_7") { include "Creation_Dossier_AEV_Situation_7_Synthese.php"; } if ($formulaireAEV["idformx"][$i] == "Dossier_AEV_Situation_8") { include "Creation_Dossier_AEV_Situation_8_Synthese.php"; } if ($formulaireAEV["idformx"][$i] == "Dossier_AEV_Situation_9") { include "Creation_Dossier_AEV_Situation_9_Synthese.php"; } if ($formulaireAEV["idformx"][$i] == "Dossier_AEV_Situation_10") { include "Creation_Dossier_AEV_Situation_10_Synthese.php"; } if ($formulaireAEV["idformx"][$i] == "Dossier_AEV_Situation_11") { include "Creation_Dossier_AEV_Situation_11_Synthese.php"; } if ($formulaireAEV["idformx"][$i] == "Dossier_AEV_Situation_12") { include "Creation_Dossier_AEV_Situation_12_Synthese.php"; } if ($formulaireAEV["idformx"][$i] == "Dossier_AEV_Situation_13") { include "Creation_Dossier_AEV_Situation_13_Synthese.php"; } if ($formulaireAEV["idformx"][$i] == "Dossier_AEV_Situation_14") { include "Creation_Dossier_AEV_Situation_14_Synthese.php"; } if ($formulaireAEV["idformx"][$i] == "Dossier_AEV_Situation_15") { include "Creation_Dossier_AEV_Situation_15_Synthese.php"; } if ($formulaireAEV["idformx"][$i] == "Dossier_AEV_Situation_16") { include "Creation_Dossier_AEV_Situation_16_Synthese.php"; } if ($formulaireAEV["idformx"][$i] == "Dossier_AEV_Situation_17") { include "Creation_Dossier_AEV_Situation_17_Synthese.php"; } if ($formulaireAEV["idformx"][$i] == "Dossier_AEV_Situation_18") { include "Creation_Dossier_AEV_Situation_18_Synthese.php"; } if ($formulaireAEV["idformx"][$i] == "Dossier_AEV_Situation_19") { include "Creation_Dossier_AEV_Situation_19_Synthese.php"; } if ($formulaireAEV["idformx"][$i] == "Dossier_AEV_Situation_20") { include "Creation_Dossier_AEV_Situation_20_Synthese.php"; } if ($formulaireAEV["idformx"][$i] == "Dossier_AEV_Situation_21") { include "Creation_Dossier_AEV_Situation_21_Synthese.php"; } if ($formulaireAEV["idformx"][$i] == "Dossier_AEV_Situation_22") { include "Creation_Dossier_AEV_Situation_22_Synthese.php"; } if ($formulaireAEV["idformx"][$i] == "Dossier_AEV_Situation_23") { include "Creation_Dossier_AEV_Situation_23_Synthese.php"; } if ($formulaireAEV["idformx"][$i] == "Dossier_AEV_Situation_24") { include "Creation_Dossier_AEV_Situation_24_Synthese.php"; } if ($formulaireAEV["idformx"][$i] == "Dossier_AEV_Situation_25") { include "Creation_Dossier_AEV_Situation_25_Synthese.php"; } if ($formulaireAEV["idformx"][$i] == "Dossier_AEV_Situation_26") { include "Creation_Dossier_AEV_Situation_26_Synthese.php"; } if ($formulaireAEV["idformx"][$i] == "Dossier_AEV_Situation_27") { include "Creation_Dossier_AEV_Situation_27_Synthese.php"; } if ($formulaireAEV["idformx"][$i] == "Dossier_AEV_Situation_28") { include "Creation_Dossier_AEV_Situation_28_Synthese.php"; } if ($formulaireAEV["idformx"][$i] == "Dossier_AEV_Situation_29") { include "Creation_Dossier_AEV_Situation_29_Synthese.php"; } if ($formulaireAEV["idformx"][$i] == "Dossier_AEV_Situation_30") { include "Creation_Dossier_AEV_Situation_30_Synthese.php"; } if ($formulaireAEV["idformx"][$i] == "Dossier_AEV_Situation_31") { include "Creation_Dossier_AEV_Situation_31_Synthese.php"; } if ($formulaireAEV["idformx"][$i] == "Dossier_AEV_Situation_32") { include "Creation_Dossier_AEV_Situation_32_Synthese.php"; } if ($formulaireAEV["idformx"][$i] == "Dossier_AEV_Situation_33") { include "Creation_Dossier_AEV_Situation_33_Synthese.php"; } if ($formulaireAEV["idformx"][$i] == "Dossier_AEV_Situation_34") { include "Creation_Dossier_AEV_Situation_34_Synthese.php"; } if ($formulaireAEV["idformx"][$i] == "Dossier_AEV_Situation_35") { include "Creation_Dossier_AEV_Situation_35_Synthese.php"; } if ($formulaireAEV["idformx"][$i] == "Dossier_AEV_Situation_36") { include "Creation_Dossier_AEV_Situation_36_Synthese.php"; } } // if ( $tabValeurstemp["Val_IDENT_SEJPatient"] == $patient->getNSej() ) } //for ( $i = 0 ; $i < $formulaireAEV["INDIC_SVC"][2] ; $i++ ) { //enregistrement initial du formulaire formx $formx2->initInstance(); //modification pour qu'il soit en etat 'Fini' $formx2->makeBalVal($formx2->XMLDOM->documentElement, "STATUS", 'F'); $formx2->close(); //eko( $patient->getTablePatient() ); if ($patient->getTablePatient() == "patients_sortis") { clFoRmX_manip::rangerDossMedAEV($patient); //echo '<META HTTP-EQUIV="Refresh" CONTENT="0; URL=index.php">'; //$af = $patient->HistoriqueDocs(); //echo($af); //div historiquedocspatient //document.getElementById('historiquedocspatient').innerHTML = "contenu de ton div" //$val = $session->genNavi ( $session->getNavi(0), $session->getNavi(1), $session->getNavi(2)); //echo '<META HTTP-EQUIV="Refresh" CONTENT="0; URL=index.php?navi='.$val.'">'; //$fichePatient = new clFichePatient ( "Sortis", "patients_sortis", $patient->getID() ) ; //$fichePatient->getAffichage ( ) ; header('Location:?navi=' . $session->genNavi($session->getNavi(0), $session->getNavi(1), $session->getNavi(2))); } }