I've got a client who requests a couple of unusual ratings-style features:
1) Ratings on multiple criteria. Specifically, these could be Fivestar-style ratings, or anything allowing simple rating on some scale, but with multiple separate ratings per node. For example, if the node were a recipe, there could be individual ratings for Taste, Ease of Preparation, Thriftiness, etc.
Experimenting with CCK, I see I can add multiple Fivestar ratings to a node, but unless it's simply me doing something wrong, these only allow the node author to set multiple ratings; they're "dead" to other visitors.
Is there a way to tack multiple "live" instances of Fivestar or similar ratings to a node?
2) Numerical rating. Specifically, a way for any viewer to input a number. Like star-type ratings, the viewer would be able to both input a rating (a number), as well as see an average of all inputs.
Again, CCK lets me create a numerical field that allows the node author to input a number, but I don't see the way for visitors to do so. This could be useful in so many ways: let viewers guess at a future stock price, or place a value on some featured product, etc., with the possibility to show viewers info such as averages.
I've been crawling the forums and module lists (especially the Evaluation/Ratings category), but so far nothing. Are these actually "unusual" ratings tasks in Drupal or utterly mundane? Am I missing something really obvious?
Comments
There's no problem having
There's no problem having multiple ratings criteria (modules from the Evaluation/Ratings category) in place simultaneously. For example, you could have vote up/down and 5-star ratings enabled for the same content type. If what you want is to provide for a numerical input, however, it seems to me that what you want is to modify the input interface of an existing ratings module and modify the database write mechanism to allow for a different data type. For example, if I were starting with Fivestar module as a point of departure, I'd be looking at changing the input method from a choice of 1-5, to an input field of X. This would allow you to preserve much of the basic code in the module, which is essentially common to all the ratings modules that capture user input, write it to the database and provide for Views integration. Hit me up for an estimate.
Proton Cannon
But how to do the multiple ratings criteria?
Thanks for the quick reply. Right, I think a node could easily have multiple types of ratings enabled, such as your example of a vote up/down rating AND a 5-star rating. But I'm looking for multiple instances of the *same* rating widget, such as three 5-star ratings. These would each rate some factor (indicated in each widget's visible label), not rate the node itself.
There's no reason why it couldn't be implemented somehow; what I'm wondering is whether there's a known method for doing so, or whether I need to start hacking. If you or anyone know, please tell! Thanks!
--------
A site by, of, and for the Drupal newbie: http://www.drupalace.com