SP:Composant:IncludeHandler
De Hegyd Doc.
(→Variables externes) |
(→Gestionnaire d'inclusions) |
||
| Ligne 2 : | Ligne 2 : | ||
Le composant IncludeHandler gère les inclusions de fichiers javascript et css au sein de l'éditeur et du site. | Le composant IncludeHandler gère les inclusions de fichiers javascript et css au sein de l'éditeur et du site. | ||
| + | |||
| + | |||
== Configuration == | == Configuration == | ||
| Ligne 54 : | Ligne 56 : | ||
</pre> | </pre> | ||
| - | Ensuite, il suffit de passer la variable lors de la construction de l'objet | + | Ensuite, il suffit de passer la variable lors de la construction de l'objet (voir initialisation). |
| - | + | Si une variable externe n'est pas passé dans le constructeur, alors tous les nom de fichiers l'utilisant ne seront pas inclus. | |
| + | |||
| + | == Initialisation == | ||
| + | |||
| + | Pour utiliser le composant sur les page, il faut initialiser l'object : | ||
| + | |||
$includeHandler = new IncludeHandler( | $includeHandler = new IncludeHandler( | ||
| - | + | $mapage, //nom de la page | |
array( | array( | ||
| + | "MODEL"=>$siteClient->getModel()->modelSpaceName, | ||
"CSS_LAST_EDIT"=>$siteClient->utsUpdateCSS | "CSS_LAST_EDIT"=>$siteClient->utsUpdateCSS | ||
| - | ), | + | ), //liste des variable externes |
| - | true, | + | true,//flag indiquant si la compression doit être activée ou non. |
| - | IncludeHandler::CMS_MODE); | + | IncludeHandler::CMS_MODE//espace de nom dans lequel se trouve la page. Pour l'éditeur il en existe deux: cms & editor, enregistrés dans des constante |
| - | + | ); | |
| + | |||
| + | Des setteurs permettent apres l'initialisation de modifier la page, le mode, et d'activer / désactiver la compression | ||
| + | |||
| + | == Compression | ||
| - | |||
== Inclusion == | == Inclusion == | ||
Version du 24 juin 2010 à 14:50
Sommaire |
Gestionnaire d'inclusions
Le composant IncludeHandler gère les inclusions de fichiers javascript et css au sein de l'éditeur et du site.
Configuration
Le composant utilise un fichier de configuration pour charger les différents fichiers à include pour chaque page. Le fichier est: conf/includeHandler.php.
il contient deux variables distinctes includesCSS et includesJS.
Configuration des fichiers CSS
La liste des fichiers CSS à inclure se trouve dans le tableau includesCSS. Voici la structure du tableau
array(
'common' => array(),//liste des fichiers inclus partout
'xxx' => array( //liste des fichiers inclus pour les pages se trouvant dans l'espace de nom editor (repertoire controlers/xxx & templates/xxx)
'common' => array() // fichier inclus sur toutes les pages de l'espace de nom xxx
'mapage' => array() //fichiers inclus dans la page mapage de l'espace de nom
)
Chaque ligne incluant un fichier se présente de la facon suivante:
array('url relative depuis la racine du projet','no' / true) //le second paramètre indique si le fichier peut être minifié ou non: 'no' pour non, et 'yes'/true si oui
Configuration des fichiers JS
La liste des fichiers CSS à inclure se trouve dans le tableau includesCSS. Voici la structure du tableau
array(
'common' => array(),//liste des fichiers inclus partout
'xxx' => array( //liste des fichiers inclus pour les pages se trouvant dans l'espace de nom editor (repertoire controlers/xxx & templates/xxx)
'common' => array() // fichier inclus sur toutes les pages de l'espace de nom xxx
'mapage' => array() //fichiers inclus dans la page mapage de l'espace de nom
)
Chaque ligne incluant un fichier correspond a son url relative depuis le répertoire www/js du projet.
Variables externes
Des variables externes peuvent être ajoutées pour constituer les noms de fichiers, par exemple:
monStyle.css?ts={CSS_LAST_EDIT}
Ensuite, il suffit de passer la variable lors de la construction de l'objet (voir initialisation). Si une variable externe n'est pas passé dans le constructeur, alors tous les nom de fichiers l'utilisant ne seront pas inclus.
Initialisation
Pour utiliser le composant sur les page, il faut initialiser l'object :
$includeHandler = new IncludeHandler(
$mapage, //nom de la page
array(
"MODEL"=>$siteClient->getModel()->modelSpaceName,
"CSS_LAST_EDIT"=>$siteClient->utsUpdateCSS
), //liste des variable externes
true,//flag indiquant si la compression doit être activée ou non.
IncludeHandler::CMS_MODE//espace de nom dans lequel se trouve la page. Pour l'éditeur il en existe deux: cms & editor, enregistrés dans des constante
);
Des setteurs permettent apres l'initialisation de modifier la page, le mode, et d'activer / désactiver la compression
== Compression
