rôle et droits d’accès à la création/modification d'un node de mon module : comment faire?

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,

J'ai un node géré par mon module (formulaire hook_form). Je veux pouvoir utiliser la création "node/add/mynode" pour certains rôles d'utilisateurs seulement et pour ces utilisateurs autoriser "edit own mynode content" et "delete own mynode content".

1) Si je mets dans mon hook_install le code (1)
alors dans les rôles utilisateurs, les chemins de création suppression ... sur ce node mynode apparaissent et je peux gérer les droits d'accès. Mais dans ce cas
le hook_form que j'ai fais n'est pas utilisé et c'est un form ordinaire de node qui est utilisé (title et bloc).

2) Si j'enlève le code (1) alors mon hook_form fonctionne sur "node/add/mynode" pour l'administrateur mais je n'ai plus les droits pour un autre rôle. Et dans admin/user/permissions je ne retrouve pas mon node "mynode" et donc je ne peux pas changer les droits. "

J'ai du louper quelque chose. Y a t'il un moyen de déclarer "node/add/mynode" "edit own mynode content" et "delete own mynode content" pour un rôle donné dans le code mynode.module ?

Merci de votre aide si vous avez une petite idée.

(1):

$type = array(
'type' => 'mynode',
'name' => t('mynode'),
'module' => 'node',
'description' => t('mynode'),
'custom' => TRUE,
'modified' => TRUE,
'locked' => FALSE,
);
$type = (object) _node_type_set_defaults($type);
node_type_save($type);

Fichier attachéTaille
Icône texte brut mynode.install.txt834 octets
Icône texte brut mynode.module.txt1.05 Ko
Forum : 
Version de Drupal :