déclarer les champs pour le formulaire prix

- utiliser l'api saisies, adaptation prix_objets 1.8.0
v1^2
abelass@gmail.com 6 years ago
parent 63131b3bc0
commit 9dcac05d27

2
.gitattributes vendored

@ -6,8 +6,6 @@ base/declinaisons.php -text
formulaires/configurer_declinaisons.html -text svneol=unset#text/plain
formulaires/editer_declinaison.html -text
formulaires/editer_declinaison.php -text
formulaires/inc-prix_affichage.html -text
formulaires/inc-prix_champ.html -text
formulaires/panier_declinaison.html -text
formulaires/panier_declinaison.php -text
formulaires/prix_declinaison.html -text

@ -1,9 +1,14 @@
<?php
/**
* Plugin Déclinaisons Prix
* (c) 2012 Rainer Müller
* Licence GNU/GPL
* Fichier gérant l'installation et désinstallation du plugin Déclinaisons Prix
*
* @plugin Déclinaisons Prix
* @copyright 2012 - 2018
* @author Rainer Müller
* @licence GNU/GPL
* @package SPIP\Reservation_evenement\Installation
*/
if (!defined('_ECRIRE_INC_VERSION'))
return;

@ -1,9 +1,14 @@
<?php
/**
* Plugin Déclinaisons Prix
* (c) 2012 Rainer Müller
* Licence GNU/GPL
* Définit les autorisations du plugin Déclinaisons Prix
*
* @plugin Déclinaisons Prix
* @copyright 2012 - 2018
* @author Rainer Müller
* @licence GNU/GPL
* @package SPIP\Reservation_evenement\Autorisations
*/
if (!defined('_ECRIRE_INC_VERSION'))
return;

@ -1,48 +1,26 @@
<?php
/**
* Plugin Déclinaisons Prix
* (c) 2012 Rainer Müller
* Licence GNU/GPL
* Utilisations de pipelines par Déclinaisons Prix
*
* @plugin Déclinaisons Prix
* @copyright 2012 - 2018
* @author Rainer Müller
* @licence GNU/GPL
* @package SPIP\Promotions_commandes\Pipelines
*/
if (!defined('_ECRIRE_INC_VERSION'))
return;
function declinaisons_recuperer_fond($flux) {
$fond = $flux['args']['fond'];
$contexte = $flux['args']['contexte'];
// inclure le champ déclinaison
if ($fond == 'formulaires/prix') {
include_spip('inc/config');
$afficher_prix = recuperer_fond('formulaires/inc-prix_affichage', $contexte);
$declinaison_champs = recuperer_fond('formulaires/inc-prix_champ', $contexte);
$patterns = array(
'/<!--fini champs!-->/',
'/<div class="liste prix">(.*?)<\/div>/ims'
);
$replacements = array(
'<!--fini champs!-->' . $declinaison_champs,
$afficher_prix
);
$rep = preg_replace($patterns, $replacements, $flux['data']['texte'], 1);
$flux['data']['texte'] = $rep;
}
return $flux;
}
function declinaisons_formulaire_charger($flux) {
$form = $flux['args']['form'];
// cré un contact si pas encore existant
if ($form == 'prix') {
$flux['data']['_hidden'] .= '<input type="hidden" name="objet_titre" value="declinaison">';
}
return ($flux);
}
// declare l'object pour le Plugin shop https://github.com/abelass/shop
/**
* Declare l'object pour le Plugin shop https://github.com/abelass/shop.
*
* @pipeline shop_objets
*
* @param array $flux
* Données du pipeline
* @return array
*/
function declinaisons_shop_objets($flux) {
$flux['data']['declinaisons'] = array(
'action' => 'declinaisons',
@ -52,3 +30,44 @@ function declinaisons_shop_objets($flux) {
return $flux;
}
/**
*
* @pipeline prix_objet_champs_extras
*
* @param array $flux
* Données du pipeline
* @return array
*/
function declinaisons_prix_objet_champs_extras($flux) {
$flux['data'] = array (
array(
'saisie' => 'hidden',
'options' => array(
'nom' => 'prix_extension_objet',
'defaut' => 'declinaison',
)
),
array(
'saisie' => 'declinaisons',
'options' => array(
'nom' => 'id_prix_extension_objet',
'label' => _T('declinaison:choisir_declinaison'),
'option_intro' => _T('declinaison:info_aucun_declinaison'),
'defaut' => $flux['id_prix_extension_objet'],
'texte' => 'texte',
)
),
array(
'saisie' => 'ajouter_action',
'options' => array(
'nom' => 'ajouter_declinaison',
'label_action' => _T('declinaison:icone_creer_declinaison'),
'action' => 'declinaison_edit',
)
),
);
return $flux;
}

@ -1,41 +0,0 @@
<B_prix>
<table class='spip liste'>
[<caption><strong class="caption">(#ENV*{titre,#GRAND_TOTAL|singulier_ou_pluriel{declinaison:info_1_prix,declinaison:info_nb_prix}})</strong></caption>]
<thead>
<tr class='first_row'>
<th class='prix' scope='col'><:prix_objets:info_prix:></th>
<th class='statut' scope='col'><:prix_objets:devises_choisis:></th>
<th class='taxes' scope='col'><:prix_objets:taxes:></th>
<th class='titre' scope='col'><:declinaison:label_titre:></th>
<th class='titre' scope='col'><:prix_objets:supprimer:></th>
</tr>
</thead>
<tbody>
<BOUCLE_prix(POUR){tableau #ENV{prix_choisis}}>
[(#VALEUR|table_valeur{prix_ht}|!={0.00}|?{
#SET{prix,#VALEUR|table_valeur{prix_ht}}
#SET{taxes,<:prix_objets:prix_ht:>}
,
#SET{prix,#VALEUR|table_valeur{prix}}
#SET{taxes,<:prix_objets:prix_ttc:>}
})]
<tr class='[(#COMPTEUR_BOUCLE|alterner{row_odd,row_even})]'>
<td>#GET{prix}</td>
<td>[(#VALEUR|table_valeur{code_devise}|traduire_devise)]</td>
<td>#GET{taxes}</td>
<td>
#VALEUR{titre}
</td>
<td>
<a class="ajax" href="[(#URL_ACTION_AUTEUR{eliminer_prix,[(#VALEUR|table_valeur{id_prix_objet})],[(#SELF|parametre_url{retour_action,oui})]})]#edition_prix" title="<:prix_objets:supprimer:>"> <img src="#CHEMIN_IMAGE{supprimer-12.png}" /></a>
</td>
</tr>
</BOUCLE_prix>
</tbody>
</table>
</B_prix>

@ -1,12 +0,0 @@
<li>
<label><:declinaison:choisir_declinaison:></label>
<select name="id_objet_titre" id="id_objet_titre" class="id_objet_titre" size="1">
<option value="0"><:declinaison:info_aucun_declinaison:></option>
<BOUCLE_declinaisons(DECLINAISONS){par num titre, titre}{id_declinaison !IN #ENV{declinaisons_choisis}}>
<option value="#ID_DECLINAISON"[(#ID_DECLINAISON|=={#ENV{id_objet_titre}}|oui) selected="selected"]>#TITRE</option>
</BOUCLE_declinaisons>
</select>
[(#SET{redirect,#SELF|parametre_url{retour_action,oui}})]
[(#AUTORISER{creer,declinaison})[(#URL_ECRIRE{declinaison_edit,new=oui}|parametre_url{redirect,#GET{redirect}#edition_prix}|icone_verticale{<:declinaison:icone_creer_declinaison:>,declinaison,new,right})]
]
</li>

@ -25,11 +25,9 @@ $GLOBALS[$GLOBALS['idx_lang']] = array(
'icone_creer_declinaison' => 'Créer une déclinaison',
'icone_modifier_declinaison' => 'Modifier cette déclinaison',
'info_1_declinaison' => 'Une déclinaison',
'info_1_prix' => 'Un prix attaché',
'info_aucun_declinaison' => 'Aucune déclinaison',
'info_declinaisons_auteur' => 'Les déclinaisons de cet auteur',
'info_nb_declinaisons' => '@nb@ déclinaisons',
'info_nb_prix' => '@nb@ prix attachés',
// L
'label_descriptif' => 'Descriptif',

@ -1,7 +1,7 @@
<paquet
prefix="declinaisons"
categorie="communication"
version="1.1.1"
version="2.0.0"
etat="test"
compatibilite="[3.0.5;3.2.*]"
logo="prive/themes/spip/images/declinaisons-64.png"
@ -16,7 +16,7 @@
<licence>GNU/GPL</licence>
<necessite nom="saisies" compatibilite="[2.19.3;]" />
<necessite nom="prix_objets" compatibilite="[1.7.9;]" />
<necessite nom="prix_objets" compatibilite="[1.8.0;]" />
<utilise nom="shop" compatibilite="[1.1.0;]" />
<pipeline nom="autoriser" inclure="declinaisons_autorisations.php" />
@ -24,9 +24,8 @@
<pipeline nom="declarer_tables_objets_sql" inclure="base/declinaisons.php" />
<pipeline nom="declarer_tables_interfaces" inclure="base/declinaisons.php" />
<pipeline nom="declarer_tables_principales" inclure="base/declinaisons.php" />
<pipeline nom="recuperer_fond" inclure="declinaisons_pipelines.php" />
<pipeline nom="formulaire_charger" inclure="declinaisons_pipelines.php" />
<pipeline nom="shop_objets" inclure="declinaisons_pipelines.php" />
<pipeline nom="prix_objet_champs_extras" inclure="declinaisons_pipelines.php" />
<menu nom="declinaisons" titre="declinaison:titre_declinaisons" parent="menu_edition" icone="images/declinaison-16.png" action="declinaisons" />
<menu nom="declinaison_creer" titre="declinaison:icone_creer_declinaison" parent="outils_rapides" icone="images/declinaison-new-16.png" action="declinaison_edit" parametres="new=oui" />