
/**
    response:
    3
*/


function receiveRating(data){
    
    var msg = "";  // debug
    
    var params = data.split("&");
    var result = new Object();
            
    for (var i=0; i<params.length; i++){
        var key = params[i].split("=")[0];
        var val = params[i].split("=")[1];
        
        if (key == "error"){
            alert("error: "+val);
            return;
        }
        
        result[key]=val;        
    }
    
    var current_rate = parseInt(result["rating"]);
    
    // update total ratings value
    if (typeof($('rating_votes')) == "object"){
        $('rating_votes').innerHTML = result["count"];
    }
    else{
        alert("error: rating.js unable to find node with id rating_votes: "+typeof($('rating_votes')));
    }
}

function getIndexOfEventStar(anchor){
    var element = anchor.parentNode.parentNode;
    var anchors = $('a', element);
    for (var i=0; i<anchors.length; i++){
        if (anchors[i] == anchor){
            return i;
        }
    }
    alert("Error unable to find rating value"); 
    return -1;
}

/**
    sends a get request: 
    vote?voting=2
*/
function sendRating(){

        rating = getIndexOfEventStar(this);
        
        if (rating > -1){
                    
            $.each($('a', $("#rating_stars")), function(i,v){
                    $("img", v).attr({
                       "src" : (i<(rating+1)?"http://foto.bihon.ro/@@/star_icon.gif" : "http://foto.bihon.ro/@@/star_icon_blank.gif")
                    });
                });
                        
            var url = "ajaxrating";
            $.get(url, {'ratingValue':rating},receiveRating);
        }
        else{
            alert("error: clicked rating img not found. abort rating");
        }   
}

function showRatingComment(e){
    var rating = getIndexOfEventStar(this);
    var info_arr = new Array("naşpa", "bunicel", "bun", "merită văzut", "super");
    var info = info_arr[rating];
      
    $("#star_description_target").empty().append(info);
}

function rate(){ /*dummy*/ };
function hideRatingComment(){
    $("#star_description_target").empty();
}

function initializeRating(){

    if (!$('#rating_stars')){
        // unable to initialize rating
        return;
    }   
    
    $.each($("a", $("#rating_stars")), function(i,n){
        $(n).attr({href: "javascript:rate()" });
        $(n).click(sendRating);
        $(n).mouseover(showRatingComment); 
        $(n).mouseout(hideRatingComment); 
        });
    
}

$(document).ready(initializeRating);


