var cnt = 0 ;

function cmnt_del(id) {
    cnt ++ ;
    var my_a = new Ajax.Updater(
	    'none',
	    '/cgi-bin/cmnt.fcgi?rm=del&rnd=' + cnt + '&cmnt_id=' + id,
	    { onComplete: do_cmnt_del, method: 'get' }) ;
    return false ;
}

function do_cmnt_del(aj) {
    var v = eval('(' + aj.responseText + ')') ;
    if (v.message != '') {
	alert(v.message) ;
    } else {
	$(v.id).innerHTML = '(comment deleted)' ;
    }
}


function unban(user, ip) {
    cnt ++ ;
    var my_a = new Ajax.Updater(
	    'none',
	    '/users/' + user + '/unban.xml?ip=' + ip + ';rnd=' + cnt,
	    { onComplete: do_unban, method: 'get' }) ;
    return false ;
}

function do_unban(aj) {
    var v = eval('(' + aj.responseText + ')') ;
    if (v.message != '') {
	alert(v.message) ;
    } else {
/*	$(v.id).innerHTML = '(ban removed)' ; */
	Element.hide(v.id) ;
    }
}


function ban(id) {
    cnt ++ ;
    var my_a = new Ajax.Updater(
	    'none',
	    '/cgi-bin/cmnt.fcgi?rm=ban&rnd=' + cnt + '&cmnt_id=' + id,
	    { onComplete: do_ban, method: 'get' }) ;
    return false ;
}

function do_ban(aj) {
    var v = eval('(' + aj.responseText + ')') ;
    if (v.message != '') {
	alert(v.message) ;
    } else {
	$(v.id).innerHTML = '(' + v.ip + ' [banned])' ;
    }
}

function rate(blog_id, delta) {
    cnt ++ ;
    var my_a = new Ajax.Updater(
	    'rate' + blog_id,
	    '/cgi-bin/b.fcgi?rm=rate&blog_id='+ blog_id+'&delta='+delta+'&rnd'+cnt,
	    {evalScripts: true, method: 'get'}
	    ) ;
    return false ;
}

function do_rate(aj) {
    var v = eval('(' + aj.responseText + ')') ;
    var class1 = '' ;
    var class2 = '' ;
    var dir1 = -1 ;
    var dir2 = 1 ;
    if (v.delta == 1) {
	class2 = 'class="active" ' ;
	dir2 = 0 ;
    }

    if (v.delta == -1) {
	class1 = 'class="active" ' ;
	dir1 = 0 ;
    }

    $(v.id).innerHTML =
	'<a ' + class1 + ' href="#" onclick="return rate(\'' + v.user + '\', ' +
	    v.text_id + ', ' + dir1 + ')"> - </a> ' +
	v.rating + ' ' +
	'<a ' + class2 + ' href="#" onclick="return rate(\'' + v.user + '\',' +
	    v.text_id + ', ' + dir2 + ')"> + </a> ' ;
}

function	form2box(from, to, par) {
    var p = Form.serialize($(from)) + '&' + par ;
    new Ajax.Updater(to, $(from).action, {
	method : $(from).method,
	postBody : p
	}) ;

}

Event.observe(window,"load",function() {
	$$(".ii").findAll(function(node){
	    return node.getAttribute('title');
	    }).each(function(node){
		new Tooltip(node,node.title);
		node.removeAttribute("title");
		});
	});

