35 lines
		
	
	
		
			971 B
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			35 lines
		
	
	
		
			971 B
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | |
| namespace nur\v\model;
 | |
| 
 | |
| interface IMenuManager {
 | |
|   const MENU_SCHEMA = [
 | |
|     "brand" => ["?content", null],
 | |
|     "items" => ["?array[]", null],
 | |
|   ];
 | |
| 
 | |
|   const ITEM_SCHEMA = [
 | |
|     "text" => ["?content", null],
 | |
|     "url" => ["?string", null],
 | |
|     "prefix" => ["?content", null, "préfixe à ajouter avant text"],
 | |
|     "suffix" => ["?content", null, "suffixe à ajouter après text"],
 | |
|     "params" => ["?array", null],
 | |
|     "show_active" => ["?bool", null, "faut-il afficher l'élément comme actif, même s'il n'est pas sélectionné?"],
 | |
|     "items" => ["?array[]", null],
 | |
|     "id" => ["?string", null],
 | |
|     "brand" => ["?content", null],
 | |
|     "accesskey" => ["?string", null],
 | |
|     "target" => ["?string", null],
 | |
|     "perm" => ["?array", null],
 | |
|     "role" => ["?array", null],
 | |
|   ];
 | |
| 
 | |
|   function init($menu, ?string $selectedId): void;
 | |
| 
 | |
|   const GET_RESULT_SCHEMA = [
 | |
|     "brand" => ["?string", null],
 | |
|     "navbar_items" => ["?array", null],
 | |
|   ];
 | |
| 
 | |
|   function get(): array;
 | |
| }
 |