Appel form ajout de contenu dans une colorbox ou directement dans une vue

Information importante

En raison d'un grand nombre d'inscriptions de spammers sur notre site, polluant sans relache notre forum, nous suspendons la création de compte via le formulaire de "sign up".

Il est néanmoins toujours possible de devenir adhérent•e en faisant la demande sur cette page, rubrique "Inscription" : https://www.drupal.fr/contact


De plus, le forum est désormais "interdit en écriture". Il n'est plus autorisé d'y écrire un sujet/billet/commentaire.

Pour contacter la communauté, merci de rejoindre le slack "drupalfrance".

Si vous voulez contacter le bureau de l'association, utilisez le formulaire disponible ici, ou envoyez-nous un DM sur twitter.

Bonjour à toute la communauté !!

je viens vers vous car je suis actuellement en train de développer un projet que j'ai basé sous Drupal 7 (bien plus ergonomique que le 6 au passage)

Je vais tenter d'être le plus précis possible dans mon explication.

Voila ce que j'ai actuellement en place et en relation avec mon problème :

  • Un type de contenu "Présentation de prestataire"
  • Un rôle "socio professionnels"
  • Une vue listant tous les type "Présentation de prestataire" associés à un terme de taxonomie précis

Je souhaitais mettre en place dans ma vue (au début de celle-ci) un formulaire permettant d'ajouter un contenu de type "Présentation de prestataire" si je suis authentifié en tant que "socio professionnels" ou proposer un lien de log/inscription si je ne suis pas (encore) authentifié. Mais je n'ai pas réussi à afficher simplement le formulaire permettant cet ajout de contenu.

J'ai donc décidé de mettre en place simplement des liens qui m'ouvrirait en colorbox les formulaires souhaités.

Pour ce faire, j'ai mis dans mon template views-view--liste-des-prestataires--page.tpl le code suivant (là où je souhaitais voir apparaître mon formulaire)

if (in_array('socio professionnels',array_values($user->roles))) {
        print "<a href='/colorbox/form/presentation_prestataire_node_form?width=550&height=550'  id='4' class='colorbox-load'>Ajouter sa structure colorbox</a>";
    }
    else print "<a href='/colorbox/form/user_register_form?width=550&height=550' class='colorbox-load' id='2'>S'inscrire</a> ou <a href='/?q=user/login'>Se connecter</a>";

Voila le résultat :

  • Si je ne suis pas authentifié, j'obtiens biens les 2 formulaires souhaités (insription ou log)
  • Si je suis authentifié en tant que "socio professionels", j'obtiens le message d'erreur suivant "Request unsuccessful: Forbidden" avec dans firebug une erreur 403

Je me suis donc dis qu'il s'agissait d'une erreur de droits mais si j'appel la page permettant l'ajout d'un contenu de type "Presentation de prestataire" (?q=node/add/presentation-prestataire), j'obtiens bien le dis formulaire.

Un peu comme-ci colorbox me bloquait les droits d'accès à ce formulaire.

Ce qui confirme un peu ce sentiment, c'est que j'ai la même chose avec le formulaire de modification d'un utilisateur

print "<a href='/colorbox/form/user_profile?width=550&height=550' class='colorbox-load' id='1'>Test</a>";

Je dois avouer que je tourne un peu en rond là. Si quelqu'un à une idée ou peut-être une autre façon de procéder, je sus preneur.

Forum : 
Version de Drupal :