You are here

README.txt in Commerce Node Checkout 7

Overview
===
Integrate with Commerce in order to allow you to charge users to create
nodes. It is possible to have multiple different product offerings for
each node type, so the user can pick the product they want to purchase
when creating the node. An example use-case would be a classifieds site
that charges people to post listings.

Also offered, via a sub-module, is the ability to configure your product
types to have an expiration period in which the node is unpublished after
that period elapsed. Using the example from above, one product choice
could be a listing that lasts one month, another could be for 3 months,
etc. And since they are different products, they can have different prices,
etc. This sub-module also gives the user the ability to renew/relist their
node at any given time and optionally will send them a (configurable)
email notification when they are about to expire.


Requirements
===
- Commerce
- Entity reference
- Interval Field: Required only for the expiration sub-module so you can
 set the interval of the node expiration (ie, 1 month, 1 year, etc).


Installation & Configuration
===
- Enable the module(s) included in this package and all required modules.
- View the "Pay to Publish" product-type that is now available at
  admin/commerce/products/types. This is the product type that will be
  used to buy nodes.
- Add at least one new product of this new type at
  admin/commerce/products/add. You can add an unlimited amount.
- If you haven't yet already done so, create the node-type(s) that you
  will charge users to create. Make sure they default to not be published.
- Edit the node-type(s) that you wish to enable payments for, navigate to
  the "Commerce Node Checkout" vertical tab and select the products you
  want to have available for this node type. If you enabled the sub-module,
  you can also enable optional email notifications for when the node is
  about to expire. The node author can decide if they want to receive them.
- Go to the "Manage fields" tab (if the Field UI module is enabled) and
  feel free to configure the new field(s) that have now been added.
- Go to the node add form to make sure that the form elements are present.
  For admins, you will be given the option to skip adding the node to
  the shopping cart after creation.
- To configure the workflow or the expiration notification settings or
  email template, navigate to the Rules interface
  (admin/config/workflow/rules) and edit the associated Rules provided
  by this module.
- If using the expiration sub-module, it's recommended that you inspect
  the provided View, "Commerce Node Checkout Expire Posts", which comes
  as disabled by default. This provides two useful examples: 1) The newly
  available field for Nodes that displays the form to renew/relist a given
  node. 2) How to use an aggregation query to accurately determine the
  expiration date of a given node. This query is needed because the module
  tracks many expirations for the nodes based on the multiple purchases,
  and the largest date is the only one that matters.
- Using a provided Rule, if the order contains only nodes, it will be set
  to completed after checkout is finished. You may not want this to happen.
  This can be configured using the Rules interface.


Usage
===
Be sure to read the installation instructions prior to reading this.

- A user navigates to the node creation form for the node type that has
  products enabled.
- The user completes the node form, also choosing the product they wish
  to purchase along with this node (if there are multiple options). If
  the expiration sub-module is enabled, they will also be able to choose
  whether or not they want to be notified of upcoming expirations.
- After creating the node, they are taken to their shopping cart which
  now contains the unpublished node. They can either checkout, create
  another node, etc.
- Once they successfully check out, the node becomes published.
- If the expiration sub-module is enabled, when viewing the node, a "Relist"
  tab will be available, where the user can view the form to choose the
  product and add it to their cart again. This allows them to relist or
  add time to their listing. If the node is set to expire in 3 weeks,
  and the user purchases a product with a 1 month expiration, the expiration
  date will now be 3 weeks + 1 month.
- If the expiration sub-module is enabled, the admin can provide the
  user with a View (see #9 of installation instructions) of all of their
  purchased nodes with a quick form to add them to the cart for renewal.
- If the expiration sub-module is enabled, and notifications are enabled
  for the node-type (see #5 from the installation instructions), the user
  will receive an email N days before it expires to remind them.
- Admins will have a tab present on purchased nodes to adjust the expiration
  date.


Status
===
This module is not yet considered production-ready, but it should be
soon as a large number of fixes, improvements, and refactorings are taking
place now. Please test out the module and post any issues you encounter.


Warning
===
If you started using this module with the 7.x-1.x-dev package dated on
or before May 13th 2014, you must migrate from References to Entity
reference. Information and the module that can handle the migration can
be found here:
  https://drupal.org/project/entityreference_migration


Credits
===
- Written by Lee Rowlands of Rowlands Group - please visit our site if
  you're interested in sponsoring paid enhancements.
- Sponsored by Chat Wide Bay free classifieds for the Wide Bay region.
- mstef for joining as maintainer and getting this module ready for production;
  including a major rewrite of the expiration sub-module (credit to
  drakelam for helping).


Similar projects
===
UC Node Checkout

File

README.txt
View source
  1. Overview
  2. ===
  3. Integrate with Commerce in order to allow you to charge users to create
  4. nodes. It is possible to have multiple different product offerings for
  5. each node type, so the user can pick the product they want to purchase
  6. when creating the node. An example use-case would be a classifieds site
  7. that charges people to post listings.
  8. Also offered, via a sub-module, is the ability to configure your product
  9. types to have an expiration period in which the node is unpublished after
  10. that period elapsed. Using the example from above, one product choice
  11. could be a listing that lasts one month, another could be for 3 months,
  12. etc. And since they are different products, they can have different prices,
  13. etc. This sub-module also gives the user the ability to renew/relist their
  14. node at any given time and optionally will send them a (configurable)
  15. email notification when they are about to expire.
  16. Requirements
  17. ===
  18. - Commerce
  19. - Entity reference
  20. - Interval Field: Required only for the expiration sub-module so you can
  21. set the interval of the node expiration (ie, 1 month, 1 year, etc).
  22. Installation & Configuration
  23. ===
  24. - Enable the module(s) included in this package and all required modules.
  25. - View the "Pay to Publish" product-type that is now available at
  26. admin/commerce/products/types. This is the product type that will be
  27. used to buy nodes.
  28. - Add at least one new product of this new type at
  29. admin/commerce/products/add. You can add an unlimited amount.
  30. - If you haven't yet already done so, create the node-type(s) that you
  31. will charge users to create. Make sure they default to not be published.
  32. - Edit the node-type(s) that you wish to enable payments for, navigate to
  33. the "Commerce Node Checkout" vertical tab and select the products you
  34. want to have available for this node type. If you enabled the sub-module,
  35. you can also enable optional email notifications for when the node is
  36. about to expire. The node author can decide if they want to receive them.
  37. - Go to the "Manage fields" tab (if the Field UI module is enabled) and
  38. feel free to configure the new field(s) that have now been added.
  39. - Go to the node add form to make sure that the form elements are present.
  40. For admins, you will be given the option to skip adding the node to
  41. the shopping cart after creation.
  42. - To configure the workflow or the expiration notification settings or
  43. email template, navigate to the Rules interface
  44. (admin/config/workflow/rules) and edit the associated Rules provided
  45. by this module.
  46. - If using the expiration sub-module, it's recommended that you inspect
  47. the provided View, "Commerce Node Checkout Expire Posts", which comes
  48. as disabled by default. This provides two useful examples: 1) The newly
  49. available field for Nodes that displays the form to renew/relist a given
  50. node. 2) How to use an aggregation query to accurately determine the
  51. expiration date of a given node. This query is needed because the module
  52. tracks many expirations for the nodes based on the multiple purchases,
  53. and the largest date is the only one that matters.
  54. - Using a provided Rule, if the order contains only nodes, it will be set
  55. to completed after checkout is finished. You may not want this to happen.
  56. This can be configured using the Rules interface.
  57. Usage
  58. ===
  59. Be sure to read the installation instructions prior to reading this.
  60. - A user navigates to the node creation form for the node type that has
  61. products enabled.
  62. - The user completes the node form, also choosing the product they wish
  63. to purchase along with this node (if there are multiple options). If
  64. the expiration sub-module is enabled, they will also be able to choose
  65. whether or not they want to be notified of upcoming expirations.
  66. - After creating the node, they are taken to their shopping cart which
  67. now contains the unpublished node. They can either checkout, create
  68. another node, etc.
  69. - Once they successfully check out, the node becomes published.
  70. - If the expiration sub-module is enabled, when viewing the node, a "Relist"
  71. tab will be available, where the user can view the form to choose the
  72. product and add it to their cart again. This allows them to relist or
  73. add time to their listing. If the node is set to expire in 3 weeks,
  74. and the user purchases a product with a 1 month expiration, the expiration
  75. date will now be 3 weeks + 1 month.
  76. - If the expiration sub-module is enabled, the admin can provide the
  77. user with a View (see #9 of installation instructions) of all of their
  78. purchased nodes with a quick form to add them to the cart for renewal.
  79. - If the expiration sub-module is enabled, and notifications are enabled
  80. for the node-type (see #5 from the installation instructions), the user
  81. will receive an email N days before it expires to remind them.
  82. - Admins will have a tab present on purchased nodes to adjust the expiration
  83. date.
  84. Status
  85. ===
  86. This module is not yet considered production-ready, but it should be
  87. soon as a large number of fixes, improvements, and refactorings are taking
  88. place now. Please test out the module and post any issues you encounter.
  89. Warning
  90. ===
  91. If you started using this module with the 7.x-1.x-dev package dated on
  92. or before May 13th 2014, you must migrate from References to Entity
  93. reference. Information and the module that can handle the migration can
  94. be found here:
  95. https://drupal.org/project/entityreference_migration
  96. Credits
  97. ===
  98. - Written by Lee Rowlands of Rowlands Group - please visit our site if
  99. you're interested in sponsoring paid enhancements.
  100. - Sponsored by Chat Wide Bay free classifieds for the Wide Bay region.
  101. - mstef for joining as maintainer and getting this module ready for production;
  102. including a major rewrite of the expiration sub-module (credit to
  103. drakelam for helping).
  104. Similar projects
  105. ===
  106. UC Node Checkout