This is an old revision of the document!


CAS Themes

Référence

Arborescence Custom

Nous allons créer une arborescence de personnalisation des themes et view pour notre institut (Telecom & Management SudParis , simplifié ici en tmsp1)

Arbre FS

[root@cas2 cas-toolbox-3.3.5-3]# mkdir -p custom/webpages/themes/
[root@cas2 cas-toolbox-3.3.5-3]# cp -a update.esup/webpages/themes/esup custom/webpages/themes/
[root@cas2 cas-toolbox-3.3.5-3]# ls custom/webpages/themes/
esup
[root@cas2 cas-toolbox-3.3.5-3]# ls custom/webpages/themes/esup/
cas.css  images

Theme

CSS

Le theme est essentiellement le fichier css, ici ce sera tmsp1cas.css qui sera chargé par toutes les pages statiques (jsp) car elles inclus toutes top.jsp (et bottom.jsp)

[root@cas2 cas-toolbox-3.3.5-3]# grep css /root/cas-toolbox-3.3.5-3/update.esup/webpages/WEB-INF/view/jsp/default/ui/includes/top.jsp
		<style type="text/css" media="screen">@import '<spring:theme code="css" />'/**/;</style>

cette directive @import ' va chercher dans le config.properties le nom du theme parametré , ici tmsp1:

ce qui resultera au final en

<style type=“text/css” media=“screen”>@import 'themes/tmsp1Theme/tmsp1cas.css'//;</style> === parametrage === Il faut indiquer a ant que nous allons utliser l'arborescence custom.tmsp1 et les themes/views tmsp1: <code> [root@cas2 cas-toolbox-3.3.5-3]# grep custom build.properties custom.path=${basedir}/custom cas.custom.webpage.path=${custom.path}/webpages cas.custom.source.path=${custom.path}/source </code> <code> [root@cas2 cas-toolbox-3.3.5-3]# grep tmsp1 config.properties theme=tmsp1Theme views=tmsp1Vue </code> === Création === Préparer l'arborescence de custom< <code> $ mkdir -p custom.tmsp1/webpages/WEB-INF/classes/ </code> Fichier tmsp1Theme.properties appel le css: <code> $ cat custom/webpages/WEB-INF/classes/tmsp1Theme.properties css=themes/tmsp1Theme/tmsp1cas.css </code> ==== arborescence de theme tmsp1 ==== <code> [root@cas2 cas-toolbox-3.3.5-3]# mkdir custom/webpages/themes/tmsp1Theme </code> Recopie du modele de cas.css et ajout d'images, dont le logo“ qui est chargé dans la css !: <code> [root@cas2 cas-toolbox-3.3.5-3]# cp update.esup/webpages/themes/esup/cas.css custom/webpages/themes/tmsp1Theme/tmsp1cas.css [root@cas2 cas-toolbox-3.3.5-3]# mkdir -p custom/webpages/themes/tmsp1Theme/images [root@cas2 cas-toolbox-3.3.5-3]# ls custom/webpages/themes/tmsp1Theme/images tmsp-logo.gif [root@cas2 cas-toolbox-3.3.5-3]# grep tmsp-logo custom/webpages/themes/tmsp1Theme/tmsp1cas.css background:#fff url(images/tmsp-logo.gif) no-repeat scroll 99% 32px; </code> Logo dans la section #header ==== views JSP ==== Les views sont des pages statique (jsp) visibles dans /webpages/WEB-INF/view/jsp/theme/ui === modele === On reprend l'ensemble des jsp du theme par defaut pour les adapter à notre site. <code> [root@cas2 cas-toolbox-3.3.5-3]# mkdir -p custom/webpages/WEB-INF/view/jsp/tmsp1Vues/ui [root@cas2 cas-toolbox-3.3.5-3]# cp -a build/cas/WEB-INF/view/jsp/default/ui/* custom/webpages/WEB-INF/view/jsp/tmsp1Vues/ui/ [root@cas2 cas-toolbox-3.3.5-3]# ls -LtR custom/webpages/WEB-INF/view/jsp/tmsp1Vues/ui/ custom/webpages/WEB-INF/view/jsp/tmsp1Vues/ui/: includes casLoginView.jsp casGenericSuccess.jsp serviceErrorSsoView.jsp casBlockedView.jsp casConfirmView.jsp casLogoutView.jsp serviceErrorView.jsp custom/webpages/WEB-INF/view/jsp/tmsp1Vues/ui/includes: top.jsp bottom.jsp </code> Attention a top.jsp qui peut-etre ecrasé par la manip ci-dessus, s'assurer qu'il contient bien l'appel spring au parametage du theme: <code> $ grep css custom/webpages/WEB-INF/view/jsp/tmsp1Vues/ui/includes/top.jsp <style type=“text/css” media=“screen”>@import '<spring:theme code=“css” />'//;</style> </code>

et non le top.jsp par defaut qui force l'usage de css/cas.css autrement tout notre travail de personnalisation echoue. Initialement

<style type=“text/css” media=“screen”>@import 'css/cas.css'/**/;</style>

Views tmsp1

Pour chaque jsp il faut definir son appel dans *theme_name*_views.properties

[root@cas2 cas-toolbox-3.3.5-3]# cp build/cas/WEB-INF/classes/default_views.properties custom/webpages/WEB-INF/classes/tmsp1Vues_views.properties

On remplace toute auccorence de “default” par “tmsp1Vues” ici, (cf vi ”:1,$s/default/tmsp1Vues/“)

[root@cas2 cas-toolbox-3.3.5-3]# cat custom/webpages/WEB-INF/classes/tmsp1Vues_views.properties
### Login view (/login)
casLoginView.(class)=org.springframework.web.servlet.view.JstlView
casLoginView.url=/WEB-INF/view/jsp/tmsp1Vues/ui/casLoginView.jsp

### Login confirmation view (logged in, warn=true)
casLoginConfirmView.(class)=org.springframework.web.servlet.view.JstlView
casLoginConfirmView.url=/WEB-INF/view/jsp/tmsp1Vues/ui/casConfirmView.jsp

### Logged-in view (logged in, no service provided)
casLoginGenericSuccessView.(class)=org.springframework.web.servlet.view.JstlView
casLoginGenericSuccessView.url=/WEB-INF/view/jsp/tmsp1Vues/ui/casGenericSuccess.jsp

### Logout view	(/logout)
casLogoutView.(class)=org.springframework.web.servlet.view.JstlView
casLogoutView.url=/WEB-INF/view/jsp/tmsp1Vues/ui/casLogoutView.jsp

### CAS error view
serviceErrorView.(class)=org.springframework.web.servlet.view.JstlView
serviceErrorView.url=/WEB-INF/view/jsp/tmsp1Vues/ui/serviceErrorView.jsp

viewServiceErrorView.(class)=org.springframework.web.servlet.view.JstlView
viewServiceErrorView.url=/WEB-INF/view/jsp/tmsp1Vues/ui/serviceErrorView.jsp

viewServiceSsoErrorView.(class)=org.springframework.web.servlet.view.JstlView
viewServiceSsoErrorView.url=/WEB-INF/view/jsp/tmsp1Vues/ui/serviceErrorSsoView.jsp

### Services Management Views
addServiceView.(class)=org.springframework.web.servlet.view.JstlView
addServiceView.url=/WEB-INF/view/jsp/services/add.jsp

editServiceView.(class)=org.springframework.web.servlet.view.JstlView
editServiceView.url=/WEB-INF/view/jsp/services/add.jsp

manageServiceView.(class)=org.springframework.web.servlet.view.JstlView
manageServiceView.url=/WEB-INF/view/jsp/services/manage.jsp

serviceLogoutView.(class)=org.springframework.web.servlet.view.JstlView
serviceLogoutView.url=/WEB-INF/view/jsp/services/logout.jsp

viewStatisticsView.(class)=org.springframework.web.servlet.view.JstlView
viewStatisticsView.url=/WEB-INF/view/jsp/services/viewStatistics.jsp
docpublic/systemes/ssocas/castheme.1285587892.txt.gz · Last modified: 2010/09/27 11:44 by PROCACCIA
CC Attribution-Noncommercial-Share Alike 4.0 International
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0