Jump to content
  • Sky
  • Blueberry
  • Slate
  • Blackcurrant
  • Watermelon
  • Strawberry
  • Orange
  • Banana
  • Apple
  • Emerald
  • Chocolate
  • Charcoal

Leaderboard


Popular Content

Showing content with the highest reputation since 08/13/19 in all areas

  1. 4 points
    Hoy traeré algo para que no se sientan tan viejos Fuera rodeos. Archivo : inc/c.registro.php Buscar : 'user_captcha' => $_POST['g-recaptcha-response'], Reemplazar: 'user_captcha' => $_POST['captcha'], Archivo : themes/{Tutema}/templates/t.php_files/p.registro.form.tpl Buscar: <div class="form-line"> <label>Confirme humanidad:</label> <div class="g-recaptcha" data-sitekey="{$tsConfig.pkey}"></div> <div class="help"><span><em></em></span></div> </div> Reemplazar : <div class="form-line"> <input type="hidden" name="recaptcha_response" id="recaptchaResponse" class="g-recaptcha"> <div class="help"><span><em></em></span></div> </div> Buscar : <script type="text/javascript"> $.getScript("{$tsConfig.js}/registro.js{literal}", function(){ registro.change_paso(1); mydialog.procesando_fin(); }); </script> {/literal} Añadir Abajo: <script> var keyv3 = "{RC_PUK}"; grecaptcha.ready(function () { grecaptcha.execute(keyv3, { action: 'contact' }).then(function (token) { var recaptchaResponse = document.getElementById('recaptchaResponse'); recaptchaResponse.value = token; }); }); </script> Archivo : /templates/sections/main_header.tpl Agregamos antes de </head> <script src="https://www.google.com/recaptcha/api.js?render={RC_PUK}"></script> Archivo : {tutheme}/js/registro.js Buscar : case 'dia': case 'mes': case 'anio': //Almaceno el dato this.datos['dia'] = $('#RegistroForm #dia').val(); this.datos['mes'] = $('#RegistroForm #mes').val(); this.datos['anio'] = $('#RegistroForm #anio').val(); Reemplazar : /* nacimiento */ case 'dia': case 'mes': case 'anio': case 'captcha': //Almaceno el dato this.datos['dia'] = $('#RegistroForm #dia').val(); this.datos['mes'] = $('#RegistroForm #mes').val(); this.datos['anio'] = $('#RegistroForm #anio').val(); this.datos['captcha'] = $('#RegistroForm #recaptchaResponse').val(); Buscar (Linea 418 Aprox): // Estado case 'estado': if (this.no_requerido[campo]) { Ingresar Arriba : /* reCAPTCHA */ case 'recaptcha_response': this.datos[campo] = value; //!empty if (!value) { return this.show_status($('#RegistroForm .g-recaptcha'), 'empty', 'Demuestra que eres humano'); } return registro.show_status($('#RegistroForm .g-recaptcha'), 'ok', 'OK'); break; // Estado Buscamos : /* reCAPTCHA */ case 'g-recaptcha-response': this.datos[campo] = value; //!empty if (!value) { return this.show_status($('#RegistroForm .g-recaptcha'), 'empty', 'Demuestra que eres humano'); } return registro.show_status($('#RegistroForm .g-recaptcha'), 'ok', 'OK'); break; y lo eliminamos Buscamos show_status: function(el, status_aux, text, no_cache_data) { var campo = $(el).attr('name'); var status = (status_aux == 'empty') ? 'error' : status_aux; //Si es reCAPTCHA, lo busco directamente if (campo == 'recaptcha_response_field') el = $('#RegistroForm .pasoDos .help.recaptcha'); else { //Paso al siguiente elemento hasta encontrar un .help do { el = $(el).next(); } while (!$(el).is('.help')); } $(el).removeClass('ok').removeClass('error').removeClass('info').removeClass('loading').addClass(status).show().children().children().html(text); if (!no_cache_data) { this.datos_status[campo] = status_aux; this.datos_text[campo] = text; } return (status == 'ok'); }, hide_status: function(el, status, text) { var campo = $(el).attr('name'); //Si es reCAPTCHA, lo busco directamente if (campo == 'recaptcha_response_field') el = $('#RegistroForm .pasoDos .help.recaptcha'); else { //Paso al siguiente elemento hasta encontrar un .help do { el = $(el).next(); } while (!$(el).is('.help')); } $(el).hide(); this.datos_status[campo] = status; this.datos_text[campo] = text; return (status == 'ok'); }, Reemplazamos show_status: function(el, status_aux, text, no_cache_data) { var campo = $(el).attr('name'); var status = (status_aux == 'empty') ? 'error' : status_aux; //Si es reCAPTCHA, lo busco directamente if (campo == 'recaptcha_response') el = $('#RegistroForm .pasoDos .g-recaptcha'); else { //Paso al siguiente elemento hasta encontrar un .help do { el = $(el).next(); } while (!$(el).is('.help')); } $(el).removeClass('ok').removeClass('error').removeClass('info').removeClass('loading').addClass(status).show().children().children().html(text); if (!no_cache_data) { this.datos_status[campo] = status_aux; this.datos_text[campo] = text; } return (status == 'ok'); }, hide_status: function(el, status, text) { var campo = $(el).attr('name'); //Si es reCAPTCHA, lo busco directamente if (campo == 'recaptcha_response') el = $('#RegistroForm .pasoDos .g-recaptcha'); else { //Paso al siguiente elemento hasta encontrar un .help do { el = $(el).next(); } while (!$(el).is('.help')); } $(el).hide(); this.datos_status[campo] = status; this.datos_text[campo] = text; return (status == 'ok'); }, Buscar función submit: //Envio los datos y completo el registro submit: function() { //Compruebo datos del paso actual (PasoDos) if (!this.check_paso()) return false; //Oculto todos los mensajes informativos $('#RegistroForm .help').hide(); var params = ''; var amp = ''; for (var campo in this.datos) { params += amp + campo + '=' + encodeURIComponent(this.datos[campo]); amp = '&'; } if (this.dialog) mydialog.procesando_inicio('Enviando...', 'Registro'); //return false; //Envio los datos $('#loading').fadeIn(250); $.ajax({ type: 'POST', url: global_data.url + '/registro-nuevo.php', data: params, success: function(h) { //Si hubo algun error, recargo recaptcha var rnum = h.substring(0, strpos(h, ':')); if (rnum != '1' || rnum != '2') { registro.datos['g-recaptcha-response'] = ''; grecaptcha.reset(); } switch (h.substring(0, strpos(h, ':'))) { case '0': //Error generico break; case 'nick': //Error nick registro.change_paso(1, true); registro.show_status($('#RegistroForm #nick'), 'error', h.substring(strpos(h, ':') + 2)); break; case 'password': //Password registro.change_paso(1, true); registro.show_status($('#RegistroForm #password'), 'error', h.substring(strpos(h, ':') + 2)); registro.datos['password'] = ''; break; // case 'email': //Email registro.change_paso(1, true); registro.show_status($('#RegistroForm #email'), 'error', h.substring(strpos(h, ':') + 2)); break; case 'nacimiento': //Dia|Mes|Anio registro.change_paso(1, true); registro.show_status($('#RegistroForm #anio'), 'error', h.substring(strpos(h, ':') + 2)); break; case 'sexo': //Sexo registro.change_paso(2, true); registro.show_status($('#RegistroForm #sexo_f'), 'error', h.substring(strpos(h, ':') + 2)); break; case 'pais': //Pais registro.change_paso(2, true); registro.show_status($('#RegistroForm #pais'), 'error', h.substring(strpos(h, ':') + 2)); break; case 'estado': //Estado registro.change_paso(2, true); registro.show_status($('#RegistroForm #estado'), 'error', h.substring(strpos(h, ':') + 2)); break; /*case 'ciudad': //Ciudad registro.change_paso(2, true); registro.show_status($('#RegistroForm #ciudad'), 'error', h.substring(strpos(h, ':')+2)); break;*/ case 'recaptcha': //reCAPTCHA registro.change_paso(2, true); registro.show_status($('#RegistroForm .g-recaptcha'), 'error', h.substring(strpos(h, ':') + 2)); break; case '1': if (registro.dialog) { mydialog.body(h.substring(strpos(h, ':') + 2)); mydialog.buttons(true, true, 'Aceptar', 'mydialog.close()', true, true); mydialog.center(); } else { $('.reg-login .registro #RegistroForm').html(h.substring(strpos(h, ':') + 2)); $('.reg-login .registro #buttons').remove(); } break; case '2': if (registro.dialog) { mydialog.body(h.substring(strpos(h, ':') + 2)); mydialog.buttons(true, true, 'Aceptar', 'redireccionar()', true, true); mydialog.center(); } else { $('.reg-login .registro #RegistroForm').html(h.substring(strpos(h, ':') + 2)); $('.reg-login .registro #buttons').remove(); } break; } $('#loading').fadeOut(350); }, error: function() { mydialog.error_500("registro.submit()"); $('#loading').fadeOut(350); }, complete: function() { if (registro.dialog) mydialog.procesando_fin(); $('#loading').fadeOut(450); } }); } } Reemplazamos : //Envio los datos y completo el registro submit: function() { //Compruebo datos del paso actual (PasoDos) if (!this.check_paso()) return false; //Oculto todos los mensajes informativos $('#RegistroForm .help').hide(); var params = ''; var amp = ''; for (var campo in this.datos) { params += amp + campo + '=' + encodeURIComponent(this.datos[campo]); amp = '&'; } if (this.dialog) mydialog.procesando_inicio('Enviando...', 'Registro'); //return false; //Envio los datos $('#loading').fadeIn(250); $.ajax({ type: 'POST', url: global_data.url + '/registro-nuevo.php', data: params, success: function(h) { console.log(h); //Si hubo algun error, recargo recaptcha switch (h.substring(0, strpos(h, ':'))) { case '0': //Error generico break; case 'nick': //Error nick registro.change_paso(1, true); registro.show_status($('#RegistroForm #nick'), 'error', h.substring(strpos(h, ':') + 2)); break; case 'password': //Password registro.change_paso(1, true); registro.show_status($('#RegistroForm #password'), 'error', h.substring(strpos(h, ':') + 2)); registro.datos['password'] = ''; break; // case 'email': //Email registro.change_paso(1, true); registro.show_status($('#RegistroForm #email'), 'error', h.substring(strpos(h, ':') + 2)); break; case 'nacimiento': //Dia|Mes|Anio registro.change_paso(1, true); registro.show_status($('#RegistroForm #anio'), 'error', h.substring(strpos(h, ':') + 2)); break; case 'sexo': //Sexo registro.change_paso(2, true); registro.show_status($('#RegistroForm #sexo_f'), 'error', h.substring(strpos(h, ':') + 2)); break; case 'pais': //Pais registro.change_paso(2, true); registro.show_status($('#RegistroForm #pais'), 'error', h.substring(strpos(h, ':') + 2)); break; case 'estado': //Estado registro.change_paso(2, true); registro.show_status($('#RegistroForm #estado'), 'error', h.substring(strpos(h, ':') + 2)); break; /*case 'ciudad': //Ciudad registro.change_paso(2, true); registro.show_status($('#RegistroForm #ciudad'), 'error', h.substring(strpos(h, ':')+2)); break;*/ case 'recaptcha': //reCAPTCHA registro.change_paso(2, true); registro.show_status($('#RegistroForm #recaptchaResponse'), 'error', h.substring(strpos(h, ':')+2)); break; case '1': if (registro.dialog) { mydialog.body(h.substring(strpos(h, ':') + 2)); mydialog.buttons(true, true, 'Aceptar', 'mydialog.close()', true, true); mydialog.center(); } else { $('.reg-login .registro #RegistroForm').html(h.substring(strpos(h, ':') + 2)); $('.reg-login .registro #buttons').remove(); } break; case '2': if (registro.dialog) { mydialog.body(h.substring(strpos(h, ':') + 2)); mydialog.buttons(true, true, 'Aceptar', 'redireccionar()', true, true); mydialog.center(); } else { $('.reg-login .registro #RegistroForm').html(h.substring(strpos(h, ':') + 2)); $('.reg-login .registro #buttons').remove(); } break; } $('#loading').fadeOut(350); }, error: function() { mydialog.error_500("registro.submit()"); $('#loading').fadeOut(350); }, complete: function(data) { if (registro.dialog) mydialog.procesando_fin(); $('#loading').fadeOut(450); console.log('complete ?'); } }); } } Demo : https://zendfire.com Opcional Recaptcha completamente invisible Añadan en su css: .grecaptcha-badge { display: none !important; } Importante : Reemplazar private y public key en config.inc.php Con claves recaptcha v3
  2. 2 points
    Quiero comprar y levantar este sitio, con quien tengo que hablar?
  3. 1 point
  4. 1 point
    actualmente ya solo un error en vcard que no resuelve los datos completar un poco mas el perfil y listo. Acabo de actualizar en la demo lo ya corregido y lo faltante :), mañana continuare fixeando cosas
  5. 1 point
    De echo es de gonza, editado totalmente al actual, iconos, notificaciones, tablas, poco a poco, creo que lo termino en una semana. y obviamente dejare los copys de phpost y del querido gonza. Saludos!
  6. 1 point
    Ya hay un tema publicado por gonzalo pero es muy viejo, te está quedando bastante bueno a ver que tal queda cuando lo termines.
  7. 1 point
    Hola hoy voy a compartir la experiencia que tuve con Adxat, bueno esta empresa publicitaria fue la que me funciono y me dejo para mi en 1 mes un buen dinero. Para los que se preguntan ¿que es adxat? Adxat es una empresa publicitaria como adsense, pero esta acepta todas las webs que quieran (excepto pedofilia, gore, y todas esas cosas) ademas de todo eso los pagos se realizan diariamente y tiene un buen soporte. Aca les dejo las caracteristicas! Tarifas justas Informes detallados Pagos diarios Tasa de llenado del 100% Aprobación instantánea de la cuenta Pagos justos que se basan en la calidad del tráfico Estadísticas en tiempo real para sus zonas de anuncios Soporte las 24/7 Con 8 metodos de pagos Minimo de pago 5$ Acepta cualquier web (Mientras no sea Pedofilia, gore, etc) Una de las mejores empresas publicitarias tanto para warez como para PHPOST, los anuncios se adaptan muy bien a la web como para pc y para mobiles.. TAMBIEN PODES COMPRAR TRAFICO 100% REAL PARA TU PAGINA WEB/PROYECTOS/BLOG ETC AdXat | Shout your ad Pruebas de pago: https://i.imgur.com/H5g1Zkv.png https://i.imgur.com/tzJFh86.png https://i.imgur.com/DVoMkiv.png https://i.imgur.com/rtY3oh5.pn
  • Patrocinador



    ×