function getListAvailableVariant($idrubrique) { $return = array(); $qList = "SELECT * FROM " . self::TABLE . " WHERE rubrique={$idrubrique}"; $rList = $this->query($qList); $notAvailable = array(); while ($rList && ($theAssociatedVariant = $this->fetch_object($rList))) { $notAvailable[] = $theAssociatedVariant->declinaison; } $variant = new Declinaison(); $qVariant = "SELECT * FROM " . Declinaison::TABLE . "" . (!empty($notAvailable) ? " WHERE id NOT IN(" . implode(',', $notAvailable) . ")" : ''); $rVariant = $variant->query($qVariant); while ($rVariant && ($theVariant = $variant->fetch_object($rVariant))) { $variantDescription = new Declinaisondesc($theVariant->id); $return[] = array('id' => $theVariant->id, 'titre' => $variantDescription->titre); } return $return; }
function declinaison_liste_select($idrubrique) { $rubdeclinaison = new Rubdeclinaison(); $query = "select * from {$rubdeclinaison->table} where rubrique={$idrubrique}"; $resul = $rubdeclinaison->query($query); $listeid = ""; while ($resul && ($row = $rubdeclinaison->fetch_object($resul))) { $listeid .= $row->declinaison . ","; } if (strlen($listeid) > 0) { $listeid = substr($listeid, 0, strlen($listeid) - 1); $declinaison = new Declinaison(); $query = "select * from {$declinaison->table} where id NOT IN({$listeid})"; $resul = $declinaison->query($query); } else { $declinaison = new Declinaison(); $query = "select * from {$declinaison->table}"; $resul = $declinaison->query($query); } ?> <select class="form_select" id="prod_decli"> <option value=""> </option> <?php while ($resul && ($row = $declinaison->fetch_object($resul))) { $declinaisondesc = new Declinaisondesc($row->id); ?> <option value="<?php echo $row->id; ?> "><?php echo $declinaisondesc->titre; ?> </option> <?php } ?> </select> <?php }
function ajouter($lang, $id, $titre, $chapo, $description, $tabdisp, $ajoutrub) { $json = new Services_JSON(); $tabdisp = stripslashes($tabdisp); $tabdisp = $json->decode($tabdisp); $declinaison = new Declinaison(); $declinaison->charger($id); if ($declinaison->id) { return; } $declinaison = new Declinaison(); $query = "select max(classement) as maxClassement from {$declinaison->table}"; $resul = $declinaison->query($query); $maxClassement = $resul ? $declinaison->get_result($resul, 0, "maxClassement") : 0; $declinaison->id = $id; $declinaison->classement = $maxClassement + 1; $lastid = $declinaison->add(); $declinaison->id = $lastid; $declinaisondesc = new Declinaisondesc(); $declinaisondesc->chapo = $chapo; $declinaisondesc->description = $description; $declinaisondesc->declinaison = $lastid; $declinaisondesc->lang = $lang; $declinaisondesc->titre = $titre; $declinaisondesc->chapo = str_replace("\n", "<br/>", $declinaisondesc->chapo); $declinaisondesc->description = str_replace("\n", "<br/>", $declinaisondesc->description); $declinaisondesc->add(); $declidisp = new Declidisp(); $declidispdesc = new Declidispdesc(); for ($i = 0; $i < count($tabdisp); $i++) { $declidisp->declinaison = $lastid; $lastidc = $declidisp->add(); $declidispdesc->declidisp = $lastidc; $declidispdesc->lang = $lang; $declidispdesc->titre = $tabdisp[$i]->texte; $declidispdesc->add(); } if (intval($ajoutrub) == 1) { $rubrique = new Rubrique(); $query = "select * from {$rubrique->table}"; $resul = $rubrique->query($query); while ($resul && ($row = $rubrique->fetch_object($resul))) { $rubdeclinaison = new Rubdeclinaison(); $rubdeclinaison->rubrique = $row->id; $rubdeclinaison->declinaison = $lastid; $rubdeclinaison->add(); } } ActionsModules::instance()->appel_module("ajdeclinaison", $declinaison); redirige($_SERVER['PHP_SELF'] . "?id=" . $lastid); }