2010-07-27 5 views
1

J'ai un type de contenu personnalisé dans drupal que j'autorise même les utilisateurs anonymes à créer. Je voudrais aussi leur donner la possibilité de revenir et d'éditer leurs créations après leur publication, mais c'est le défi.Autoriser les utilisateurs anonymes à modifier leur contenu? Module Drupal, idées

Comme ils sont "anonymes", je suppose que le système d'autorisations drupal ne peut pas lier le contenu à l'utilisateur qui l'a créé.

Où cela me laisse-t-il? Je pense à des cookies de navigateur ou quelque chose comme ça? Je ne suis pas sûr.

Existe-t-il un module existant pouvant vous aider, ou des idées pour en créer un nouveau?

Répondre

2

Dans Drupal ou tout autre système, il est préférable de s'appuyer sur une touche et par expérience, il est plus facile de les enregistrer. Dans Drupal, si une personne est anon, ils sont UID 0 et rien d'autre n'est épargné à leur sujet. Un autre utilisateur a signalé dans un autre article que Drupal ne suit pas les identifiants de session pour les objets utilisateurs anonymes, donc vous devrez travailler avec quelque chose comme session_id().

Je peux voir pourquoi vous voudriez peu de barrière pour poster mais cela pourrait être un cauchemar de gestion plus tard.

+0

Je peux voir pourquoi c'est plus de travail maintenant, mais pouvez-vous expliquer pourquoi c'est un cauchemar de gestion "plus tard"? – drupal

4

Vous pouvez stocker un ID dans un cookie mais si l'utilisateur le supprime, il n'y aurait plus aucun moyen de l'identifier. Vous pouvez également conserver un enregistrement des adresses IP, mais ce n'est pas fiable à 100%.

La seule façon d'être fiable est d'avoir un système de connexion. Vous pouvez simplement proposer l'édition de contenu comme une fonctionnalité aux personnes souhaitant s'inscrire.

+0

Je suis d'accord en général avec cette réponse, mais penser à ce site, nous sommes à droite sur. Vous pouvez éditer vos questions et réponses sans vous inscrire. – stacker

+0

Oui, mais hors de la boîte, Drupal ne peut pas travailler avec des utilisateurs comme SO. Donc, pensé à cela à l'avance. – Kevin

+0

et ils utiliseraient une combinaison de cookies et/ou de vérification d'adresse IP. Supprimez vos cookies et passez par un site de navigation anonyme et voyez si vous pouvez toujours éditer votre publication sans vous connecter;) –

2

Plutôt que d'essayer de préserver une session (ce qui va à l'encontre de l'anonymat, si vous me le demandez), qu'en est-il de laisser l'utilisateur créer un mot de passe lors de sa création? Ensuite, ajoutez un gestionnaire de validation qui vérifie s'il a fourni le mot de passe correct si le noeud n'est pas nouveau.

Vous pouvez utiliser le module CCK Password Field pour ajouter un champ CCK pour le mot de passe, ou utiliser hook_form_alter pour modifier le node_form directement et fournir votre propre CRUD dans un module personnalisé. Heck, l'accès d'édition anonyme n'a probablement pas besoin d'être aussi sécurisé et vous pourriez vous en sortir avec juste un champ de texte CCK pour stocker le mot de passe.

+0

Je ne pense pas que cela vienne à l'encontre de l'anonymat. Pour l'utilisateur, anonyme veut dire que je ne veux pas m'ennuyer à m'inscrire et à confirmer mon courriel. Drupal a décidé d'appeler ça anonyme. Ils auraient pu l'appeler non enregistré et ce serait la même chose. Je veux offrir à ces utilisateurs paresseux la possibilité de modifier leur contenu. Bien sûr, la garantie que je leur donne est très petite parce qu'ils m'ont donné un petit engagement pour commencer. – drupal

+0

Pour définir anonyme comme les gens paresseux est une définition très étroite d'anonyme. Il y a quelques cas différents qui seraient toujours considérés comme des utilisations anonymes mais qui ne préserveraient pas une session: en utilisant un anonymizer ou en visitant le site à partir de différents endroits pour en nommer deux. C'est pourquoi Drupal traite anonymes comme un seul utilisateur: si vous suivez des sessions, ce n'est plus anonyme. Forcer l'enregistrement ou faire quelque chose comme je l'ai suggéré rend le suivi de session ou d'utilisateur explicite, stable, et ne laisse pas le mot "anonyme" pour le débat. –

1

Bien que ce soit un vieux fil, en ajoutant ce que je sais à ce sujet:

lien Noeud Autorisez semble être un module intéressant de faire exactement cela. Il crée des clés d'autorisation (pour afficher/modifier/supprimer) qui peuvent être envoyées par e-mail à des utilisateurs anonymes par courrier électronique en tant que lien.

http://drupal.org/project/node_authlink

Questions connexes