Raccourcis : Contenu - rubriques - sous rubriques
FR

Piste :

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
fr:tutoriels:modules:jevent [2012/01/31 12:31] – [le contrôleur] foxmaskfr:tutoriels:modules:jevent [2012/01/31 12:34] (Version actuelle) foxmask
Ligne 28: Ligne 28:
 Donc pour cela je défini un contrôleur "modules" avec une action "index" par défaut : Donc pour cela je défini un contrôleur "modules" avec une action "index" par défaut :
  
-A nugget among so many others contained Jelix, is  the internal communication between modules. +===== le contrôleur =====
- +
-But what is this? +
- +
-Sometimes modules may need to communicate with each other or whether they need information from each other. +
- +
-Imagine a simple case, an administrative interface that lists the modules (articles, wiki, news), present on his favorite site. +
- +
-The "Jelixian" solution is to make the administration module communicate with all the others. +
- +
-The administration module will send a message and retrieve the responses of the modules. +
- +
- +
-This page will be made of one template and the responses of modules will be made with the help of Zones (Remind : the Zones are part of page) +
- +
-So for that, I define a controller "modules" with one action index by default  +
- +
- +
-===== the controller =====+
  
 <code php> <code php>
Ligne 61: Ligne 43:
 </code> </code>
  
-the interesting line of code  here is +la ligne intéressante ici est :
 <code php> <code php>
 $tpl->assign('modules',jEvent::notify('HfnuAboutModule')->getResponse());  $tpl->assign('modules',jEvent::notify('HfnuAboutModule')->getResponse()); 
 </code> </code>
  
-This line makes things in same time :+cette ligne fait choses en même temps : 
 + 
 +  - elle émet un message nommé **HfnuAboutModule** 
 +  - elle récupère les données du message émis 
 +  - elle assigne ses données à la variable "modules" du template.
  
-  - it sends a message named **HfnuAboutModule** 
-  - it get the data returned by the sent message 
-  - it assigns the data to the variable "modules" of the template. 
  
-the following line tell to Jelix, the name of the module, which will display the data :+la ligne suivante indique à Jelix, le nom du template "module"qui affichera les données
 <code php> <code php>
 $rep->body->assign('MAIN',$tpl->fetch('modules')); $rep->body->assign('MAIN',$tpl->fetch('modules'));
Ligne 124: Ligne 107:
 </code> </code>
  
-lorsque **HfnuAboutModule** est déclenché, alors **onHfnuAboutModule** entre en oeuvre et répond à l'event (via $event->add())+lorsque **HfnuAboutModule* est déclenché, alors **onHfnuAboutModule** entre en oeuvre et répond à l'event (via $event->add())
  
 $event->add() peut recevoir tout type de données. Ici nous lui retournons une zone ([[fr:tutoriels:modules:generic1|que nous avons précédemment abordés dans mes 2 précédants articles]]) nommée "about" $event->add() peut recevoir tout type de données. Ici nous lui retournons une zone ([[fr:tutoriels:modules:generic1|que nous avons précédemment abordés dans mes 2 précédants articles]]) nommée "about"

fr/tutoriels/modules/jevent.1328013062.txt.gz · Dernière modification : 2012/01/31 12:31 de foxmask

Fils rss des changements récents dans le wiki Creative Commons License