form option alignement + gabarit

This commit is contained in:
fredtempez 2022-01-20 09:33:29 +01:00
parent 30edec7ff7
commit 29ba48850c
3 changed files with 109 additions and 76 deletions

View File

@ -79,22 +79,26 @@ class form extends common {
'100' => '100%' '100' => '100%'
]; ];
public static $formOffset = [ public static $optionOffset = [
'none' => 'Aucune', 0 => 'Aucune',
'1' => 'Une colonne', 1 => 'Une colonne',
'2' => 'Deux colonnes', 2 => 'Deux colonnes'
'3' => 'Trois colonnes',
'4' => 'Quatre colonnes',
]; ];
public static $formWidth = [ public static $optionWidth = [
'6' => 'Six colonne', 6 => 'Six colonnes',
'7' => 'Sept colonnes', 7 => 'Sept colonnes',
'8' => 'Huit colonnes', 8 => 'Huit colonnes',
'9' => 'Neuf colonnes', 9 => 'Neuf colonnes',
'10' => 'Dix colonnes', 10 => 'Dix colonnes',
'11' => 'Onze colonnes', 11 => 'Onze colonnes',
'12' => 'Douze colonnes', 12 => 'Douze colonnes',
];
public static $optionAlign = [
'' => 'A gauche',
'textAlignCenter' => 'Au centre',
'textAlignRight' => 'A droite'
]; ];
@ -156,6 +160,12 @@ class form extends common {
} }
// Soumission du formulaire // Soumission du formulaire
if ($this->isPost()) { if ($this->isPost()) {
// Débordement
$width = $this->getInput('formOptionWidth');
if ($this->getInput('formOptionWidth',helper::FILTER_INT) + $this->getInput('formOptionOffset',helper::FILTER_INT) > 12 ) {
$width = (string) $this->getInput('formOptionWidth',helper::FILTER_INT) - $this->getInput('formOptionOffset',helper::FILTER_INT);
}
// Configuration // Configuration
$this->setData([ $this->setData([
'module', 'module',
@ -172,7 +182,10 @@ class form extends common {
'replyto' => $this->getInput('formOptionMailReplyTo', helper::FILTER_BOOLEAN), 'replyto' => $this->getInput('formOptionMailReplyTo', helper::FILTER_BOOLEAN),
'signature' => $this->getInput('formOptionSignature'), 'signature' => $this->getInput('formOptionSignature'),
'logoUrl' => $this->getInput('formOptionLogo'), 'logoUrl' => $this->getInput('formOptionLogo'),
'logoWidth' => $this->getInput('formOptionLogoWidth') 'logoWidth' => $this->getInput('formOptionLogoWidth'),
'offset' =>$this->getInput('formOptionOffset'),
'width' =>$width,
'align' =>$this->getInput('formOptionAlign'),
] ]
]); ]);
// Génération des données vides // Génération des données vides

View File

@ -1,5 +1,9 @@
<?php if($this->getData(['module', $this->getUrl(0), 'input'])): ?> <?php if($this->getData(['module', $this->getUrl(0), 'input'])): ?>
<div class="col10 offset1"> <div class="row <?php echo $this->getData(['module', $this->getUrl(0), 'config', 'align']);?>">
<div class="<?php
echo 'col' . $this->getData(['module', $this->getUrl(0), 'config', 'width']) . ' ';
echo $this->getData(['module', $this->getUrl(0), 'config', 'offset']) !== 0 ? 'offset' . $this->getData(['module', $this->getUrl(0), 'config', 'offset']) : '';
?>">
<?php echo template::formOpen('formForm'); ?> <?php echo template::formOpen('formForm'); ?>
<?php foreach($this->getData(['module', $this->getUrl(0), 'input']) as $index => $input): ?> <?php foreach($this->getData(['module', $this->getUrl(0), 'input']) as $index => $input): ?>
<?php if($input['type'] === $module::TYPE_MAIL): ?> <?php if($input['type'] === $module::TYPE_MAIL): ?>
@ -63,6 +67,8 @@
</div> </div>
</div> </div>
</div> </div>
</div>
</div>
<?php echo template::formClose(); ?> <?php echo template::formClose(); ?>
<?php else: ?> <?php else: ?>
<?php echo template::speech('Le formulaire ne contient aucun champ.'); ?> <?php echo template::speech('Le formulaire ne contient aucun champ.'); ?>

View File

@ -132,10 +132,24 @@
<h4>Gabarit</h4> <h4>Gabarit</h4>
<div class="row"> <div class="row">
<div class="col6"> <div class="col6">
<?php echo template::select('formOptionAlign', $module::$optionAlign, [
'label' => 'Alignement du formulaire',
'selected' => $this->getData(['module', $this->getUrl(0), 'config', 'align'])
]); ?>
</div>
</div>
<div class="row">
<div class="col6">
<?php echo template::select('formOptionOffset', $module::$optionOffset, [
'label' => 'Décalage à gauche',
'selected' => $this->getData(['module', $this->getUrl(0), 'config', 'offset'])
]); ?>
</div> </div>
<div class="col6"> <div class="col6">
<?php echo template::select('formOptionWidth', $module::$optionWidth, [
'label' => 'Largeur',
'selected' => $this->getData(['module', $this->getUrl(0), 'config', 'width'])
]); ?>
</div> </div>
</div> </div>
</div> </div>