Les modules de type pages, permettent de remplacer les pages appartenant au dossier content.
Elle intègres la totalité de leurs fonctions, et permettent donc de diminuer le nombre de fichier.
Élément modulaire, elle utilise des fichier de langue en .txt.
L’ensemble de la structure permet aussi d’appeler certaine methode en ajax, et donc de diminuer le nombre de click et/ou diminuer le nombre de rechargement de page.
Interface associé
Les interfaces pour les module de type page sont :
implements ExtModPage, InterfacedTJsonS {
...
}
L’interface ExtModPage et obligatoire, et impose les méthodes minimum de la class de module
public static function load_db_values($ID);
public function display_view();
public function check_action($actions);
public function get_header();
}
Interface InterfacedTJsonS
Cet interface, spécifique au listing, et élément affiché en listing, avec saut de page ; Dans ce cas, ce block fait un appel ajax, les méthodes definie prennent en charge ces appels.
public static function tep_get_modele();
public static function tep_get_list();
}
Pour exploiter cette fonctionnalité, il est nécessaire de définir la constante JSONSTATMENT pour déclencher les éléments js correspondant du core
ex :
define('JSONSTATMENT', 'mod=page&type='.self::$code);
Interface InterfacedInnerHtml
cet interface, complementaire du precedent apporte la possibilité d’obtenir un detail pour chaque ligne du tableau a deplier. la requete est assuré en ajax.
public static function detail_row_page($ID);
}
Pour mettre en oeuvre le detail dépliant d’une ligne, est une fois l’interface implémentés sur le module, il faut definir la constante AJAXSTATMENTDETAIL dans le constructeur du module . C’est cette constante qui activera les elements js du core.
ex :
Le constructeur
Le constructeur n’impose que peu d’élément,
self::$code=__CLASS__;
// element optionnel tel que les constantes JSONSTATMENT et AJAXSTATMENTDETAIL
}
Ce constructeur définit le code (nom de la class), et une constante qui active les appels ajax pour les listing
Fichier de gabarit associé
Les fichier de gabarit associé sont dans le dossier gabarit. Il sont nommé comme tous les gabarits : nom_de_class.nom_action.gab
Url de la page
L’url des pages , qu’elles soient en module [1], ou dans le répertoire content est le même. Le nom de la page ou du module. Les FILENAME ne changent pas.
Vous pouvez acceder à la constante de class du felename en cours,
Liens connexes
- Aperçu d’une class Class exemple de structure