jQuery.fn.fadeToggle = function(s, fn){
  return (this.is(":visible"))
  ? this.fadeOut(s, fn)
  : this.fadeIn(s, fn);
}

function toggle_extra(div_id) {
  $('.extra_'+div_id).fadeToggle();
}

function Comma(nStr) {
	nStr += '';
	x = nStr.split('.');
	x1 = x[0];
	x2 = x.length > 2 ? '.' + x[1] : '';
	var rgx = /(\d+)(\d{3})/;
	while (rgx.test(x1)) {
		x1 = x1.replace(rgx, '$1' + ',' + '$2');
	}
	return x1 + x2;
}

function showHide(shID) {
    if (document.getElementById(shID)) {
        if (document.getElementById(shID+'-show').style.display != 'none') {
            document.getElementById(shID+'-show').style.display = 'none';
            document.getElementById(shID).style.display = 'block';
        }
        else {
            document.getElementById(shID+'-show').style.display = 'inline';
            document.getElementById(shID).style.display = 'none';
        }
    }
}

function voteScript(siteID,siteName) {
	var voteInfo = document.getElementById('show_vinfo');

	voteInfo.innerHTML  = '<form action="./vote.php" method="post" target="_blank">'
		 + '['+siteName+'] Your Account Name: <input type="text" name="vote_account" /> '
		 + ' <input type="hidden" name="vote_id" value="'+siteID+'">'
		 + ' <input type="submit" name="Vote!" value="Vote!">'
		 + '</form>';
}

function Comma(nStr) {
	nStr += '';
	x = nStr.split('.');
	x1 = x[0];
	x2 = x.length > 2 ? '.' + x[1] : '';
	var rgx = /(\d+)(\d{3})/;
	while (rgx.test(x1)) {
		x1 = x1.replace(rgx, '$1' + ',' + '$2');
	}
	return x1 + x2;
}

function calculate_amount(id,price,preamount,current_gp) {
	var setprice = document.getElementById('price_'+id);
	var amount = document.getElementById('amount_'+id);
	var gp_after = document.getElementById('gpafter_'+id);

	var single_price,total_price,gpafter_price;
	
	single_price = Math.ceil(price/preamount);
	final_price = Math.ceil(single_price*amount.value);

	setprice.innerHTML = Comma(final_price)+' GP';
	gp_after.innerHTML = Comma(current_gp-final_price)+' GP';

}