| 1 |
// $Id$
|
| 2 |
|
| 3 |
The collect_nodes modules add both the client and server side of a collecting nodes processus in Drupal 5.
|
| 4 |
|
| 5 |
Presentation:
|
| 6 |
-------------
|
| 7 |
|
| 8 |
Collect nodes is about collecting nodes "on the fly", either from a full node (with an additional block) or from a list of nodes (views). It's also about making collections (IE: being able to list, thanks to views integration, the collected nodes).
|
| 9 |
|
| 10 |
The huge evolution with this module is that it's based on a FULL (WEB)SERVICE architecture. It's not really going to work without services and json_server properly configured (the first collect_nodes client has been developped in js/jquery/json). The goal here is to have a full gap between the "client" (widget) and the service (database and business logic). Thus, one can make it's own widget (why not flex/air widgets, that'll be easy).
|
| 11 |
|
| 12 |
Features:
|
| 13 |
---------
|
| 14 |
|
| 15 |
* admin configuration: set all the node types which can be collected AND set a maximum amount for a user's collection (and a handler once this limit is over) for normal users to collect nodes (associated with a specific role you can give to your customers). After this limit, you can do what you want (make your customers pay, connect to a workflow, give them points, ...)
|
| 16 |
* scalability: a batch_mode has been developped, so that on each view, only one request is done to know in which status the widgets are (collected, not collected yet). Thanks to the webServices architecture, we can imagine a full message queue system at the end (V2?), which will be 100% reliable.
|
| 17 |
* usability: the widget has been especially designed for a IE7/Firefox2 use. It's using both directions scalable buttons (borrowed to an internet code, quoted in the css), and it's easy to configure (clean CSS, clean JS,...)
|
| 18 |
* views integration: there is already a large views integration (counter, links, filters, ...) and some features are on the way (V2: order by collected_counts like a votingAPI, filter by user-relations-collections
|
| 19 |
* workflow-ng integration: events, actions and conditions are declared, so that you can for instance auto-collect a nodes after one guy actually created / modified it.
|
| 20 |
* other: and maybe some really cool staff I'm sure I forgot to mention here...
|
| 21 |
|
| 22 |
Collect_nodes was designed by Laurent Pipitone (striky2).
|
| 23 |
|
| 24 |
Dependencies
|
| 25 |
------------
|
| 26 |
[core module]
|
| 27 |
* none
|
| 28 |
|
| 29 |
[server-side]
|
| 30 |
* services
|
| 31 |
|
| 32 |
[client-side]
|
| 33 |
* json-server
|
| 34 |
|
| 35 |
[additional core functionnalities]
|
| 36 |
* views
|
| 37 |
* wrkflow-ng
|
| 38 |
|
| 39 |
Install
|
| 40 |
-------
|
| 41 |
|
| 42 |
1) Copy the collect_nodes folder to the modules folder in your installation.
|
| 43 |
2) Enable the modules using Administer -> Modules (/admin/build/modules)
|
| 44 |
3) Also enable services and json_server (same area)
|
| 45 |
|
| 46 |
Configuration
|
| 47 |
-------------
|
| 48 |
1) Configure services and json_server (with security key that you need to copy)
|
| 49 |
2) Sites configuration > collect-nodes > API-key: paste your API key
|
| 50 |
3) Sites configuration > collect-nodes: default redirection, collection maximum items, nodes that can be collected
|
| 51 |
4) User / access roles: give proper permissions to your users roles (line collect_nodes)
|
| 52 |
|
| 53 |
Contributing & support
|
| 54 |
------------
|
| 55 |
Want to contribute new widgets or core evolutions? Want some support?
|
| 56 |
Post on the issue queue: http://drupal.org/project/issues/collect_nodes
|