Node delete/edit for anonymous, how-to?

Events happening in the community are now at Drupal community events on www.drupal.org.
playfulwolf's picture

I have a real world example:
There is a classified ads site where registered and anonymous users are allowed to post ads. Principle is that user experience of the site is designed to be "quick ad posting" - it is the main reason they are allowed for anonymous. There is also thought an option for anonymous to delete their ads as the item is already sold.
How I think this workflow can look like:
1. After anonymous user posts an add, in the node creation form or after it is saved the random code (password) of 5-10 symbols is generated which he saves in the place of his own, like notepad, email template, post-it, somewhere in his Evernote and so on.
2. If the ad is not valid anymore - user can go to site.com/delete_ad_page and enter the code which will delete the node

Now the problems are:
I think I already know how to generate unique field containing password - it is not a problem.
Not so major problem is that there may be no suitable Rules actions to get the workflow done.
The main headache: all the content is anonymous and there are many many thousands of adds, even the original poster will have a hard time to find all of his ads, so if he has the code/password, it will be enough for him to find and delete the exact node, so such modules as Protected Node or similar is not suitable as they have a bit different approach - user can set the password instead of generating the random one and the use cases are completely different.

Has anyone done something like this? Which modules can be suitable? Share, please.

Comments

Drupal 7 module

ccrosaz's picture

This kind of website is a Craigslist, where anonymous users can manage their own content without registering.

I just develop a drupal 7 module to do so : https://www.drupal.org/sandbox/ccrosaz/2745275

Access Control

Group organizers

Group notifications

This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds: