|
|
 |
Verification d'identification |
 |
Vous devez être connecté pour utiliser le forum. Vous pouvez le faire ici.
|
Auteur
|
Message
|
|
Ange-Louis Toma
|
Mercredi 28 Mars 2007 5:48:25 pm
Verification d'identification
Voila je voudrais pouvoir mettre des boutons d'editions sur ma partie public du site.
Ces boutons n'apparaitrons que si l'admin est loggé sur le site.
On peut voir sur cette page, http://ez.no/doc/ez_publish/techn...es/user/fetch_functions/is_logged_in
comment faire pour voir si l'admin est loggé
Je met donc dans mon code (page_layout.tpl) :
{if $current_user.is_logged_in }
<div align="right"><a href={"/user/logout"|ezurl}>se déconnecter</a></div>
{else}
<div align="right"><a href={"/user/login"|ezurl}>se logger</a></div>
{/if}
<div id="menug">{include uri="design:menu_gauche.tpl"}</div>
<div id="menud"> Dernieres news:<br /> {include uri="design:menu_droite.tpl"}</div>
<div id="corps">{include uri="design:page_mainarea.tpl"} <br/>
{def $test=fetch( 'user', 'is_logged_in', hash( 'user_id', 14 ) )}
{if $test}
Admin is currently logged in.
{else}
Admin is not logged in.
{/if}
C'est un bete copier collé de la doc. Sauf que mon resultat est toujour le meme :
Admin is currently logged in.
Inutile de vous dire que vider les caches c'est ma grande passion.
Bref comment faire pour voir les conditions de test rescpecté si je me logge ou delogge a volontée???
Avez vous une idée?
Merci !
|
|
Sylvain Guittard
|
Mercredi 28 Mars 2007 6:29:49 pm
Re: Verification d'identification
Salut,
J'ai regardé ton code, et je ne vois pas de soucis. Quelle version eZ Publish utilises-tu?
En contrepartie, je te propose mon code, qui génère une liste déroulante des objets que l'utilisateur peut créer. Cela dépend des droits définis.
{* Authorisation création ? *}
{section show=count($node.object.can_create_class_list)}
<form method="post" action={"/content/action"|ezurl}>
<input type="hidden" name="NodeID" value="{$node.node_id}" />
<select name="ClassID">
{section var=class loop=$node.object.can_create_class_list}
<option value="{$class.id}">{$class.name|wash}</option>
{/section}
</select>
<input type="submit" name="NewButton" value="{'Create here'|i18n('design/standard/node/view')}" />
</form>
{section-else}
Pour ajouter un article, <a href={"/user/login"|ezurl()}>identifiez-vous </a>
{/section}
En espérant que cela t'aide à avancer.
Bon courage,
Sylvain
|
|
Ange-Louis Toma
|
Jeudi 29 Mars 2007 4:11:10 pm
Re: Verification d'identification
J'utilise EzPublish v3.9.1.
En fait le probleme viens qu'il ne faut pas utiliser ce genre de fetch directement dans le pagelayout.
Pour passer outre cette contrainte il suffit de faire une surcharge de template dans un ID de noeud, template contenant les conditions du post precedent.
Autre chose, il ne faut surtout (mais alors surtout pas) utiliser la variable $node dans le pagelayout. Ca marche pas et puis c'est tout , il faut pas.
De meme, faire dans le pagelayout un include de template qui utilise $node reviens a faire comme si tout se passait dans le template !
Plus serieusement, si vous voulez vous servir de la vadriable $node (qui est bien pratique j'avoue) il faut l'utiliser dans une !!!"SURCHARGE"!!! de template. Si vous n'etiez pas au courant et que vous lisez ces lignes, alors remerciez moi de vous avoir fait economiser 1mois de reflexion dans votre vie. :p
A bon entendeur, salut !
|
|
J-A Eberhard
|
Jeudi 29 Mars 2007 11:26:41 pm
Re: Verification d'identification
Si tu utilise la version 3.9.x je te recommande l'extension ezwebin. Elle comporte une toolbar qui va te permettre d'avoir dynamiquement les boutons correspondant à tes droits d'édition.
|
|
|
 |
|