forme v3 suite

This commit is contained in:
fredtempez 2022-01-20 09:34:04 +01:00
parent 29ba48850c
commit bb9dbdd799
2 changed files with 121 additions and 118 deletions

3
module/form/changes.md Normal file
View File

@ -0,0 +1,3 @@
# Version 3
- Déplacement des options de formulaires
- Gabarit du formulaire sur la page

View File

@ -1,135 +1,56 @@
<?php echo template::formOpen('formOptionForm'); ?> <?php echo template::formOpen('formOptionForm'); ?>
<div class="row"> <div class="row">
<div class="col2"> <div class="col2">
<?php echo template::button('formOptionBack', [ <?php echo template::button('formOptionBack', [
'class' => 'buttonGrey', 'class' => 'buttonGrey',
'href' => helper::baseUrl() . $this->getUrl(0) . '/config', 'href' => helper::baseUrl() . $this->getUrl(0) . '/config',
'ico' => 'left', 'ico' => 'left',
'value' => 'Retour' 'value' => 'Retour'
]); ?> ]); ?>
</div> </div>
<div class="col2 offset8"> <div class="col2 offset8">
<?php echo template::submit('formOptionSubmit'); ?> <?php echo template::submit('formOptionSubmit'); ?>
</div>
</div>
<div class="row">
<div class="col12">
<div class="block">
<h4>Validation du formulaire</h4>
<div class="row">
<div class="col6">
<?php echo template::checkbox('formOptionCaptcha', true, 'Captcha', [
'checked' => $this->getData(['module', $this->getUrl(0), 'config', 'captcha'])
]); ?>
</div>
<div class="col6">
<?php echo template::text('formOptionButton', [
'help' => 'Laissez vide afin de conserver le texte par défaut.',
'label' => 'Etiquette du bouton de soumission',
'value' => $this->getData(['module', $this->getUrl(0), 'config', 'button'])
]); ?>
</div>
</div>
<div class="row">
<div class="col6">
<?php echo template::checkbox('formOptionPageIdToggle', true, 'Redirection après soumission du formulaire', [
'checked' => (bool) $this->getData(['module', $this->getUrl(0), 'config', 'pageId'])
]); ?>
</div>
<div class="col5">
<?php echo template::select('formOptionPageId', $module::$pages, [
'classWrapper' => 'displayNone',
'label' => 'Page du site :',
'selected' => $this->getData(['module', $this->getUrl(0), 'config', 'pageId'])
]); ?>
</div>
</div>
</div> </div>
</div> </div>
</div> <div class="row">
<div class="row"> <div class="col12">
<div class="col12"> <div class="block">
<div class="block"> <h4>Validation du formulaire</h4>
<h4>Courriel</h4>
<?php echo template::checkbox('formOptionMailOptionsToggle', true, 'Envoyer par mail les données saisies :', [
'checked' => (bool) $this->getData(['module', $this->getUrl(0), 'config', 'group']) ||
!empty($this->getData(['module', $this->getUrl(0), 'config', 'user'])) ||
!empty($this->getData(['module', $this->getUrl(0), 'config', 'mail'])),
'help' => 'Sélectionnez au moins un groupe, un utilisateur ou saisissez un email. Votre serveur doit autoriser les envois de mail.'
]); ?>
<div id="formOptionMailOptions" class="displayNone">
<div class="row"> <div class="row">
<div class="col12"> <div class="col6">
<?php echo template::text('formOptionSubject', [ <?php echo template::checkbox('formOptionCaptcha', true, 'Captcha', [
'checked' => $this->getData(['module', $this->getUrl(0), 'config', 'captcha'])
]); ?>
</div>
<div class="col6">
<?php echo template::text('formOptionButton', [
'help' => 'Laissez vide afin de conserver le texte par défaut.', 'help' => 'Laissez vide afin de conserver le texte par défaut.',
'label' => 'Sujet du mail', 'label' => 'Etiquette du bouton de soumission',
'value' => $this->getData(['module', $this->getUrl(0), 'config', 'subject']) 'value' => $this->getData(['module', $this->getUrl(0), 'config', 'button'])
]); ?>
</div>
</div>
<?php
// Element 0 quand aucun membre a été sélectionné
$groupMembers = [''] + $module::$groupNews;
?>
<div class="row">
<div class="col4">
<?php echo template::select('formOptionGroup', $groupMembers, [
'label' => 'Aux groupes à partir de',
'selected' => $this->getData(['module', $this->getUrl(0), 'config', 'group']),
'help' => 'Editeurs = éditeurs + administrateurs<br/> Membres = membres + éditeurs + administrateurs'
]); ?>
</div>
<div class="col4">
<?php echo template::select('formOptionUser', $module::$listUsers, [
'label' => 'A un membre',
'selected' => array_search($this->getData(['module', $this->getUrl(0), 'config', 'user']),$module::$listUsers)
]); ?>
</div>
<div class="col4">
<?php echo template::text('formOptionMail', [
'label' => 'A une adresse email',
'value' => $this->getData(['module', $this->getUrl(0), 'config', 'mail']),
'help' => 'Un email ou une liste de diffusion'
]); ?>
</div>
</div>
<div class="row">
<div class="col4">
<?php echo template::select('formOptionSignature', $module::$signature, [
'label' => 'Sélectionner le type de signature',
'selected' => $this->getData(['module', $this->getUrl(0), 'config', 'signature'])
]); ?>
</div>
<div class="col4">
<?php echo template::file('formOptionLogo', [
'help' => 'Sélectionnez le logo du site',
'label' => 'Logo',
'value' => $this->getData(['module', $this->getUrl(0), 'config', 'logoUrl'])
]); ?>
</div>
<div class="col4">
<?php echo template::select('formOptionLogoWidth', $module::$logoWidth, [
'label' => 'Sélectionner la largeur du logo',
'selected' => $this->getData(['module', $this->getUrl(0), 'config', 'logoWidth'])
]); ?> ]); ?>
</div> </div>
</div> </div>
<div class="row"> <div class="row">
<div class="col6"> <div class="col6">
<?php echo template::checkbox('formOptionMailReplyTo', true, 'Répondre à l\'expéditeur depuis le mail de notification', [ <?php echo template::checkbox('formOptionPageIdToggle', true, 'Redirection après soumission du formulaire', [
'checked' => (bool) $this->getData(['module', $this->getUrl(0), 'config', 'replyto']), 'checked' => (bool) $this->getData(['module', $this->getUrl(0), 'config', 'pageId'])
'help' => 'Cette option permet de réponse directement à l\'expéditeur du message si celui-ci a indiqué un email valide.' ]); ?>
]); ?> </div>
<div class="col5">
<?php echo template::select('formOptionPageId', $module::$pages, [
'classWrapper' => 'displayNone',
'label' => 'Page du site :',
'selected' => $this->getData(['module', $this->getUrl(0), 'config', 'pageId'])
]); ?>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
</div> <div class="row">
<div class="row"> <div class="col12">
<div class="col12"> <div class="block">
<div class="block"> <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, [ <?php echo template::select('formOptionAlign', $module::$optionAlign, [
@ -146,7 +67,7 @@
]); ?> ]); ?>
</div> </div>
<div class="col6"> <div class="col6">
<?php echo template::select('formOptionWidth', $module::$optionWidth, [ <?php echo template::select('formOptionWidth', $module::$optionWidth, [
'label' => 'Largeur', 'label' => 'Largeur',
'selected' => $this->getData(['module', $this->getUrl(0), 'config', 'width']) 'selected' => $this->getData(['module', $this->getUrl(0), 'config', 'width'])
]); ?> ]); ?>
@ -155,4 +76,83 @@
</div> </div>
</div> </div>
</div> </div>
<div class="row">
<div class="col12">
<div class="block">
<h4>Courriel</h4>
<?php echo template::checkbox('formOptionMailOptionsToggle', true, 'Envoyer par mail les données saisies :', [
'checked' => (bool) $this->getData(['module', $this->getUrl(0), 'config', 'group']) ||
!empty($this->getData(['module', $this->getUrl(0), 'config', 'user'])) ||
!empty($this->getData(['module', $this->getUrl(0), 'config', 'mail'])),
'help' => 'Sélectionnez au moins un groupe, un utilisateur ou saisissez un email. Votre serveur doit autoriser les envois de mail.'
]); ?>
<div id="formOptionMailOptions" class="displayNone">
<div class="row">
<div class="col12">
<?php echo template::text('formOptionSubject', [
'help' => 'Laissez vide afin de conserver le texte par défaut.',
'label' => 'Sujet du mail',
'value' => $this->getData(['module', $this->getUrl(0), 'config', 'subject'])
]); ?>
</div>
</div>
<?php
// Element 0 quand aucun membre a été sélectionné
$groupMembers = [''] + $module::$groupNews;
?>
<div class="row">
<div class="col4">
<?php echo template::select('formOptionGroup', $groupMembers, [
'label' => 'Aux groupes à partir de',
'selected' => $this->getData(['module', $this->getUrl(0), 'config', 'group']),
'help' => 'Editeurs = éditeurs + administrateurs<br/> Membres = membres + éditeurs + administrateurs'
]); ?>
</div>
<div class="col4">
<?php echo template::select('formOptionUser', $module::$listUsers, [
'label' => 'A un membre',
'selected' => array_search($this->getData(['module', $this->getUrl(0), 'config', 'user']),$module::$listUsers)
]); ?>
</div>
<div class="col4">
<?php echo template::text('formOptionMail', [
'label' => 'A une adresse email',
'value' => $this->getData(['module', $this->getUrl(0), 'config', 'mail']),
'help' => 'Un email ou une liste de diffusion'
]); ?>
</div>
</div>
<div class="row">
<div class="col4">
<?php echo template::select('formOptionSignature', $module::$signature, [
'label' => 'Sélectionner le type de signature',
'selected' => $this->getData(['module', $this->getUrl(0), 'config', 'signature'])
]); ?>
</div>
<div class="col4">
<?php echo template::file('formOptionLogo', [
'help' => 'Sélectionnez le logo du site',
'label' => 'Logo',
'value' => $this->getData(['module', $this->getUrl(0), 'config', 'logoUrl'])
]); ?>
</div>
<div class="col4">
<?php echo template::select('formOptionLogoWidth', $module::$logoWidth, [
'label' => 'Sélectionner la largeur du logo',
'selected' => $this->getData(['module', $this->getUrl(0), 'config', 'logoWidth'])
]); ?>
</div>
</div>
<div class="row">
<div class="col6">
<?php echo template::checkbox('formOptionMailReplyTo', true, 'Répondre à l\'expéditeur depuis le mail de notification', [
'checked' => (bool) $this->getData(['module', $this->getUrl(0), 'config', 'replyto']),
'help' => 'Cette option permet de réponse directement à l\'expéditeur du message si celui-ci a indiqué un email valide.'
]); ?>
</div>
</div>
</div>
</div>
</div>
</div>
</div> </div>