91 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			91 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | |
| namespace nur\v\model;
 | |
| 
 | |
| /**
 | |
|  * Interface IFormManager: interface pour un gestionnaire de formulaire
 | |
|  */
 | |
| interface IFormManager {
 | |
|   /** réinitialiser l'objet */
 | |
|   function resetManager($options=null, ?array $schema=null): void;
 | |
| 
 | |
|   /** changer les options du formulaire et le schéma par défaut */
 | |
|   function push($options=null, ?array $schema=null): void;
 | |
|   /** restaurer les options du formulaire et le schéma par défaut précédents */
 | |
|   function pop(): void;
 | |
| 
 | |
|   /**
 | |
|    * tester si on est à l'intérieur d'un formulaire (i.e la méthode
 | |
|    * {@link start()} a été appelée)
 | |
|    */
 | |
|   function started(): bool;
 | |
| 
 | |
|   /** commencer un formulaire */
 | |
|   function start($options=null, ?array $schema=null): array;
 | |
| 
 | |
|   /** terminer le formulaire */
 | |
|   function end(): array;
 | |
| 
 | |
|   /**
 | |
|    * commencer une section. une section permet d'organiser un ensemble de champs
 | |
|    * de formulaires
 | |
|    *
 | |
|    * si une section est en cours, la terminer avant de commencer la nouvelle
 | |
|    * section
 | |
|    */
 | |
|   function section($options=null): array;
 | |
| 
 | |
|   /** terminer la section en cours */
 | |
|   function endSection(): array;
 | |
| 
 | |
|   /**
 | |
|    * commencer un groupe. dans un groupe, tous les éléments sont automatiquement
 | |
|    * "nus", parce que c'est le groupe qui organise la mise en page des éléments
 | |
|    * qui le composent.
 | |
|    *
 | |
|    * si un groupe est en cours, le terminer avant de commencer le nouveau groupe
 | |
|    */
 | |
|   function group($options=null): array;
 | |
| 
 | |
|   /** terminer le groupe en cours */
 | |
|   function endGroup(): array;
 | |
| 
 | |
|   /** valeur fixe */
 | |
|   function fixed($label, string $name, $value, ?array $options=null): array;
 | |
| 
 | |
|   /** champ caché */
 | |
|   function hidden(string $name, $value, ?array $options=null): array;
 | |
|   function hiddens(array $values, string ...$names): array;
 | |
| 
 | |
|   /** champ texte */
 | |
|   function text($label, string $name, $value, ?array $options=null): array;
 | |
|   function texts($label, array $values, string ...$names): array;
 | |
| 
 | |
|   /** champ mot de passe */
 | |
|   function password($label, string $name, $value, ?array $options=null): array;
 | |
| 
 | |
|   /** champ liste de valeurs */
 | |
|   function select($label, string $name, $value, ?array $options=null): array;
 | |
| 
 | |
|   /** case à cocher */
 | |
|   function checkbox($text, string $name, $value, ?bool $checked=null, ?array $options=null): array;
 | |
|   /** liste de cases à cocher */
 | |
|   function checkboxes($label, string $name, $values, ?array $options=null): array;
 | |
| 
 | |
|   /** bouton radio */
 | |
|   function radiobutton($text, string $name, $value, ?bool $checked=null, ?array $options=null): array;
 | |
|   /** liste de boutons radio */
 | |
|   function radiobuttons($label, string $name, $value, ?array $options): array;
 | |
| 
 | |
|   /** champ zone de texte */
 | |
|   function textarea($label, string $name, $value, ?array $options=null): array;
 | |
| 
 | |
|   /** champ envoi de fichier */
 | |
|   function file($label, string $name, ?array $options=null): array;
 | |
| 
 | |
|   /** soumission de formulaire */
 | |
|   function submit($options=null): array;
 | |
| 
 | |
|   /** raz de formulaire */
 | |
|   function reset($options=null): array;
 | |
| }
 |