Rendre le plugin - Acces restreint - utilisable

Bonjour,

J'ai installé le plugin accès restreint. Son comportement par défaut est de ne rien afficher de ce qui est restreint aux personnes non authentifiées.

Pour ma par je veux restreindre qu'une partie du site, une seule rubrique en fait: l'"Espace membres". Le comportement devra être le suivant:

- le lien vers la rubrique "Espace membre" devra obligatoirement être affiché même aux personnes non authentifiées.

- un clique sur ce lien (au autre contenu restreint) devra
   o si l'internaute est identifié: afficher la page
   o si l'internaute n'est PAS identifié: afficher une page avec le formulaire de login

J'ai trouvé sur cette liste un hack qui correspond à peu près. Il faut insérer les lignes suivantes à la fin du contenu par défaut du squellette article.html:

</BOUCLE_article_principal>
[(#ID_ARTICLE|AccesRestreint_article_restreint|?{' ',''})
#LOGIN_PUBLIC
]
[(#ID_ARTICLE|AccesRestreint_article_restreint|?{'',' '})
Cette page n'existe pas
]
<//B_main>

Mais le résultat dans les deux cas (réelle page 404 ou formulaire de login) est une page dépouillée: page de </html> par ex, pas de footer, pas de menu, même pas le logo du site... Ce n'est bien sur pas convenable.

J'ai donc créé un squelette protected.html ou j'ai viré les balises <BOUCLE_article_principal(ARTICLES) {id_article}> et </BOUCLE_article_principal> et ou j'ai remplacé le div "contenu" pas celui ci:

<div id="contenu">
<h2>Cette partie est en accès restreint</h2>
  #LOGIN_PUBLIC
</div><!-- fin contenu -->

La page résultant génère une erreur:

# Erreur(s) dans le squelette

     * <BOUCLE>()
       Erreur MySQL
       id_rubrique FROM spip_rubriques WHERE id_rubrique=
       You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 3
       </BOUCLE>

De plsu les pages non restreintes ont ça après </html> :

Cette page n'existe pas

<//B_principal>

Si quelqu'un peu m'aider un peu car je ne sais plus trop quoi faire...

Amicalement.

--
laurent

Ton besoin est simple.
Si tu ne désires pas limiter l'accès aussi dans l'espace privée aux seuls membres d'un groupe (ce qui est possible...)
je pense que tu pourrais utiliser la mise à jour de la contrib "Comment restreindre l'accès d'un article ou d'une rubrique dans l'interface publique par le statut":
http://monsitespip.com/spip.php?article4

- le lien vers la rubrique "Espace membre" devra obligatoirement être
affiché même aux personnes non authentifiées.

Sauf si tu utilises un filtre, comme je le fais sur certains sites, oui les pages protégées resteront visibles dans les différents menus.
J'ai également un petit filtre qui permet d'afficher automatiquement un petit icone avec le titre dans les menus pour indiquer que c'est une page protégée
( la publication de cette option ne saurait tarder).

- un clique sur ce lien (au autre contenu restreint) devra
  o si l'internaute est identifié: afficher la page
  o si l'internaute n'est PAS identifié: afficher une page avec le
formulaire de login

C'est ce qui se produit en effet!

Si quelqu'un peu m'aider un peu car je ne sais plus trop quoi faire...

Amicalement.

--
laurent

Je reste disponible si tu as d'autres questions.
Le sujet m'intéresse beaucoup.
Je travaille aussi sur une variante de la gestion de groupe qui est fonctionnelle sur certains sites en 1.8.3 mais qui me reste à adapter en plugin: "Création de groupes pour limiter l'accès de rubriques et d'articles"
http://monsitespip.com/spip.php?site13&var_mode=calcul

Mais c'est plus que tu n'en a besoin je pense...

Iago
www.iago.ca
www.monistespip.com

_______________________________________________
liste spip
spip@rezo.net - désabonnement : spip-off@rezo.net
Infos et archives : http://listes.rezo.net/mailman/listinfo/spip
Documentation de SPIP : http://www.spip.net/
irc://irc.freenode.net/spip
FAQ : http://www.spip-contrib.net/spikini/FaQ

François Vachon a écrit :

Ton besoin est simple.
Si tu ne désires pas limiter l'accès aussi dans l'espace privée aux seuls membres d'un groupe (ce qui est possible...)
je pense que tu pourrais utiliser la mise à jour de la contrib "Comment restreindre l'accès d'un article ou d'une rubrique dans l'interface publique par le statut":
http://monsitespip.com/spip.php?article4

[...]

Je reste disponible si tu as d'autres questions.
Le sujet m'intéresse beaucoup.
Je travaille aussi sur une variante de la gestion de groupe qui est fonctionnelle sur certains sites en 1.8.3 mais qui me reste à adapter en plugin: "Création de groupes pour limiter l'accès de rubriques et d'articles"
http://monsitespip.com/spip.php?site13&var_mode=calcul

Bonjour,

Merci et bravo pour tes HowTo's mais je _tiens_ a utiliser le plugin "Accès restreint" pour une commodité de maintenance du site final.

Je pense que je peux avoir le comportement désiré en modifiant intelligemment les squelettes.

Voici ou j'en suis: j'arrive a avoir une page login pour le contenu protégé et, la page 404 pour les pages n'existant pas fonctionne bien aussi. Le seul soucis que j'ai encore, c'est sur les pages non protégées, elles ont la page 404 en bas....

La modif est simple, il faut ajouter:

[(#ID_ARTICLE|AccesRestreint_article_restreint|?{' ',''})
<INCLURE{fond=protected}{id_article}>
]
[(#ID_ARTICLE|AccesRestreint_article_restreint|?{'',' '})
<INCLURE{fond=404}{id_article}>
]
<//B_main>

à la fin de article.html. La modif necessite les squelettes inc-logout.php (affiche dans le menu latéral un lien pour se déconnecter) et protected.html (page de login)

Par contre je ne sais pas a quoi correspond '<//B_main>' Cette balise se retrouve de plus affichée dans le code source des pages articles générées.

Ensuite il me suffira de faire apparaitre aux personnes non identifiées les rubriques protégées dans le menu... et je n'ai aucune idée de comment je vais faire cela.......

Amicalement.

--
Laurent

article.html (6.23 KB)

inc-logout.html (154 Bytes)

protected.html (2.84 KB)

Laurent Dinclaux <laurent.dinclaux <at> gmail.com> writes:

</BOUCLE_article_principal>
[(#ID_ARTICLE|AccesRestreint_article_restreint|?{' ',''})
#LOGIN_PUBLIC
]
[(#ID_ARTICLE|AccesRestreint_article_restreint|?{'',' '})
Cette page n'existe pas
]
<//B_main>

Ce n'est pas un hack, c'est l'utilisation normale et judicieuse des parties
alternatives des boucles spip : tu as change le nom de la boucle, donc c'est
<//B_article_principal> pas <//B_main> (La syntaxe des boucles - SPIP)

Lorsque j'ai donné ce code, c'etait pour illustrer l'idée. Il es evident que
dans la vraie vie, il faut faire des INCLURE soit d'un squelette avec formulaire
de login, soit d'un squelette de page erreur 404.

Bon courage
Cedric

Bonjour,

Ce n'est pas un hack, c'est l'utilisation normale et judicieuse des parties
alternatives des boucles spip

Ooops désolé :wink:

tu as change le nom de la boucle, donc c'est
<//B_article_principal> pas <//B_main> (La syntaxe des boucles - SPIP)

En fait j'ai rien changé (cf package de base SPIP-v1-9-0.zip) mais merci pour l'info: ça fonctionne maintenant! Je me disais bien que ce <//B_main> ne semblait correspondre a rien...

Lorsque j'ai donné ce code, c'etait pour illustrer l'idée. Il es evident que
dans la vraie vie, il faut faire des INCLURE soit d'un squelette avec formulaire
de login, soit d'un squelette de page erreur 404.

En fait je débute sous SPIP, j'ai un excellent niveau en PHP/XHTML/CSS/Javascript mais SPIP je découvre .... Et si tu regardes la suite du thread tu verras que c'est ce que j'ai fait :wink:

Une petite précision STP, voilà mon code:

[(#ID_ARTICLE|AccesRestreint_article_restreint|?{' ',''})
<INCLURE{fond=protected}{id_article}>
]
[(#ID_ARTICLE|AccesRestreint_article_restreint|?{'',' '})
<INCLURE{fond=404}{id_article}>
]
<//B_article_principal>

Dans ma template protected, j'arrive pas a retirer les infos de l'article protégé pour dire un truc du genre "L'article #TITRE est en accès restreint veuillez vous identifier" j'ai pourtant mis {id_article} dans mon <INCLURE> ... mais la boucle article dans protected ne fonctionne pas.

Bon, je vais essayer de faire afficher le nom des rubriques protégées dans le menu des rubriques.... Si t'as une astuce, je suis preneur.

Encore merci pour ton aide.

--
Laurent

Bonjour,

Selon François Vachon <francois.vachon@iago.ca>:

Si tu ne désires pas limiter l'accès aussi dans l'espace privée aux seuls
membres d'un groupe (ce qui est possible...)

Moi c'est ce qui m'intéresse. Comment faire ?

J'ai suivi ton lien jusqu'à iago où la gestione de groupe est expliquée mais :
- Est-ce disponible ?
- pour spip 1.9 ?
- Comment le télécharger et l'installer ?
- y'a-t'il une autre solution pour restreindre la zone privée ?

En fait c'est pour le site d'un collège ou je voudrais avoir une zone publique
et privée restreinte "professeurs" car les élèves pourraient être rédacteur...

Merci de votre aide.

FabriceC69

Si tu ne désires pas limiter l'accès aussi dans l'espace privée aux seuls
membres d'un groupe (ce qui est possible...)

Moi c'est ce qui m'intéresse. Comment faire ?

Si tu veux simplement prolonger la protection par mot-clé,
c'est possible mais je n'ai pas encore produit de contrib ou de plugin sur le sujet.

J'ai suivi ton lien jusqu'à iago où la gestione de groupe est expliquée mais :
- Est-ce disponible ?
- pour spip 1.9 ?
- Comment le télécharger et l'installer ?
- y'a-t'il une autre solution pour restreindre la zone privée ?

En fait c'est pour le site d'un collège ou je voudrais avoir une zone publique
et privée restreinte "professeurs" car les élèves pourraient être rédacteur...

Merci de votre aide.

FabriceC69

La gestion de groupe que j'utilise vient à l'origine d'une contrib qui a beaucoup évolué depuis:

L'exemple qu'il donne est justement pour une école.
Je n'ai peu eu le temps de tester leur dernière version
mais je trouve son évolution des plus intéressante.

Je sais qu'il travaille à en faire un plugin...

De mon côté, je n'ai pas encore tester mon travail avec 1.9
Et je n'ai pas fais de contrib pour 1.8.3.

Iago

François Vachon a écrit :

Si tu ne désires pas limiter l'accès aussi dans l'espace privée aux seuls
membres d'un groupe (ce qui est possible...)

Moi c'est ce qui m'intéresse. Comment faire ?

Bonjour,

Ben dans un SPIP 1.9 avec uniquement le plugin accès restreint, j'ai lors de l'ajout d'un administrateur:

> Statut de cet auteur : [administrateur]
> Cet administrateur gère toutes les rubriques.
>
> Restreindre la gestion à la rubrique
> [boîte de sélection de la rubrique]

Bien à vous

--
Laurent

Bonsoir, ou bonjour...

Dans le but de réaliser un plug-in qui permettrait de générer le code de son choix, lors de l'insertion de documents dans un article (<docXX|left>, par exemple), j'aimerais savoir s'il est possible de connaître le chemin menant au fichier correspondant.

Autrement dit, et s'il s'agit d'une image (<img|left>, par exemple), comment connaître le contenu de l'attribut "src" de la balise html "img" ?

Hum... Si c'est possible...

Yannick.

Yannick a écrit :

Bonsoir, ou bonjour...

Dans le but de réaliser un plug-in qui permettrait de générer le code de son choix, lors de l'insertion de documents dans un article (<docXX|left>, par exemple), j'aimerais savoir s'il est possible de connaître le chemin menant au fichier correspondant.

Autrement dit, et s'il s'agit d'une image (<img|left>, par exemple), comment connaître le contenu de l'attribut "src" de la balise html "img" ?

Hum... Si c'est possible...

Yannick.

dans la base de donnée, la table spip_documents devrait t'aider...

ps : si tu fais un plugin, n'oublie pas de le mettre sur la zone

Maïeul

--
http://maieul.ouvaton.org

Bonjour,

Selon Laurent Dinclaux <laurent.dinclaux@gmail.com>:

Ben dans un SPIP 1.9 avec uniquement le plugin accès restreint, j'ai
lors de l'ajout d'un administrateur:

> Statut de cet auteur : [administrateur]
> Cet administrateur gère toutes les rubriques.
>
> Restreindre la gestion à la rubrique
> [boîte de sélection de la rubrique]

Oui, mais moi ce qui m'intéresse, c'est de pouvoir interdire l'accès à certains
rédacteurs à des rubriques aussi bien en zone publique que privée.

Spipement.

Fabrice

J’ai un soucis avec ce plugin pour ma part

j’avais commencé par mettre le systeme de
controle_acces_article.html et control_acces_rubrique
par mot clef

ca marchait tres bien

mais j’ai voulu en passant a la 1.9 mettre le plugin acces restreint

et la j’ai des soucis

j’ai des rubrique en acces restreint pour les visiteurs et impossible de supprimer cette restriction

j’ai desactiver le plugin, supprimer, reinstaller

pareil j’ai des rubriques qui sont bloqués a mes visiteurs

seriez vous pourquoi ?

Laurent Dinclaux a écrit :