/* Responsavel por invocar as inicializaçoes JS, aplicando mascaras e preparando componentes */ var $contexto = location.pathname + '/../../..'; //$contexto = $contexto.substring(0, $contexto.indexOf('/',1)); var $requiredSymbol = '*'; var $requiredLabelClass = 'obrigatorio'; /** Inicializacao */ $( document ).ready( function(){ /* Inicia jquery customizado */ setupDatePicker(); setupValidation(); initializeDtpScripts(); } ); function initializeDtpScripts() { setupMasks(); initValidation(); initLimit(); setupBlocking(); initForm(); } /** Define os padroes para o datePicker */ function setupDatePicker() { $.datepicker.setDefaults($.extend({ showMonthAfterYear: false, showOn: 'button', buttonImage: $contexto + '/images/ico_calendario.gif', buttonImageOnly: true, buttonText: 'Selecionar data', changeMonth: true, changeYear: true, dateFormat: 'dd/mm/yy' }, $.datepicker.regional['pt-BR'])); } /** Responsavel por limitar caracteres em textAreas */ function initLimit() { $('textarea[class~=textareaFormat]').each(function() { var maxLen = $(this).attr('maxlength'); try { if (maxLen == undefined) { throw new Error(' nao possui um maxlength definido'); } else if (isNaN(maxLen)) { throw new Error(' nao possui maxlength valido (numerico)'); } $(this).limit(maxLen); } catch (e) { console.log(this.id + e.message); } }); } /** Inicializacoes / adiçao de event handlers */ function initForm() { /* Ativa o onblur de todos os inputs no submit, para corrigir o problema * de "submit com enter com mascara" */ $('form').bind( "submit" , function ( e ) { $('input[type=text]').blur(); } ); $('input[class*=dataFormat]').mask( "?99/99/9999" ).datepicker(); $(':input:enabled:visible:first').focus(); $(':input.focoInicial:enabled:visible:first').focus(); }