var YAHOO=window.YAHOO||{};YAHOO.namespace=function(_1){if(!_1||!_1.length){return null;}var _2=_1.split(".");var _3=YAHOO;for(var i=(_2[0]=="YAHOO")?1:0;i<_2.length;++i){_3[_2[i]]=_3[_2[i]]||{};_3=_3[_2[i]];}return _3;};YAHOO.log=function(_5,_6){if(YAHOO.widget.Logger){YAHOO.widget.Logger.log(null,_5,_6);}else{return false;}};YAHOO.namespace("util");
var root = "http://www.zhihuiyixue.com";
function loadScript(url) {
  url=root+"/bbs/"+url;
  document.writeln('<script language="JavaScript" type="text/javascript" src="'+ url + '"></script>');
}
loadScript("js/yui/connection.js");
var loading = "<b>投票中...</b><br>";
var cache;
var handle_error = function(o) {
    alert("Oops:\n"+o.statusText);
}
var process_response = function(o) {
    var root = o.responseXML.documentElement;
    var html = root.getElementsByTagName('html')[0].firstChild.nodeValue;
    var message = root.getElementsByTagName('message')[0].firstChild.nodeValue;
    var script = root.getElementsByTagName('script')[0].firstChild.nodeValue;
    var status = root.getElementsByTagName('status')[0].attributes[0].value;
    if(script && script!="") {
        try {
            eval(script);
        }
        catch(e){alert(e)};
    }
    return {'html':html,'message':message,'status':status,'argument':o.argument,'xml':root};
}

var ajax_request = function(method,uri,callback,postData) {
    YAHOO.util.Connect.asyncRequest(method,uri,callback,postData);
}
function vote(id) {
    if(confirm('确定要对本话题投上一票?')) {
        cache = document.getElementById("vote_"+id).innerHTML;
        document.getElementById("vote_"+id).innerHTML = loading;
        ajax_request("GET","/bbs/actions/rate_post?id="+id,        
        {success:function(o) {
            data = process_response(o);
            if(data.status=='ok') {
                document.getElementById("vote_"+id).innerHTML = data.html;
                alert(data.message);
                
            }
            else {
                document.getElementById("vote_"+id).innerHTML = cache;
                alert(data.message);
            }
        },failure:handle_error,argument:[id]})
    }
}
