Changeset 103919 in spip-zone


Ignore:
Timestamp:
Apr 12, 2017, 4:42:36 PM (2 years ago)
Author:
cedric@…
Message:

Paiements en echeances :

  • ajout d'un champ echeances_date_debut qui permet de fixer le debut des echeances dans le futur (supporte par certains systemes de paiement), utile pour les renouvellements d'abonnement par exemple
  • mieux afficher le detail des paiements previsionnels : periodicite, date de debut et mise en forme
Location:
_plugins_/commandes/trunk
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/commandes/trunk/base/commandes.php

    r101428 r103919  
    6363                        'bank_uid' => 'varchar(55) not null default ""', // mémorisation éventuelle d'un identifiant chez un service bancaire
    6464                        'echeances_type' => 'varchar(25) not null default ""', // périodicité (ex : mois, annee) ou nombre précis d'échances (ex : 3)
     65                        'echeances_date_debut' => 'datetime not null default "0000-00-00 00:00:00"', // date de debut des echeances, eventuellement si dans le futur (facultatif)
    6566                        'echeances' => 'text not null default ""', // tableau sérialisé décrivant les échéances
    6667                ),
  • _plugins_/commandes/trunk/commandes_administrations.php

    r99725 r103919  
    132132                array('commandes_maj_0_7_4'),
    133133        );
     134        // ajout du champ echeances_date_debut
     135        $maj['0.7.5'] = array(
     136            array('maj_tables', array('spip_commandes')),
     137        );
    134138
    135139        include_spip('base/upgrade');
  • _plugins_/commandes/trunk/commandes_pipelines.php

    r103863 r103919  
    312312                and $id_commande = intval(sql_getfetsel('id_commande', 'spip_transactions', 'id_transaction = '.$id_transaction))
    313313                // et que la commande a des informations d'échéances
    314                 and $commande = sql_fetsel('echeances_type, echeances', 'spip_commandes', 'id_commande = '.$id_commande)
     314                and $commande = sql_fetsel('echeances_type, echeances_date_debut, echeances', 'spip_commandes', 'id_commande = '.$id_commande)
    315315                and $echeances = unserialize($commande['echeances'])
    316316                and $echeances_type = $commande['echeances_type']
     
    325325                                $flux['data']['freq'] = 'yearly';
    326326                                break;
     327                }
     328
     329                if ($commande['echeances_date_debut']
     330                        and strtotime($commande['echeances_date_debut'])>$_SERVER['REQUEST_TIME']) {
     331                        $flux['data']['date_start'] = $commande['echeances_date_debut'];
    327332                }
    328333               
  • _plugins_/commandes/trunk/lang/commandes_fr.php

    r101138 r103919  
    2525        'commande_date' => 'Date',
    2626        'commande_date_paiement' => 'Date de paiement',
     27        'commande_echeances_date_debut' => 'Date de début des paiements périodiques :',
    2728        'commande_echeances_paiements_infini' => 'Paiements suivants',
    2829        'commande_echeances_paiements_previsions' => 'Paiements prévisionnels',
  • _plugins_/commandes/trunk/paquet.xml

    r103914 r103919  
    22        prefix="commandes"
    33        categorie="divers"
    4         version="1.8.30"
     4        version="1.8.31"
    55        etat="stable"
    66        compatibilite="[3.0.5;3.1.*]"
    77        logo="prive/themes/spip/images/commande.png"
    88        documentation="https://contrib.spip.net/Commandes-4527"
    9         schema="0.7.4"
     9        schema="0.7.5"
    1010>
    1111       
  • _plugins_/commandes/trunk/prive/objets/contenu/commande.html

    r101424 r103919  
    2929       
    3030        [(#REM) Échéances ]
    31         <BOUCLE_test_echeances(CONDITION){si #ECHEANCES}>
    32         <h3><:commandes:commande_echeances_paiements_previsions:></h3>
    33         <B_echeances_multiples>
    34         <ol class="spip">
    35                 <BOUCLE_echeances_multiples(DATA){source table,#_afficher_contenu:ECHEANCES}{si #_afficher_contenu:ECHEANCES|is_array}>
    36                 <BOUCLE_enum(DATA){enum 1,#VALEUR{nb}|sinon{1}}>
    37                 <li>
    38                         [(#_echeances_multiples:COMPTEUR_BOUCLE|=={#_echeances_multiples:TOTAL_BOUCLE}|non)
    39                         [(#_echeances_multiples:VALEUR{montant}|prix_formater)]
    40                         ]
    41                         [(#_echeances_multiples:COMPTEUR_BOUCLE|=={#_echeances_multiples:TOTAL_BOUCLE}|oui)
    42                         <:commandes:commande_echeances_paiements_infini:> : [(#_echeances_multiples:VALEUR{montant}|prix_formater)]
    43                         ]
    44                 </li>
    45                 </BOUCLE_enum>
    46                 </BOUCLE_echeances_multiples>
    47         </ol>
    48         </B_echeances_multiples>
    49         <BOUCLE_echeance_unique(CONDITION){si #_afficher_contenu:ECHEANCES|is_numeric}>
    50         <p><:commandes:commande_echeances_paiements_tous:> : [(#_afficher_contenu:ECHEANCES|prix_formater)]</p>
    51         </BOUCLE_echeance_unique>
     31        <BOUCLE_test_echeances(CONDITION){si #ECHEANCES|et{#ECHEANCES_TYPE}}>
     32        <div class="champ contenu_descriptif contenu_echeances">
     33                <h3><:commandes:commande_echeances_paiements_previsions:></h3>
     34                <p>[(#VAL{commandes:commande_echeances_type_}|concat{#ECHEANCES_TYPE}|_T)]
     35                [(#ECHEANCES_DATE_DEBUT|intval|oui)
     36                [<br /><:commandes:commande_echeances_date_debut:> (#ECHEANCES_DATE_DEBUT|affdate)]
     37                ]</p>
     38                <B_echeances_multiples>
     39                <ol class="spip">
     40                        <BOUCLE_echeances_multiples(DATA){source table,#_afficher_contenu:ECHEANCES}{si #_afficher_contenu:ECHEANCES|is_array}>
     41                        <BOUCLE_enum(DATA){enum 1,#VALEUR{nb}|sinon{1}}>
     42                        <li>
     43                                [(#_echeances_multiples:COMPTEUR_BOUCLE|=={#_echeances_multiples:TOTAL_BOUCLE}|non)
     44                                [(#_echeances_multiples:VALEUR{montant}|prix_formater)]
     45                                ]
     46                                [(#_echeances_multiples:COMPTEUR_BOUCLE|=={#_echeances_multiples:TOTAL_BOUCLE}|oui)
     47                                <:commandes:commande_echeances_paiements_infini:> : [(#_echeances_multiples:VALEUR{montant}|prix_formater)]
     48                                ]
     49                        </li>
     50                        </BOUCLE_enum>
     51                        </BOUCLE_echeances_multiples>
     52                </ol>
     53                </B_echeances_multiples>
     54                <BOUCLE_echeance_unique(CONDITION){si #_afficher_contenu:ECHEANCES|is_numeric}>
     55                <p><:commandes:commande_echeances_paiements_tous:> : [(#_afficher_contenu:ECHEANCES|prix_formater)]</p>
     56                </BOUCLE_echeance_unique>
     57        </div>
    5258        </BOUCLE_test_echeances>
    5359       
Note: See TracChangeset for help on using the changeset viewer.