var hideoriginalText='ocultar<br />original';
var showoriginalText='exibir<br />original';
var hidetransText='ocultar<br />tradução';
var showtransText='exibir<br />tradução';

// Initial function that calls another functions
function pageLoader() {
    externalLinks(); // External links get a "target=_blank"
    transHider(); // Creates the "hide original" button
    searchForm();
}

// Links pointing to "outside" get a "target=_blank"
function externalLinks(){
    $("a[href^=http://]:not([href^="+location.protocol+"//"+location.hostname+"])").addClass("external");
    $("a.external").attr("target","_blank");
}

function searchForm(){
    $('input[name=s]').focus(searchFocus);
    $('input[name=s]').blur(searchBlur);
    searchBlur();
    var sForm=$('input[name=s]').parent();
    sForm.find('input.botao').click(searchSubmit);
}
function searchFocus(){
    if($('input[name=s]').val()==$('input[name=s]').attr('title')) $('input[name=s]').val('');
}
function searchBlur(){
    var st=$('input[name=s]').val();
    if(st.replace(/\s/gi,'')=='') $('input[name=s]').val($('input[name=s]').attr('title'));
}
function searchSubmit(){
    var sVal=$('input[name=s]').val().replace(/\s/gi,'');
    if($('input[name=s]').val()==$('input[name=s]').attr('title')) sVal='';
    return sVal!='';
}

// Creates the "hide original" button
function transHider(){
    $("div.content_body").each(function (){
        if(this.innerHTML.toLowerCase().indexOf("<em lang")>-1 || this.innerHTML.toLowerCase().indexOf("<strike")>-1) createHideTrans(this);
    });
}
function createHideTrans(d){
	emclasses();
    saveLines();

	var antesde=d.childNodes[0];

	/*
	var la2=document.createElement("a");
	la2.innerHTML=hidetransText;
	la2.setAttribute("href","#");
	la2.className="toggleT";
	var l2=document.createElement("div");
	l2.appendChild(la2);
	l2.className="toggle_content";
	d.insertBefore(l2,antesde);
	$(la2).click(showHideTrans);
	*/

	var la=document.createElement("a");
	la.innerHTML=hideoriginalText;
	la.setAttribute("href","#");
	la.className="toggleO";
	var l=document.createElement("div");
	l.appendChild(la);
	l.className="toggle_content";
	d.insertBefore(l,antesde);
	$(la).click(showHideOriginal);
}
var originalLines=new Array();
//var transLines=new Array();
function saveLines(){
    //var transLines=$("div.content_body").html().match(/\<em[^\<]*\<\/em\>\<br\>([^\<]*)\</gi);
    //for(l=0;l<transLines.length;l++) transLines[l]=transLines[l].replace(/\<em[^\<]*\<\/em\>\<br\>/gi,'').replace(/\<$/gi,'');
    
    var conta=0;
    lines=$("div.content_body em[lang=en-US]");
    for(l=0;l<lines.length;l++){
        var line=lines[l];
        originalLines[conta]=$(line).html();
        $(line).next().addClass("hidebr");
        var lspan=document.createElement("span");
        lspan.className="span-aux";
        lspan.id="span-"+conta;
        $(line).wrap(lspan);
        conta++;
    }
}
function showHideOriginal(e){
	var lht=$(".toggle_content a.toggleO");
	var odiv=$("div.content_body")[0];
	
	if($(odiv).hasClass("hideoriginal")){
		lht.html(hideoriginalText);
    	$(odiv).removeClass("hideoriginal");
    	includeOriginal();
	}else{
		lht.html(showoriginalText);
    	$(odiv).addClass("hideoriginal");
    	excludeOriginal();
	}
	return false;
}
function includeOriginal(){
    $(".span-aux").each(function(){
        var nline=this.id.replace(/\D/gi,'');
        var line=document.createElement("em");
        line.className="lang_en-US";
        line.setAttribute("lang","en-US");
        line.innerHTML=originalLines[nline];
        
        var lbr=document.createElement("br");
        lbr.className="hidebr";
        
        this.appendChild(line);
        this.appendChild(lbr);
    });
}
function excludeOriginal(){
    $(".span-aux em[lang=en-US]").replaceWith('');
    $("br.hidebr").replaceWith('');
}

function showHideTrans(e){
	var lht=$(".toggle_content a.toggleT");
	var odiv=$("div.content_body")[0];
	
	if($(odiv).hasClass("hidetrans")){
		lht.html(hidetransText);
    	$(odiv).removeClass("hidetrans");
    	includeTrans();
	}else{
		lht.html(showtransText);
    	$(odiv).addClass("hidetrans");
    	excludeTrans();
	}
	return false;
}
function includeTrans(){
}
function excludeTrans(){
}

function emclasses(){
    $(".content_body strong>strike").each(function (){
        var texto=$(this).text();
        $(this).parent().replaceWith('<em lang="en-US">' + texto + '</em>');
    });
    $(".content_body strike>strong").each(function (){
        var texto=$(this).text();
        $(this).parent().replaceWith('<em lang="en-US">' + texto + '</em>');
    });
    $(".content_body em[lang=en-US]").addClass("lang_en-US");
}

// Calling a initial function that calls other functions...
$(document.ready=function(){pageLoader();});
