jQuery.Flash=function(element){this.element=$(element);this.timeout=300;this.element.append('<h2></h2>');this.element.append('<p></p>');this.element.hide().click(function(){jQuery.flash.hide();}).hover(function(){jQuery.flash.onOver();},function(){jQuery.flash.onLeave();});};jQuery.Flash.version=1.1;jQuery.Flash.prototype.onOver=function(){this.element.addClass('over');}
jQuery.Flash.prototype.onLeave=function(){this.element.removeClass('over');if(this.element.hasClass('expired'))this.hide();}
jQuery.Flash.prototype.onTimeout=function(){this.element.addClass('expired');if(!this.element.hasClass('over'))this.hide();}
jQuery.Flash.prototype.show=function(){if(this.timeout){jQuery.flash.hide();}
this.element.slideDown('fast');if(this.element.attr('class')=="carregando")
this.timeout=window.setTimeout(function(){jQuery.flash.sistema_lento()},20000);else
if(this.element.attr('class')!="lentidao")
this.timeout=window.setTimeout(function(){jQuery.flash.onTimeout()},3500);}
jQuery.Flash.prototype.hide=function(){if(this.timeout){clearTimeout(this.timeout);this.timeout=undefined;}
this.element.removeClass('expired').removeClass('over').fadeOut();}
jQuery.Flash.prototype.message=function(klass,label,message){this.element.removeClass('expired');if(this.element.is(":visible")){if(this.timeout){clearTimeout(this.timeout);this.timeout=undefined;}
this.element.hide()
jQuery.flash.message(klass,label,message);}else
{this.element.attr('class',klass);this.element.find('p').html(message);this.element.find('h2').html(label);this.show();}}
jQuery.Flash.prototype.erro=function(label,message){this.message('erro','Operação não realizada!','O sistema não pôde completar a operação.');}
jQuery.Flash.prototype.excecao=function(label,message){this.message('excecao','Oops!','O sistema não estã conseguindo processar seu pedido, a Vector receberá um relatório sobre esse problema.');}
jQuery.Flash.prototype.carregando=function(label,message){this.message('carregando','Aguarde','Realizando operação.');}
jQuery.Flash.prototype.sistema_lento=function(label,message){this.message('lentidao','Processando','O sistema está demorando para responder, espere por mais alguns segundos. Caso o sistema não responda entre em contato com a Vector.');}
jQuery.Flash.prototype.message_estatica=function(classe,label,message){this.message(classe,label,message);clearTimeout(this.timeout);this.timeout=undefined;}
$(function(){jQuery.flash=new jQuery.Flash('#flash');});
