Changeset 107684 in spip-zone


Ignore:
Timestamp:
Nov 21, 2017, 8:40:07 AM (16 months ago)
Author:
p@…
Message:

Refactoring de la fonction set_quantite : utiliser l'API objet de SPIP

File:
1 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/stocks/trunk/inc/stocks.php

    r107673 r107684  
    3434*/
    3535function set_quantite($objet, $id_objet, $quantite) {
    36 
    37         $table_stocks = table_objet_sql('stocks');
    3836        $quantite = intval($quantite);
    3937
    40         $insert = sql_insertq(
    41                 $table_stocks,
    42                 array(
    43                         'objet' => $objet,
    44                         'id_objet' => intval($id_objet),
    45                         'quantite' => $quantite
    46                 )
     38        // On cherche l'id_stock de l'objet
     39        $id_stock = sql_getfetsel(
     40                'id_stock',
     41                'spip_stocks',
     42                array('objet='.sql_quote($objet), 'id_objet='.intval($id_objet))
    4743        );
    4844
    49         if (!$insert) {
    50                 $update = sql_update(
    51                         $table_stocks,
    52                         array(
    53                                 'quantite' => intval($quantite)
    54                         ),
    55                         array(
    56                                 'objet = '.sql_quote($objet),
    57                                 'id_objet = '.intval($id_objet)
    58                         )
    59                 );
     45        include_spip('action/editer_objet');
     46        if (!$id_stock) {
     47                objet_inserer('stock', null, null);
    6048        }
     49        $err = objet_modifier('stocks', $id_stock, array('quantite' => $quantite));
    6150
    62         if ($insert || $update) {
    63                 return $quantite;
    64         } else {
    65                 return false;
    66         }
     51        return ($err) ? $err : $quantite;
    6752}
    6853
Note: See TracChangeset for help on using the changeset viewer.