Changeset 123086 in spip-zone


Ignore:
Timestamp:
Mar 24, 2020, 5:12:43 PM (2 weeks ago)
Author:
Rainer Müller
Message:

adapter devises à prix 1.2.2

Location:
_plugins_/prix_objets/trunk
Files:
22 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/prix_objets/trunk

    • Property subgit:lock:260a1094b3937683878ab93104706a0675222043 deleted
    • Property svn:ignore
      •  

        old new  
         1.buildpath
        12.project
        2 .buildpath
        33.settings*
         4prix_objets.code-workspace
    • Property subgit:lock:51037dfd0ee39ecf3138109bc50b921db2521b95 set to 2020-03-24T18:13:03.137
  • _plugins_/prix_objets/trunk/action

    • Property svn:ignore
      •  

        old new  
        11.settings*
         2prix_objets.code-workspace
  • _plugins_/prix_objets/trunk/base

    • Property svn:ignore
      •  

        old new  
        11.settings*
         2prix_objets.code-workspace
  • _plugins_/prix_objets/trunk/css

    • Property svn:ignore
      •  

        old new  
        11.settings*
         2prix_objets.code-workspace
  • _plugins_/prix_objets/trunk/formulaires

    • Property svn:ignore
      •  

        old new  
        11.settings*
         2prix_objets.code-workspace
  • _plugins_/prix_objets/trunk/formulaires/configurer_prix_objets.html

    r123085 r123086  
    4040                                        </div>
    4141                                </fieldset>
    42                         </div>
     42                        </div> 
    4343                </div>
    4444                <div class="editer-groupe">
     
    5757                                                <B_choix>
    5858                                                        <div>
    59                                                                 <:prix_objets:devises_choisis:> :
     59                                                                <:prix_objets:devises_choisis:>
    6060                                                        <BOUCLE_choix(DATA){source tableau, #GET{selected}}{', '}>
    6161                                                                [(#VALEUR|traduire_devise)]
  • _plugins_/prix_objets/trunk/inc

    • Property svn:ignore set to
      prix_objets.code-workspace
  • _plugins_/prix_objets/trunk/javascript

    • Property svn:ignore set to
      prix_objets.code-workspace
  • _plugins_/prix_objets/trunk/lang

    • Property svn:ignore
      •  

        old new  
        11.settings*
         2prix_objets.code-workspace
  • _plugins_/prix_objets/trunk/lang/prix_objets_fr.php

    r123085 r123086  
    2424
    2525        // E
    26         'explication_devises' => 'Les devises avec lesquelles vous pouvez encoder des prix, si rien choisit, la devise par défaut sera utilisée.',
     26        'explication_devises' => 'Les devises avec lesquelles vous pouvez encoder des prix. Si rien choisit, la devise par défaut sera utilisée.',
    2727        'explication_devise_default' => 'Définit par le <a href="/ecrire/?exec=configurer_prix">plugin API Prix</a>',
    2828
  • _plugins_/prix_objets/trunk/paquet.xml

    r123084 r123086  
    22        prefix="prix_objets"
    33        categorie="edition"
    4         version="2.4.2"
     4        version="3.0.0"
    55        etat="stable"
    66        compatibilite="[3.2.0;3.3.*]"
  • _plugins_/prix_objets/trunk/prive

    • Property svn:ignore
      •  

        old new  
        11.settings*
         2prix_objets.code-workspace
  • _plugins_/prix_objets/trunk/prive/objets

    • Property svn:ignore
      •  

        old new  
        11.settings*
         2prix_objets.code-workspace
  • _plugins_/prix_objets/trunk/prive/objets/editer

    • Property svn:ignore
      •  

        old new  
        11.settings*
         2prix_objets.code-workspace
  • _plugins_/prix_objets/trunk/prive/squelettes

    • Property svn:ignore
      •  

        old new  
        11.settings*
         2prix_objets.code-workspace
  • _plugins_/prix_objets/trunk/prive/squelettes/contenu

    • Property svn:ignore
      •  

        old new  
        11.settings*
         2prix_objets.code-workspace
  • _plugins_/prix_objets/trunk/prive/themes

    • Property svn:ignore
      •  

        old new  
        11.settings*
         2prix_objets.code-workspace
  • _plugins_/prix_objets/trunk/prive/themes/spip

    • Property svn:ignore
      •  

        old new  
        11.settings*
         2prix_objets.code-workspace
  • _plugins_/prix_objets/trunk/prive/themes/spip/images

    • Property svn:ignore
      •  

        old new  
        11.settings*
         2prix_objets.code-workspace
  • _plugins_/prix_objets/trunk/prix

    • Property svn:ignore
      •  

        old new  
        11.settings*
         2prix_objets.code-workspace
  • _plugins_/prix_objets/trunk/prix_objets_fonctions.php

    r123084 r123086  
    1717
    1818/**
    19  * Un tableau des devises dispoibles.
     19 * Un tableau des devises disponibles.
    2020 *
    2121 * @return array
    2222 *   Les devises disponibles.
    2323 */
    24 function devises() {
    25         $devises = array(
    26 
    27                 // A
    28                 'AUD' => 'AUD',
    29 
    30                 // B
    31                 'BRL' => 'Real',
    32 
    33                 // C
    34                 'CAD' => 'CAD',
    35                 'CHF' => 'CHF',
    36                 'CNY' => 'Yuan',
    37                 'CSD' => 'CSD',
    38                 'CZK' => 'CZK',
    39 
    40                 // D
    41                 'DKK' => 'DKK',
    42 
    43                 // E
    44                 'EUR' => '€',
    45 
    46                 // G
    47                 'GBP' => '£',
    48 
    49                 // H
    50                 'HKD' => 'HKD',
    51                 'HUF' => 'HUF',
    52 
    53                 // I
    54                 'IDR' => 'IDR',
    55                 'ILS' => 'Shekel',
    56                 'IQD' => 'IQD',
    57                 'IRR' => 'IRR',
    58                 'ISK' => 'ISK',
    59 
    60                 // J
    61                 'JEP' => 'JEP',
    62                 'JOD' => 'JOD',
    63                 'JMD' => 'JMD',
    64                 'JPY' => '¥',
    65 
    66                 // K
    67                 'KES' => 'KES',
    68                 'KGS' => 'KGS',
    69                 'KWD' => 'KWD',
    70                 'KZT' => 'Tenge',
    71 
    72                 // L
    73                 'LAK' => 'Kip',
    74                 'LBP' => 'LBP',
    75                 'LKR' => 'LKR',
    76                 'LRD' => 'LRD',
    77                 'LTL' => 'Litas',
    78                 'LVL' => 'Lat',
    79 
    80                 // M
    81                 'MAD' => 'Dirham',
    82                 'MDL' => 'MDL',
    83                 'MGA' => 'Ariary',
    84                 'MKD' => 'MKD',
    85                 'MNT' => 'Tughrik',
    86                 'MRO' => 'Ouguiya',
    87                 'MUR' => 'MUR',
    88                 'MVR' => 'Rufiyaa',
    89                 'MWK' => 'MWK',
    90                 'MXN' => 'MXN',
    91                 'MYR' => 'Ringgit',
    92                 'MZN' => 'Metical',
    93 
    94                 // N
    95                 'NAD' => 'NAD',
    96                 'NGN' => 'Naira',
    97                 'NIO' => 'Cordoba',
    98                 'NPR' => 'NPR',
    99                 'NOK' => 'NOK',
    100                 'NZD' => 'NZD',
    101 
    102                 // O
    103                 'OMR' => 'OMR',
    104 
    105                 'QAR' => 'Riyal',
    106 
    107                 // P
    108                 'PGK' => 'Kina',
    109                 'PHP' => 'PHP',
    110                 'PKR' => 'PKR',
    111                 'PLN' => 'Zloty',
    112 
    113                 'RON' => 'RON',
    114                 'RUB' => 'Rouble',
    115                 'RWF' => 'RWF',
    116 
    117                 // S
    118                 'SCR' => 'SCR',
    119                 'SDD' => 'SDD',
    120                 'SEK' => 'SEK',
    121                 'SGD' => 'SGD',
    122                 'SOS' => 'SOS',
    123                 'SLL' => 'Leone',
    124                 'SRD' => 'SRD',
    125                 'STD' => 'Dobra',
    126                 'SVC' => 'Colon',
    127                 'SYP' => 'SYP',
    128 
    129                 // T
    130                 'THB' => 'Baht',
    131                 'TJS' => 'Somoni',
    132                 'TND' => 'TND',
    133                 'TMM' => 'TMM',
    134                 'TRY' => 'Lirasi',
    135                 'TTD' => 'TTD',
    136                 'TWD' => 'TWD',
    137                 'TZS' => 'TZS',
    138 
    139                 // U
    140                 'UAH' => 'Hryvna',
    141                 'UGX' => 'UGX',
    142                 'USD' => 'USD',
    143                 'UZS' => 'UZS',
    144 
    145                 // V
    146                 'VND' => 'Dong',
    147 
    148                 // X
    149                 'XAF' => 'XAF',
    150                 'XOF' => 'XOF',
    151 
    152                 // Y
    153                 'YER' => 'Rial',
    154 
    155                 // Z
    156                 'ZMK' => 'ZMK',
    157                 'ZWN' => 'ZWN'
    158         );
    159 
     24function prix_objets_devises_disponibles() {
     25        $devises = array();
     26        foreach (prix_lister_devises() as $cle => $valeur) {
     27                $devises[$cle] = $valeur['symbole'];
     28        }
    16029        return $devises;
    16130}
     
    17039        include_spip('inc/devises');
    17140
    172         $devises = devises();
     41        $devises = prix_objets_devises_disponibles();
    17342        $trad = $devises[$code_devise];
    17443
    17544        return $trad;
     45}
     46
     47/**
     48 * Donne le prix d'un objet avec sa devise
     49 *
     50 * @param integer $id_objet
     51 *   L'identifiant de l'objet
     52 * @param string $objet
     53 *   L'objet
     54 *
     55 * @return string
     56 *   Le prix formaté.
     57 */
     58function prix_objet_formate($id_objet, $objet = 'article') {
     59
     60        $req = sql_fetsel('code_devise,prix', 'spip_prix_objets', 'id_objet=' . $id_objet . ' AND objet=' . sql_quote($objet));
     61
     62        $devise = isset($reg['code_devise']) ? $reg['code_devise'] : '';
     63        $prix = prix_formater($req['prix'], $devise);
     64
     65        return $prix;
     66}
     67
     68/**
     69 * Ajoute la devise à un prix
     70 *
     71 * @param mixed $prix
     72 *   Le prix
     73 * @param boolean $traduire
     74 *   Afficher le symbole de la devis, défaut true.
     75 *
     76 * @return string
     77 *   Le prix avec la devise
     78 */
     79function devise_defaut_prix($prix = '', $traduire = true) {
     80        if ($_COOKIE['spip_devise']) {
     81                $devise_defaut = $_COOKIE['spip_devise'];
     82        }
     83        else {
     84                $devise_defaut  = prix_devise_defaut();
     85        }
     86
     87        if ($prix) {
     88                $devise_defaut = prix_formater($prix, $devise_defaut);
     89        }
     90
     91        return $devise_defaut;
    17692}
    17793
     
    188104 *   Le prix formaté.
    189105 */
    190 function prix_defaut($id_objet, $objet = 'article') {
    191         prix_objet_formate($id_objet, $objet);
    192 }
    193 
    194 /**
    195  * Donne le prix d'un objet avec sa devise
    196  *
    197  * @param integer $id_objet
    198  *   L'identifiant de l'objet
    199  * @param string $objet
    200  *   L'objet
    201  *
    202  * @return string
    203  *   Le prix formaté.
    204  */
    205 function prix_objet_formate($id_objet, $objet = 'article') {
    206 
    207         $req = sql_fetsel('code_devise,prix', 'spip_prix_objets', 'id_objet=' . $id_objet . ' AND objet=' . sql_quote($objet));
    208 
    209         $devise = isset($reg['code_devise']) ? $reg['code_devise'] : '';
    210         $prix = filtres_prix_formater($req['prix'], $devise);
    211 
    212         return $prix;
    213 }
    214 
    215 /**
    216  * Ajoute la devise à un prix
    217  *
    218  * @param mixed $prix
    219  *   Le prix
    220  * @param boolean $traduire
    221  *   Afficher le symbole de la devis, défaut true.
    222  *
    223  * @return string
    224  *   Le prix avec la devise
    225  */
    226 function devise_defaut_prix($prix = '', $traduire = true) {
    227         if ($_COOKIE['spip_devise']) {
    228                 $devise_defaut = $_COOKIE['spip_devise'];
    229         }
    230         else {
    231                 $devise_defaut = $devise_defaut = prix_objets_devise_defaut();
    232         }
    233         $devise_defaut = traduire_devise($devise_defaut);
    234 
    235         if ($prix) {
    236                 $devise_defaut = $prix . ' ' . $devise_defaut;
    237         }
    238 
    239         return $devise_defaut;
    240 }
    241 
    242 /**
    243  * Donne le prix d'un objet avec sa devise.
    244  *
    245  * @deprecated 2.3.0 Utilisez prix_objet_formate($id_objet, $objet = 'article');
    246  * @param integer $id_objet
    247  *   L'identifiant de l'objet
    248  * @param string $objet
    249  *   L'objet
    250  *
    251  * @return string
    252  *   Le prix formaté.
    253  */
    254106function devise_defaut_objet($id_objet, $objet = 'article') {
    255107        prix_objet_formate($id_objet, $objet);
     
    267119                if (!$sousrubriques) {
    268120                        $rubriques = $id_parent;
    269                 }
     121                } 
    270122                else {
    271123                        $rubriques = array();
     
    275127                if ($id) {
    276128                        $retour = sql_getfetsel('id_' . $objet, 'spip_' . $objet . 's', 'id_' . $objet . '=' . $id . ' AND id_rubrique IN (' . implode(',', $rubriques) . ')');
    277                 }
     129                } 
    278130                else {
    279131                        $retour = $rubriques;
    280132                }
    281         }
     133        } 
    282134        else {
    283135                return false;
     
    287139}
    288140
    289 function rubriques_enfant($id_parent, $rubriques = array()) {
     141function rubriques_enfant($id_parent, $rubriques = array())
     142{
    290143        $id_p = '';
    291144
     
    314167 * Détermine la devise par défaut
    315168 *
    316  * @param array $config
    317  *              Les donnes de configuration de prix_objets
    318169 * @return string Code de la devise
    319170 */
    320 function prix_objets_devise_defaut($config = '') {
    321         if (!$config) {
    322                 include_spip('inc/config');
    323                 $config = lire_config('prix_objets');
    324         }
    325         $devises = isset($config['devises']) ? $config['devises'] : array();
    326         // Sinon on regarde si il ya une devise defaut valable
    327         if ($config['devise_default']) {
    328                 $devise_defaut = $config['devise_default'];
    329         } // Sinon on prend la première des devises choisies
    330         elseif (isset($devises[0])) {
    331                 $devise_defaut = $devises[0];
    332         } // Sinon on met l'Euro
    333         else {
    334                 $devise_defaut = 'EUR';
    335         }
    336 
    337         return $devise_defaut;
     171function prix_objets_devise_defaut() {
     172        return prix_devise_defaut();
    338173}
    339174
     
    359194        if ($type == 'prix_ht') {
    360195                $fonction_prix = charger_fonction('ht', 'inc/prix');
    361         }
     196        } 
    362197        else {
    363198                $fonction_prix = charger_fonction('prix', 'inc');
     
    367202        if (isset($options['mode']) and !empty($options['mode'])) {
    368203                $mode = $options['mode'];
    369         }
     204        } 
    370205        else {
    371206                include_spip('inc/config');
     
    381216
    382217                        // Séquence composé de dates.
    383                         if (isset($contexte['date_debut']) and
    384                                         isset($contexte['date_fin']) and
    385                                         include_spip('filtres/dates_outils') and
    386                                         function_exists('dates_intervalle')) {
    387 
    388                                                 $sequence = dates_intervalle($contexte['date_debut'], $contexte['date_fin'], 0, -1, $horaire, $format);
    389                                         }
    390                                         else {
    391                                                 $sequence = array();
    392                                         }
     218                        if (
     219                                isset($contexte['date_debut']) and
     220                                isset($contexte['date_fin']) and
     221                                include_spip('filtres/dates_outils') and
     222                                function_exists('dates_intervalle')
     223                        ) {
     224                                $sequence = dates_intervalle($contexte['date_debut'], $contexte['date_fin'], 0, -1, $horaire, $format);
     225                        }
     226                        else {
     227                                $sequence = array();
     228                        }
    393229                }
    394230
    395231                $nr_elements_sequence = count($sequence);
    396232                $contexte['date_fin'] = $contexte['date_debut'];
    397         }
     233        } 
    398234        else {
    399235                $nr_elements_sequence = 0;
     
    401237
    402238        $prix_source = sql_allfetsel(
    403                         'id_prix_objet,prix_total,titre',
    404                         'spip_prix_objets',
    405                         'id_prix_objet_source=0 AND objet LIKE ' . sql_quote(trim($objet)) . ' AND id_objet=' . $id_objet, '',
    406                         array(
    407                                 'rang_lien',
    408                                 'titre',
    409                                 'prix_ht'
    410                         )
    411                         );
     239                'id_prix_objet,prix_total,titre',
     240                'spip_prix_objets',
     241                'id_prix_objet_source=0 AND objet LIKE ' . sql_quote(trim($objet)) . ' AND id_objet=' . $id_objet,
     242                '',
     243                array(
     244                        'rang_lien',
     245                        'titre',
     246                        'prix_ht'
     247                )
     248        );
    412249
    413250
     
    415252        $prix_elements = array();
    416253        foreach ($prix_source as $index => $data_source) {
    417 
    418254                $id_prix_objet = $data_source['id_prix_objet'];
    419255
     
    433269                        // On établit l'extension qui définit le prix.
    434270                        foreach ($extensions as $data_extension) {
    435                                 $i ++;
     271                                $i++;
    436272                                $id_extension = $data_extension['id_extension'];
    437273
    438274                                if ($extension = charger_fonction($data_extension['extension'], 'prix_objet/', TRUE)) {
    439275                                        switch ($mode) {
    440                                                 // Si global on met les resultats positiv dans un simple tableau.
     276                                                        // Si global on met les resultats positiv dans un simple tableau.
    441277                                                case 'global':
    442278                                                        if ($applicable = $extension($id_extension, $contexte, $mode)) {
     
    458294                                                        break;
    459295                                        }
    460                                 }
     296                                } 
    461297                                else {
    462298                                        $applicables[] = 1;
  • _plugins_/prix_objets/trunk/saisies

    • Property svn:ignore
      •  

        old new  
        11.settings*
         2prix_objets.code-workspace
Note: See TracChangeset for help on using the changeset viewer.