/**
* --------------------------------------- //
* Js - Helpers
* Funcoes genericas da aplicacao
* ------------------------------------ //
**/
var helpers = {
isLoad : false,
init : function() {
if(!this.isLoad) this.isLoad = true;
else return false;
helpers.menu.init();
helpers.pagination.init();
helpers.basicPop.init();
helpers.tabsPop.init();
helpers.popCare.init();
helpers.popForgotPassword.init();
//helpers.popPlansCompare.init();
helpers.popTiss.init();
helpers.popJourney.init();
helpers.popBroker.init();
helpers.otherTab.init();
helpers.selos.init();
helpers.browserCheck();
helpers.showFormContact();
helpers.borders.init();
},
otherTab: {
init : function(){
var file = $(".file a");
file.attr("target", "_blank");
}
},
cookieVerify : {
set : function(){
},
get : function(){
}
},
menu : {
init : function() {
/**
* -------------------------------------------------- //
* Percorre todos os links do menu
* Verifica se é o link selecionado ou nao
* e ajusta o layout do submenu (internas ou home)
* -------------------------------------------------- //
**/
$( 'ul#nav > li' ).each( function() {
var el = $( this );
el.find('>a').attr('href', el.find('> ul > li:first a').attr('href'));
if( el.hasClass( 'ancestor' ) ) {
el.find( '> ul').width( 774 );
el.find( '> ul').css( { 'right' : 0 } );
el.find( '> ul > li').css( { 'height' : 54 } );
el.find( '> ul > li > h4').css( { 'margin-top' : 20 } );
el.find( '> ul > li > p:last-child').hide();
el.find( '> ul').show();
} else {
el.find( '> ul' ).css( { 'left' : 0 } );
}
/**
* ------------------------------ //
* Mouse Over dos links do menu
* e controle das abas
* ------------------------------ //
**/
el.mouseenter(function() {
if( !$( this ).hasClass( 'ancestor' ) ) {
$( 'ul#nav > li.ancestor' ).addClass( 'remove' );
$( this ).find( '> ul' ).css( {
'display' : 'block',
'z-index' : 9999
} );
}
}).mouseleave( function() {
$( 'ul#nav > li.ancestor' ).removeClass( 'remove' );
if( !$( this ).hasClass( 'ancestor' ) ) {
$( this ).find( '> ul' ).hide();
}
});
el.find( '> ul > li' ).bind( 'click', function() {
window.location = $( this ).find( 'a' ).attr( 'href' );
} );
} );
helpers.menu.calculate();
helpers.menu.over();
},
calculate : function() {
var size = 0;
$( 'ul#nav > li > ul' ).each( function() {
size = ( $( this ).width() / $( this ).find( '> li' ).size() );
$( this ).find( '> li' ).width( size );
$( this ).find( '> li > span' ).width( size ).height(80);
$( this ).find( '> li > span' ).fadeTo( 0, 0 );
} );
},
over : function() {
$( 'ul#nav li ul li' ).mouseenter( function() {
if( !$( this ).parent().parent().hasClass( 'ancestor' ) ) {
$( this ).find( 'span' ).height(120).stop().fadeTo( 300, 1 );
}
}).mouseleave( function() {
$( this ).find( 'span' ).stop().fadeTo( 300, 0 , function() {
$(this).height(80);
});
});
}
},
pagination : {
init : function(){
if($('.paginacao form').length > 0) {
$('.paginacao form').jqTransform({imgPath:'/static/scripts/jqtransform/jqtransformplugin/img/'});
$('.paginacao form div.jqTransformSelectWrapper ul li a').click( function() {
$(this).parentsUntil(".paginacao", "form").submit();
return false;
});
}
}
},
utils: {
_zoom_atual: 100,
zoom: function(vezes){
var _max_zoom = 130,
_min_zoom = 80;
helpers.utils._zoom_atual = helpers.utils._zoom_atual+(vezes*10);
if(!vezes)
helpers.utils._zoom_atual = 100;
if(helpers.utils._zoom_atual > _max_zoom)
helpers.utils._zoom_atual = _max_zoom;
if(helpers.utils._zoom_atual < _min_zoom)
helpers.utils._zoom_atual = _min_zoom;
if($.browser.mozilla){
$("body").css("-moz-transform", "scale("+(helpers.utils._zoom_atual/100)+")");
$("body").css("-moz-transform-origin", "50% 0");
} else if ($.browser.opera) {
$("body").css("-o-transform", "scale("+(helpers.utils._zoom_atual/100)+")");
$("body").css("-o-transform-origin", "50% 0");
} else {
$("body").css("zoom", (helpers.utils._zoom_atual/100));
if($.browser.msie){
if($.browser.version >=9)
window.setTimeout('$("html").css("margin-left",'+
'($(window).width()-($(window).width()*helpers.utils._zoom_atual/100))+"px")', 1);
else
$("body").css("margin-left",
($(window).width()-($(window).width()*helpers.utils._zoom_atual/100))+"px");
}
}
}
},
basicPop : {
init : function(){
var self = this;
$('a.lightbox.basicpop').bind('click', function(){
helpers.openModal( $( this ).attr( 'href' ), self.onLoadModal );
return false;
});
},
onLoadModal : function(){
$('#fancybox-wrap').width(801).height(520);
$('> div','.pop')
.cornerz( { radius : 6, corners : "tl tr bl" } )
.find('> div')
.jScrollPane({showArrows:true, scrollbarWidth:40});
if( $.browser.msie ) {
$( 'ul.listFx','.pop' ).corner( '6px' );
} else {
helpers.listFx( $( 'ul.listFx','.pop' ) );
}
}
},
tabsPop : {
init : function(){
var self = this;
$('a.lightbox.tabspop').bind('click', function(){
helpers.openModal( $( this ).attr( 'href' ), self.onLoadModal );
return false;
});
},
onLoadModal : function(){
$('#fancybox-wrap').width(840).height(560);
$('> ul','.pop')
.cornerz( { radius : 6, corners : "tl tr bl" } );
var tabs = $( 'div.pop-tabs ul > li.tab' );
tabs.width( Math.ceil( 796 / tabs.length ) );
tabs.click( function() {
tabs.removeClass('selected');
$(this).addClass('selected');
$('> div', tabs).hide();
$('> div', this)
.show()
.find('.holder-body-features')
.jScrollPane({showArrows:true, scrollbarWidth:40});
} );
tabs.cornerz({radius:6, corners:'tl tr', background : '#f8f8e9'});
/* Set first tab */
tabs.eq(0).trigger('click');
helpers.listFx($('ul.listFx','.pop'));
/*
var fix_ul_position = new helpers.tabPosition({ 'container': $('> ul:eq(0)', '.pop-tabs') });
fix_ul_position.initialize();
*/
}
},
/*
* Toggle a input from text to password (and vice-versa)
*/
text2password: function(element, options){
var _options = options || {labelOff: 'Senha',labelOn: ''};
var _el = element;
var _type = element.type;
var _nexttype = ({password: 'text', text: 'password'})[_type];
var _label = (_nexttype == 'password' ? _options['labelOn'] : _options['labelOff'] );
/*
* IE needs special treatment
*/
if($.browser.msie){
var clone = _el.cloneNode(false);
clone.id = _el.id;
clone.type = _nexttype;
clone.value = _label
if(!_el.parentNode)
return;
_el.parentNode.replaceChild( clone, _el )
$(_el).focus();
} else {
_el.type = _nexttype;
_el.value = _label;
}
},
playSoundLogo : function(){
},
/**
* ----------------------------------------- //
* Metodo para recuperar o hash da url
* Ex: http://www.blablabla.com.br#foo=bar
* Recupera => foo=bar
* @return Array()
* ----------------------------------------- //
**/
getHash : function() {
if(typeof jQuery.url == 'function')
var hash = jQuery.url().attr( "anchor" );
else
var hash = jQuery.url.attr( "anchor" );
var arrHash = '';
if( hash != null ) {
arrHash = hash.split( '=' );
}
return arrHash;
},
browserCheck : function() {
//if($.browser.mozilla){
if($.browser.msie && $.browser.version < 7 ){
helpers.openModal( BROWSER_CHECK_URL, function(){
$('a','.pop-browser-check').cornerz({radius:6});
$('section','.pop-browser-check').cornerz({radius:6, corners:'tl tr bl'});
$('#fancybox-outer').css({backgroundColor:'#cb8384'});
$('#fancybox-close').css({backgroundImage:'url(' + MEDIA_URL + 'assets/img/common/ui/btn_close_error.png)'});
}, {w:410, h:293, overlayColor:'#e3cdcd', overlayOpacity:1});
}
},
/**
* ------------------------------------------- //
* Common pop-up features
* ------------------------------------------- //
**/
pop : {
showSuccess : function(escope){
/* Show message success at send form */
$('.msg-sucess', escope).fadeIn(200, function(){
try {
var _tmp = window.parent.location.host;
$('a', this).show();
$('a', this).cornerz({radius:6}).css({'display':'block', 'margin':'0 auto 0 auto'}).unbind().bind('click', function(){
helpers.pop.onClosePop();
return false;
});
} catch (e) {
$('a', this).hide();
}
});
},
onClosePop : function(){
$('#fancybox-close').trigger('click');
//alert();
}
},
/**
* ------------------------------------------- //
* Contact pop-up
* ------------------------------------------- //
**/
popCare : {
init : function() {
/**
* ---------------------------------------- //
* Verifica se existe permalink do popup
* e abre o popup da hashtag informada
* ---------------------------------------- //
**/
var hashUrl = helpers.getHash();
if( hashUrl[ 0 ] == 'pop' ) {
$(document).ready(function(){
//helpers.openModal( CONTATO_POPUP_URL, care.init );
});
}
/**
* -------------------------------------------- //
* Evento de click dos itens de atendimento
* -------------------------------------------- //
**/
$( 'a[href*="fale-conosco/popup#pop="]' ).bind( 'click', function() {
/**
* Atualiza o hash da url
**/
$("ul#contato-sub").trigger('mouseout');
window.location = "#" + jQuery.url( $( this ).attr( 'href' ) ).attr( "anchor" );
helpers.openModal( CONTATO_POPUP_URL, care.init);
return false;
} );
}
},
popTiss : {
init : function(){
$( 'a', '.links-info' ).bind( 'click', function() {
helpers.openModal( $( this ).attr( 'href' ), helpers.popTiss.onLoadPop );
return false;
});
},
onLoadPop : function(){
$('.list-documents > thead > tr > td').cornerz( { radius : 6, corners: 'tl tr', background : '#f8f8e9' } );
$('.important-observation').cornerz( { radius : 6, background : '#f8f8e9' } );
$( '.section > div', '.pop' ).jScrollPane( { showArrows:true, scrollbarWidth:40 } );
}
},
popJourney : {
init : function(){
$( 'a.pop-autorizacao','.step-by-step.rio' ).bind( 'click', function() {
helpers.openModal( $( this ).attr( 'href' ), helpers.popJourney.onLoadPop, { w : 800, h : 545 });
return false;
});
$('#bt-send-pass-one').click(function(){
$('.select-custom').customselect();
alert('oi');
});
var fix_ul_position = new helpers.tabPosition({ 'container': $('#tabs-holder') , 'tab_label': $('div.section')});
fix_ul_position.initialize();
$('.tab').cornerz({radius:6, corners:'tl tr'});
},
onLoadPop : function(){
$('#fancybox-wrap').width(801).height(570);
// Configure ajax
$('#form-autorization').iframePostForm({
post: function() { /*console.log("Submitting");*/ },
complete: function(response) {
//console.log("Form submited.");
//console.log(response);
r = eval('(' + response + ')');
if(!r.success){
alert('Ocorreu um erro. \n' + r.description);
} else {
// mostra mensagem de sucesso (e esconde form atual)
$( '.authorization-pass-three' ).show();
$( '.authorization-pass-two-upload' ).hide();
$( '.authorization-pass-two'+helpers.popJourney.getTypeRequest() ).hide();
$('#protocol').html(r.protocolo);
}
}
});
// prepare tabs
$( '.holder-tabs ul li a' ).click(function() {
$( '.holder-tabs ul li' ).removeClass( 'selected' );
$( this ).parent().addClass( 'selected' );
$( '.holder-tabs ul li div.section' ).hide();
var formAutorization = $( this ).parent().find( 'div.section' ).first();
formAutorization.show();
});
// custom inputs
var custom_class = 'd3-custom-input';
var input_text = $( 'input:text' , '.holder-fields' );
input_text.each(function( i , el ){
el = $( el );
if( !el.parent().hasClass( custom_class ) ) {
el.wrap( '
' );
}
});
// toggle radio button
$( 'input:radio' , '.holder-fields' ).bind( 'click' , function(e) {
var el = $( e.currentTarget ),
name = el.attr('name');
$( 'input:radio[name='+ name +']' , '.holder-fields' ).parent().removeClass('checked');
el.parent().addClass('checked');
});
// custom select
$('select#field-origem').customselect({
classname: 'origin',
visible: 5
});
$('select#field-tipo-plano').customselect({
classname: 'plan-type',
position : 'up'
});
//$('select#field-quantidade').customselect({
// classname: 'plan-type',
// position : 'up',
// visible: 3
//});
// cornerz
$( '.holder-fields .bt-submit input' ).cornerz( { radius : 6, background : '#f8f8e9' } );
$( '.border-radius-top' ).cornerz( { radius : 6, corners : 'tl tr', background : '#f8f8e9' } );
$( '.holder-tabs ul > li.tab2 > section ul li' ).cornerz( { radius : 6, background : '#f8f8e9' } );
$( '#form-autorization .sendButton, #form-autorization .backButton' ).cornerz( { radius : 6, background : '#f8f8e9' } );
helpers.popJourney.setMask();
/**
* Aplica borda nos campos do form usando o plugin Corners
**/
$( '.d3-custom-input, .droapps-ui-customselect' ).corner( '6px' );
/**
* Acao de inserir e remover campos de upload
**/
$( '.bt-add' ).unbind( 'click' ).bind( 'click', function() {
var totalFiles = $( 'input:file', '.holder-doc-fields' ).size();
if( totalFiles < 5 ) {
var newInputFile = '';
$( '.holder-doc-fields' ).append( newInputFile );
$( '.bt-delete' ).unbind( 'click' ).bind( 'click', function() {
$( this ).parent().remove();
return false;
});
}
return false;
});
/**
* Controle do botão adicionar campos
*/
$('.add_fields').bind('click', function() {
var typeRequest = helpers.popJourney.getTypeRequest();
$('.remove').remove();
/*$($('.authorization-pass-two'+typeRequest+ ' .add-control').prev().clone())
.insertBefore('.authorization-pass-two'+typeRequest+' .add-control')
.find('input')
.val('');*/
$('.procedimentos').append(' | | |
');
$('.select-custom').customselect({ classname: 'quantidade' });
$('.procedimentos input').customInput();
$('input[name="quantidade"], input[name="cod_procedimento"]').setMask('9999999999');
$('input[name="quantidade"]', '.authorization-pass-two-internacao .procedimentos').each(function(i) {
if (i>0) {
$(this)
.parent()
.parent()
.parent()
.append(' Remover | ');
}
});
$('.remove').unbind('click').bind('click', function() {
$(this).parent().remove();
});
// Scroll
$( '.authorization-pass-two'+typeRequest+' .holder-scroll' ).jScrollPane( { showArrows:true, scrollbarWidth:40 } );
return false;
}
);
/**
* Controle do form [passo 1]
**/
$( '.sendButton', '.authorization-pass-one' ).unbind( 'click' ).bind( 'click', function() {
if(! helpers.popJourney.validate( '.authorization-pass-one' ) )
return;
var typeRequest = helpers.popJourney.getTypeRequest();
var typeSubmitRadio = $( 'input[name="tipo_envio"]' );
if( typeSubmitRadio.eq( 0 ).is( ':checked' ) ) {
$( '.authorization-pass-two'+typeRequest ).show();
$( '.authorization-pass-two input' ).attr('disabled', 'disabled');
$( '.authorization-pass-two'+typeRequest+' input' ).removeAttr('disabled');
// Scroll
$( '.authorization-pass-two'+typeRequest+' .holder-scroll' ).jScrollPane( { showArrows:true, scrollbarWidth:40 } );
}
if( typeSubmitRadio.eq( 1 ).is( ':checked' ) ) {
$( '.authorization-pass-two input' ).attr('disabled', 'disabled');
$( '.authorization-pass-two-upload' ).show();
}
$( '.authorization-pass-one' ).hide();
$('.select-custom').customselect({ classname: 'quantidade' });
$('.select-acomodacao').customselect();
return false;
} );
/**
* Controle do form [passo 2]
**/
$( '.sendButton', '.authorization-pass-two' ).unbind( 'click' ).bind( 'click', function() {
if(! helpers.popJourney.validate( '.authorization-pass-two'+helpers.popJourney.getTypeRequest() ) )
return;
helpers.popJourney.sendForm();
return false;
} );
/**
* Controle do form [passo 2 upload]
**/
$( '.sendButton', '.authorization-pass-two-upload' ).unbind( 'click' ).bind( 'click', function() {
helpers.popJourney.sendForm();
});
/**
* Controle do form [passo 2]
**/
$( '.backButton').unbind( 'click' ).bind( 'click', function() {
$( '.authorization-pass-one' ).show();
$( '.authorization-pass-two'+helpers.popJourney.getTypeRequest() ).hide();
$( '.authorization-pass-two-upload' ).hide();
} );
// Temp shortcut
//$( '.authorization-pass-one' ).hide();
//$( '.authorization-pass-two'+helpers.popJourney.getTypeRequest() ).show();
},
setMask: function() {
$.mask.options.autoTab = false;
$('input[name="quantidade"], input[name="cod_procedimento"]').setMask('9999999999');
$('input[name="numero_guia"]').setMask('99999999999999999999');
$('input[name="quantidade_diarias"]').setMask('9999999999');
$('#field-cartao').setMask('99999999999999999');
$('#field-nasc').setMask('date');
$('#field-fone').setMask('phone');
$('#field-celular').setMask('phone');
$('#field-validade').setMask('99/9999');
$('input[name="data_realizacao_procedimento"]').setMask('date');
},
validate : function( dom ) {
var s = forms.showAlert,
f = $(':input' , dom),
msg = ' corretamente o campo ',
pass = true,
emailFieldPattern = /email/,
emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
f.each(function( i , element ){
var el = $( element ),
tagname = element.tagName.toLowerCase(),
input_type = tagname == 'input' ? el.attr('type') : '',
value = el.val(),
id = el.attr('id'),
label = $('label[for="'+ el.attr('id') +'"]', dom),
labels = [],
txt = '',
pre_msg = '';
label.each(function() {
labels.push($(this).text());
});
txt = labels.join(', ')
if(
(tagname == 'input' && input_type == 'radio' ) ||
(tagname == 'input' && input_type == 'checkbox' ) ||
(tagname == 'select')
)
{ pre_msg = 'Selecione'; }
else
{ pre_msg = 'Preencha'; }
if (emailFieldPattern.test(id)) {
if (!emailPattern.test(value))
value = '';
}
if( !value ) {
s( $('.form-autorization-holder-error', dom) , pre_msg + msg + txt );
pass = false;
}
});
if( !pass ) { return false; }
return true;
},
// Envia o form
sendForm : function(sended_cb) {
//$( '.authorization-pass-three' ).hide();
//$( '.authorization-pass-two'+helpers.popJourney.getTypeRequest() ).hide();
//$( '.authorization-pass-two-upload' ).hide();
$('#form-autorization').trigger('submit');
//$.post( $('#form-autorization').attr('action'), $('#form-autorization').serialize(), function(data) {
// console.log("Form submited."); console.log(data);
//}, 'json');
},
getTypeRequest : function() {
return $( 'input[name="solicitacao"]' ).eq( 0 ).is( ':checked' ) ? '-internacao' : '-exame';
}
},
popPlansCompare : {
init : function(){
$( 'a','#wrapper #button-compare-plans' ).bind( 'click', function() {
helpers.openModal( $( this ).attr( 'href' ), helpers.popPlansCompare.onLoadPop);
return false;
});
},
onLoadPop : function(){
$('#fancybox-wrap').width(840).height(560);
$( '.holder-body-features' ).jScrollPane({showArrows:true, scrollbarWidth:40});
$( '.pop section' ).cornerz( { radius : 6, corners : 'tl tr bl', background : '#f8f8e9' } );
/*$( '.border-radius-top' ).cornerz( { radius : 6, corners : 'tl tr', background : '#f8f8e9' } );
$( '.border-radius-tl' ).cornerz( { radius : 6, corners : 'tl', background : '#f8f8e9' } );
$( '.border-radius-tr' ).cornerz( { radius : 6, corners : 'tr', background : '#f8f8e9' } );
$( '.border-radius-bl' ).cornerz( { radius : 6, corners : 'bl', background : '#f8f8e9' } );
$( '.border-radius-br' ).cornerz( { radius : 6, corners : 'br', background : '#f8f8e9' } );
$( '.border-radius-bottom' ).cornerz( { radius : 6, corners : 'bl br', background : '#f8f8e9' } );*/
}
},
popSustainability : {
init : function(url, index){
helpers.openModal( url, helpers.popSustainability.onLoadPop );
},
onLoadPop : function() {
$( '.holder-scroll' ).jScrollPane({showArrows:true, scrollbarWidth:40});
$( '.holder-scroll ul li' ).cornerz( { radius : 6, corners : 'tl tr', background : '#f8f8e9' } );
}
},
popEditEmail : {
init : function(url){
helpers.openModal( url, helpers.popEditEmail.onLoadPop, {w:410, h:310});
},
onLoadPop : function(){
var holder = $('.pop-editemail');
holder.customInput( {
borderColor : '#d3d3c6',
background : '#8d8d85',
borderColorHover : '#dcdcdc'
});
$('#field-email', holder).focus();
$( '> section', holder ).cornerz( { radius : 6, corners : 'tl tr', background : '#f8f8e9' } );
$( '#submit, div.details', holder ).cornerz( { radius : 6, background : '#f8f8e9' } );
helpers.buttonFx( $( '#submit', holder ), '#33796b' );
$( '#submit', holder ).bind('click', function(){
helpers.popEditEmail.validate();
$('#form-editemail', holder).submit(function(){
return false;
});
})
},
validate : function(){
if( !forms.validate.email( $('#field-email', '.pop-editemail').val() ) ){
helpers.errorAlert( $('.pop-editemail'), 'Preencha corretamente o campo E-mail.');
} else {
helpers.popEditEmail.sendData();
}
},
sendData : function(){
helpers.popEditEmail.onSendData();
},
onSendData : function(){
helpers.pop.showSuccess( $('.pop-editemail') );
}
},
/**
* ------------------------------------------- //
* Forgot password pop-up
* ------------------------------------------- //
**/
popForgotPassword : {
init : function() {
$( 'div#areaLogin a#recuperar-senha' ).bind( 'click', function() {
helpers.openModal( $( this ).attr( 'href' ), helpers.popForgotPassword.onLoadPop, {w:410, h:310});
return false;
});
},
onLoadPop : function() {
$('#fancybox-wrap').width(411).height(309);
/*
$( '.pop-password #holder-fields' ).customInput( {
borderColor : '#d3d3c6',
background : '#8d8d85',
borderColorHover : '#dcdcdc',
width : 105
} );
*/
//$('input:text' ).corner('6px');
$( 'button', '.pop-password #holder-fields' ).cornerz({radius:6}).unbind().bind('click', function(){
helpers.popForgotPassword.validate();
$('#form-password').submit(function(){ return false; });
});
//$('.pop-password #field-cartao').val('0037');
$('.pop-password #field-cpf').setMask('cpf');
$('.pop-password #field-nasc').setMask('date');
helpers.buttonFx( $('#submitpass'), '#33796b' );
},
validate : function() {
/*
* First test presence of all fields
*/
var fields = [{selector: '.pop-password #field-cartao', label: 'Número do cartão'} ,
{selector: '.pop-password #field-cpf', label: 'CPF'},
{selector: '.pop-password #field-nasc', label: 'Data de Nascimento'},
{selector: '.pop-password #field-email', label: 'E-Mail'} ];
var is_empty = false;
$(fields).each(function(ix, field){
if(is_empty) return;
is_empty = !( $(field['selector']).val() );
if(is_empty)
helpers.errorAlert( $('.pop-password'), 'Por favor preencha o campo ' + field['label'], { cornerzColor: '#f8f8e9' } );
});
if(is_empty) return;
if( $('.pop-password #field-cartao').val().length < 5 ){
helpers.errorAlert( $('.pop-password'), 'Número do cartão está incorreto.', { cornerzColor: '#f8f8e9' } );
} else if( !forms.validate.cpf( $('.pop-password #field-cpf').val()) ){
helpers.errorAlert($('.pop-password'), 'CPF inválido.', { cornerzColor: '#f8f8e9' } ) ;
} else if( $('.pop-password #field-nasc').val().length < 10 ){
helpers.errorAlert($('.pop-password'), 'Data de Nascimento incorreta.', { cornerzColor: '#f8f8e9' } );
} else if(! forms.validate.email( $('.pop-password #field-email').val() ) ){
helpers.errorAlert($('.pop-password'), 'Preencha corretamente o campo E-mail.', { cornerzColor: '#f8f8e9' } );
} else {
helpers.popForgotPassword.sendData();
}
},
sendData : function() {
var fx_wait = helpers.errorAlert( $('.pop-password'), 'Aguarde...', {'bgcolor':'#d3d3c3', 'color':'#3c493e', 'cornerzColor': '#ebebdd', 'autoFadeOut': false, 'animTime':0});
//helpers.errorAlert($('.pop-password'), 'Aguarde.', {'bgcolor':'#d3d3c3', 'color':'#3c493e', 'autoFadeOut': true});
var target = swfobject.getQueryParamValue("target");
var form = '#form-password';
var url = $(form).attr('action')
var data = {
cartao: $('#field-cartao', form).val(),
cpf: $('#field-cpf', form).val().replace(/\.|-/g, ""),
nascimento: $('#field-nasc', form).val(),
email: $('#field-email', form).val()
}
$.ajax({
url: url,
data: data,
type: 'POST',
success: function(data) {
helpers.pop.showSuccess( $('.pop-password') );
},
error: function(request){
helpers.errorAlert( $('.pop-password'), 'Dados incorretos.', {'cornerzColor': '#ebebdd'});
}
});
}
},
popSendToFriend : {
messageTextArea : null,
init : function(data){
helpers.openModal("/guia-medico/popup-enviar" , helpers.popSendToFriend.onLoadPop);
},
onLoadPop : function(){
/*$( '#holder-fields' ).customInput( {
borderColor : '#d0dbca',
background : '#7a8c7e',
borderColorHover : '#dcdcdc',
width : 310
} );*/
//$('#holder-fields button, details', '.pop-sendtofriend').cornerz({radius:6});
$('.pop-sendtofriend form #holder-fields a')
.cornerz({radius:6, background:'#F8F8E9'})
.unbind('click')
.bind('click', function(){
$('.pop-sendtofriend form').submit(function(){ return false; });
helpers.popSendToFriend.validate();
return false;
});
this.messageTextArea = $('#holder-fields #message')
.extend(forms.textarea)
.init({
className: 'message border-normal',
width: 360,
height: 253,
initialValue: 'Digite sua mensagem',
cornerz: { radius : 6, background : '#f8f8e9' }
});
//Add textfield autoresize and scrollbar plugin
var scrollPane = $('.message');
//setTimeout(function(){
// care.tabs.fale.reloadScroll(scrollPane,0);
//},500);
/*$('textarea', '.message').autoResize({
onResize : function() {
//var h = parseInt(document.getElementById('message').style.height);
helpers.popSendToFriend.reloadScroll(scrollPane, $(this).height());
},
limit : 99999999
});*/
var section = $('body').attr('id');
if(section == 'simule-seu-plano'){
$('#form-sendtofriend #holder-fields').append('');
simulator.onPdfPreview(true);
} else if ($('#medical-guide').length > 0) {
$('#form-sendtofriend #holder-fields').append('');
favorites.addPrintFlash('sendToFriend');
}
$('#fancybox-wrap').width(801).height(501);
//$('#planssimulator').css({'display':'none'});
},
reloadScroll : function(obj, height) {
$('#message-scroller', '.message').jScrollPane({showArrows:true, scrollbarWidth:35});
$('#message-scroller', '.message').get(0).scrollTo(height);
},
validate : function() {
if ( !$('#field-name', '.pop-sendtofriend').val().length ){
forms.showAlert($('.pop-sendtofriend .details'), 'Preencha corretamente o seu Nome');
return false;
} else if( !forms.validate.email( $('#field-email', '.pop-sendtofriend').val() ) ){
forms.showAlert($('.pop-sendtofriend .details'), 'Preencha corretamente o seu E-mail');
return false;
} else if( !$('#field-friendname', '.pop-sendtofriend').val().length ){
forms.showAlert($('.pop-sendtofriend .details'), 'Preencha corretamente o Nome do seu amigo');
return false;
} else if( !forms.validate.email( $('#field-friendemail', '.pop-sendtofriend').val() ) ){
forms.showAlert($('.pop-sendtofriend .details'), 'Preencha corretamente o E-mail do seu amigo');
return false;
} else if( $('#message', '.pop-sendtofriend').val() == 'Digite sua mensagem' || $('#message', '.pop-sendtofriend').val() == '' ){
forms.showAlert($('.pop-sendtofriend .details'), 'Preencha algum texto para enviar ao seu amigo');
return false;
}
this.sendData();
},
sendData : function() {
var self = this;
var el = '.pop-sendtofriend';
var name = $('#field-name', el).val();
var email = $('#field-email', el).val();
var friendName = $('#field-friendname', el).val();
var friendEmail = $('#field-friendemail', el).val();
var message = $('#message', el).val();
var data = '{"name" : "' + name + '",' +
'"email" : "' + email + '",' +
'"friendName" : "' + friendName + '",' +
'"friendEmail" : "' + friendEmail + '",' +
'"message" : "' + message + '"}';
var section = $('body').attr('id');
if($('.simulator').length > 0){
var data = simulador.getData();
data['destino_nome'] = friendName;
data['destino_email'] = friendEmail;
data['origem_nome'] = name;
data['origem_email'] = email;
data['mensagem'] = message;
var url_email = url_simulador + '?email=amigo';
$.ajax({
type: "POST",
url: url_email,
data: data,
success: function(retorno) {
if (retorno == 'sucesso') {
self.onSendData();
} else {
forms.showAlert( self.holder_errors , 'Erro ao enviar sua mensagem.' );
}
},
error: function(retorno) {
forms.showAlert( self.holder_errors , 'Erro ao enviar sua mensagem.' );
},
dataType: 'html'
});
} else if ($('#medical-guide').length > 0) {
var data = {};
data['destino_nome'] = friendName;
data['destino_email'] = friendEmail;
data['origem_nome'] = name;
data['origem_email'] = email;
data['mensagem'] = message;
data['data'] = JSON.stringify(favorites._getList());
$.ajax({
type: "POST",
url: URL_INDICAR_AMIGO,
data: data,
success: function(retorno) {
if (retorno == 'sucesso') {
self.onSendData();
} else {
forms.showAlert( self.holder_errors , 'Erro ao enviar sua mensagem.' );
}
},
error: function(retorno) {
forms.showAlert( self.holder_errors , 'Erro ao enviar sua mensagem.' );
},
dataType: 'html'
});
} else {
var area = 'Envie para um amigo';
var subject = name + 'lhe indicou o site Unimed-Rio';
var message = 'Olá ' + friendName + ',\n\n' +
name + 'lhe indicou o site Unimed-Rio.\n' +
'Acesse e conheça: www.unimedrio.com.br\n\n' +
'Atenciosamente,\n' +
'Equipe Unimed-Rio.';
$.ajax({
url: '/api/contato/mail.json',
data: JSON.stringify({ area: area, subject: subject, message: message }),
type: 'POST',
dataType: 'json',
contentType: 'application/json',
success: function(data) {
try { console.log(data); } catch(e){};
self.onSendData();
},
error: function(request){
try { console.log(request); } catch(e){};
forms.showAlert( self.holder_errors , 'Erro ao enviar sua mensagem.' );
}
});
}
},
onSendData : function() {
helpers.pop.showSuccess( $('.pop-sendtofriend') );
}
},
/**
* ------------------------------------------- //
* New simulation pop-up -- Called by Simulator
* ------------------------------------------- //
**/
popNewSimulation : {
callback : null,
init : function(callback) {
this.callback = callback;
helpers.openModal( NEW_SIMULATION_URL , helpers.popNewSimulation.onLoadPop, {w:300, h:195});
},
onLoadPop : function() {
var self = this;
$('a','.pop-new-simulation').cornerz({radius:6});
/* 'Not' Button */
$('a:eq(0)', '.pop-new-simulation').unbind().bind('click', function(){
helpers.pop.onClosePop();
});
/* Accept button */
$('a:eq(1)', '.pop-new-simulation').unbind().bind('click', function(){
helpers.popNewSimulation.callback.apply(null, [ true ] );
helpers.pop.onClosePop();
});
}
},
selos : {
init : function(){
$('#wrapper dl.selos > dd > dl').each(function(){
$('> dd:odd', this).css({marginRight:'0'});
});
this.corners();
},
corners : function(){
$('#wrapper dl.selos').cornerz( { radius : 6, background : '#f7f8ea' } );
$('#wrapper dl.selos > dd div > img').each(function(){
helpers.imgToCornerz($(this));
});
$('#wrapper dl.selos > dd div > figure').each(function(){
$(this).cornerz( { radius : 6, background : '#d7d8c8', corners: 'tl tr bl' });
});
}
},
/**
* ------------------- //
* Popup Corretor
* ------------------- //
**/
popBroker : {
init : function() {
$( '#simulate-contact' ).bind( 'click', function() {
//helpers.openModal( $( this ).attr( 'href' ), helpers.popBroker.onLoadPop, {w:800, h:545});
//w:410, h:360
//return false;
});
$('a.pop-contact').bind('click',function(){
helpers.openModal($(this).attr('href'), helpers.popBroker.onLoadPop, {w:820, h:470});
return false;
});
},
onLoadPop : function() {
$( 'button', '.pop-broker #holder-fields' ).cornerz({radius:6}).unbind().bind('click', function(){
helpers.popBroker.validate();
$('#form-broker').submit(function(){
return false;
});
});
$('.pop-broker #field-fone').setMask('(99) 9999-9999');
helpers.buttonFx( $('#submitpass'), '#33796b' );
},
validate : function() {
if( $('.pop-broker #field-nome').val().length < 5 ){
helpers.errorAlert( $('.pop-broker'), 'Preencha corretamente o campo nome.');
} else if( !forms.validate.email( $('.pop-broker #field-email').val() ) ){
helpers.errorAlert($('.pop-broker'), 'Preencha corretamente o campo E-mail.');
} else if( $('.pop-broker #field-fone').val().length < 12 ) {
helpers.errorAlert($('.pop-broker'), 'Preencha corretamente o campo telefone.');
} else {
helpers.popBroker.sendData();
}
},
sendData : function() {
var form = $('.pop-broker');
var area = 'Corretor';
var subject = 'Quero ser contatado';
var message = 'Mensagem enviada através do site Unimed-Rio:\n\n' +
'Quero ser contatado via um corretor:\n\n' +
'Nome: ' + $('#field-nome', form).val() + '\n' +
'E-mail: ' + $('#field-email', form).val() + '\n' +
'Telefone: ' + $('#field-fone', form).val() + '\n' +
($('#field-plano',form).val() != "" ? 'Plano: ' + $('#field-plano',form).val() + '\n' : '\n' );
$.ajax({
url: '/api/contato/mail.json',
data: JSON.stringify({ area: area, subject: subject, message: message }),
type: 'POST',
dataType: 'json',
contentType: 'application/json',
success: function(data) {
helpers.pop.showSuccess( $('.pop-broker') );
},
error: function(request){
helpers.errorAlert( $('.pop-broker'), 'Erro inesperado. Tente novamente mais tarde.');
}
});
},
onSendData : function(data){
helpers.pop.showSuccess( $('.pop-broker') );
}
},
/**
* --------------------------- //
* Metodo para abrir o popup
* --------------------------- //
**/
openModal : function( hrefAjax, callback, options, params )
{
if( options )
{
w = ( options.w ) ? options.w : 800;
h = ( options.h ) ? options.h : 520;
overlayColor = ( options.overlayColor ) ? options.overlayColor : '#d5ded1';
overlayOpacity = ( options.overlayOpacity ) ? options.overlayOpacity : 0.9;
onClosed = ( options.onClosed ) ? options.onClosed : null;
}
else
{
w = 800;
h = 520;
overlayColor = '#d5ded1';
overlayOpacity = 0.9;
onClosed = null;
}
$.fancybox( {
'autoDimensions' : false,
'width' : w,
'height' : h,
'padding' : 0,
'scrolling' : 'no',
'href' : hrefAjax,
'onComplete' : function() {
helpers.hideFlash();
if(callback != null) callback(params ? params : null);
},
'overlayColor' : overlayColor,
'overlayOpacity' : overlayOpacity,
'autoScale':false,
'onClosed' : function() {
window.location.hash = '!';
helpers.showFlash();
/* Restore default background and image on close pop-up */
$('#fancybox-outer').css({backgroundColor:'#f8f8e9'});
$('#fancybox-close').css({backgroundImage:'url(/static/img/common/ui/btn_close.png)'});
if( onClosed ) onClosed();
}
} );
return false;
},
hideFlash : function(){
$('#planssimulator, #flash-history, #flash-history-unimed, #carousel, #animation').css({ width: '0px' });
},
showFlash : function(){
$('#planssimulator, #flash-history, #flash-history-unimed, #carousel, #animation').css({ width: '' });
},
/**
* --------------------------------- //
* Metodo para criar os tooltips
* --------------------------------- //
**/
tooltip : {
init : function( obj ) {
/**
* Add Mouse Events
**/
if(obj.hasMouseEvent) {
$( obj.element ).unbind('mouseenter').bind('mouseenter', function() {
helpers.tooltip.create( this, obj );
} ).unbind('mouseleave').bind('mouseleave', function() {
helpers.tooltip.hide( $('.' + obj.className) );
} );
}
/**
* Call tooltip without mouse event
**/
else {
helpers.tooltip.create( $(obj.element) , obj );
}
},
/**
* Create DOM elements
**/
create : function( element, obj ) {
var el = $( element );
if( !$('> div', 'body').hasClass( obj.className ) ) {
$( '' ).prependTo( 'body' );
}
var offset = $(element).offset();
var offsetTop = ( offset.top + ( (obj.offset) ? obj.offset.top : 0 ) );
var offsetLeft = ( offset.left + ( (obj.offset) ? obj.offset.left : 0 ) );
var tooltip = $( '.' + obj.className );
var label = obj.label || el.text() || el.attr( 'rel' ) || el.attr( 'rev' ) || 'undefined';
/**
* Apply CSS properties and label
**/
$('a', tooltip).css({
'color' : obj.color,
'background' : obj.background
}).html( label );
/**
* Create DIV element to receive a rounded corner by PNG files
**/
if( !$('div', tooltip).length ) {
$('').prependTo( tooltip );
$('
').appendTo( tooltip );
}
/**
* Set tooltip position
**/
switch( obj.position ) {
case 'top':
tooltip.css( { 'top' : offsetTop } );
break;
case 'bottom':
tooltip.css( { 'top' : ( offsetTop + $( element ).height() ) } );
break;
case 'center':
tooltip.css( { 'top' : offsetTop } );
tooltip.css( { 'left' : ( offsetLeft + ( $( element ).width() >> 1) - ( $(tooltip).width() >> 1 ) ) } );
break;
case 'left':
tooltip.css( { 'top' : offsetTop } );
tooltip.css( { 'left' : ( offsetLeft + ( $( element ).width() >> 1 ) ) } );
break;
case 'right':
tooltip.css( { 'top' : offsetTop } );
tooltip.css( { 'left' : ( offsetLeft - $(tooltip).width() + ( $( element ).width() >> 1 ) ) } );
break;
}
helpers.tooltip.show(tooltip, obj);
},
show : function(tooltip, obj) {
$(tooltip).stop().show().animate( { opacity : '1' }, 300, function(){
$(this).animate( { opacity : '1' }, 2000, function() {
$(this).animate( { opacity : '0' }, 300, function() { $(this).hide(); });
});
} )
},
hide : function(tooltip) {
$(tooltip).stop().animate( { 'opacity' : '0' }, 300, function() { $(this).hide(); } );
}
},
/**
* Create a holder for
![]()
DOM element and return him to receive Cornerz.
**/
imgToCornerz : function(element) {
var holder = $('
');
element.parent().prepend(holder);
holder.css({
width : element.width(),
height : element.height(),
backgroundImage : 'url(' + element.attr('src') + ')',
backgroundRepeat : 'no-repeat'
});
holder.append(element);
element.css({ display : 'none' });
return holder;
},
/**
* Create mouseover effects in column itens. e.g: view Downloads Section
*/
listFx : function( element ) {
if( $.browser.msie ) {
$( element ).corner();
$('> li:last-child', element).find('a').css({ borderBottom : 'none' });
} else {
$('> li:first-child', element).cornerz({radius:6, corners:'tl tr'});
$('> li:last-child', element).cornerz({radius:6, corners:'bl br'}).find('a').css({ borderBottom : 'none' });
}
$( '> li', element ).each( function( e ) {
var el = $( e.currentTarget );
// verifica se não estiver link então muda o cursor da li
if( !$( 'a', el ).length ) {
el.css( { 'cursor' : 'default' } );
}
});
$( '> li', element ).mouseenter( function( e ) {
var el = $( e.currentTarget );
var link = el.find( 'a' );
link.css( { color: '#fff' } );
if( link.length ) {
el.stop().animate( { backgroundColor : '#acaca0' }, 400 );
/*
el.unbind( 'click' ).bind( 'click', function( event ) {
// verifica se o evento de click foi feito apenas no li
if( $( event.target ).is( 'li' ) ) {
link.trigger('click');
}
} );
*/
}
} ).mouseleave( function( e ) {
var el = $( e.currentTarget );
var link = $( 'a', el );
link.css( { color: '#3c493e' } );
if( link.length ){
el.stop().animate( { backgroundColor : '#d7d8c7' }, 400 );
}
} ).click( function(){
window.open($('> a', $(this)).attr('href'));
return false;
} );
},
/**
* Buttons effects: mouseover and mouseout
**/
buttonFx : function(element, overColor) {
var hitColor = element.css('backgroundColor');
var time = 400;
element.mouseenter(function(){
$(this).stop().animate({ backgroundColor : overColor }, time);
}).mouseleave(function(){
$(this).stop().animate({ backgroundColor : hitColor }, time);
});
},
showFormContact : function() {
$( '.button-contact' ).click( function() {
$( '#simulate-contact form' ).fadeIn();
} );
$( '#simulate-contact form label, #simulate-contact form button' ).cornerz({radius:6, background : '#5A9600'});
helpers.focusInOut();
},
updateURLparam : function(url, name, value) {
host = url.split("?")[0];
params = url.split("?")[1] || "";
var re1 = new RegExp(name + '=.+&');
var re2 = new RegExp(name + '=.+');
params = params.replace(re1, "").replace(re2, "").replace(/&$/, "")+"&"+name+"="+value;
params = params.replace(/^&/, "");
return host + "?" + params;
},
tabPosition : function( options ) {
this.container = options.container || $('#tabs');
this.tab_label = options.label || $('.tab', this.container );
var _self = this;
this.initialize = function(){
$.each( $( this.tab_label, this.container) , this.fixTabPosition );
}
this.applyDistance = function( leftDistance , elmChild ){
leftDistance = '-'+leftDistance+'px';
elmChild.css('left', leftDistance);
}
this.fixTabPosition = function( index, el ){
var elmIndex = $( el ).index();
var elmWidth = $( el ).width();
var leftDistance = elmIndex * elmWidth;
var target = ( $( el ).children('div').length ) ? 'div' : 'section';
var elmChild = $( el ).children(target);
_self.applyDistance(leftDistance, elmChild);
}
},
focusInOut : function( campos ) {
if( campos != undefined ) {
console.log(campos.val());
}
},
errorAlert : function(escope, msg, _options){
var el = $(escope).find('.error-form');
var options = { bgcolor: '#d27676', //B9D300 d27676
cornerzColor: '#f8f8e9',
color: '#fff',
animTime: 600,
autoFadeOut: true,
fadeOutDelay: 3000 };
if(_options) $.extend(options, _options);
el.css({
backgroundColor : options.bgcolor ,
color : options.color
});
var anim = el.not(':animated').text(msg).stop()
.fadeIn(options.animTime).cornerz({radius: 6, background: options.cornerzColor});
if(options.autoFadeOut)
anim = anim.delay( options.fadeOutDelay ).fadeOut( options.animTime );
return anim
},
checkSWFHasEmbedded : function (info)
{
if(!info.success)
$("#" + info.id).html( helpers.swfAlternative() );
},
/**
* Replaces the SWF content if user no have flashplayer plugin. Awey!
*
*/
swfAlternative : function ()
{
return "Olá, para ver essa área voc&etilde; precisa ter o Adobe® Flash® Player no seu navegador.

Quer instalar?"
},
/**
* Just track a swf event or pageview.
* @param {String} tag
*/
swfTrack : function (tag)
{
var a = tag.split(":");
var method = "dpc_" + a[0].substr(1)
var args = a[1].split(",");
this[ method ].apply(this, args);
},
getTimestamp : function()
{
return Number(new Date().getTime());
},
borders: {
init: function(){
$('ul#nav > li > a, .menuActive').cornerz({radius: 6, corners:'tl tr', background : '#5A9600'});
$('div.boxClientes').cornerz({radius: 10, corners:'tl tr bl', background : '#F7F8EA'});
$('div.field').cornerz({radius: 5, corners:'tl tr bl br', background : '#B9D300'});
$('div.searchArea').cornerz({radius: 10, corners:'tl bl', background : '#5A9600'});
$('div.btnPesquisar').cornerz({radius: 10, corners:'tr br', background : '#5A9600'});
$('dl.dl_parent').cornerz({radius: 6, corners:'tl tr bl br', background : '#F7F8EA'});
$('dl.dl_parent dd > dl > dd > div').cornerz({radius: 6, corners:'tl tr bl br', background : '#D7D8C8'});
$('dl.dl_parent dd > dl > dd > div').each(function(){
$(this).css({
background: 'transparent url('+$(this).find('img').attr('src')+') 0 0 no-repeat',
marginRight: '20px'
});
$(this).find('img').hide();
});
}
}
}
//$('.pop-password form input').cornerz( { radius : 6, background : '#F8F8E9' } );
jQuery(document).ready(function(){
helpers.init();
});