Back to top

Autore Topic: [RISOLTO] Login con Email (no Plugin / Extensions - only code)  (Letto 2583 volte)

Offline marcorock17

  • Nuovo arrivato
  • *
  • Post: 5
    • Mostra profilo
Ciao ragazzi!
Vorrei far loggare i miei utenti con la mail invece che con lo userid.
Che cosa devo modificare?

Da quel che ho capito Joomla fa cosi:

1 - invia le variabili dalla form presente in modules\mod_login\tmpl\default.php

2 -qui \components\com_user\controller.php imposta le variabili $credentials con i valori che l'utente ha inserito

e poi mi sono perso.
Ho visto che qui \joomla17\plugins\authentication\joomla.php c'è una query, e qui \libraries\joomla\user\authentication.php l'autenticazione vera e propria.

Mi date una mano a raggiungere questo scopo senza ricorrere a plugin/estensioni esterne?

Grazie mille,
Marco
« Ultima modifica: 17 Feb 2011, 17:19:58 da marcorock17 »

Offline marcorock17

  • Nuovo arrivato
  • *
  • Post: 5
    • Mostra profilo
Re:Login con Email (no Plugin / Extensions - only code)
« Risposta #1 il: 17 Feb 2011, 17:19:34 »
Risolto.
Ecco la soluzione.

1 -
qui components\com_user\controller.php riga 139: dopo $credentials = array(); inserite
          $email = JRequest::getVar('email', '', 'method', 'email');
      $db = JFactory::getDBO();
      $db->setQuery("Select * from #__users where email='$email'");
      $tempUser = $db->loadObject();
      $credentials['username'] = $tempUser->username;


e commentate la riga //$credentials['username'] = JRequest::getVar('username', '', 'method', 'username');


2 -
qui modules\mod_login\tmpl\default.php sostituite la parola username con email -> il risultato deve essere questo
<p id="form-login-email">
      <label for="modlgn_email"><?php echo JText::_('Email') ?></label>

      <input id="modlgn_email" type="text" name="email" class="inputbox" alt="email" size="18" />
   </p>



è tutto
ciao
Marco

 



Web Design Bolzano Kreatif