Changeset 107683 in spip-zone


Ignore:
Timestamp:
Nov 21, 2017, 8:11:45 AM (19 months ago)
Author:
p@…
Message:

Moderniser la déclaration de la table spip_stocks. On ajoute aussi un formulaire d'édition de stock sur la fiche des produits

Location:
_plugins_/stocks/trunk
Files:
3 added
4 edited

Legend:

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

    r107674 r107683  
    1414}
    1515
    16 function stocks_declarer_tables_principales($tables_principales) {
    17         $stocks = array(
    18                 'id_stock' => 'bigint(21) not null',
    19                 'id_objet' => 'bigint(21) not null default 0',
    20                 'objet' => 'varchar(255) not null default ""',
    21                 'quantite' => 'bigint(21) not null',
    22                 'maj' => 'timestamp not null',
     16function stocks_declarer_tables_objets_sql($tables) {
     17
     18        $tables['spip_stocks'] = array(
     19                'type' => 'stock',
     20                'principale' => 'oui',
     21                'field' => array(
     22                        'id_stock' => 'bigint(21) NOT NULL',
     23                        'id_objet' => 'bigint(21) NOT NULL DEFAULT 0',
     24                        'objet' => 'varchar(255) NOT NULL DEFAULT ""',
     25                        'quantite' => 'bigint(21) NOT NULL',
     26                        'maj' => 'TIMESTAMP'
     27                ),
     28                'key' => array(
     29                        'PRIMARY KEY' => 'id_stock',
     30                        'KEY id_objet' => 'id_objet, objet'
     31                ),
     32                'champs_editables' => array('quantite', 'objet', 'id_objet'),
     33                'champs_versionnes' => array('quantite', 'objet', 'id_objet')
    2334        );
    2435
    25         $stocks_cles = array(
    26                 'PRIMARY KEY' => 'id_stock, id_objet, objet',
    27                 'KEY id_objet' => 'id_objet, objet'
    28         );
    29 
    30         $tables_principales['spip_stocks'] = array(
    31                 'field' => &$stocks,
    32                 'key' => &$stocks_cles,
    33         );
    34 
    35         return $tables_principales;
     36        return $tables;
    3637}
  • _plugins_/stocks/trunk/paquet.xml

    r107639 r107683  
    77        logo=""
    88        documentation=""
    9         schema="0.1.1"
     9        schema="1.0.0"
    1010>
    1111        <nom>Gérer des quantités et stocks</nom>
     
    1414        <licence>GPLv3</licence>
    1515
    16         <pipeline nom="declarer_tables_principales" inclure="base/stocks.php" />
     16        <pipeline nom="declarer_tables_objets_sql" inclure="base/stocks.php" />
    1717        <pipeline nom="declarer_tables_interfaces" inclure="base/stocks.php" />
    1818        <pipeline nom="formulaire_charger" inclure="stocks_pipelines.php" />
    1919        <pipeline nom="formulaire_traiter" inclure="stocks_pipelines.php" />
    2020        <pipeline nom="afficher_fiche_objet" inclure="stocks_pipelines.php" />
     21        <pipeline nom="affiche_milieu" inclure="stocks_pipelines.php" />
    2122
    2223        <necessite nom="produits" compatibilite="[1.1.25;["/>
  • _plugins_/stocks/trunk/stocks_administrations.php

    r107665 r107683  
    3232        );
    3333
     34        $maj['1.0.0'] = array(
     35                array('maj_tables', array('spip_stocks'))
     36        );
     37
    3438        include_spip('base/upgrade');
    3539        maj_plugin($nom_meta_base_version, $version_cible, $maj);
  • _plugins_/stocks/trunk/stocks_pipelines.php

    r107667 r107683  
    5959 * @param $flux
    6060 */
    61 
    6261function stocks_afficher_fiche_objet($flux) {
    6362
     
    8382}
    8483
     84function stocks_affiche_milieu($flux) {
     85
     86        if ($flux['args']['exec'] == 'produit') {
     87                $texte = recuperer_fond(
     88                        'prive/squelettes/inclure/afficher_stock',
     89                        $flux['args'] // On passe le contexte au squelette
     90                );
     91        }
     92
     93        if ($p = strpos($flux['data'], '<!--affiche_milieu-->')) {
     94                $flux['data'] = substr_replace($flux['data'], $texte, $p, 0);
     95        } else {
     96                $flux['data'] .= $texte;
     97        }
     98        return $flux;
     99}
    85100
    86101function stocks_pre_boucle($boucle) {
Note: See TracChangeset for help on using the changeset viewer.