/**
* @name				Linha Framework
* @version			1.2
* 
* @author			Mateus Souza
* @author-email		mateussouzaweb@gmail.com
* @author-website	http://www.mateussouza.com | http://www.linhaframework.com
* @copyright		(c) 2010 Mateus Souza
* @license			MIT and GPL License - http://www.opensource.org/licenses/mit-license.php || http://www.gnu.org/licenses/gpl.html
* 
*/
(function($){
//Linha Acord 1.1
$.fn.acord=function(options){return new $.acord(options,this);};$.acord=function(options,elem){var padrao={seletor:'.accordion',pai:'h2',filho:'div',classePaiAtual:'accordion-pai-atual',classeFilhoAtual:'accordion-filho-atual',classeAjax:'ajax',atributoUrl:'url',evento:'click',inicial:1,sempreUm:true,autoHeight:false,tempoIn:'normal',tempoOut:'normal',easingIn:'swing',easingOut:'swing',onAcord:null,live:false,liveTempo:100};var o=$.extend(padrao,options),$d=$(document),ap=o.classePaiAtual,af=o.classeFilhoAtual;if(elem===undefined){elem=$(o.seletor);}
elem.elements=[];$d.delegate(elem.selector,'iniciaAcord',function(){var elems=elem.elements,els=$(elem.selector,elem.context),nEls=els.not(elems);elem.elements=els;nEls.each(function(){var $t=$(this);$(o.filho,this).each(function(){$(this).css('height',$(this).height()+'px').hide();});if(o.sempreUm){$(o.filho,this).eq(o.inicial-1).addClass(af).show().prev(o.pai).addClass(ap);}
if(o.autoHeight){var h=0;$(o.filho,this).each(function(){h=Math.max(h,$(this).outerHeight());}).height(h);$t.height($t.height()).css({overflow:'hidden'});}
$(o.pai,this).bind(o.evento,function(){if($(this).hasClass(o.classeAjax)){return ajaxAcord($t,$(this),$(this).next());}
return animaAcord($t,$(this),$(this).next());});if(o.sempreUm&&$('.'+ap,this).hasClass(o.classeAjax)){$('.'+ap,this).trigger(o.evento);}});});if(o.live){setInterval(function(){$(elem.selector).trigger('iniciaAcord');},o.liveTempo);}else{if(elem.length){elem.trigger('iniciaAcord');}}
function ajaxAcord($acord,$pai,$filho){$.ajax({type:"POST",url:$pai.attr(o.atributoUrl),success:function(data){$filho.html(data);}});$filho.height('auto');$acord.height('auto');return animaAcord($acord,$pai,$filho);}
function animaAcord($acord,$pai,$filho){$(o.filho,$acord).removeClass(af);$(o.pai,$acord).removeClass(ap);$pai.addClass(ap);$filho.addClass(af);if($.isFunction(o.onAcord)){o.onAcord.apply(this,new Array($acord,$pai,$filho,o));}
$(o.filho,$acord).not($filho).slideUp(o.tempoIn,o.easingIn);if(o.sempreUm){$filho.slideDown(o.tempoOut,o.easingOut);}else{$filho.slideToggle(o.tempoIn,o.easingIn);}
return false;};};

//Linha Focuss 1.1
$.fn.focuss=function(options){return new $.focuss(options,this);};$.focuss=function(options,elem){var padrao={seletor:'input, textarea',evento:'focus',eventoFim:'blur',tempoIn:'normal',tempoOut:'normal',cor:'red',removeTexto:false,onInicia:null,onTermina:null,live:false,liveTempo:100};var o=$.extend(padrao,options),$d=$(document);if(elem===undefined){elem=$(o.seletor);}
elem.elements=[];$d.delegate(elem.selector,'iniciaFocuss',function(){var elems=elem.elements,els=$(elem.selector,elem.context),nEls=els.not(elems).not(':submit');elem.elements=els;nEls.each(function(){var $t=$(this);var bl=$t.css('border-left-color'),br=$t.css('border-right-color'),bt=$t.css('border-top-color'),bb=$t.css('border-bottom-color'),bcor=bt+' '+br+' '+bb+' '+bl,texto=$t.val();$t.bind(o.evento,function(){return animaFocuss($t,texto);});$t.bind(o.eventoFim,function(){return terminaFocuss($t,bcor,texto);});});});if(o.live){setInterval(function(){$(elem.selector).trigger('iniciaFocuss');},o.liveTempo);}else{if(elem.length){elem.trigger('iniciaFocuss');}}
function animaFocuss($t,texto){if(o.removeTexto){if($t.val()==texto){$t.val('');}}
$t.css({borderColor:o.cor});if($.isFunction(o.onInicia)){o.onInicia.apply(this,new Array($t,texto,$o));}}
function terminaFocuss($t,bcor,texto){if(o.removeTexto){if($t.val()==''){$t.val(texto);}}
$t.css({borderColor:bcor});if($.isFunction(o.onTermina)){o.onTermina.apply(this,new Array($t,bcor,texto,$o));}}};

//Linha Modal 1.1
$.fn.modal=function(options){return new $.modal(options,this);};$.modal=function(options,elem){var padrao={seletor:'.modal',seletorImagem:'imagem',seletorAjax:'ajax',seletorIframe:'iframe',seletorVideo:'video',seletorCancela:'fecha',seletorConfirma:'confirma',classeModal:'modal-area',classeTitulo:'modal-titulo',classeConteudo:'modal-conteudo',classeFecha:'modal-fecha',classeLoad:'modal-load',classeFundo:'modal-fundo',fundoOpacidade:0.7,zIndex:1000,evento:'click',eventoFecha:'click',eventoFundo:'click',eventoConfirma:'click',eventoCancela:'click',tempo:'fast',tempoFundo:'fast',tempoLoad:'fast',fundo:true,fecha:true,titulo:null,conteudo:null,conteudoAntes:false,autoPosiciona:false,atributoLink:'href',atributoTitulo:'titulo',atributoConteudo:'conteudo',atributoAltura:'altura',atributoLargura:'largura',atributoIframeLargura:'iframelargura',atributoIframeAltura:'iframealtura',atributoVideoLargura:'videolargura',atributoVideoAltura:'videoaltura',onCria:null,onExibe:null,onFecha:null,onConfirma:null,onCancela:null};var o=$.extend(padrao,options),$d=$(document),$w=$(window),m=[],el=[],w=[],$t='';if(elem===undefined){elem=$(o.seletor);}
$d.delegate(elem.selector,o.evento,function(){if($('.'+o.classeModal).length){return false;}
$t=$(this);el.titulo=$t.attr(o.atributoTitulo);el.conteudo=$t.attr(o.atributoConteudo);el.altura=$t.attr(o.atributo_altura);el.largura=$t.attr(o.atributo_largura);el.link=$t.attr(o.atributoLink);el.iframeLargura=$t.attr(o.atributoIframeLargura);el.iframeAltura=$t.attr(o.atributoIframeAltura);el.videoLargura=$t.attr(o.atributoVideoLargura);el.videoAltura=$t.attr(o.atributoVideoAltura);criaModal();dataModal();return false;});function criaModal(){if(o.fundo){m.fundo=$('<div></div>').addClass(o.classeFundo).css({width:'100%',height:'100%',opacity:o.fundoOpacidade,position:'fixed',top:0,left:0,zIndex:o.zIndex-1,backgroundColor:'#000',display:'none'}).appendTo('body').fadeIn(o.tempoFundo);}
m.load=$('<div></div>').addClass(o.classeLoad).css({position:'fixed',top:'50%',left:'50%',zIndex:o.zIndex});m.modal=$('<div></div>').addClass(o.classeModal).css({width:el.largura,height:el.altura,position:'absolute',zIndex:o.zIndex,display:'none'});if(o.autoPosiciona){m.modal.css({position:'fixed',top:"50%",left:"50%"});}
m.fecha=$('<span>x</span>').addClass(o.classeFecha);m.titulo=$('<div></div>').addClass(o.classeTitulo);m.conteudo=$('<div></div>').addClass(o.classeConteudo);m.load.css({marginTop:-(m.load.outerHeight()/2),marginLeft:-(m.load.outerWidth()/2)});if($.isFunction(o.onCria)){o.onCria.apply(this,new Array(m,el,$t,o));}}
function dataModal(){m.titulo.html(o.titulo).append(el.titulo);if($t.hasClass(o.seletorVideo)){el.link=el.link.replace(new RegExp("watch\\?v=","i"),'v/');var data='<object width="'+el.videoLargura+'" height="'+el.videoAltura+'" classid="clsid:D27CDB6E-AE6D-11CF-96B8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" style="display: block">';data+='<param name="movie" value="'+el.link+'"></param>';data+='<embed type="application/x-shockwave-flash" src="'+el.link+'" width="'+el.videoLargura+'" height="'+el.videoAltura+'"></embed>';data+='</object>';m.conteudo.append(data);}
else if($t.hasClass(o.seletorIframe)){var data='<iframe src="'+el.link+'" height="'+el.iframeAltura+'" width="'+el.iframeLargura+'" style="border:0; display: block" frameBorder="0"></iframe>';m.conteudo.append(data);}
else if($t.hasClass(o.seletorAjax)){m.load.appendTo('body');$.ajax({type:"POST",url:el.link,success:function(data){m.load.fadeOut(o.tempoFundo,function(){$(this).remove();});m.conteudo.append(data);return mostraModal();},error:function(){m.load.fadeOut(o.tempoFundo,function(){$(this).remove();});m.conteudo.append("Ocorreu algum erro ou esta url não existel...");return mostraModal();}});return;}
else if($t.hasClass(o.seletorImagem)){m.load.appendTo('body');var img=new Image();$(img).load(function(){$(this).css({display:'none',height:this.height,width:this.width});m.load.fadeOut(o.tempoFundo,function(){$(this).remove();});m.conteudo.append(img);$(this).fadeIn();return redimensionaModal(this.width,this.height);}).attr('src',el.link);return;}
else{m.conteudo.append(el.conteudo);}
return mostraModal();}
function redimensionaModal(w,h){m.conteudo.css({height:h,width:w});mostraModal();}
function mostraModal(){if(!o.conteudoAntes){m.conteudo.append(o.conteudo);}else{m.conteudo.prepend(o.conteudo);}
if(m.titulo.html()!==undefined){m.modal.append(m.titulo);}
m.modal.append(m.conteudo).append(m.fecha).appendTo('body').hide();if(o.autoPosiciona){m.modal.css({marginTop:-(m.modal.outerHeight()/2),marginLeft:-(m.modal.outerWidth()/2)});}else{w.w=$w.width();w.h=$w.height();w.sl=$w.scrollLeft();w.st=$w.scrollTop();var mTop=w.h/2+(w.st)-(m.modal.outerHeight()/2);var mLeft=(w.w/2)+w.sl-(m.modal.outerWidth()/2);m.modal.css({top:mTop,left:mLeft});}
m.modal.fadeIn(o.tempo);if(o.fecha&&m.fundo){m.fundo[o.eventoFundo](function(){return deletaModal();});}
m.fecha[o.eventoFecha](function(){return deletaModal();});$('.'+o.seletorCancela)[o.eventoCancela](function(){if($.isFunction(o.onCancela)){o.onCancela.apply(this,new Array(m,el,$t,o));}
return deletaModal();});$('.'+o.seletorConfirma)[o.eventoConfirma](function(){if($.isFunction(o.onConfirma)){o.onConfirma.apply(this,new Array(m,el,$t,o));}
return deletaModal();});if($.isFunction(o.onExibe)){o.onExibe.apply(this,new Array(m,el,$t,o));}}
function deletaModal(){if(m.fundo){m.fundo.fadeOut(o.tempo,function(){$(this).remove();});}
if(m.load.length){m.load.remove();}
m.modal.remove();if($.isFunction(o.onFecha)){o.onFecha.apply(this,new Array(m,el,$t,o));}
return false;}};

//Linha Nav 1.1
$.fn.nav=function(options){return new $.nav(options,this);};$.nav=function(options,elem){var padrao={seletor:'.menu li',seletorFilho:'ul:first',classePaiAtual:'nav-pai-atual',classeFilhoAtual:'nav-filho-atual',evento:'mouseenter',eventoFim:'mouseleave',efeitoIn:'slideDown',efeitoOut:'slideUp',tempoIn:'normal',tempoOut:'normal',easingIn:'swing',easingOut:'swing',stopClearQueue:true,stopJumpToEnd:true,onExibe:null,onEsconde:null};var o=$.extend(padrao,options),$d=$(document),np=o.classePaiAtual,nf=o.classeFilhoAtual;if(elem===undefined){elem=$(o.seletor);}
$d.delegate(elem.selector,o.evento,function(e){exibeNav($(this),$(this).children(o.seletorFilho));$(this).unbind(o.eventoFim).bind(o.eventoFim,function(){return escondeNav($(this),$(this).children(o.seletorFilho));});});function exibeNav($t,$f){if(!$f.length){return false;}
$t.addClass(np);if($.isFunction(o.onExibe)){o.onExibe.apply(this,new Array($t,$f,o));}
$f.stop(o.stopClearQueue,o.stopJumpToEnd).addClass(nf)[o.efeitoIn](o.tempoIn,o.easingIn);};function escondeNav($t,$f){$t.removeClass(np);$f.stop(o.stopClearQueue,o.stopJumpToEnd).removeClass(nf)[o.efeitoOut](o.tempoOut,o.easingOut);if($.isFunction(o.onEsconde)){o.onEsconde.apply(this,new Array($t,$f,o));}};};

$.fn.slideTabs=function(options){return new $.slideTabs(options,this);};$.slideTabs=function(options,elem){var padrao={seletor:'.slide',seletor_area_painel:'.slide-conteudo',seletor_painel:'.painel',seletor_miniatura:'.miniatura',seletor_anterior:'.anterior',seletor_proximo:'.proximo',classe_miniatura_atual:'slide-miniatura-atual',classe_painel_atual:'slide-painel-atual',classe_painel_primeiro:'slide-painel-primeiro',classe_painel_ultimo:'slide-painel-ultimo',classe_painel_conteudo:'slide-painel-conteudo',evento_miniatura:'click',evento_setas:'click',inicial:1,auto:true,pausa:2000,continuo:true,tempo:'slow',altura_automatica:false,margin:true,scroll:1,visiveis:1,fade:false,onSlide:null};var o=$.extend(padrao,options);if(elem===undefined){elem=$(o.seletor);}
return elem.each(function(){var t=$(this),sp=$(o.seletor_painel,t),sm=$(o.seletor_miniatura,t),sma=o.classe_miniatura_atual,spa=o.classe_painel_atual,spp=o.classe_painel_primeiro,spu=o.classe_painel_ultimo,spcw=0,pos=new Array();t.children(o.seletor_area_painel).wrapInner('<div class="'+o.classe_painel_conteudo+'"></div>');sp.each(function(i){pos[i]=spcw;spcw+=$(this).outerWidth(o.margin);});var spc=$('.'+o.classe_painel_conteudo,t);spc.css({'width':spcw,'overflow':'hidden'});spc.css({'marginLeft':-pos[o.inicial-1]+'px'});if(o.altura_automatica){spc.css({'height':(sp.eq(o.inicial-1).outerHeight())+'px'});}
sp.eq(o.inicial-1).addClass(spa);sm.eq(o.inicial-1).addClass(sma);if(o.inicial==1){sp.eq(0).addClass(spp);}
if(o.inicial==sp.length){sp.eq(sp.length-1).addClass(spu);}
sm.bind(o.evento_miniatura,function(){var l=$(this).prevAll(o.seletor_miniatura).length;sm.removeClass(sma);$(this).addClass(sma);sp.removeClass(spa).removeClass(spp).removeClass(spu).eq(l).addClass(spa);if(l==0){sp.eq(0).addClass(spp);}
if(l==sp.length-1){sp.eq(sp.length-1).addClass(spu);}
return animaSlide(l);});$(o.seletor_anterior,t).bind(o.evento_setas,function(){var l=$('.'+spa,t).prevAll().length-(Math.abs(o.scroll));sp.removeClass(spu);if(l<=0){if(sp.eq(0).hasClass(spp)){sp.removeClass(spp);if(o.continuo){l=sp.length-o.visiveis;sp.eq(sp.length-1).addClass(spu);}
else{return false;}}else{l=0;sp.eq(0).addClass(spp);}}
sp.removeClass(spa).eq(l).addClass(spa);sm.removeClass(sma).eq(l).addClass(sma);return animaSlide(l);});$(o.seletor_proximo,t).bind(o.evento_setas,function(){return proximoSlide();});function proximoSlide(){var l=$('.'+spa,t).prevAll().length+o.scroll;sp.removeClass(spp);if((sp.length-l)<=o.visiveis){if(sp.eq(sp.length-1).hasClass(spu)){sp.removeClass(spu);if(o.continuo){l=0;sp.eq(0).addClass(spp);}
else{return false;}}
else{l=sp.length-o.visiveis;sp.eq(sp.length-1).addClass(spu);}}
sp.removeClass(spa).eq(l).addClass(spa);sm.removeClass(sma).eq(l).addClass(sma);return animaSlide(l);};function animaSlide(l){if($.isFunction(o.onSlide)){o.onSlide.apply(t);}
var h=spc.height();if(o.altura_automatica){h=sp.eq(l).outerHeight();}
if(o.fade){spc.fadeOut(o.tempo,function(){$(this).css({'marginLeft':-pos[l]+'px','height':h});}).fadeIn(o.tempo);}else{spc.animate({marginLeft:-pos[l]+'px',height:h},o.tempo);};clearInterval(timeout);if(o.auto){timeout=setInterval(function(){proximoSlide();},o.pausa);}
return false;};var timeout;if(o.auto){timeout=setInterval(function(){proximoSlide();},o.pausa);};});};

$.fn.tooltip=function(options){return new $.tooltip(options,this);};$.tooltip=function(options,elem){var padrao={seletor:'.tooltip',seletor_imagem:'imagem',seletor_ajax:'ajax',classe_conteudo:'tooltip-conteudo',classe_load:'tooltip-load',padding_top:0,padding_left:0,posicao:'',fixado:true,autoFix:true,tempo:'fast',evento:'mouseover',eventoFim:'mouseout',atributo:'rel',atributo_altura:'altura',atributo_largura:'largura',wrapper_tooltip:null,mensagem_erro:'Erro no tooltip',onInicia:null,onTermina:null};var o=$.extend(padrao,options),tip={},atual,d=$(document);if(elem===undefined){elem=$(o.seletor);}
d.delegate(elem.selector,o.evento,function(e){return criaTooltip($(this),e);});d.delegate(elem.selector,o.eventoFim,function(){return removeTooltip($(this));});if(!o.fixado){d.delegate(elem.selector,'mousemove',function(e){return posicionaTooltip($(this),e);});}
$(window).resize(function(e){if(atual){return posicionaTooltip(atual,e);}}).scroll(function(e){if(atual){return posicionaTooltip(atual,e);}});function criaTooltip(t,e){if($.isFunction(o.onInicia)){o.onInicia.apply(t);}
atual=t;tip.conteudo=t.attr(o.atributo),tip.largura=t.attr(o.atributo_largura),tip.altura=t.attr(o.atributo_altura);if(o.atributo=='title'){t.attr('title','');}
tip.tip=$('<div></div>').addClass(o.classe_conteudo).css({display:'none',position:'absolute',width:tip.largura,height:tip.altura});tip.load=$('<div></div>').addClass(o.classe_load).css({display:'none',position:'fixed',left:0});if(tip.conteudo===undefined){return;}
if(t.hasClass(o.seletor_imagem)){tip.load.appendTo('body').fadeIn(o.tempo);tip.load.css({top:$(window).height()-tip.load.outerHeight()});var img=new Image();$(img).load(function(){$(this).css({display:'none',height:this.height,width:this.width});tip.tip.html(this).wrapInner(o.wrapper_tooltip).appendTo('body').fadeIn(o.tempo);tip.load.remove();$(this).fadeIn(o.tempo);return posicionaTooltip(t,e);}).attr('src',tip.conteudo);return;}
if(t.hasClass(o.seletor_ajax)){tip.load.appendTo('body').fadeIn(o.tempo);tip.load.css({top:$(window).height()-tip.load.outerHeight()});$.ajax({type:"POST",url:tip.conteudo,success:function(data){tip.tip.html(data).wrapInner(o.wrapper_tooltip).appendTo('body').fadeIn(o.tempo);tip.load.fadeOut('fast',function(){$(this).remove();});return posicionaTooltip(t,e);},error:function(){tip.tip.html(o.mensagem_erro).wrapInner(o.wrapper_tooltip).appendTo('body').fadeIn(o.tempo);tip.load.fadeOut('fast',function(){$(this).remove();});return posicionaTooltip(t,e);}});return;}
else{tip.tip.html(tip.conteudo).wrapInner(o.wrapper_tooltip).appendTo('body').fadeIn(o.tempo);return posicionaTooltip(t,e);}}
function removeTooltip(t){if($.isFunction(o.onTermina)){o.onTermina.apply(t);}
if(o.atributo=='title'){t.attr('title',tip.conteudo);}
atual=null;tip.tip.remove();$('.'+o.classe_conteudo).remove();tip.load.remove();}
function posicionaTooltip(t,e){var ww=$(window).width(),wh=$(window).height(),wsl=$(window).scrollLeft(),wst=$(window).scrollTop(),w=t.outerWidth(),h=t.outerHeight(),pos=t.offset(),left=pos.left+o.padding_left,topo=pos.top+o.padding_top,tipw=tip.tip.outerWidth(),tiph=tip.tip.outerHeight();if(o.fixado){switch(o.posicao){case'top1':var posY=topo-tiph-5,posX=left-tipw;break;case'top2':var posY=topo-tiph-5,posX=left+(w/2)-(tipw/2);break;case'top3':var posY=topo-tiph-5,posX=left+w;break;case'top4':var posY=topo-tiph-5,posX=left;break;case'top5':var posY=topo-tiph-5,posX=left-tipw+w;break;case'esquerda':var posY=topo-(tiph/2)+(h/2),posX=left-tipw-5;break;case'direita':var posY=topo-(tiph/2)+(h/2),posX=left+w+5;break;case'rod1':var posY=topo+h+5,posX=left-tipw;break;case'rod2':var posY=topo+h+5,posX=left+(w/2)-(tipw/2);break;case'rod3':var posY=topo+h+5,posX=left+w;break;case'rod4':var posY=topo+h+5,posX=left;break;case'rod5':var posY=topo+h+5,posX=left-tipw+w;break;default:var posY=topo-tiph-5,posX=left+(w/2)-(tipw/2);break;}}
else{if((e.pageY-tiph-wst-15)<=0){var posY=e.pageY+15;}else{var posY=e.pageY-tiph-15;}
if((ww+wsl-e.pageX)<=tipw){var posX=e.pageX-tipw-15;}else{var posX=e.pageX+15;}}
tip.tip.css({'top':posY,'left':posX});if(o.fixado&&o.autoFix){if(o.posicao=='top1'||o.posicao=='top5'||o.posicao=='rod1'||o.posicao=='rod5'){if(left<=(tipw+30)){tip.tip.css({'left':left});}}
if(o.posicao=='top3'||o.posicao=='top4'||o.posicao=='rod3'||o.posicao=='rod4'){if(ww<=(left+tipw+30)){tip.tip.css({'left':left-tipw+w});}}
if(o.posicao=='top2'||o.posicao=='rod2'){if(left<=(tipw/2+30)){tip.tip.css({'left':left});}
if(ww<=(left+tipw/2+30)){tip.tip.css({'left':left-tipw+w});}}
if(o.posicao=='esquerda'){if(left<=(tipw+30)){tip.tip.css({'left':left+w+5});}}
if(o.posicao=='direita'){if(ww<=(left+tipw+30)){tip.tip.css({'left':left-tipw});}}
if(o.posicao=='direita'||o.posicao=='esquerda'){if((wst+wh)<=(topo+tiph/2+10)){tip.tip.css({'top':topo-tiph-5});}
if((topo-wst)<(tiph/2+10)){tip.tip.css({'top':topo+h+5});}}else{if((wst+wh)<=(topo+tiph+10)){tip.tip.css({'top':topo-tiph-5});}
if((topo-wst)<(tiph+10)){tip.tip.css({'top':topo+h+5});}}}
e.preventDefault();}};
})(jQuery);