Changeset 113726 in spip-zone


Ignore:
Timestamp:
Feb 4, 2019, 1:05:03 PM (3 months ago)
Author:
root
Message:

retour sur r109419 : pas de trouver_fond() au moment de l'appel de notification, c'est presumer de ce que fait la notification. Mais on passe statut et statut_ancien dans les options en cas de changement de statut, ce qui permet a la notification d'aiguiller sur un squelette en particulier si besoin (ou de faire la même chose en utilisant simplement un fond qui verie selon le statut)

Location:
_plugins_/commandes/trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/commandes/trunk/action/editer_commande.php

    r104820 r113726  
    128128                spip_log("inserer_commande : appel des notifications pour la commande $id_commande",'commandes.'._LOG_INFO);
    129129                include_spip('inc/commandes');
    130                 commandes_notifier($id_commande);
     130                // c'est une creation : statut_ancien=''
     131                commandes_notifier($id_commande, '');
    131132
    132133        }
     
    300301        if ($statut != $statut_ancien) {
    301302                spip_log("instituer_commande : appel des notifications pour la commande $id_commande",'commandes.'._LOG_INFO);
    302                 commandes_notifier($id_commande);
     303                commandes_notifier($id_commande, $statut_ancien);
    303304        }
    304305
  • _plugins_/commandes/trunk/inc/commandes.php

    r113725 r113726  
    317317 * @param int|string $id_commande
    318318 *     Identifiant de la commande
     319 * @param string|null $statut_ancien
    319320 * @return void
    320321 */
    321 function commandes_notifier($id_commande = 0){
     322function commandes_notifier($id_commande = 0, $statut_ancien = null){
    322323
    323324        if (intval($id_commande)==0){
     
    342343
    343344                // Déterminer l'expéditeur
    344                 $options = array();
     345                $options = array(
     346                        'statut' => $statut,
     347                );
     348                if (!is_null($statut_ancien)) {
     349                        $options['statut_ancien'] = $statut_ancien;
     350                }
     351
    345352                if ($config['expediteur']!="facteur"){
    346353                        $options['expediteur'] = $config['expediteur_' . $config['expediteur']];
     
    350357
    351358                // Envoyer au vendeur
    352                 spip_log("traiter_notifications_commande : notification vendeur pour la commande $id_commande", 'commandes.' . _LOG_INFO);
    353                 if ($notification_statut = trouver_fond('commande_vendeur_' . $statut, 'notifications')){
    354                         $notifications('commande_vendeur_' . $statut, $id_commande, $options);
    355                 } else {
    356                         $notifications('commande_vendeur', $id_commande, $options);
    357                 }
     359                spip_log("commandes_notifier : notification vendeur pour la commande #$id_commande " . json_encode($options), 'commandes.' . _LOG_INFO);
     360                $notifications('commande_vendeur', $id_commande, $options);
    358361
    359362                // Envoyer optionnellement au client
    360363                if ($config['client']){
    361364
    362                         spip_log("traiter_notifications_commande : notification client pour la commande $id_commande", 'commandes.' . _LOG_INFO);
    363 
    364                         if ($notification_statut = trouver_fond('notifications/commande_client_' . $statut)){
    365                                 $notifications('commande_client_' . $statut, $id_commande, $options);
    366                         } else {
    367                                 $notifications('commande_client', $id_commande, $options);
    368                         }
     365                        spip_log("commandes_notifier : notification client pour la commande #$id_commande " . json_encode($options), 'commandes.' . _LOG_INFO);
     366                        $notifications('commande_client', $id_commande, $options);
    369367                }
    370368
  • _plugins_/commandes/trunk/paquet.xml

    r113177 r113726  
    22        prefix="commandes"
    33        categorie="divers"
    4         version="1.15.5"
     4        version="1.15.6"
    55        schema="0.7.9"
    66        etat="stable"
Note: See TracChangeset for help on using the changeset viewer.