The Arcive of Official vBulletin Modifications Site.It is not a VB3 engine, just a parsed copy! |
|
[AJAX] Helpful Answers - Post Rating System (plus many sub-features) Details »» | |||||||||||||||||||||||||||||||||||||||||||
[AJAX] Helpful Answers - Post Rating System (plus many sub-features)
Developer Last Online: Nov 2020
Note: While this modification is updated for compatibility, I am only developing features for the 4.x version. I understand many sites continue to use 3.8 for a variety of reasons but dual developing takes time away from adding anything new. I encourage you to develop out your own change and share them back as no modification is ideal for every forum out of the box.
Every day your users contribute hundreds if not thousands of posts making it hard for new members and guests to separate out the best answers from those that are less helpful. The Helpful Answers System offers your members a quick way (AJAX) to rate individual posts as either helpful or not allowing future visitors to understand the benefits of each post. Designed for maximum flexibility: This addon is built to be flexible and offers several customization options including:
Load & Scale: This addon is designed to work with small to large sites and is currently being used by sites with more than 2 million posts. If you have questions about integrating with your big board please contact me. Modification Installation: This addon requires uploading multiple files, installing a vBulletin product and enabling the feature in any forums you wish. No template modifications are required. Please see the included install file for detailed instructions. If you are not seeing the rating bar double check that you have enabled the feature in the forum you are in and insure the Manual Template override option is not enabled. Rating Review & Deletion: To identify and remove abuse a reporting system is included with this addon and can be found in your vBulletin ACP under the Helpful Answers tab. Through this panel you will be able to view a user's overall rating history and individual ratings and can remove either if necessary. Users can also be explicitly banned from the system. Reputation System Integration: Helpful Answers can be extended to directly tie into your reputation system giving users positive or negative points based on the ratings of their posts. There are numerous options on how to handle ratings that can be found in a separate Helpful Answers Reputation part of your vBulletin Settings page. External Integration: vB Plaza Modification - http://www.vbplaza.com/forum/showthread.php?p=6359 vB Experience - https://vborg.vbsupport.ru/showthread.php?t=199556 Anonymous Stats Tracking (optional): vBulletin forums reach millions of consumers around the world yet little is known about their habits and opinions. This addon was released to the public out of requests but also to further the research of forum user's behaviors and actions through collecting the most basic data on thousands of sites. By default this addon will pass basic rating data (positive or negative) to a 3rd party site for statistical purposes. Only the most basic data is captured (the vote and your site name) and no user information or specific forum details are logged, not even an IP address. While you may disable this feature through the administrative options I ask that you consider leaving it in place to help this research effort and insure the continued support of the addon. The tracking feature uses the php library cURL on a 5 second timeout. If cURL is not installed this option is automatically disabled. Updates: - 5/13/2011 - Release of 2.0.6 minor bug fix - 08/31/2009 - Release of 2.0.0 - 08/07/2009 - Release of 1.9.5 stable Other Versions: This addon will work with 3.7 but to avoid issues with different code versions please see the 3.7 version thread here. Before you download this modification please remember this is a free tool provided as a courtesy to you and support responses are subject to the availability of the author and other members. If you are looking for a professionally supported system this is not the solution for you. Download Now
Screenshots
Supporters / CoAuthors Show Your Support
|
5 благодарности(ей) от: | ||
BGObsession, hsoen, JohorBahru, Simon Lloyd |
Comments |
#12
|
|||
|
|||
Thanks WoodiE. I've really never dived deep into AJAX and I was pretty pleased to have it go so fast although for a mod like this it was a pretty simple change.
Also releasing 1.3.1 which moves the helpful_answers template to phrases for better translation support and easier editing. |
#13
|
|||
|
|||
Thanks for the private feedback; I've added a simple page showing the Most Helpful Answers. This can be disabled through the options and the number of results to show can also be configured.
|
#14
|
|||
|
|||
How does this impact to server load?
|
#15
|
|||
|
|||
Fair question and as I'm sure it will be asked later, I'll break down the different areas of potential impact:
1. Viewing a thread No new queries are made with this addon but there is a change that impacts the existing post query. Basically with this addon 3 additional fields are pulled from the select routine, 2 exist in the post table and one is from a join on the helpful answers table. Joins certainly add to the query length but as both keys are indexed it's minimal. There are also a few template conditionals called; while conditionals don't do much to load on their own they do add up if you use enough. While testing this script I used microstats to measure impact and did not identify any noticeable impact to the page rendering or CPU usage. 2. Rating a post When a post is rated the script goes through a series of checks including 2 queries to read out data and two updates to insert the vote record and change the post table. This is fairly minimal and since it's a specific request option (rather than something passive that happens when viewing a page) it should be expected. 3. Viewing the most helpful answers page When enabled this page will run one looping query with a single join. This is not a major process at all. 4. Admin functions The admin functions are mostly simple querying one or two times per page. The exception to this is doing a bulk delete on a user with a lot of rating history; in this case there's two queries per rating which can be intensive. As such this function is marked as being intensive. Summed up It's easy to get worried about a function like this where data is read on every post but I have done my best to minimize any impact. For example, rather than querying tables to get vote totals for every post the totals are stored with the post record and calling them up adds minimal load. Other steps are also taken to prevent load like using an array with banned members and a forum option to check if the forum is allowed to use the addon rather than querying the database for a standalone piece of data. To be crystal clear, this addon has been used for over a year on a decent traffic forum that runs, as most of the users would say, fast. While there are new functions with the public release this is not an untested app and if it was impacting performance on my sites I wouldn't be using it let alone releasing it. I'm confident this addon will have minimal additional performance impact but like every addon it does introduce more queries on some pages, more joins, more conditionals and more code which does mean more load. For larger sites I always encourage basic load testing (even just watching load times with microstats is often enough). Hope that answers your question. |
#16
|
|||
|
|||
Code:
Database error in vBulletin 3.8.0: Invalid SQL: SELECT post.*, post.username AS postusername, post.ipaddress AS ip, IF(post.visible = 2, 1, 0) AS isdeleted, user.*, userfield.*, usertextfield.*, icon.title as icontitle, icon.iconpath, avatar.avatarpath, NOT ISNULL(customavatar.userid) AS hascustomavatar, customavatar.dateline AS avatardateline,customavatar.width AS avwidth,customavatar.height AS avheight, spamlog.postid AS spamlog_postid, deletionlog.userid AS del_userid, deletionlog.username AS del_username, deletionlog.reason AS del_reason, editlog.userid AS edit_userid, editlog.username AS edit_username, editlog.dateline AS edit_dateline, editlog.reason AS edit_reason, editlog.hashistory, postparsed.pagetext_html, postparsed.hasimages, sigparsed.signatureparsed, sigparsed.hasimages AS sighasimages, sigpic.userid AS sigpic, sigpic.dateline AS sigpicdateline, sigpic.width AS sigpicwidth, sigpic.height AS sigpicheight, IF(displaygroupid=0, user.usergroupid, displaygroupid) AS displaygroupid, infractiongroupid , IF(SUM(photoplog_fileuploads.moderate) > 0 AND 1 = 0,COUNT(photoplog_fileuploads.moderate) - SUM(photoplog_fileuploads.moderate),COUNT(photoplog_fileuploads.moderate)) AS photoplog_filecount,post.goodrank,post.totalrank,helpfulanswer.helpfulanswerid FROM post AS post LEFT JOIN user AS user ON(user.userid = post.userid) LEFT JOIN userfield AS userfield ON(userfield.userid = user.userid) LEFT JOIN usertextfield AS usertextfield ON(usertextfield.userid = user.userid) LEFT JOIN icon AS icon ON(icon.iconid = post.iconid) LEFT JOIN avatar AS avatar ON(avatar.avatarid = user.avatarid) LEFT JOIN customavatar AS customavatar ON(customavatar.userid = user.userid) LEFT JOIN spamlog AS spamlog ON(spamlog.postid = post.postid) LEFT JOIN deletionlog AS deletionlog ON(post.postid = deletionlog.primaryid AND deletionlog.type = 'post') LEFT JOIN editlog AS editlog ON(editlog.postid = post.postid) LEFT JOIN postparsed AS postparsed ON(postparsed.postid = post.postid AND postparsed.styleid = 2 AND postparsed.languageid = 1) LEFT JOIN sigparsed AS sigparsed ON(sigparsed.userid = user.userid AND sigparsed.styleid = 2 AND sigparsed.languageid = 1) LEFT JOIN sigpic AS sigpic ON(sigpic.userid = post.userid) LEFT JOIN photoplog_fileuploads AS photoplog_fileuploads ON(photoplog_fileuploads.userid = user.userid)LEFT JOIN helpfulanswer AS helpfulanswer ON(helpfulanswer.postid = post.postid and helpfulanswer.userid = 1) WHERE post.postid IN (0,50) GROUP BY post.postid ORDER BY post.dateline; MySQL Error : Table 'theguy1_AllBoutLife.helpfulanswer' doesn't exist My error after visiting a thread |
#17
|
|||
|
|||
The3rdNipple,
It looks like the table used to store records was not able to be created by the installer. You will need to create this table manually by running the following query from phpMyAdmin or a similar database program. Code:
CREATE TABLE `helpfulanswer` ( `helpfulanswerid` int(10) unsigned NOT NULL AUTO_INCREMENT, `postid` int(10) unsigned NOT NULL DEFAULT '0', `userid` int(10) unsigned NOT NULL DEFAULT '0', `yesno` int(10) unsigned NOT NULL DEFAULT '0', `dateline` INT UNSIGNED NOT NULL DEFAULT '0', KEY `helpfulanswerid` (`helpfulanswerid`), KEY `postid` (`postid`), KEY `userid` (`userid`) ); |
#18
|
|||
|
|||
Interesting mod. Watching this closely.
In the update history, the latest should be 1.3.2 instead of 1.3.3 How do you compare this one with Yahoo Answers. Yahoo makes it very easy to find the most useful answer in a long thread. |
#19
|
|||
|
|||
Quote:
This mod has a lot of similarities to the Yahoo Answers site in letting users rate responses which they also do. Future visitors can then identify the more popular/ trusted answers out of the overall batch. The feature you're talking about where the topic starter picks an answer and has that answer moved to the top of the list is not something this mod tries to solve as that's not about group ratings but rather about an individual post selection. I've developed a feature like that for a few sites but have never made it move the post around. It's an interesting discussion as a forum is different than q&a website like Yahoo Answers and moving a post up in order to say the second spot has a lot of implications for discussion flow. That said, I imagine there are sites with areas that could use an easy selection process like that. |
#20
|
|||
|
|||
I would like to see a in-post feature to rate preset phrases:
|
#21
|
|||
|
|||
I'm waiting for a feature where the most useful post in a thread is highlighted using some customizable color palette.
what is your solution when you have 2 equally ranked posts on the level of usefulness? Will they be marked most useful at the same time? I can see this being very useful for my site and I look forward to installing soon. P.S Can you post a screenshot of the post in the thread. I like to see how standout it looks currently |
Thread Tools | |
|
|
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
More Information | |
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|