Selling Per Story Access

Posts: 1
Joined: 02/11/2008

Hey,

We are considering to move to Drupal with our website. However, one of the main features that we need to have is the ability to sell access to individual stories. (i.e. registered users can purchase a story, and get full access to it and a PDF file). Any registered or anonymous user should be able to see the title and teaser of the article, but nothing more (or less).

I've installed Drupal 5 and added the 'ecommerce' module. I'm able to create different types of products, but I can't figure out how to sell 'stories' as products (other than a PDF file that's attached to it). Someone directed me to uebercart, but I still am not really able to accomplish putting stories up for sale.

Any advice? Am I missing something or are there other modules out there that I can use?

Regards,
-manu

Posts: 5269
Joined: 08/07/2007
AdministratorHead Code Monkey - I eat bugs.

Manu, for a system like this I'd really expect you to have to cook up a custom node access module. I don't think using a role based system will be ideal. I'd say require users to create accounts and then have a story purchase button on the teaser for the article. When they check out, you'll need to log in the DB somewhere that they have access to view that node and pull up that info when they go to view it later. Unfortunately, this is no small task and requires some solid PHP knowledge.

Posts: 925
Joined: 11/05/2007
Bug FinderFAQ ModeratorGetting busy with the Ubercode.

Just brainstorming - not sure if this will work - but how about a workflow-ng config that publishes a story upon checkout completion? Anyone could submit a story, which would remain unpublished. A view would provide the user a list of his/her unpublished content. A product could be offered on this view for each unpublished story, having an attribute of the story node id. Then workflow-ng could be configured to publish the story with that node id when the product is purchased and paid for. One product node takes care of it all since the node id is passed as an attribute.

--

<tr>.