Initial commit

This commit is contained in:
2020-01-27 08:56:08 +01:00
commit b7525048d6
27129 changed files with 3409855 additions and 0 deletions

View File

@@ -0,0 +1,85 @@
<?php
include_once(realpath(dirname(__FILE__)) . "/../../../classes/PluginsClassiques.class.php");
include_once(realpath(dirname(__FILE__)) . "/../../../classes/Venteprod.class.php");
include_once(realpath(dirname(__FILE__)) . "/../../../classes/Commande.class.php");
include_once(realpath(dirname(__FILE__)) . "/../../../classes/Produit.class.php");
class Dc_meilleursventes extends PluginsClassiques {
const VERSION = '1.3.1';
const MODULE = 'Meilleurs ventes';
public function __construct(){
parent::__construct("dc_meilleursventes");
}
public function init() {
// TITRE - CHAPO - DESCRIPTION - DEVISE
$this->ajout_desc(
"Meilleurs ventes",
"Plugin de meilleurs ventes",
"Ce plugin vous permet d'afficher les meilleurs ventes de vos produit.",
1);
}
public function destroy() {
// Rien
}
public function boucle($texte, $args) {
$num = lireTag($args, "num");
$classement = lireTag($args, "classement");
$exclusion = lireTag($args, "exclusion");
$where = "";
$res="";
if ($classement == "inverse") {
$ordre = "ASC";
} else {
$ordre = "DESC";
}
if ($exclusion != "") {
$where = " AND v.ref NOT IN('" . str_replace(",", "','", $exclusion) . "')";
}
$query = "
SELECT
count(v.ref) AS totalvente, v.ref, v.titre, p.id
FROM
".Commande::TABLE." AS c
LEFT JOIN
".Venteprod::TABLE." AS v ON v.commande = c.id
LEFT JOIN
".Produit::TABLE." p on p.ref = v.ref
WHERE
v.ref<> '' $where
GROUP BY
v.ref
ORDER BY
totalvente $ordre
limit
0,$num
";
$resul = $this->query($query);
while ($resul && $row = $this->fetch_object($resul)) {
$temp = $texte;
$temp = str_replace("#PRODUIT", "$row->id", $temp);
$temp = str_replace("#REF", "$row->ref", $temp);
$temp = str_replace("#TITRE", "$row->titre", $temp);
$temp = str_replace("#COMPTEUR","$row->totalvente", $temp);
$res .= $temp;
}
return $res;
}
}
?>

View File

@@ -0,0 +1,50 @@
LE PLUGIN
------------------------------------------
Ce plugin vous permet d'afficher les meilleurs ventes de vos produit.
Il est inspiré du plugin mventes de Yoan De Macedo sans création de tables supplémentaires.
Contact et support: Laurent (elcanux@gmail.com).
UTILISATION
------------------------------------------
Dans la page que vous souhaitez voir les meilleurs ventes, utilisez la boucle proposée par le plugin.
Exemple:
<h3>::Meilleurs Ventes::</h3>
<THELIA_meilleursventes type="DC_MEILLEURSVENTES" num="10">
<T_prod>
<THELIA_prod type="PRODUIT" ref="#REF"><a href="#REWRITEURL">#TITRE</a></THELIA_prod>
</T_prod>
<//T_prod>
</THELIA_meilleursventes>
LA BOUCLE
------------------------------------------
<THELIA_<nomboucle> type="dc_meilleursventes">
Paramètres:
NUM: Nombre de produit à afficher
CLASSEMENT: 'vide': meilleurs ventes, 'inverse': mauvaises ventes
EXCLUSION: Référence, séparée par des virgules (ex: exclusion='ref01,ref2')
Variables:
#PRODUIT: L'id du produit
#REF: la référence du produit
#TITRE: le titre du produit
#COMPTEUR: le nombre de produit vendu
CHANGELOG
------------------------------------------
Version 1.3.1 Ajout de la variable 'COMPTEUR'
Version 1.3 Optimisation Thelia 1.5.1
Version 1.2 Ajout de #PRODUIT dans la boucle
Version 1.1 Correction proposé par roadster31
- compter uniquement les ventes effectuées
- erreur pour le bug paramètre exclusion
Version 1.0 Version initiale

View File

@@ -0,0 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--Migration automatique depuis le fichier original, sauvegardé dans plugin.xml.save-->
<plugin>
<descriptif lang="fr">
<titre>Meilleures ventes</titre>
<chapo></chapo>
<description>Ce plugin permet d'afficher les meilleures ventes.</description>
<postscriptum></postscriptum>
</descriptif>
<version>1.3.1</version>
<auteur>
<nom>Laurent - elcanux@gmail.com</nom>
<societe></societe>
<email></email>
<web></web>
</auteur>
<type>classique</type>
<prerequis/>
<thelia>1.5.1</thelia>
<etat>attente</etat>
<documentation>Readme.txt</documentation>
<urlmiseajour></urlmiseajour>
</plugin>