Lors de la declaration d'un objet, on peut le declarer via un objet qui
précise les types de chaine de langue. c'est facultatif
This commit is contained in:
parent
f41d6a6e8b
commit
bb8283f026
4 changed files with 45 additions and 13 deletions
34
README.md
34
README.md
|
@ -1,18 +1,38 @@
|
|||
# Gamuform
|
||||
Plugin pour générer des formulaires via saisies et des vues via gamutable semi automatiquement.
|
||||
|
||||
Plugin pour générer des formulaires et des vues via gamutable semi automatiquement.
|
||||
Il suffit de déclarer la globals
|
||||
## Déclaration des objets
|
||||
Il suffit de déclarer la `$GLOBALS['gamuform_objets']`
|
||||
* soit simplement : `objet => nom de l'objet`
|
||||
* soit plus détaillé :
|
||||
```
|
||||
objet => [
|
||||
'singulier' => 'nom_singulier',
|
||||
'pluriel' => _T('prefix:nom_pluriel'),
|
||||
'creer' => 'créer un nouvel xxx'
|
||||
]
|
||||
```
|
||||
exemple :
|
||||
|
||||
```php
|
||||
$GLOBALS['gamuform_objets'] = array_merge(
|
||||
$GLOBALS['gamuform_objets'] ?? [],
|
||||
[ 'osdve_interventions_type' => "Types d'intervention"]
|
||||
[
|
||||
'app_competition' => [
|
||||
'singulier' => 'competition',
|
||||
'pluriel' => 'compétitions',
|
||||
'creer' => 'Créer une nouvelle compétition'
|
||||
],
|
||||
'app_competiteur' => "compétiteurs",
|
||||
]
|
||||
);
|
||||
```
|
||||
|
||||
|
||||
## Configuration des objets pour les saisies et pour l'affichage avec gamutable
|
||||
Et de creer une fonction gamuform/mon_objet.php avec une fonction qui renvoie l'array des saisies
|
||||
> il y a un exemple gamuform/exemple.php
|
||||
|
||||
|
||||
Ensuite, il suffit d'appeler cette page , en paramettre le nom de l'objet voulu:
|
||||
> spip.php?page=voir_gamuform&objet=auteur
|
||||
|
||||
## Page
|
||||
Il suffit d'appeler cette page `spip.php?page=voir_gamuform`, en paramettre le nom de l'objet voulu `&objet=auteur` :
|
||||
`spip.php?page=voir_gamuform&objet=auteur`
|
||||
|
|
|
@ -81,12 +81,20 @@ function gamuform_objet_autoriser(string $objet):bool {
|
|||
return false;
|
||||
}
|
||||
|
||||
function gamuform_nom_objet($objet):string {
|
||||
$nom = '';
|
||||
function gamuform_nom_objet($objet, $quoi = 'pluriel'):string {
|
||||
if (gamuform_objet_autoriser($objet)) {
|
||||
$nom = $GLOBALS['gamuform_objets'][$objet];
|
||||
if (is_array($GLOBALS['gamuform_objets'][$objet])) {
|
||||
return $GLOBALS['gamuform_objets'][$objet][$quoi];
|
||||
} else {
|
||||
|
||||
if ($quoi === 'creer') {
|
||||
return 'Nouveau';
|
||||
} else {
|
||||
return $GLOBALS['gamuform_objets'][$objet];
|
||||
}
|
||||
return $nom;
|
||||
}
|
||||
}
|
||||
return '';
|
||||
}
|
||||
/**
|
||||
* recuperation des champs de l'objet pour les saisies
|
||||
|
|
|
@ -5,7 +5,11 @@
|
|||
<div class="tableau">
|
||||
|
||||
[(#AUTORISER{creer, gamuform, 0, '', #ARRAY{objet, #ENV{objet}}}|oui)
|
||||
[(#SET{lien,<a class="modalbox btn btn-gamuform" href="[(#URL_PAGE{editer_gamuform}|parametre_url{objet,#ENV{objet}}|parametre_url{redirect,#SELF})]"><i class="osdve-plus-circle"></i> Nouveau</a>})]
|
||||
[(#SET{lien,<a class="modalbox btn btn-gamuform"
|
||||
href="[(#URL_PAGE{editer_gamuform}|parametre_url{objet,#ENV{objet}}|parametre_url{redirect,#SELF})]">
|
||||
<i class="osdve-plus-circle"></i>
|
||||
[(#ENV{objet}|gamuform_nom_objet{creer})]
|
||||
</a>})]
|
||||
]
|
||||
#SET{url,spip.php?page=json_gamuform.json&objet=}
|
||||
#SET{url,#GET{url}|concat{#ENV{objet}}}
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<paquet
|
||||
prefix="gamuform"
|
||||
categorie="outil"
|
||||
version="1.1.0"
|
||||
version="1.1.1"
|
||||
etat="dev"
|
||||
compatibilite="[4.0.0;4.0.*]"
|
||||
logo="prive/themes/spip/images/gamuform-xx.svg"
|
||||
|
|
Loading…
Add table
Reference in a new issue