var dir="../";/******************* tiny mce editor******************************/ tinyMCE.init({ mode : "textareas", theme : "advanced", skin : "o2k7", skin_variant : "black", theme_advanced_buttons1 : "newdocument,|,bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,|,formatselect,fontselect,fontsizeselect", theme_advanced_buttons2 : "help,|,link,unlink,forecolor,backcolor,|,bullist,numlist,|,undo,redo,hr,|,cleanup,removeformat,tablecontrols,|,code", theme_advanced_buttons3 : "", editor_selector : "mceSimple" }); tinyMCE.init({ mode : "textareas", theme : "advanced", skin : "o2k7", skin_variant : "black", theme_advanced_buttons1 : "newdocument,|,bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,|,formatselect,fontselect,fontsizeselect", editor_selector : "mceAdvanced" }); tinymce . create('tinymce.plugins.ListImagePlugin', { createControl : function (n, cm){ switch (n){ case 'imagelist' : var mlb = cm . createListBox('listimage', { title : 'Image list', onselect : function (v){ if( v != '') tinyMCE.activeEditor.execCommand('mceInsertContent', false, ''); } } ); // Add some values to the list box mlb . add('表示', ''); mlb . add('サントス・ボケロン海岸移民上陸記念碑 (13/05/2010 13:29:06)', '../images/newsletter/17.jpg'); mlb . add('イビラプエラ慰霊碑案内冊子 (13/05/2010 13:28:01)', '../images/newsletter/16.jpg'); mlb . add('サントス移民上陸記念碑移転 (07/05/2010 16:19:36)', '../images/newsletter/15.jpg'); mlb . add('サントス移民上陸記念碑移転 (07/05/2010 16:18:53)', '../images/newsletter/14.jpg'); mlb . add('県連事業報告書刊行 (29/03/2010 11:50:09)', '../images/newsletter/13.jpg'); mlb . add('土俵下に転げ落ちる魁皇 (11/11/2008 16:02:44)', '../images/newsletter/12.jpg'); mlb . add('FUTSAL (10/11/2008 12:40:06)', '../images/newsletter/11.jpg'); mlb . add('Image test performace (07/11/2008 16:23:56)', '../images/newsletter/10.jpg'); // Return the new listbox instance return mlb; } return null; } } ); tinymce.PluginManager.add('listimage', tinymce.plugins.ListImagePlugin); tinyMCE.init({ mode : "textareas", theme : "advanced", skin : "o2k7", plugins: "-listimage", skin_variant : "black", theme_advanced_buttons1 : "imagelist,|,newdocument,|,bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,|,formatselect,fontselect,fontsizeselect", theme_advanced_buttons2 : "help,|,forecolor,backcolor,|,bullist,numlist,|,undo,redo,hr,|,cleanup,removeformat,tablecontrols,|,code", theme_advanced_buttons3 : "", editor_selector : "mceSimpleNewsletter" }); /************************** FUNÇÕES *******************************************/ function addslashes(str) { str=str.replace(/\'/g,'\\\''); str=str.replace(/\"/g,'\\"'); str=str.replace(/\\/g,'\\\\'); str=str.replace(/\0/g,'\\0'); return str; } function stripslashes(str) { str=str.replace(/\\'/g,'\''); str=str.replace(/\\"/g,'"'); str=str.replace(/\\\\/g,'\\'); str=str.replace(/\\0/g,'\0'); return str; } function checkAll( f, nome){ for( x = 0 ; x < f.elements.length; x++ ) if( f.elements[x].type == 'checkbox' && f.elements[x].name.search( new RegExp( nome,'gi') ) >= 0 ) f.elements[x].checked = true; } function checkNone( f, nome){ for( x = 0 ; x < f.elements.length; x++ ) if( f.elements[x].type == 'checkbox' && f.elements[x].name.search( new RegExp( nome,'gi') ) >= 0 ) f.elements[x].checked = false; } function checkAllQtd( f, nome, qtd, nome_tag, tag_total ){ checkAll( f, nome); document.getElementById( nome_tag ).innerHTML = qtd; document.getElementById( tag_total ).value = qtd; } function checkNoneQtd( f, nome, nome_tag, tag_total ){ checkNone( f, nome); document.getElementById( nome_tag ).innerHTML = 0; document.getElementById( tag_total ).value = 0; } function totalChecks( ck, qtd, nome_tag, tag_total ){ if( !ck ) qtd = -qtd; tag = document.getElementById( nome_tag ); tag_total = document.getElementById( tag_total ); total = parseInt( tag_total.value ) + parseInt( qtd ) ; tag.innerHTML = total; tag_total.value = total; } /********** FIM FUNÇÕES DE CONFERÊNCIA PARA TIPOS DE DADOS DE ENTRADA ******/ function mostraFile(nome, msgn ){ table_img = document.getElementById(nome+'_img'); table_input = document.getElementById(nome+'_input'); input_hidden = document.getElementById(nome+'[delete]'); var a_msgn = new Array; a_msgn = Array('選択したアイテムを削除しますか?', '選択したアイテムを変更しますか?', '選択したアイテムを保存しますか?'); if(confirm(a_msgn[msgn-1])){ if( msgn == 3){ table_input.style.display = 'none'; table_img.style.display = 'block'; input_hidden.value = '0'; }else{ table_input.style.display = 'block'; table_img.style.display = 'none'; input_hidden.value = '1'; } } } function excluir(link){ if( confirm('選択したアイテムを削除しますか?') ) location = link; } /************************ PARA USO DE CONFERÊNCIA EM FORMULÁRIOS *****************************************/ /**************** MÁSCARAS *******************************/ function maskNumber( o ){ o.value = o.value.replace(/[^0-9]/, ''); } function maskFloat( o ){ o.value = o.value.replace(/[^0-9,.]/g, ''); o.value = o.value.replace(/[^0-9,.]/g, ''); } /********************* FIM MÁSCARAS ********************************/ /********** FUNÇÕES DE CONFERÊNCIA PARA TIPOS DE DADOS DE ENTRADA *********************************/ function isMail( mail ){ if( 6 > mail.length || 0 > mail.search( new RegExp('^([a-z0-9_]|\-|\\\.)+@(([a-z0-9_]|\-)+\\\.)+[a-z]{2,4}$','gi') ) ) return false; else return true; } function isNumber( number ){ if( number.search( new RegExp('^([0-9])+$','gi') ) ) return false; else return true; } function isFloat( number ){ if( number.search( new RegExp('^([0-9.])+$','gi') ) ) return false; else return true; } function isNoSpecialChars( field ){ if( 3 > field.length || 0 > field.search(new RegExp('^([a-zA-Z0-9_])+$','gi')) ) return false; else return true; } function haveField( field_params ){ //alert( mail_params ); params = field_params.split('!'); tabela = params[1]; // tabela a verificar field = params[2]; // campo a verificar field_value = document.getElementById( params[0] ).value; // valor que deve ter o campo where_field = params[3]; // campo a ser ignorado com valor where_value = params[4]; // valor do campo a ser ignorado //alert("tabela:"+tabela+"\nfield_value:"+field_value+"\nfield:"+field+"\nwhere_field:"+where_field+"\nwhere_value:"+where_value ); have = num_rows( tabela, field, field_value, where_field, where_value ); if( have == 'true' ){ return true }else return false; } function haveMail( field_params ){ params = field_params.split('!'); mail = document.getElementById( params[0] ).value; // mail@mail.com if( isMail( mail) ){ if( haveField( field_params ) ){ alert( 'E-mail existente!'); return false; }else return true; }else{ alert( "Formato inválido de e-mail!"); return false; } } function haveLogin( field_params ){ params = field_params.split('!'); login = document.getElementById( params[0] ).value; if( isNoSpecialChars( login) ){ if( haveField( field_params ) ){ alert( 'Nome de usuario existente!'); return false; }else return true; }else{ alert( "Formato inválido de Login!\nAceito apenas letras e numeros"); return false; } } function haveCpf( field_params ){ params = field_params.split('!'); cpf = document.getElementById( params[0] ).value; cpf = cpf.replace('.', ''); cpf = cpf.replace('.', ''); cpf = cpf.replace('-', ''); document.getElementById( params[0] ).value = cpf; if( validacpf( cpf ) ){ if( haveField( field_params ) ){ alert( 'CPF existente!'); return false; }else return true; }else{ return false; } } function validacpf(s){ s = s.replace('.', ''); s = s.replace('.', ''); s = s.replace('-', ''); // Tira os '.' e '-' var msgn = "CPF Invalido"; if( s.length != 11 ){ alert(msgn); return false;} var i; var c = s.substr(0, 9); var dv = s.substr(9, 2); var d1 = 0; var last = c.charAt(0); var repeat = true; for (i = 0; i < 9; i++){ d1 += c.charAt(i) * (10 - i); if( repeat ){ if( c.charAt(i) == 1) repeat = false;// Aqui eu deixo passar o 1 else if( c.charAt(i) != last ) repeat = false; } last = c.charAt(i); } if( repeat ){ alert(msgn); return false; } if (d1 == 0){ alert(msgn); return false; } d1 = 11 - (d1 % 11); if (d1 > 9) d1 = 0; if (dv.charAt(0) != d1){ alert(msgn); return false; } d1 *= 2; for (i = 0; i < 9; i++){ d1 += c . charAt( i ) * (11 - i); } d1 = 11 - (d1 % 11); if (d1 > 9) d1 = 0; if (dv . charAt(1) != d1){ alert(msgn); return false; } return true; } function is_empty( field ){ if( field != '') return true; else return false; } function selectedValue( s ){ if( s != '' && s != '-' ) return true; else return false; } function obrigatorios( f, str, funcs ){ var array_campos = Array(); var array_funcs = Array(); var tamanho = 0; var erros = 0; array_campos = str.split(","); array_funcs = funcs.split(","); tamanho = array_campos.length; for(x = 0; x < tamanho; x++){ if( array_campos[x].search( "!" ) > 0 ){ params = array_campos[x].split( "!" ); var campo = document.getElementById( params[0]); //alert( 'encontrado padrao em '+array_campos[x]+":\n\n"+campo.value ); var value = array_campos[x]; } else{ var campo = document.getElementById( array_campos[x] ); //if( campo.type = "text" ) var value = campo.value; } if( array_funcs[x] == ''){ array_funcs[x] = 'is_empty'; } var bool = eval( array_funcs[x]+"( value );" ); if( !bool ){ campo.style.background = "#FF9"; campo.style.border = "1px solid red"; campo.focus(); erros++; } else{ campo.style.background = "#FFF"; campo.style.border = "1px solid #999"; } } if( erros){ alert( "必須項目に記入してください: ("+ erros + ") 必須項目" ); //campo.focus(); } else f.submit(); } function selectedByValue(id, value ){ f = document.getElementById(id).options.length; for( x = 0; x < f; x++){ //if( == 2008) if( document.getElementById(id).options[x].value == value ) document.getElementById(id).options[x].selected = true; else document.getElementById(id).options[x].selected = false; } } /********************FIM DAS FUNÇÕES PARA FORMS***************************************/ function up_frame( f ){ f.submitt.style.display = 'none'; f.loading.style.display = 'block'; f.submit(); } function finaliza_up(){ submits = document.getElementsByTagName("input"); for( x = 0; x < submits.length; x++) if(submits[x].name == 'submitt') submits[x].style.display = 'block'; document.getElementById('loading').style.display = 'none'; document.getElementById('submitt').style.display = 'block'; } /******************************* DENTRO DO SITE ************************************/ function cadastra_newsletter( f ){ if( isMail( f.email.value ) ){ var codigo = ''; var a_msgn = new Array; a_msgn = Array(); a_msgn[1] = '成功しました'; a_msgn[2] = 'エラーが発生しました'; a_msgn[3] = 'このe-mailアドレスは既に登録済みです。別のアドレスで登録してください。'; //jQuery.noConflict(); var params = new Array; params[0] = f.email.value; codigo = ajax_function( 'incluir_newsletter', params); if( codigo != 1 && codigo != 2 ) codigo = 3; alert( a_msgn[codigo] ); if( codigo == 2 ) f.email.focus(); }else{ alert( 'エラーが発生しました'); f.email.focus(); } } /******************************* ADMINISTRADOR ************************************/ function troca_imagem( imagem ){ //alert( imagem); document.getElementById( 'img_visualizar' ).src = imagem; } function atualiza_grupo_newsletter( grupo, id_usuario){ //( campo, value, where, ac ) var voltou = atualiza_bd( "newsletter_users", "grupo", grupo, "id='"+id_usuario+"'" ); if( voltou == 1){ alert( "成功しました"); }else{ alert( "エラーが発生しました"); } } function habilita_user( id, o ){ o.className = 'user_wait'; query_db( 'UPDATE `users` SET ativo = if( ativo = 1, 0, 1) WHERE id="'+id+'"' ); var ativo = get_value( 'users', 'ativo', 'id' ,id ); o.className = ( ativo == 1 ) ? 'user_on' : 'user_off'; } function habilita_user_newsletter( id, o){ o.className = 'user_wait'; query_db( 'UPDATE `newsletter_users` SET ativo = if( ativo = 1, 0, 1) WHERE id="'+id+'"' ); var ativo = get_value( 'newsletter_users', 'ativo', 'id' ,id ); o.className = ( ativo == 1 ) ? 'user_on' : 'user_off'; } /************************ FINANCEIRO *******************************/ function clienteBoleto( id ){ if( id == '-'){ document.getElementById('valor').value = '0.00'; }else{ document.getElementById('cliente').focus(); selectedByValue( 'cliente', id ); var valor = get_value( 'financeiro_clientes', 'valor','user', id); var dia = get_value( 'financeiro_clientes', 'dia_vencimento', 'user', id); data = new Date(); var day = data.getDate(); var month = data.getMonth(); var year = data.getFullYear(); document.getElementById('dia').selectedIndex = dia-1; document.getElementById('dia_pago').selectedIndex = dia-1; if( dia < day){ var novo_mes = month+1; if( novo_mes == 12){ document.getElementById('mes').selectedIndex = 0;//year+1 document.getElementById('mes_pago').selectedIndex = 1;//year+1 selectedByValue('ano', year+1 ); selectedByValue('ano_pago', year+1 ); }else{ if( novo_mes == 11){ document.getElementById('mes').selectedIndex = novo_mes; document.getElementById('mes_pago').selectedIndex = 0; selectedByValue('ano', year ); selectedByValue('ano_pago', year+1 ); }else{ document.getElementById('mes').selectedIndex = novo_mes; document.getElementById('mes_pago').selectedIndex = novo_mes+1; selectedByValue('ano', year ); selectedByValue('ano_pago', year ); } } }else{ if( month == 12){ document.getElementById('mes').selectedIndex = 0;//year+1 document.getElementById('mes_pago').selectedIndex = 1;//year+1 selectedByValue('ano', year+1 ); selectedByValue('ano_pago', year+1 ); }else{ if( month == 11){ document.getElementById('mes').selectedIndex = month; document.getElementById('mes_pago').selectedIndex = 0; selectedByValue('ano', year ); selectedByValue('ano_pago', year+1 ); }else{ document.getElementById('mes').selectedIndex = month; document.getElementById('mes_pago').selectedIndex = month+1; selectedByValue('ano', year ); selectedByValue('ano_pago', year ); } } } document.getElementById('valor').value = valor; } } /************************ FIM FINANCEIRO *******************************/