/** * Récupération du code tarif du séjour * * @param DOMNode $node PV1 Node * @param CSejour $newVenue Admit * * @return void */ function getFinancialClass(DOMNode $node, CSejour $newVenue) { $sender = $this->_ref_sender; if ($sender->_configs["handle_PV1_20"] == "none") { return; } $systeme_presta = CAppUI::conf("dPhospi prestations systeme_prestations", "CGroups-" . $newVenue->group_id); if ($systeme_presta == "standard") { return; } // Uniquement pour les prestas expertes $prestation = explode("#", $this->queryTextNode("PV1.20", $node)); $presta_name = CMbArray::get($prestation, 0); $item_name = CMbArray::get($prestation, 1); $item_presta = new CItemPrestation(); if ($item_name) { // Chargement de la prestation journalière $presta_journa = new CPrestationJournaliere(); $presta_journa->nom = $presta_name; $presta_journa->loadMatchingObject(); $item_presta->object_class = "CPrestationJournaliere"; $item_presta->object_id = $presta_journa->_id; } else { $item_name = $presta_name; } // Chargement d'un item de prestation $item_presta->nom = $item_name; $item_presta->loadMatchingObject(); if (!$item_presta->_id) { return; } $item_liaison = new CItemLiaison(); $ljoin = array("item_prestation" => "item_prestation.item_prestation_id = item_liaison.item_souhait_id", "prestation_journaliere" => "item_prestation.object_id = prestation_journaliere_id"); $where["item_liaison.sejour_id"] = " = '{$newVenue->_id}'"; $where["item_liaison.date"] = " = '" . CMbDT::date($newVenue->entree) . "'"; $where["prestation_journaliere.prestation_journaliere_id"] = " = '{$presta_journa->_id}'"; $item_liaison->loadObject($where, null, null, $ljoin); if (!$item_liaison->_id) { $item_liaison->sejour_id = $newVenue->_id; $item_liaison->date = CMbDT::date($newVenue->entree); } $item_liaison->item_souhait_id = $item_presta->_id; $item_liaison->_eai_sender_guid = $sender->_guid; $item_liaison->store(); }
$direction = CValue::get("direction"); $item_id = CValue::getOrSession("item_id"); $item = new CItemPrestation(); $item->load($item_id_move); switch ($direction) { case "up": $item->rank--; break; case "down": $item->rank++; } $item_to_move = new CItemPrestation(); $item_to_move->object_class = $item->object_class; $item_to_move->object_id = $item->object_id; $item_to_move->rank = $item->rank; $item_to_move->loadMatchingObject(); if ($item_to_move->_id) { $direction == "up" ? $item_to_move->rank++ : $item_to_move->rank--; $item_to_move->store(); } $item->store(); $prestation = new $item->object_class(); $prestation->load($item->object_id); $items = $prestation->loadBackRefs("items", "rank"); $i = 1; foreach ($items as $item) { $item->rank = $i; $item->store(); $i++; } $item = new CItemPrestation();