/**********************************************************************
* DIGITAL CAVALRY WP VOTING SYSTEM PLUGIN
* (WP voting system)
*
* File name:
* common.js
* Brief:
* Plugin JavaScript file
* Author:
* DigitalCavalry
* Author URI:
* http://themeforest.net/user/DigitalCavalry
* Contact:
* digitalcavalry@gmail.com
**********************************************************************/
/***********************************************************
* MAIN
************************************************************/
function dcp_createVotingCookie(name,value,seconds) {
if (seconds) {
var date = new Date();
date.setTime(date.getTime()+(seconds*1000));
var expires = "; expires="+date.toGMTString();
}
else var expires = "";
document.cookie = name+"="+value+expires+"; path=/";
}
function dcp_readVotingCookie(name) {
var nameEQ = name + "=";
var ca = document.cookie.split(';');
for(var i=0;i < ca.length;i++) {
var c = ca[i];
while (c.charAt(0)==' ') c = c.substring(1,c.length);
if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
}
return null;
}
function dcp_eraseVotingCookie(name) {
createCookie(name,"",-1);
}
function dcp_voteCommentUpDown(obj, cookiename, commentid, value, expire, postid)
{
var q = jQuery.noConflict();
function voteCommentSuccess(data)
{
var q = jQuery.noConflict();
var parent = q(obj).parent();
data.up = parseInt(data.up);
data.down = parseInt(data.down);
q(parent).find('.up').text('+'+data.up);
q(parent).find('.down').text('-'+data.down);
q(parent).find('.sum').text('('+data.sum+')');
q(parent).find('.procentage').text('+'+data.proc_up+'%/-'+data.proc_down+'%');
q(parent).find('.img-up').css('display', 'none');
q(parent).find('.img-down').css('display', 'none');
q(parent).find('.img-locked').css('display', 'inline');
dcp_createVotingCookie(cookiename, 1, expire);
q(parent).animate({opacity:1.0}, 300);
}
var parent = q(obj).parent();
q(parent).animate({opacity:0.0}, 300);
q.post(
dcp_voting_plugin_path+'lib/actions.php',
{ 'action': 'votecomment', 'commentid':commentid, 'value':value, 'postid':postid},
voteCommentSuccess, 'json');
}
function dcp_votePostStars(obj, cookiename, postid, value, expire)
{
var q = jQuery.noConflict();
if(q('#dcp-vote-stat-frame').length)
{
var pos = q(obj).parent().position();
var frame_pos = q('#dcp-vote-stat-frame').position();
if(pos.top+25 != frame_pos.top)
{
q('#dcp-vote-stat-frame').stop().css('opacity', 0.0).css('left', pos.left).css('top', pos.top+25).animate({opacity:1.0}, 200);
}
}
function votePostSuccess(data)
{
q = jQuery.noConflict();
if(data.votes == 1)
{
q(parent).find('.votes-text').text('vote');
} else
{
q(parent).find('.votes-text').text('votes');
}
// console.log(data);
var rate = data.sum / data.votes;
rate = rate.toFixed(1);
q(parent).find('.star')
.animate({opacity:1.0}, 200)
.removeAttr('onmouseout')
.removeAttr('onclick')
.removeAttr('onmouseover')
.attr('title', data.votes+' votes, average '+rate+' out of '+data.max_stars);
q(parent).find('.rating').text(rate);
q(parent).find('.votes-num').text(data.votes);
dcp_starMouseOut(obj, rate, data.max_stars);
dcp_createVotingCookie(cookiename, 1, expire);
dcp_votePostStarsUpdateStats(obj, data);
}
var parent = q(obj).parent();
q(parent).find('.star').animate({opacity:0.0}, 200);
q.post(
dcp_voting_plugin_path+'lib/actions.php',
{ 'action': 'votepost', 'postid':postid, 'value':value},
votePostSuccess, 'json');
}
function dcp_votePostStarsUpdateStats(obj, data)
{
q = jQuery.noConflict();
var parent = q(obj).parent();
var out = 'Voting statistics:
';
out += '
| Rate | Percentage | Votes |
|---|---|---|
| '+(i+1)+' | '; out += ' '+Math.round(proc[i])+'% | ';
out += ''+stats[i]+' |