/** * --------------------------------------- // * 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.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 = '
remover
'; $( '.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(''); $('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('Remove 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 csrf = $("input[name='csrfmiddlewaretoken']").val(); $('#medical-guide-print-flash', '#form-sendtofriend').get(0) .sendToSwf({ onComplete : "helpers.popSendToFriend.onSendData", 'destino_nome': friendName, 'destino_email': friendEmail, 'origem_nome': name, 'origem_email': email, 'mensagem': message, 'csrfmiddlewaretoken': csrf, 'area': 'indicar-para-amigo' }); } 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(); }); } }, /** * ------------------- // * 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.Get Adobe FlashPlayer®
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(); });