I am creating a community site, and I want a way to disable a node so that it is not seen. But, simply unpublishing won't do because the user who created the node can re-publish it. I am looking for a way to basically make the node hidden, without deleting it. I was thinking I would use flags, and I think it will work fine, but the place where I am stuck is having drupal check to see if I have enabled the flag to disable the node. So if I have checked the flag, then the node won't be seen, and will be redirected to another page. Does anyone have any easy solution for this?

Comments

WorldFallz’s picture

Authors do not have the publish permission by default-- simply don't give them 'administer nodes' permission and unpublish the nodes.

ryan88’s picture

Well I am allowing users to publish and unpublish their content whenever they want. The reason I want to be able to "disable" node is so that if someone posts something that I want to review or that doesn't meet the rules, I can take it off the site immediately and have them revise it, but they can't make it live on the site again until I review it.

mtsanford’s picture

Not sure, but you may want to investigate the workflow module to see if it meets your needs. You can set up intermediate nodes states besides just the binary published/unpublished.

WorldFallz’s picture

Ah... then you'll probably want to look at something like the http://drupal.org/project/revision_moderation or http://drupal.org/project/workflow modules.

kbk’s picture

@worldfallz, i've looked all over and you've suggested Workflows for this several times but I can't see how to do it. Have you actually gotten this to work?

WorldFallz’s picture

You need to use the workflow_access submodule (part of workflow), but yep it should work. For d7 though, you might want to look at the workbench module.

psampaz’s picture

if your user has permission to edit his own content only then it's simple:

edit the node and go to the section "Authoring information"
Change "Authored by:" and add your username. This will make you the owner of the node and the original author cannot edit anymore.

if your user has permission to edit every content i'don't think there is an easy way to do it without changing global users permissions.

mtsanford’s picture

Under admin/settings/actions "Make a new advanced action available" there is an option for Change the author of a post..." This would allow this to be automated when a node is flagged.

However this would not allow the original poster to correct their content, which looks to be a requirement for the poster.

ryan88’s picture

Thanks for the suggestions. I've been fooling with the workflow module. It seems like it will work for my needs.