(function($){
$.reply = {
star: function($id,$blurb) {
	var _src = $('#s'+$id).attr('src');
	$.post($.reply.s.cgi,
	{func: 'star', id: $id, blurb: $blurb||0}, function($j){
		var _o = JSON.parse($j);
		if (_o.status == 'ok')
			$('#s'+$id).attr('src',_src.replace(/\d\./,(_o.state?'1.':'2.')));
		return false;
	});
},
blurb: function($o,$cb) {
	$o.func = 'blurb';
	$.post($.reply.s.cgi, $o, function($j) {
		var _o = JSON.parse($j);
		if (_o.status == 'ok' && $.isFunction($cb))
			$cb();
		else if (_o.status != 'ok')
			alert($.Trans.ESystemError+' '+_o.status);
	});
	return false;
},
write: function($o,$cb) {
	$.post($.reply.s.cgi,
	{func: 'post', parent: $o.parent, name: $o.name, text: $o.text},
	function($j){
		var _o = JSON.parse($j);
		if (_o.status == 'ok') $cb();
		else alert($.Trans.ESystemError);
		return false;
	});
	return false;
},
mark: function($id,$cb) {
	$.post($.reply.s.cgi,{func: 'mark', id: $id},function($j){
		var _o = JSON.parse($j);
		if (_o.status == 'ok') $cb();
		else alert($.Trans.ESystemError);
		return false;
	});
},
del: function($id,$cb,$blurb) {
	if (!confirm($.Trans.ConfirmDelete))
		return false;

	var _q = { id: $id };
	if ($blurb) {
		_q.func = 'blurb';
		_q.chmod = 'del';
	} else {
		_q.func = 'chmod';
		_q.perm = 'del';
	}

	$.post($.reply.s.cgi,_q,function($j){
		var _o = JSON.parse($j);
		if (_o.status == 'ok') $cb(_o.state);
		else alert($.Trans.ESystemError);
		return false;
	});
},
s: { cgi: '/--/p2' }
};
})(jQuery);

