Changeset 110316 in spip-zone


Ignore:
Timestamp:
May 19, 2018, 7:39:30 AM (15 months ago)
Author:
abelass@…
Message:

v 2.0.1 Adaptation à prix_objets 2.0.0

Attention! Changement de manière d'enregistrement des déclinaisons (considéré comme extension maintenant).
Auparavant une seule ligne par prix avec une colone id_declinaison.

Maintenant chaque déclinaison/extension obtient sa probre ligne. Prix principal et extensions sont liés par id_prix_objet_source (les extensions prenant id_prix_objet comme id_prix_objet_source)

les extension son distuingiué par les colonnes extension et id_extension

Location:
_plugins_/declinaisons/branches/v1
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/declinaisons/branches/v1

  • _plugins_/declinaisons/branches/v1/declinaisons_pipelines.php

    r110048 r110316  
    4343function declinaisons_prix_objets_extensions($flux) {
    4444
    45         $flux['data'] = array (
     45        $flux['data']['declinaison'] = array (
    4646                array(
    4747                        'saisie' => 'declinaisons',
  • _plugins_/declinaisons/branches/v1/formulaires/panier_declinaison.php

    r108455 r110316  
    22if (!defined("_ECRIRE_INC_VERSION"))
    33        return;
    4         function formulaires_panier_declinaison_charger_dist($id_objet_produit, $objet_produit = 'article', $titre = '') {
     4function formulaires_panier_declinaison_charger_dist($id_objet_produit, $objet_produit = 'article', $titre = '') {
    55        include_spip('inc/session');
    66        include_spip('inc/config');
     
    1818        if (is_array($id_objet_produit))
    1919                $id_objet_produit = implode(',', $id_objet_produit);
    20         if ($id_objet_produit)
    21                 $sql = sql_select('*', 'spip_prix_objets', 'id_objet IN (' . $id_objet_produit . ') AND objet=' . sql_quote($objet_produit));
     20                if ($id_objet_produit)
     21                        $sql = sql_select(
     22                                '*',
     23                                'spip_prix_objets',
     24                                'id_prix_objet_source=0 AND id_objet IN (' . $id_objet_produit . ') AND objet=' . sql_quote($objet_produit)
     25                                );
    2226
    23         $declinaisons = array();
     27                        $declinaisons = array();
    2428
    25         $id_panier = session_get('id_panier');
    26         // S'il n'y a pas de panier, on le crée
    27         if (!$id_panier) {
    28                 include_spip('inc/paniers');
    29                 $id_panier = paniers_creer_panier();
    30         }
     29                        $id_panier = session_get('id_panier');
     30                        // S'il n'y a pas de panier, on le crée
     31                        if (!$id_panier) {
     32                                include_spip('inc/paniers');
     33                                $id_panier = paniers_creer_panier();
     34                        }
    3135
    32         while ($data = sql_fetch($sql)) {
    33                 if (!$formulaire_titre_complet) {
    34                         $titre = explode(' - ', $data['titre']);
    35                         $data['titre'] = $titre[1];
    36                 }
    37                 if ($data['prix_ht'] != 0.00) {
    38                         $data['prix'] = $data['prix_ht'];
    39                         $data['taxe'] = _T('shop:prix_ht');
    40                 }
    41                 else {
    42                         $data['prix'] = $data['prix'];
    43                         $data['taxe'] = _T('prix_objets:prix_ttc');
    44                 }
    45                 $declinaisons[] = $data;
    46         }
     36                        while ($data = sql_fetch($sql)) {
     37                                if (!$formulaire_titre_complet) {
     38                                        $titre = explode(' - ', $data['titre']);
     39                                        $data['titre'] = $titre[1];
     40                                }
    4741
    48         $valeurs = array(
    49                 'objet_produit' => $objet_produit,
    50                 'id_objet_produit' => $id_objet_produit,
    51                 'objet' => 'prix',
    52                 'id_objet' => '',
    53                 'declinaisons' => $declinaisons,
    54                 'id_prix_objet' => '',
    55                 'retour' => ''
    56         );
     42                                if ($data['prix_ht'] != 0.00) {
     43                                        $data['prix'] = $data['prix_ht'];
     44                                        $data['taxe'] = _T('shop:prix_ht');
     45                                }
     46                                else {
     47                                        $data['prix'] = $data['prix'];
     48                                        $data['taxe'] = _T('prix_objets:prix_ttc');
     49                                }
     50                                $declinaisons[] = $data;
     51                        }
    5752
    58         return $valeurs;
     53                        $valeurs = array(
     54                                'objet_produit' => $objet_produit,
     55                                'id_objet_produit' => $id_objet_produit,
     56                                'objet' => 'prix',
     57                                'id_objet' => '',
     58                                'declinaisons' => $declinaisons,
     59                                'id_prix_objet' => '',
     60                                'retour' => ''
     61                        );
     62
     63                        return $valeurs;
    5964}
    6065function formulaires_panier_declinaison_traiter_dist($id_objet, $objet = 'article') {
  • _plugins_/declinaisons/branches/v1/formulaires/prix_declinaison.php

    r108421 r110316  
    1515        $prix_choisis = array();
    1616        $declinaisons_choisis = array();
    17         $d = sql_select('code_devise,objet,id_objet,prix_ht,id_prix_objet,id_declinaison', 'spip_prix_objets', 'id_objet=' . $id_objet . ' AND objet =' . sql_quote($objet));
     17        $d = sql_select(
     18                'code_devise,objet,id_objet,prix_ht,id_prix_objet,extension,id_extension',
     19                'spip_prix_objets',
     20                'id_prix_objet_source=0 AND id_objet=' . $id_objet . ' AND objet =' . sql_quote($objet)
     21        );
    1822
    1923        // établit les devises diponible moins ceux déjà utilisés
    2024        while ($row = sql_fetch($d)) {
    21                 // $devises_choisis[$row['code_devise']] = $row['code_devise'];
    22                 $declinaisons_choisis[$row['id_declinaison']] = $row['id_declinaison'];
     25                $declinaisons_choisis[$row['id_declinaison']] = $row['id_extension'];
    2326                $prix_choisis[] = $row;
    2427        }
  • _plugins_/declinaisons/branches/v1/paquet.xml

    r110048 r110316  
    22        prefix="declinaisons"
    33        categorie="communication"
    4         version="2.0.0"
     4        version="2.0.1"
    55        etat="test"
    66        compatibilite="[3.0.5;3.2.*]"
     
    1717
    1818        <necessite nom="saisies" compatibilite="[2.25.1;]" />
    19         <necessite nom="prix_objets" compatibilite="[1.8.0;]" />
     19        <necessite nom="prix_objets" compatibilite="[2.0.0;]" />
    2020        <utilise nom="shop" compatibilite="[1.1.0;]" />
    2121
Note: See TracChangeset for help on using the changeset viewer.