function abuse(_category, _id)
{
	var m_title ='Пожаловаться';
	var af_text = '';
	if(_category=='project') 	m_title += ' на проект';
	else if(_category=='vacancy') 	m_title += ' на вакансию';
	else if(_category=='discussion') 	m_title += ' на заявку в проекте';
	else if(_category=='pf_work') 	m_title += ' на работу в портфолио';
	else if(_category=='inbox') 	{ m_title += ' на личное сообщение';  af_text='Спам'; }
	
	var msg = '<div class=\'msg_notify abuse_box \' style=\'background: transparent\'>';
	msg += '<b>Укажите причину:</b><br><textarea id=\'a_text\' name=\'a_text\' style=\'width: 380px; height: 120px;\'>'+af_text+'</textarea><br>';
	msg += '<br><input type=\'button\' value=\'Да, отправить жалобу\'  onClick="if($(\'a_text\').value.length < 1) { alert(\'Укажите причину\');  $(\'a_text\').focus(); } else { abuse_send(\''+_category +'\', '+ _id +'); }" />'; 
	msg += ' или <input style=\'background: #666; \' type=\'button\' value=\'Нет, я передумал\' onclick=\'Modalbox.hide(); return false\' />';
	msg += '</div>';
	Modalbox.show( msg, {title: m_title});
}

function abuse_send(_category, _id)
{	
	var _text = 'причина не указана';
	if ($('a_text'))
	{
		_text = $('a_text').value;
	}
	var values = {category:new xmlrpcval(_category), text:new xmlrpcval(_text), id:new xmlrpcval(_id, 'i4')};
	var param = new xmlrpcval();
	if (param.addStruct(values) == 0)
		throw 'Cannot add struct to params';

	var client = new xmlrpc_client('/xmlrpc/', window.location.host);
	var msg = new xmlrpcmsg('abuse');
	msg.addParam(param);
//	alert(msg.serialize() + ':' + msg.serialize().length);
	
	Modalbox.show('<div> <p><img src="/img/loader.gif" align=left>Отправляем...</p><span style="clear:both;"> </span></div>',{title:'Пожалуйста, подождите', height: 200});
       
	try
	{
		var ret = client.send(msg);
		
		if (ret.faultCode())
			throw ret.faultString() + ' (' + ret.faultCode() + ')';
		
		if (ret.value().kindOf() != 'scalar')
			throw 'Invalid kind of return value (' + ret.value().kindOf() + ')';
		
		if (ret.value().scalarTyp() != 'string')
			throw 'Invalid type of return value (' + ret.value().scalarTyp() + ')';
		
		if (ret.value().scalarVal() != 'done')
			throw ret.value().scalarVal();
		
		//XMLRPC_Timeout();
		
		var msgObj = $('message_view');
		if (msgObj)
		{
			msgObj.removeClassName("normal");
			msgObj.addClassName("spam");
		}
		Modalbox.show('<center>Сообщение отправлено<br> <button class="g_button" onClick="Modalbox.hide()">OK</button></center>','');
		//Modalbox.hide(); 
	}
	catch (err) 
	{
		Modalbox.show('<div class="err">Ошибка : ' + err + '</div><center><button class="g_button" onClick="Modalbox.hide()">OK</button></center>','');
	}
	
	//return ret.value().scalarVal();
}

