function printf(fstring)
  { var pad = function(str,ch,len)
      { var ps='';
        for(var i=0; i<Math.abs(len); i++) ps+=ch;
        return len>0?str+ps:ps+str;
      }
    var processFlags = function(flags,width,rs,arg)
      { var pn = function(flags,arg,rs)
          { if(arg>=0)
              { if(flags.indexOf(' ')>=0) rs = ' ' + rs;
                else if(flags.indexOf('+')>=0) rs = '+' + rs;
              }
            else
                rs = '-' + rs;
            return rs;
          }
        var iWidth = parseInt(width,10);
        if(width.charAt(0) == '0')
          { var ec=0;
            if(flags.indexOf(' ')>=0 || flags.indexOf('+')>=0) ec++;
            if(rs.length<(iWidth-ec)) rs = pad(rs,'0',rs.length-(iWidth-ec));
            return pn(flags,arg,rs);
          }
        rs = pn(flags,arg,rs);
        if(rs.length<iWidth)
          { if(flags.indexOf('-')<0) rs = pad(rs,' ',rs.length-iWidth);
            else rs = pad(rs,' ',iWidth - rs.length);
          }    
        return rs;
      }
    var converters = new Array();
    converters['c'] = function(flags,width,precision,arg)
      { if(typeof(arg) == 'number') return String.fromCharCode(arg);
        if(typeof(arg) == 'string') return arg.charAt(0);
        return '';
      }
    converters['d'] = function(flags,width,precision,arg)
      { return converters['i'](flags,width,precision,arg); 
      }
    converters['u'] = function(flags,width,precision,arg)
      { return converters['i'](flags,width,precision,Math.abs(arg)); 
      }
    converters['i'] =  function(flags,width,precision,arg)
      { var iPrecision=parseInt(precision);
        var rs = ((Math.abs(arg)).toString().split('.'))[0];
        if(rs.length<iPrecision) rs=pad(rs,' ',iPrecision - rs.length);
        return processFlags(flags,width,rs,arg); 
      }
    converters['E'] = function(flags,width,precision,arg) 
      { return (converters['e'](flags,width,precision,arg)).toUpperCase();
      }
    converters['e'] =  function(flags,width,precision,arg)
      { iPrecision = parseInt(precision);
        if(isNaN(iPrecision)) iPrecision = 6;
        rs = (Math.abs(arg)).toExponential(iPrecision);
        if(rs.indexOf('.')<0 && flags.indexOf('#')>=0) rs = rs.replace(/^(.*)(e.*)$/,'$1.$2');
        return processFlags(flags,width,rs,arg);        
      }
    converters['f'] = function(flags,width,precision,arg)
      { iPrecision = parseInt(precision);
        if(isNaN(iPrecision)) iPrecision = 6;
        rs = (Math.abs(arg)).toFixed(iPrecision);
        if(rs.indexOf('.')<0 && flags.indexOf('#')>=0) rs = rs + '.';
        return processFlags(flags,width,rs,arg);
      }
    converters['G'] = function(flags,width,precision,arg)
      { return (converters['g'](flags,width,precision,arg)).toUpperCase();
      }
    converters['g'] = function(flags,width,precision,arg)
      { iPrecision = parseInt(precision);
        absArg = Math.abs(arg);
        rse = absArg.toExponential();
        rsf = absArg.toFixed(6);
        if(!isNaN(iPrecision))
          { rsep = absArg.toExponential(iPrecision);
            rse = rsep.length < rse.length ? rsep : rse;
            rsfp = absArg.toFixed(iPrecision);
            rsf = rsfp.length < rsf.length ? rsfp : rsf;
          }
        if(rse.indexOf('.')<0 && flags.indexOf('#')>=0) rse = rse.replace(/^(.*)(e.*)$/,'$1.$2');
        if(rsf.indexOf('.')<0 && flags.indexOf('#')>=0) rsf = rsf + '.';
        rs = rse.length<rsf.length ? rse : rsf;
        return processFlags(flags,width,rs,arg);        
      }  
    converters['o'] = function(flags,width,precision,arg)
      { var iPrecision=parseInt(precision);
        var rs = Math.round(Math.abs(arg)).toString(8);
        if(rs.length<iPrecision) rs=pad(rs,' ',iPrecision - rs.length);
        if(flags.indexOf('#')>=0) rs='0'+rs;
        return processFlags(flags,width,rs,arg); 
      }
    converters['X'] = function(flags,width,precision,arg)
      { return (converters['x'](flags,width,precision,arg)).toUpperCase();
      }
    converters['x'] = function(flags,width,precision,arg)
      { var iPrecision=parseInt(precision);
        arg = Math.abs(arg);
        var rs = Math.round(arg).toString(16);
        if(rs.length<iPrecision) rs=pad(rs,' ',iPrecision - rs.length);
        if(flags.indexOf('#')>=0) rs='0x'+rs;
        return processFlags(flags,width,rs,arg); 
      }
    converters['s'] = function(flags,width,precision,arg)
      { var iPrecision=parseInt(precision);
        var rs = arg;
        if(rs.length > iPrecision) rs = rs.substring(0,iPrecision);
        return processFlags(flags,width,rs,0);
      }
    farr = fstring.split('%');
    retstr = farr[0];
    fpRE = /^([-+ #]*)(\d*)\.?(\d*)([cdieEfFgGosuxX])(.*)$/;
    for(var i=1; i<farr.length; i++)
      { fps=fpRE.exec(farr[i]);
        if(!fps) continue;
        if(arguments[i]!=null) retstr+=converters[fps[4]](fps[1],fps[2],fps[3],arguments[i]);
        retstr += fps[5];
      }
    return retstr;
  }
	function to_euro_string(Cents){
		var s_euros = Math.floor (Cents / 100);
		var s_cents = (Cents % 100) + '';
		if (s_euros >= 1000000){
			s_milhoes = Math.floor(s_euros / 1000000);
			s_milhares = Math.floor((s_euros % 1000000)/1000);
			s_unidades = s_euros % 1000;
			s_euros = s_milhoes+'.'+printf('%03d',s_milhares)+'.'+printf('%03d',s_unidades);
		}
		else if (s_euros >= 1000){
			s_milhares = Math.floor(s_euros/1000);
			s_unidades = s_euros % 1000;
			s_euros =  s_milhares+'.'+printf('%03d',s_unidades);
		}
		if (s_cents.length == 1) {s_cents = '0' + s_cents;}
		var euro_string = '€ '+s_euros+','+s_cents;
		return euro_string;
	}
	function to_cents(Price){
		Price = Price.replace('€', '');
		Price = Price.replace('.', ',');
		Price = Price.replace(' ', '');
		if (Price == '') Price = '0';
		var arr = Price.split(',');
		if (arr[0] == '') arr[0] = '0';
		var units = parseInt(arr[0]);
		var cents = 0;
		if (arr.length > 1){
			if (arr[1] == '') arr[1] = '0';
			if (arr[1].length == 1) arr[1] = arr[1]+'0';
			cents = parseInt(arr[1]);
		}
		cents = cents + units * 100;
		if (cents == '') cents = 0;
		return cents;
	}
function switch_user_menu()
{
	
	$('#user_menu_bar').toggleClass("logged_user_active");
	$('#user_menu_content').toggle();
	$('#user_menu_footer').toggle();
	$('#privmsgs').toggle();
}
function cClass(id)
{
	$('#a_'+id).toggleClass("active");	
}
function Mtoggle(id)
{
	$('#' +id).toggle();
}

function next_slide(id)
{

	var position = $('#slide_position').val();
	$.get("/ax_slideshow.php",{position:position,id:id},function(data)
	{
		$('#slide_wrapper').fadeOut('slow',function()
			{
				$('#slide_wrapper').html(data).fadeIn('slow');
				var new_position = $('#slide_position').val();
				$('#pos_' + position).removeClass('position_active');
				$('#pos_' + new_position).addClass('position_active');
			});
		});
}
function change_tab(id)
{
	$.get("/ax_get_tabinfo.php",{id:id},function(data)
	{
		if (data != 0)
		{
				$('#info_block').html(data).fadeIn('slow');
				$('.item_sel').addClass('item');
				$('.item').removeClass('item_sel');
				$('#item_'+id).addClass('item_sel');			
		}		
	});
		
}
function change_tab_med(id)
{
	$.get("/ax_get_tabinfo_med.php",{id:id},function(data)
	{
		if (data != 0)
		{
				$('#info_block').html(data).fadeIn('slow');
				$('.item_med_sel').addClass('item_med');
				$('.item_med').removeClass('item_med_sel');
				$('#item_med_'+id).addClass('item_med_sel');			
		}		
	});
		
}
function choose_username(openthis)
{
	$('#global_div').hide();
	$('#global_div').addClass("opac_div");
	$('#global_div').show(0,function()
	{
		$.get(openthis,function(data)
		{
			$('#login_div').show().html(data);
		});
		
	});

	$('#global_div').click(function()
	{
		close_login();
	});
}
function open_popin(key){
	$('#global_div').addClass("opac_div");
	$('#'+key).show();
}
	
function close_popin(key)
{
	$('#global_div').removeClass("opac_div");
	$('#'+key).hide();
}
function popin_login(redir)
{
	$('#global_div').hide();
	$('#global_div').addClass("opac_div");
	$('#global_div').show(0,function()
	{
		$.get("/ax_popin_login.php?redirect="+redir,function(data)
		{
			$('#login_div').show().html(data);
		});
		
	});

	$('#global_div').click(function()
	{
		close_login();
	});
}
function close_login()
{
		$('#login_div').hide(0,function()
		{
			$('#global_div').removeClass("opac_div");
		});	
}
function hide_sections()
{

	if($('#left_wrapper').css('display') == 'none')
	{
		$('#left_wrapper').slideDown();
		$('.section').toggleClass('section_close');
	}
	else
	{
			$('#left_wrapper').slideUp();
			$('.section').toggleClass('section_close');
	}
}
function font_up(id)
{
	if(!id)
	{
		id=".white_page_content .text_content";
	}
	var actual=$(id).css('font-size');
	var act=actual.split('px');
	var new_size=(act[0]*1)+1;
	var actualh=$(id).css('line-height');
	var acth=actualh.split('px');
	var new_sizeh=(acth[0]*1)+1;
	if(new_size < 18)
	{
		$(id).css('font-size',new_size+'px');
		$(id).css('line-height',new_sizeh+'px');
	}
}
function font_down(id)
{
	if(!id)
	{
		id=".white_page_content .text_content";
	}
	var actual=$(id).css('font-size');
	var act=actual.split('px');
	var new_size=(act[0]*1)-1;
	var actualh=$(id).css('line-height');
	var acth=actualh.split('px');
	var new_sizeh=(acth[0]*1)-1;
	if(new_size > 12)
	{
		$(id).css('font-size',new_size+'px');
		$(id).css('line-height',new_sizeh+'px');
	}
}
function input_focus(id)
{
	$('#'+id).css('background-color','#eff2f7');	
}
function input_blur(id)
{
	$('#'+id).css('background-color','#FFF');	
}
function check_username(id)
{
	if($('#result').length >0)
	{
		$('#result').html('');
	}
	else
	{
		$('#'+id).parent().append("<div class=\"float_right result\" id=\"result\"></div>");
	}
	var username=$('#'+id).val();
	if(username!="")
	{
		$.get("/ax_check_username.php",{username:username},function(data)
		{
			$('#result').html("A verificar disponibilidade...");
			if(data==1)
			{
				$('#'+id).css('border-color','#00cc33');
				$('#'+id).parent().parent().css('background-color','#e9f8e8');
				$('#result').html("username dispon&iacute;vel.");

			}
			else
			{
				$('#'+id).css('border-color','#FF0000');
				$('#'+id).parent().parent().css('background-color','#fde8e9');
				$('#result').html("Este username j&aacute; existe.");
				$('#' + id).focus();
			}		
		});
		
	}
	else
	{
		$('#'+id).css('border-color','#FF0000');
		$('#'+id).parent().parent().css('background-color','#fde8e9');
		$('#result').html("Preencha o campo.");
		$('#' + id).focus();
	}	
}
function check_passwords(id1,id2,ultimo)
{
	if($('#result_pass').length >0)
	{
		$('#result_pass').html('');
	}
	else
	{
		$('#'+id2).parent().append("<div class=\"float_right result\" id=\"result_pass\"></div>");
	}
	var pass=$('#'+id1).val();
	var pass2=$('#'+id2).val();

	if(pass!="" && pass2!="")
	{
			if(pass!=pass2)
			{
				$('#'+id2).css('border-color','#FF0000');
				$('#'+id2).parent().parent().css('background-color','#fde8e9');
				$('#result_pass').html("as passwords n&atilde;o correspondem.");
				$('#'+id2).focus();
			}
			else
			{
				$('#'+id2).css('border-color','#666');
				$('#'+id2).parent().parent().css('background-color','#FFF');
				$('#result_pass').html('');	
			}	
	}
	else if (ultimo==1 || pass=="")
	{
		$('#'+id2).css('border-color','#FF0000');
		$('#'+id2).parent().parent().css('background-color','#fde8e9');
		$('#result_pass').html("preencha os dois campos.");
		$('#'+id2).focus();
	}
}
function check_emptyness(id)
{
	if($('#'+id+'message').length >0)
	{
		$('#'+id+'message').html('');
	}
	else
	{
		$('#'+id).parent().append("<div class=\"float_right result\" id=\""+id+"message\"></div>");
	}
	var value=$('#'+id).val();

			if(value=="")
			{
				$('#'+id).css('border-color','#FF0000');
				$('#'+id).parent().parent().css('background-color','#fde8e9');
				$('#'+id+'message').html("Prencha o campo");
				$('#' + id).focus();
			}
			else
			{
				$('#'+id).css('border-color','#666');
				$('#'+id).parent().parent().css('background-color','#FFF');
				$('#'+id+'message').html('');	
			}	
}
function change_prof()
{
	var prof=$('#activar_profissao').val();
	if(prof==1)$('#specialidade_wrapper').show();
	else $('#specialidade_wrapper').hide();
}
function change_aulabg(id)
{
	if(id==0)
	{
		$('#aula').css('background-image','url("/style/aula_bg.jpg")');	
	}
	else
	{
		$('#aula').css('background-image','url("/style/aula_bg'+id+'.jpg")');
	}	
}
var lastOpenedMain;
function showMain(id){
	if(lastOpenedMain!=id){
		showSecondChild('0');
		//selectFCLink('0');
	}
	$('#main'+id).addClass('main_hover');
	$('#amain'+id).removeClass('main');
	$('#amain'+id).addClass('main_hover');
	$('#menu_shadow'+id).show();
	$('#fc'+id).show();
	lastOpenedMain = id;
}

function hideMain(id){
	$('#amain'+id).removeClass('main_hover');
	$('#amain'+id).addClass('main');
	$('#fc'+lastOpenedMain).hide();
	$('#menu_shadow'+lastOpenedMain).hide();
}
var lastSC = '#sc0';
function showSecondChild(id){
	if(id!='-1'){
		$(lastSC).hide();
		$('#sc'+id).show();
		lastSC = '#sc'+id;
	}else{
		$(lastSC).hide();
	}
}

var lastFCLink = 'fclink0';
function selectFCLink(id){
	$(lastFCLink).addClass('first_child');
	$(lastFCLink).removeClass('first_child_hover');
	$('#fclink'+id).removeClass('first_child');
	$('#fclink'+id).addClass('first_child_hover');
	lastFCLink = '#fclink'+id;
}

function answer(id)
{
	$('.quiz_question_op').removeClass('quiz_question_op_sel');
	var ans = $('#ans_'+id).val();
	var opcao_id=$("#opcao_id").val();
	$('#answer_'+opcao_id).val(ans);
	$('#op_'+id).addClass('quiz_question_op_sel');	
}
