Changeset 90509 in spip-zone


Ignore:
Timestamp:
Jun 25, 2015, 2:56:45 PM (4 years ago)
Author:
cedric@…
Message:

C'est peut etre un detail, mais le message "les quantites ont bien ete modifiees" quand je clique juste sur le bouton "Recalculer" sans rien changer, c'est un peu perturbant.
Du coup on verifie qu'il faut bien changer la quantite avant de la changer, et on compte le nombre de changements. Il suffit d'un seul pour afficher le message
(et tant pis si on a eu des erreurs sur un des changements. Il faudrait lever le message d'erreur dans ce cas ?)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/paniers/trunk/formulaires/panier.php

    r90508 r90509  
    4646       
    4747        $quantites = _request('quantites');
    48         $ok = true;
     48        $ok = 0;
    4949       
    5050        if (is_array($quantites))
     
    5454                                // Si la quantite est 0, on supprime du panier
    5555                                if (!$quantite)
    56                                         $ok &= sql_delete(
     56                                        $ok += sql_delete(
    5757                                                'spip_paniers_liens',
    5858                                                'id_panier = '.intval($id_panier).' and objet = '.sql_quote($objet).' and id_objet = '.intval($id_objet)
     
    6060                                // Sinon on met à jour
    6161                                else{
    62                                         $ok &= sql_updateq(
    63                                                 'spip_paniers_liens',
    64                                                 array('quantite' => $quantite),
    65                                                 'id_panier = '.intval($id_panier).' and objet = '.sql_quote($objet).' and id_objet = '.intval($id_objet)
    66                                         );
     62                                        if ($quantite!=sql_getfetsel("quantite","spip_paniers_liens",'id_panier = '.intval($id_panier).' and objet = '.sql_quote($objet).' and id_objet = '.intval($id_objet))){
     63                                                $ok += sql_updateq(
     64                                                        'spip_paniers_liens',
     65                                                        array('quantite' => $quantite),
     66                                                        'id_panier = '.intval($id_panier).' and objet = '.sql_quote($objet).' and id_objet = '.intval($id_objet)
     67                                                );
     68                                        }
    6769                                }
    6870                        }
     
    7577        );
    7678       
    77         if ($ok)
     79        if ($ok){
    7880                $retours['message_ok'] = _T('paniers:panier_quantite_ok');
     81        }
    7982       
    8083        return $retours;
Note: See TracChangeset for help on using the changeset viewer.