Trocar nome de usuário por e-mail no sistema de login

2 participantes

Ver o tópico anterior Ver o tópico seguinte Ir para baixo

Tópico resolvido Trocar nome de usuário por e-mail no sistema de login

Mensagem por juleic1123 28.03.17 7:00

Detalhes da questão


Endereço do fórum: http://online-winxclub.com
Versão do fórum: phpBB2

Descrição


Olá a todos!
Gostaria de saber se poderia ser possível adulterar o sistema de login, nomeadamente invés de colocarem o seu nickname no fórum, passarem a colocar antes o seu e-mail.

Exemplo:

Invés de ficar assim:
Trocar nome de usuário por e-mail no sistema de login W0QG9q

Fica assim:
Trocar nome de usuário por e-mail no sistema de login 69XyqN

Código da caixa de Login:
Código:
<div class="LoginBox">
                                                               <script>
usernameTxt = 'Username';
passwordTxt = 'Password';
rememberTxt = 'Remember me';
FPTxt = 'Forgot password?';
ClickHereTxt = 'Click here';
SignInTxt = 'Sign in';
SignUpTxt = 'Sign Up';

if(lang_=="en")
{
usernameTxt = 'Username';
passwordTxt = 'Password';
rememberTxt = 'Remember me';
FPTxt = 'Forgot password?';
ClickHereTxt = 'Click here';
SignInTxt = 'Sign in';
SignUpTxt = 'Sign Up';
}
if(lang_=="fr")
{
usernameTxt = 'Nom d\'utilisateur';
passwordTxt = ' Mot de passe*';
rememberTxt = 'Se souvenir';
FPTxt = 'MDP* oublié?';
ClickHereTxt = 'Clique ici';
SignInTxt = 'Se connecter';
SignUpTxt = 'S\'inscrire';
}
if(lang_=="es")
{
usernameTxt = 'Nombre de usuário';
passwordTxt = 'Contraseña';
rememberTxt = 'Recuérdame';
FPTxt = '¿Contraseña olvidada?';
ClickHereTxt = 'Haz click';
SignInTxt = 'Iniciar sésion';
SignUpTxt = 'Inscribirse';
}
if(lang_=="pt")
{
usernameTxt = 'NOME DE USUÁRIO';
passwordTxt = 'PALAVRA PASSE';
rememberTxt = 'Login automático';
FPTxt = 'Senha esquecida?';
ClickHereTxt = 'Clica aqui    ';
SignInTxt = 'Entrar';
SignUpTxt = 'Inscrever-me';
}
if(lang_=="ru")
{
usernameTxt = 'имя пользователя';
passwordTxt = 'пароль';
rememberTxt = 'Запомни меня';
FPTxt = 'Забыли пароль';
ClickHereTxt = 'щелчок';
SignInTxt = 'авторизоваться';
SignUpTxt = 'регистр';
}
if(lang_=="br")
{
usernameTxt = 'Nome de usuário';
passwordTxt = 'Senha';
rememberTxt = 'Auto-conexão';
FPTxt = 'Perdeu a senha?';
ClickHereTxt = 'Clique aqui    ';
SignInTxt = 'Entrar';
SignUpTxt = 'Se inscreva!';
}
if(lang_=="pl")
{
usernameTxt = 'Nazwa użytkownika';
passwordTxt = 'Hasło';
rememberTxt = 'Zapamiętaj mnie';
FPTxt = 'Zapomniałeś hasła??';
ClickHereTxt = 'Kliknij tu!    ';
SignInTxt = 'Zaloguj';
SignUpTxt = 'Zarejestruj';
}
if(lang_=="it")
{
usernameTxt = 'Nome di utente';
passwordTxt = 'Password';
rememberTxt = 'Ricordami &nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp';
FPTxt = 'Hai dimenticato la password?';
ClickHereTxt = 'Clicca qui!';
SignInTxt = 'Entra';
SignUpTxt = 'Registrati!';
}
if(lang_=="tr")
{
usernameTxt = 'Kullanıcı adı:';
passwordTxt = 'Parola:';
rememberTxt = 'Beni Hatırla &nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp';
FPTxt = 'Parolanı mı unuttun?';
ClickHereTxt = 'Buraya tıkla!';
SignInTxt = 'Giriş yap';
SignUpTxt = 'Üye ol!';
}
if(lang_=="de")
{
usernameTxt = 'Benutzername:';
passwordTxt = 'Passwort:';
rememberTxt = 'Passwort merken &nbsp&nbsp&nbsp';
FPTxt = 'Passwort vergessen?';
ClickHereTxt = 'Klick hier!';
SignInTxt = 'Anmelden';
SignUpTxt = 'Registrieren';
}
</script>                                                                                   
   <div style="width: 310px; height: 20px; background: url(http://web-server.ovh/wco/images_site/boxTop.png)">
                                                                                                                                                         
   </div>
                                                                                                                                                      
   <!--                                                                            CONTENT                                                                            -->                                                                         
   <div style="width: 310px; height: 190px; background: url(http://web-server.ovh/wco/images_site/boxContent.png)">
                                                                                                                                                         
      <form name="form_login" method="post" action="/login">
                                                                                   <span style="color:#444444;">                                                                         
            <!--                                                                            USERNAME                                                                            --><span style="font-family: trebuchet ms,helvetica,sans-serif; font-size:13px;"><span style="margin-left: 15px;"><span style="font-weight: bold; font-size:13px;" class="username-txt" id="username-txt">Username</span></span></span><br /><input value="" type="text" tabindex="1" style="margin-left: 15px; width: 230px; height: 20px; font-size:13px;" size="25" name="username" maxlength="40" id="username" class="inputbox" /><br />                                                                         
            <!--                                                                            PASSWORD                                                                            --><span style="font-family:trebuchet ms,helvetica,sans-serif; font-size:13px;"><br /><span style="margin-left: 10px;"><span style="font-weight: bold; font-size:13px;" class="password-txt" id="password-txt">Password</span></span><br /><input value="" type="password" tabindex="2" style="margin-left: 15px; width: 230px; height: 20px; font-size:13px;" size="25" name="password" maxlength="40" id="password" class="inputbox" /><br /><br /><span style="margin-left: 25px; font-family:trebuchet ms,helvetica,sans-serif; font-size:13px;" id="autologin-checkbox"><input type="checkbox" tabindex="4" name="autologin" id="autologin" class="radio" checked="checked" /> Remember me</span></span><input value="/portal" name="redirect" type="hidden" /><input style="font-size:13px; margin-left: 35px; background: url(http://web-server.ovh/wco/images_site/button-submit.png); width: 87px; height: 31px; border:none; font-weight: bold; color: white;" tabindex="6" name="login" value="Sign In" type="submit" id="signin-txt" /><br /><span style="font-family:trebuchet ms,helvetica,sans-serif; font-size:13px;"><span style="margin-left:13px;"><span style="color:#444444; font-size:13px;" id="forgotpsswd-txt">Forgot password?</span><br /><a href="/profile?mode=sendpassword"><span style="color:#ff0099; margin-left: 15px; font-size:13px;" id="clickhere-txt">Click here</span></a></span></span><input style=" font-size:13px; margin-left: 48px; background: url(http://web-server.ovh/wco/images_site/button02.png); width: 127px; height: 31px; border:none; font-weight: bold; color: #444444;" value="Sign Up" onclick="window.location='/register';" type="button" id="signup-txt" />                                                                         
            <!--                                                                            END                                                                            --></span>                                                                         
      </form>
                                                                                                                                                       
   </div>
                                                                     <script>
document.getElementById('username-txt').innerText = usernameTxt;
document.getElementById('password-txt').innerText = passwordTxt;
document.getElementById('autologin-checkbox').innerHTML = '<input type="checkbox" tabindex="4" name="autologin" id="autologin" class="radio" checked="checked"> '+rememberTxt;
document.getElementById('forgotpsswd-txt').innerText = FPTxt;
document.getElementById('clickhere-txt').innerText = ClickHereTxt;
document.getElementById('signin-txt').value = SignInTxt;
document.getElementById('signup-txt').value = SignUpTxt;
</script>                                                                               
   <div style="width: 310px; height: 38px; background: url(http://web-server.ovh/wco/images_site/boxBottom.png)">
                                                                                                                                                         
   </div>
</div>

Peço-vos apenas para terem um pouco de cuidado face a este código, uma vez que eu tive algum trabalho a realizá-lo... Louco



Última edição por juleic1123 em 29.03.17 19:50, editado 1 vez(es)
juleic1123

juleic1123
Membro

Membro desde : 04/05/2011
Mensagens : 670
Pontos : 934

http://www.online-winxclub.com/forum

Ir para o topo Ir para baixo

Tópico resolvido Re: Trocar nome de usuário por e-mail no sistema de login

Mensagem por Kyo Panda 28.03.17 13:35

Primeiro o senhor precisa liberar a visualização da lista de membros para visitantes em Painel de controle Seta Usuários & Grupos Seta Autorizações especiais, definindo o valor Membros para Convidados.

Após, adicione a um novo Javascript com Investimento em No portal:

Código:
(function($) {
   'use strict';
   
   var config = {
      i18n: {
         pt: {
            loading: 'Carregando...',
         },
         en: {
            loading: 'Loading...',
         },
         es: {
            loading: 'Cargando...',
         }
      }
   };
   
   $(function() {
      var lang = window.lang_ && config.i18n[lang_] ?
         config.i18n[lang_] : config.i18n.en
      ;
      
      var submitted = false;
      
      $('form[name="form_login"]').on('submit', function(event) {
         var $this = $(this);
         
         var $username = $this.find('input[name="username"]');
         
         if ($username.val().indexOf('@') === -1 || submitted) {
            $this.append('<input type="hidden" value="1" name="login" />');
            return true;
         }
         
         var $submit = $this.find('input[type="submit"]');
                     
         $submit
            .val(lang.loading)
            .prop('disabled', true)
            .css('opacity', 0.5)
         ;
         
         $.get('/memberlist', {
            change_version: 'modernbb',
            mode: 'username',
            order: 'DESC',
            submit: true,
            username: $username.val()
         }, function(context) {
            var $name = $('.avatar-mini:first strong', context);
            
            if ($name.length) {
               $username.val($name.text());
            }            
            
            submitted = true;
            $this.submit();
         });
         
         event.preventDefault();
      });
   });
}(jQuery));
Kyo Panda

Kyo Panda
Hiper Membro

Membro desde : 08/01/2012
Mensagens : 4641
Pontos : 5939

https://ajuda.forumeiros.com

Ir para o topo Ir para baixo

Tópico resolvido Re: Trocar nome de usuário por e-mail no sistema de login

Mensagem por juleic1123 28.03.17 20:15

Quando ao javascript... eu estou com um pequeno problema, eu posso criar javacripts mas existe um erro geral da forumeiros que não me deixa adicionar ou remover nenhum... :\

Seta https://ajuda.forumeiros.com/t108553-9506-erro-geral-could-not-insert-struct-portal-table?nid=145#760469
juleic1123

juleic1123
Membro

Membro desde : 04/05/2011
Mensagens : 670
Pontos : 934

http://www.online-winxclub.com/forum

Ir para o topo Ir para baixo

Tópico resolvido Re: Trocar nome de usuário por e-mail no sistema de login

Mensagem por Kyo Panda 28.03.17 20:59

O código em questão não necessita de alterações no portal. A aplicação do código Javascript deve estar marcada em "No portal", e isso fará com que ele seja aplicado em qualquer um dos portais. O erro acontece quando tenta criar um novo Javascript também? Pensativo
Kyo Panda

Kyo Panda
Hiper Membro

Membro desde : 08/01/2012
Mensagens : 4641
Pontos : 5939

https://ajuda.forumeiros.com

Ir para o topo Ir para baixo

Tópico resolvido Re: Trocar nome de usuário por e-mail no sistema de login

Mensagem por juleic1123 29.03.17 6:56

Boas notícias!
Aparentemente o problema foi resolvido, já coloquei tudo o que o senhor pediu! Feliz
juleic1123

juleic1123
Membro

Membro desde : 04/05/2011
Mensagens : 670
Pontos : 934

http://www.online-winxclub.com/forum

Ir para o topo Ir para baixo

Tópico resolvido Re: Trocar nome de usuário por e-mail no sistema de login

Mensagem por Kyo Panda 29.03.17 12:09

Eu não encontrei o script no portal do seu fórum. Tente mudar o investimento para Em todas as páginas.
Kyo Panda

Kyo Panda
Hiper Membro

Membro desde : 08/01/2012
Mensagens : 4641
Pontos : 5939

https://ajuda.forumeiros.com

Ir para o topo Ir para baixo

Tópico resolvido Re: Trocar nome de usuário por e-mail no sistema de login

Mensagem por juleic1123 29.03.17 13:40

Oh, eu estava tão desatento que coloquei o código como módulo invés de javascript, criei no portal. Peço imensa desculpa, é que já tenho 3 tópicos aqui então acabo por ficar um pouco confuso.

De qualquer forma já está feito e investi em todas as páginas, só por precaução. Feliz
juleic1123

juleic1123
Membro

Membro desde : 04/05/2011
Mensagens : 670
Pontos : 934

http://www.online-winxclub.com/forum

Ir para o topo Ir para baixo

Tópico resolvido Re: Trocar nome de usuário por e-mail no sistema de login

Mensagem por Kyo Panda 29.03.17 13:57

Troque o código por esse:

Código:
(function($) {
  'use strict';
 
  var config = {
      i18n: {
        pt: {
            loading: 'Carregando...',
        },
        en: {
            loading: 'Loading...',
        },
        es: {
            loading: 'Cargando...',
        }
      }
  };
 
  $(function() {
      var lang = window.lang_ && config.i18n[lang_] ?
        config.i18n[lang_] : config.i18n.en
      ;
     
      var submitted = false;
     
      $('form[name="form_login"]').on('submit', function(event) {
        var $this = $(this);
       
        var $username = $this.find('input[name="username"]');
       
        if ($username.val().indexOf('@') === -1 || submitted) {
            $this.append('<input type="hidden" value="1" name="login" />');
            return true;
        }
       
        var $submit = $this.find('input[type="submit"]');
                   
        $submit
            .val(lang.loading)
            .prop('disabled', true)
            .css('opacity', 0.5)
        ;
       
        $.get('/memberlist', {
            change_version: 'modernbb',
            mode: 'username',
            order: 'DESC',
            submit: true,
            username: $username.val()
        }, function(context) {
            var $name = $('.avatar-mini:first', context);
           
            if ($name.length) {
              $username.val($name.text().trim());
            }           
           
            submitted = true;
            $this.submit();
        });
       
        event.preventDefault();
      });
  });
}(jQuery));
Kyo Panda

Kyo Panda
Hiper Membro

Membro desde : 08/01/2012
Mensagens : 4641
Pontos : 5939

https://ajuda.forumeiros.com

Ir para o topo Ir para baixo

Tópico resolvido Re: Trocar nome de usuário por e-mail no sistema de login

Mensagem por juleic1123 29.03.17 16:51

Feito
juleic1123

juleic1123
Membro

Membro desde : 04/05/2011
Mensagens : 670
Pontos : 934

http://www.online-winxclub.com/forum

Ir para o topo Ir para baixo

Tópico resolvido Re: Trocar nome de usuário por e-mail no sistema de login

Mensagem por Kyo Panda 29.03.17 17:20

Aqui já está a funcionar.
Kyo Panda

Kyo Panda
Hiper Membro

Membro desde : 08/01/2012
Mensagens : 4641
Pontos : 5939

https://ajuda.forumeiros.com

Ir para o topo Ir para baixo

Tópico resolvido Re: Trocar nome de usuário por e-mail no sistema de login

Mensagem por juleic1123 29.03.17 19:47

Eu estou sem palavras! Até os botões estão traduzidos em relação à sua função "carregando..."! Um trabalho maravilhoso, agradeço imenso, para além de fazer o que eu lhe pedi, ainda melhorou o sistema com algo que eu até pensei em fazer mas não sabia como.

Muitos parabéns. Uma vez mais me ajudando e com rigor! Feliz
juleic1123

juleic1123
Membro

Membro desde : 04/05/2011
Mensagens : 670
Pontos : 934

http://www.online-winxclub.com/forum

Ir para o topo Ir para baixo

  • 0

Tópico resolvido Re: Trocar nome de usuário por e-mail no sistema de login

Mensagem por Kyo Panda 29.03.17 19:52

Sempre às ordens. o7

---
Trocar nome de usuário por e-mail no sistema de login Symbol10 Questão marcada como Resolvida ou o Autor solicitou que ela fosse arquivada.

Tópico marcado como Resolvido e movido para "Questões resolvidas".
Kyo Panda

Kyo Panda
Hiper Membro

Membro desde : 08/01/2012
Mensagens : 4641
Pontos : 5939

https://ajuda.forumeiros.com

Ir para o topo Ir para baixo

Ver o tópico anterior Ver o tópico seguinte Ir para o topo

- Tópicos semelhantes

Permissões neste sub-fórum
Não podes responder a tópicos