You are not logged in.
Pages: 1
Bonjour,
Suite à la demande de ma hiérarchie, je souhaiterai savoir si il est possible de changer la page d'authentification pour la mettre plus au gout de la société.
Merci
Offline
Coté back-office ou front-office ?
Raphael Franchet
Expert Ametys
Offline
Bonjour,
coté back svp
Offline
@ XXXX:8080/cms/.../index.html
C'est bien le back???
merci
Offline
Coté back, aucun mécanise facile n'est prévu.
Il faut donc mettre les mains dans le cambouis.
Ametys possède un système de plugin et d'extensions.
L'authentification est une extension. Le formulaire en est une des implémentations.
L'idée serait donc d'écrire votre propre implémentation: c'est assez facile car tout est configurable.
Pour cela, il faut définir un nouveau plugin (répertoire dans le dossier plugins, avec un fichier plugin.xml et catalogue i18n - vous pouvez copiez et vider un de ceux que vous avez dans la démo)
Ensuite, vous dupliquez la définition de l'extension actuelle:
<feature name="runtime.authentication.impl.formbased">
<!--
This features defines the form based credential provider. Data are sent to the provider through a
html form. If the option is enabled, user's data can be stored with a cookie.
-->
<extensions>
<extension point="org.ametys.runtime.authentication.CredentialsProvider"
id="org.ametys.runtime.plugins.core.authentication.FormBased"
class="org.ametys.runtime.plugins.core.authentication.FormBasedCredentialsProvider"
logger="org.ametys.runtime.authentication.formbased">
<username-field>Username</username-field>
<password-field>Password</password-field>
<rememberMe-field>rememberMe</rememberMe-field>
<cookie>
<cookieEnabled>true</cookieEnabled>
<cookieLifeTime>604800</cookieLifeTime>
<cookieName>AmetysAuthentication</cookieName>
</cookie>
<loginUrl internal="true">login.html</loginUrl>
<loginFailedUrl provideLoginParameter="true" internal="true">login_failed.html</loginFailedUrl>
</extension>
</extensions>
</feature>
en changeant l'identifiant et les urls.
Pour les urls, il faudra mettre des urls en "plugins/VOTREPLUGIN/login...html"
Puis il vous faudra posséder un fichier sitemap.xmap qui définit les pipelines nécessaire. Voici ceux utilisés par défaut:
<map:match pattern="login.html">
<map:generate type="action-result" label="content"/>
<map:transform type="xslt" src="stylesheets/login.xsl">
<map:parameter name="contextPath" value="{request:contextPath}"/>
<map:parameter name="workspaceURI" value="{request-attr:workspaceURI}"/>
<map:parameter name="workspaceName" value="{request-attr:workspaceName}"/>
</map:transform>
<map:transform type="i18n" label="xml">
<map:parameter name="locale" value="{locale:locale}"/>
<map:parameter name="default-catalogue-id" value="plugin.cms"/>
</map:transform>
<map:serialize/>
</map:match>
<map:match pattern="login_failed.html">
<map:generate type="action-result" label="content"/>
<map:transform type="xslt" src="stylesheets/login.xsl">
<map:parameter name="contextPath" value="{request:contextPath}"/>
<map:parameter name="workspaceURI" value="{request-attr:workspaceURI}"/>
<map:parameter name="workspaceName" value="{request-attr:workspaceName}"/>
<map:parameter name="login-failed" value="true"/>
</map:transform>
<map:transform type="i18n" label="xml">
<map:parameter name="locale" value="{locale:locale}"/>
<map:parameter name="default-catalogue-id" value="plugin.cms"/>
</map:transform>
<map:serialize/>
</map:match>
Enfin, vous écrivez les xsl référencées ici pour faire votre rendu.
Là aussi vous pouvez partir des xsls actuelles
Et enfin, il vous faudra sélectionner votre nouvelle extension (après redémarrage) parmi les extensions existantes. c'est décrit ici (en utilisant la vue "par points d'extensions")
Voilà. Si vous avez des question.
Raphael Franchet
Expert Ametys
Offline
Merci vous assurez grave
je m'y attele
Offline
alors, avez-vous réussi à obtenir le résultat voulu ?
Raphael Franchet
Expert Ametys
Offline
Pages: 1