// rating
function ratingstar_toggle(content_id, score, toggle)
{
	for ( var i = 1; i <= score; i++ )
	{
		var obj = $('ratingstar'+content_id+'__'+i);
		obj.src = ( toggle == 'show' ) ? (obj.src).replace(/rate0/, 'rate1') : (obj.src).replace(/rate1/, 'rate0');
	}
}


function submit_rating(type, member_id, content_id, score)
{
	new Ajax(virpath+'index.php?m=rating', {
		method: 'post',
		data: {'type':type,'score':score,'member_id':member_id,'content_id':content_id},
		onComplete: function(response) {
			var response = response.split("\n");
			if ( response.length == 2 )
			{
				if ( response[0] == 'ok' && response[1] )
				{
					$('rating_'+type+'_box'+content_id).innerHTML = '<p class="response">' + response[1] + '</p>';
					return true;
				}
			}
		}
	}).request();
}


// reports
function submit_report(type, member_id, content_id, noreason)
{
	var reason = $('report_'+type+'_reason'+content_id).value;
	if ( !reason ) { alert(noreason); return; }

	new Ajax(virpath+'index.php?m=report', {
		method: 'post',
		data: {'type':type,'reason':reason,'member_id':member_id,'content_id':content_id},
		onComplete: function(response) {
			var response = response.split("\n");
			if ( response.length == 2 )
			{
				if ( response[0] == 'ok' && response[1] )
				{
					$('report_'+type+'_box'+content_id).innerHTML = '<p class="response">' + response[1] + '</p>';
					return true;
				}
			}
		}
	}).request();
}


// polls
function submit_poll(poll_id, answer_id)
{
	new Ajax(virpath+'index.php?m=vote', {
		method: 'post',
		data: {'poll_id':poll_id,'answer_id':answer_id},
		onComplete: function(response) {
			var response = response.split("\n");
			if ( response.length == 3 )
			{
				if ( response[0] == 'ok' && response[1] )
				{
					$('poll_votes_'+poll_id).innerHTML = response[1];
					var votes = response[2].split(",");
					for ( var i = 0, totalvotes = votes.length; i < totalvotes; i++ ) {
						var counters = votes[i].split("=");
						if ( counters.length == 2 )
						{
							$('poll_'+poll_id+'_answer_votes_'+counters[0]).innerHTML = counters[1];
							$('poll_'+poll_id+'_answer_votes_'+counters[0]+'_wrap').style.display = 'inline';
						}
						$('poll_'+poll_id+'_answer_'+i).disabled = 'disabled';
						//$('poll_'+poll_id+'_answer_'+i+'_wrap').style.display = 'none';
					}
					return true;
				}
			}
			else if ( response.length == 2 )
			{
				if ( response[0] == 'ok' && response[1] )
				{
					$('poll_votes_'+poll_id).innerHTML = response[1];
					for ( var i = 0; $('poll_'+poll_id+'_answer_'+i) != null; i++ ) {
						$('poll_'+poll_id+'_answer_'+i).disabled = 'disabled';
						//$('poll_'+poll_id+'_answer_'+i+'_wrap').style.display = 'none';
					}
					return true;
				}
			}
		}
	}).request();
}


// tabs
var active_tab = 1;
function switch_tabs(prefix,new_tab)
{
	if ( active_tab != new_tab ) {
		document.getElementById(prefix + '' + new_tab).style.display = "block";
		document.getElementById(prefix + '' + active_tab).style.display = "none";
		active_tab = new_tab;
	}
}


// toggles
function row_toggle(name)
{
    var showRow = (browser.IE) ? "block" : "table-row";

    for (var i = 0;  document.getElementById(name+'_'+i) != null;  i++)
    {
        if (document.getElementById(name+'_'+i).style.display == "none")
            document.getElementById(name+'_'+i).style.display = showRow;
        else
            document.getElementById(name+'_'+i).style.display = "none";
    }
}

function showhide_field(name, show)
{
	var el = document.getElementById(name);
    if (el.style.display == "none"  &&  (show == '' || show == undefined)  ||  show == 1)
    {
        el.style.display = "block";
    }
    else
    {
        el.style.display = "none";
    }
}


function switch_fields(field1, field2)
{
	if ( field1 != field2 ) {
		document.getElementById(field1).style.display = "block";
		document.getElementById(field2).style.display = "none";
	}
}


//------------------------------------------------
// Misc
//------------------------------------------------
function confirmLink(question, url)
{
    var is_confirmed = confirm(question);

    if (is_confirmed && url != '')
        window.location = url;

    return is_confirmed;
}

function confirmForm(question, form)
{
    var is_confirmed = confirm(question);

    if (is_confirmed && form != '')
        eval('document.' + form + '.submit()');

    return is_confirmed;
}

function toggleMessages(form, check)
{
    for (var i = 0; i < form.elements.length; i++)
    {
        if (form.elements[i].type == 'checkbox')
        {
            form.elements[i].checked = check;
        }
    }
}

function stylizeBooleanBox(prefix, boxid)
{
	var options = document.getElementById(prefix + boxid);
	for ( var i = 0, length = options.length; i < length; i++ )
	{
		options[i].style.background = ( options[i].value == 1 ) ? '#DEFAE0' : '#FBDDDD';
		if ( options[i].value == 1 && options[i].selected )
			document.getElementById(prefix + boxid).style.background = '#DEFAE0';
		else if ( options[i].value == 0 && options[i].selected )
			document.getElementById(prefix + boxid).style.background = '#FBDDDD';
	}
}


//------------------------------------------------
// Chat
//------------------------------------------------
var chatpfad = 'http://lotuscafe.de';
var windowID = 0;
var windowStack = new Array();
var w_height  = 660; // window height in px
var w_width   = 600; // window width in px
var virpath = ''; // this should be obsolete, please remove soon
var autodelay = 30000; // default, we should remove that kind of stuff an "merge them down"

function checkChat(path,check,delay) {
  virpath = path;
  autocheck = check;
  checkChatText();
}

/*

  Chat Status

  0 = Anfrage
  1 = Anfrage angenommen
  2 = Chat gerade nicht
  3 = Chat heute nicht (mit Block bis 00:00 Uhr)
  4 = Chat läuft
  5 = Chat beendet

*/

function checkChatText() {
  $.get("index.php", {
    m: "account_chat",
    p: "check_chat"
  }, function(data) {
    chatStatus = data.split('|');
    if (chatStatus[1] == 'undefined') {
        setTimeout('checkChatText()', (autodelay));
        return;
    }
    if (chatStatus[1] == 0 || chatStatus[0] > 0) {
      setTimeout('checkChatText()', (autodelay));
    } else {
      window.open(chatpfad + '/index.php?m=account_chat&id=' + chatStatus[1] + '&p=show_request', 'chat' + chatStatus[1], 'width=' + w_width +',height=' + w_height +',resizable=yes,scrollbars=no,toolbar=no,location=no,status=no,menubar=no')
      setTimeout("checkChatText()", (25000));
}
  });
}