예제 #1
0
function substitrubriques($texte)
{
    global $id_rubrique;
    $trubrique = new Rubrique();
    $trubriquedesc = new Rubriquedesc();
    $url = "";
    if ($id_rubrique) {
        if ($trubrique->charger($id_rubrique)) {
            $trubriquedesc->charger($trubrique->id);
            $url = $trubriquedesc->getUrl();
        }
    }
    $racine = new Rubrique();
    $racine->charger($trubrique->id);
    while ($racine->parent) {
        $racine->charger($racine->parent);
    }
    $texte = str_replace("#RUBRIQUE_CHAPO", "{$trubriquedesc->chapo}", $texte);
    $texte = str_replace("#RUBRIQUE_DESCRIPTION", "{$trubriquedesc->description}", $texte);
    $texte = str_replace("#RUBRIQUE_POSTSCRIPTUM", "{$trubriquedesc->postscriptum}", $texte);
    $texte = str_replace("#RUBRIQUE_ID", "{$trubrique->id}", $texte);
    $texte = str_replace("#RUBRIQUE_LIEN", "{$trubrique->lien}", $texte);
    $texte = str_replace("#RUBRIQUE_NOM", "{$trubriquedesc->titre}", $texte);
    $texte = str_replace("#RUBRIQUE_PARENT", "{$trubrique->parent}", $texte);
    $texte = str_replace("#RUBRIQUE_RACINE", "{$racine->id}", $texte);
    $texte = str_replace("#RUBRIQUE_REWRITEURL", $url, $texte);
    $texte = str_replace("#RUBRIQUE_URL", $url, $texte);
    return $texte;
}
 /**
  * 
  * todo : utiliser cette methode pour la gestion des contenus associés aux produit // actuellement uniquement pour rubrique
  */
 public function add($contentToAddId, $type, $object)
 {
     if ($type == 1) {
         $objectInstance = new Produit();
         $objectInstance->charger($object);
     } else {
         $objectInstance = new Rubrique();
         $objectInstance->charger($object);
     }
     $contentToAdd = new Contenu();
     $this->id = '';
     if (!$this->existe($object, $type, $contentToAddId) && $contentToAdd->charger($contentToAddId)) {
         $classement = $this->getMaxRanking($objectInstance->id, $type) + 1;
         $this->objet = $objectInstance->id;
         $this->type = $type;
         $this->contenu = $contentToAdd->id;
         $this->classement = $classement;
         parent::add();
         if ($this->type == 1) {
             ActionsModules::instance()->appel_module("modprod", $objectInstance);
         } else {
             ActionsModules::instance()->appel_module("modrub", $objectInstance);
         }
     }
 }
 public function add($variantToAddId, $categoryId)
 {
     $category = new Rubrique();
     $variantToAdd = new Declinaison();
     $this->id = '';
     if (!$this->charger($categoryId, $variantToAddId) && $variantToAdd->charger($variantToAddId) && $category->charger($categoryId)) {
         $this->rubrique = $category->id;
         $this->declinaison = $variantToAdd->id;
         parent::add();
         ActionsModules::instance()->appel_module("modrub", $category);
     }
 }
 public function add($featureToAddId, $categoryId)
 {
     $category = new Rubrique();
     $featureToAdd = new Caracteristique();
     $this->id = '';
     if (!$this->charger($categoryId, $featureToAddId) && $featureToAdd->charger($featureToAddId) && $category->charger($categoryId)) {
         $this->rubrique = $category->id;
         $this->caracteristique = $featureToAdd->id;
         parent::add();
         ActionsModules::instance()->appel_module("modrub", $category);
     }
 }
예제 #5
0
function lister_contenuassoc($type, $objet)
{
    if ($type == 1) {
        $obj = new Produit();
        $obj->charger($objet);
    } else {
        $obj = new Rubrique();
        $obj->charger($objet);
    }
    $contenuassoc = new Contenuassoc();
    $contenua = new Contenu();
    $contenuadesc = new Contenudesc();
    $query = "select * from {$contenuassoc->table} where type='{$type}' and objet='{$obj->id}' order by classement";
    $resul = $contenuassoc->query($query);
    $i = 0;
    while ($resul && ($row = $contenuassoc->fetch_object($resul))) {
        $fond = $i++ % 2 ? "fonce" : "claire";
        $contenua->charger($row->contenu);
        $contenuadesc->charger($contenua->id);
        $dossierdesc = new Dossierdesc();
        $dossierdesc->charger($contenua->dossier);
        ?>
		<li class="<?php 
        echo $fond;
        ?>
">
				<div class="cellule" style="width:260px;"><?php 
        echo $dossierdesc->titre;
        ?>
</div>
				<div class="cellule" style="width:260px;"><?php 
        echo $contenuadesc->titre;
        ?>
</div>
				<div class="cellule_supp"><a href="javascript:contenuassoc_supprimer(<?php 
        echo $row->id;
        ?>
, <?php 
        echo $type;
        ?>
,'<?php 
        echo $objet;
        ?>
')"><img src="gfx/supprimer.gif" /></a></div>
		</li>
<?php 
    }
}
예제 #6
0
function ancien_rewrite_rub($id, $lang = 1)
{
    $rub = new Rubrique();
    $rub->charger($id);
    $chem = chemin_rub($id);
    if (!empty($chem)) {
        $rubriquedesc = new Rubriquedesc();
        $listrub = "";
        if (!$rubriquedesc->charger($chem[count($chem) - 1]->rubrique, $lang)) {
            return "";
        }
        $listrub .= $rubriquedesc->titre . "_";
        $rubriquedesc->charger($chem[0]->rubrique, $lang);
        $listrub .= $rubriquedesc->rubrique . "_";
        for ($i = count($chem) - 2; $i >= 0; $i--) {
            $rubriquedesc->charger($chem[$i]->rubrique, $lang);
            $listrub .= $rubriquedesc->titre . "_";
        }
        $listrub .= ".html";
        return eregurl($listrub);
    } else {
        return "";
    }
}
예제 #7
0
function arbreOptionRub($depart, $niveau, $prubrique, $nbprod = 0, $ok = 1, $lang = false)
{
    $rec = "";
    $espace = "";
    $niveau++;
    $trubrique = new Rubrique();
    $query = "select * from {$trubrique->table} where parent=\"{$depart}\"";
    $resul = CacheBase::getCache()->query($query);
    for ($i = 0; $i < $niveau; $i++) {
        $espace .= "&nbsp;&nbsp;&nbsp;";
    }
    if ($resul == "" || count($resul) == 0) {
        return "";
    }
    foreach ($resul as $row) {
        $trubriquedesc = new Rubriquedesc();
        $trubriquedesc->charger($row->id, $lang);
        if (!$trubriquedesc->affichage_back_office_permis()) {
            continue;
        }
        $trubrique->charger($trubriquedesc->rubrique);
        $courante = new Rubrique();
        $courante->charger($prubrique);
        if ($courante->parent == $row->id) {
            $selected = "selected";
        } else {
            $selected = "";
        }
        if ($ok == 0 || $row->id == $prubrique && $ok != -1) {
            $disabled = "disabled=\"disabled\"";
        } else {
            $disabled = "";
        }
        if ($nbprod && $trubrique->nbprod() || !$nbprod) {
            $rec .= "<option value=\"{$row->id}\" {$disabled} {$selected}>" . $espace . $trubriquedesc->titre . "</option>";
        }
        if ($prubrique == $row->id && $ok != -1 || $ok == 0) {
            $rec .= arbreOptionRub($row->id, $niveau, $prubrique, $nbprod, 0, $lang);
        } else {
            $rec .= arbreOptionRub($row->id, $niveau, $prubrique, $nbprod, $ok, $lang);
        }
    }
    return $rec;
}
예제 #8
0
function boucleChemin($texte, $args)
{
    global $id_rubrique;
    // récupération des arguments
    $rubrique = lireTag($args, "rubrique", "int");
    $profondeur = lireTag($args, "profondeur", "int");
    $niveau = lireTag($args, "niveau", "int");
    if ($rubrique == "") {
        return "";
    }
    $res = "";
    $trubrique = new Rubrique();
    $trubrique->charger($rubrique);
    $trubriquedesc = new Rubriquedesc();
    $i = 0;
    if (!$trubrique->parent) {
        return "";
    }
    $rubtab = "";
    $tmp = new Rubrique();
    $tmp->charger($trubrique->parent);
    $rubtab[$i] = new Rubrique();
    $rubtab[$i++] = $tmp;
    while ($tmp->parent != 0) {
        $tmp = new Rubrique();
        $tmp->charger($rubtab[$i - 1]->parent);
        $rubtab[$i] = new Rubrique();
        $rubtab[$i++] = $tmp;
    }
    $compt = 0;
    for ($i = count($rubtab) - 1; $i >= 0; $i--) {
        if ($profondeur != "" && $compt == $profondeur) {
            break;
        }
        if ($niveau != "" && $niveau != $compt + 1) {
            $compt++;
            continue;
        }
        $trubriquedesc->charger($rubtab[$i]->id);
        $temp = str_replace("#ID", $rubtab[$i]->id, $texte);
        $temp = str_replace("#TITRE", "{$trubriquedesc->titre}", $temp);
        $temp = str_replace("#URL", $trubriquedesc->getUrl(), $temp);
        $temp = str_replace("#REWRITEURL", $trubriquedesc->getUrl(), $temp);
        $compt++;
        $res .= $temp;
    }
    return $res;
}
예제 #9
0
/*                                                                                   */
/*      You should have received a copy of the GNU General Public License            */
/*	    along with this program. If not, see <http://www.gnu.org/licenses/>.         */
/*                                                                                   */
/*************************************************************************************/
require_once __DIR__ . "/../pre.php";
require_once __DIR__ . "/../auth.php";
require_once __DIR__ . "/../../fonctions/divers.php";
if (!est_autorise("acces_catalogue")) {
    exit;
}
header('Content-Type: text/html; charset=utf-8');
list($modif, $id) = explode("_", lireParam("id", "string"));
if (strstr($modif, "rub") !== false) {
    $obj = new Rubrique();
    $obj->charger($id);
    $objdesc = new Rubriquedesc();
    $objdesc->charger($obj->id);
    $point_entree = "modrub";
    $champ_parent = "parent";
} else {
    $obj = new Produit();
    $obj->charger_id($id);
    $obj->datemodif = date('Y-m-d H:i:s');
    $objdesc = new Produitdesc();
    $objdesc->charger($obj->id);
    $point_entree = "modprod";
    $champ_parent = "rubrique";
}
switch ($modif) {
    case 'prix':
예제 #10
0
function liste_parent($parent, $niveau, $commande, $grandParent, $debutLie = 0)
{
    global $deco, $listePassee;
    $venteprod = new Venteprod();
    $query = "select * from {$venteprod->table} where commande='{$commande->id}' AND parent='{$parent}'";
    $resul = $venteprod->query($query);
    $memFin = "";
    while ($resul && ($row = $venteprod->fetch_object($resul))) {
        $venteprod->charger($row->id);
        $baseIndentation = 25;
        $paddingIndentation = 5;
        //base
        $largeurDesignation = 399;
        $indentation = "";
        if ($debutLie) {
            $indentation = "╓";
        } elseif ($grandParent != 0 && $grandParent == $venteprod->id) {
            $indentation = "╙";
        } elseif ($niveau > 0) {
            /*for($niv=0;$niv<$niveau;$niv++)
            		{
            			$indentation .= "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
            		}*/
            $paddingIndentation += $baseIndentation * $niveau;
            $indentation .= "↳";
        }
        $largeurDesignation -= $paddingIndentation;
        $produit = new Produit();
        $produitdesc = new Produitdesc();
        $produit->charger($venteprod->ref);
        $produitdesc->charger($produit->id);
        $rubrique = new Rubrique();
        $rubrique->charger($produit->rubrique);
        $rubriquedesc = new Rubriquedesc();
        $rubriquedesc->charger($rubrique->id);
        if ($rubriquedesc->titre != "") {
            $titrerub = $rubriquedesc->titre;
        } else {
            $titrerub = "//";
        }
        if (!($deco % 2)) {
            $fond = "ligne_fonce_BlocDescription";
        } else {
            $fond = "ligne_claire_BlocDescription";
        }
        $listePassee[] = $venteprod->id;
        if ($grandParent != 0 && $grandParent == $venteprod->id) {
            $memFin = "<ul class=\"__COULEUR_FOND__\">\n\t\t\t\t<li style=\"width:" . $largeurDesignation . "px;padding-left:" . $paddingIndentation . "px\">{$indentation} {$venteprod->ref} - {$titrerub} - " . str_replace("\n", "<br />", $venteprod->titre) . "</li>\n\t\t\t\t<li style=\"width:73px;\">" . round($venteprod->prixu, 2) . "</li>\n\t\t\t\t<li style=\"width:23px;\">" . $venteprod->quantite . "</li>\n\t\t\t\t<li style=\"width:20px;\">" . round($venteprod->quantite * $venteprod->prixu, 2) . "</li>\n\t\t\t\t</ul>";
        } else {
            $deco++;
            ?>
				<ul class="<?php 
            echo $fond;
            ?>
">
				<li style="width:<?php 
            echo $largeurDesignation;
            ?>
px; padding-left:<?php 
            echo $paddingIndentation;
            ?>
px;"><?php 
            echo $indentation . " " . $venteprod->ref . " - " . $titrerub;
            ?>
 - <?php 
            echo str_replace("\n", "<br />", $venteprod->titre);
            ?>
</li>
				<li style="width:73px;"><?php 
            echo round($venteprod->prixu, 2);
            ?>
</li>
				<li style="width:23px;"><?php 
            echo $venteprod->quantite;
            ?>
</li>
				<li style="width:20px;"><?php 
            echo round($venteprod->quantite * $venteprod->prixu, 2);
            ?>
</li>
				</ul>

		<?php 
        }
        if ($grandParent != $venteprod->id) {
            liste_parent($venteprod->id, $niveau + 1, $commande, $parent);
        }
    }
    if ($memFin != "") {
        if (!($deco % 2)) {
            $fond = "ligne_fonce_BlocDescription";
        } else {
            $fond = "ligne_claire_BlocDescription";
        }
        $deco++;
        echo str_replace("__COULEUR_FOND__", $fond, $memFin);
    }
}
예제 #11
0
         $reecriture->actif = 0;
         $reecriture->maj();
         $reecriture_new = new Reecriture();
         $reecriture_new->url = $reecriture->url;
         $reecriture_new->fond = 'nexisteplus';
         $reecriture_new->param = $reecriture->param . '&ancienfond=' . $reecriture->fond;
         $reecriture_new->actif = 1;
         $reecriture_new->lang = $reecriture->lang;
         $reecriture_new->add();
     }
     break;
 case 'rubrique':
     preg_match("#id_rubrique=([0-9]+)([^[0-9]])*#", $a->param, $match);
     $id = $match[1];
     $rubrique = new Rubrique();
     if (!$rubrique->charger($id)) {
         $reecriture = new Reecriture();
         $reecriture->charger($a->url);
         $reecriture->actif = 0;
         $reecriture->maj();
         $reecriture_new = new Reecriture();
         $reecriture_new->url = $reecriture->url;
         $reecriture_new->fond = 'nexisteplus';
         $reecriture_new->param = $reecriture->param . '&ancienfond=' . $reecriture->fond;
         $reecriture_new->actif = 1;
         $reecriture_new->lang = $reecriture->lang;
         $reecriture_new->add();
     }
     break;
 case 'dossier':
     preg_match("#id_dossier=([0-9]+)([^[0-9]])*#", $a->param, $match);
예제 #12
0
function contenuassoc_supprimer()
{
    $contenuassoc = new Contenuassoc();
    $contenuassoc->charger($_GET['id']);
    $contenuassoc->delete();
    if ($contenuassoc->type == 1) {
        $objet = new Produit();
    } else {
        $objet = new Rubrique();
    }
    $objet->charger($contenuassoc->objet);
    if ($contenuassoc->type == 1) {
        ActionsModules::instance()->appel_module("modprod", $objet);
    } else {
        ActionsModules::instance()->appel_module("modrub", $objet);
    }
    lister_contenuassoc($_GET['type'], $_GET['objet']);
}
예제 #13
0
function contenuassoc_supprimer($request)
{
    $contenuassoc = new Contenuassoc();
    $contenuassoc->charger($request->query->get('id'));
    $contenuassoc->delete();
    if ($contenuassoc->type == 1) {
        $objet = new Produit();
    } else {
        $objet = new Rubrique();
    }
    $objet->charger($contenuassoc->objet);
    if ($contenuassoc->type == 1) {
        ActionsModules::instance()->appel_module("modprod", $objet);
    } else {
        ActionsModules::instance()->appel_module("modrub", $objet);
    }
    lister_contenuassoc($request->query->get('type'), $request->query->get('objet'));
}
예제 #14
0
function ajouter($parent, $lang, $titre, $chapo, $description, $postscriptum, $lien, $ligne)
{
    $rubrique = new Rubrique();
    $rubrique->parent = $parent;
    $rubrique->lien = $lien;
    if ($ligne != "") {
        $rubrique->ligne = 1;
    } else {
        $rubrique->ligne = 0;
    }
    if ($parent == "") {
        $parent = 0;
    }
    $lastid = $rubrique->add();
    $rubrique->charger($lastid);
    $rubrique->maj();
    $rubriquedesc = new Rubriquedesc();
    $rubriquedesc->rubrique = $lastid;
    $rubriquedesc->lang = $lang;
    $rubriquedesc->titre = $titre;
    $rubriquedesc->chapo = $chapo;
    $rubriquedesc->description = $description;
    $rubriquedesc->postscriptum = $postscriptum;
    $rubriquedesc->add();
    $caracteristique = new Caracteristique();
    $query = "select * from {$caracteristique->table}";
    $resul = $caracteristique->query($query);
    $rubcaracteristique = new Rubcaracteristique();
    while ($resul && ($row = $caracteristique->fetch_object($resul))) {
        $rubcaracteristique->rubrique = $lastid;
        $rubcaracteristique->caracteristique = $row->id;
        $rubcaracteristique->add();
    }
    $rubriquedesc->reecrire();
    ActionsModules::instance()->appel_module("ajoutrub", $rubrique);
    redirige("" . $_SERVER['PHP_SELF'] . "?id=" . $lastid);
}