Joomla.it Forum

Componenti per Joomla! => Gestione e-commerce => : salvoelle 28 May 2020, 02:12:51

: Registrazione utenti joomla con first_name, mail, password
: salvoelle 28 May 2020, 02:12:51
Ciao a tutti,
sono nuovo della community, scrivo un argomento probabilmente trattato in passato, ma, purtroppo, non riesco a trovare abbastanza.

Ho la necessità, secondo le esigenze del mio negozio (Joomla e Virtuemart ultima versione), di far registrare gli utenti inserendo soltanto first_name, mail, password.
Per far ciò e non incappare nei classici messaggi di fields mancanti, il sistema mi dovrebbe copiare in automatico:
su "name" il valore inserito dall'utente nella stringa first_name
su "username" il valore inserito dall'utente nella stringa email.

Così facendo l'utente avrà cura di inserire soltanto pochissimi dati e registrarsi.
Ho cercato (penso) dappertutto, ma non riesco ad uscirne fuori. Mi sapreste consigliare come posso modificare il codice?
Grazie in anticipo per l'aiuto. Ciao
: Re:Registrazione utenti joomla con first_name, mail, password
: baronepiovasco 28 May 2020, 20:08:10
Ciao, in configurazione di Virtuemart  --> Campi del cliente
puoi scegliere varie opzione sui campi come quale pubblicare e quale rendere richiesti.
: Re:Registrazione utenti joomla con first_name, mail, password
: salvoelle 28 May 2020, 21:39:37
Grazie Baronepiovasco,


ciò che proponi è corretto, ...chiaramente è stato fatto, il punto è che se non pubblichi i campi "name" e "username" ti restituirà un msg di errore. Proprio per questo vorrei trovare una soluzione che mi permetta di scrivere in modo automatico i dati mancanti, duplicandoli tra da quelli inseriti dall'utente.


Si tratta sicuramente di modificare il codice, del file html > com_users >registration > default.php ma non so proprio da dove cominciare
: Re:Registrazione utenti joomla con first_name, mail, password
: baronepiovasco 29 May 2020, 15:35:58
A meno che tu non sia un esperto php la vedo dura.

Potresti prendere in considerazione il reindirizzamento alla pagina di registrazione di joomla:

https://extensions.joomla.org/extension/vm-registration-redirect/ (https://extensions.joomla.org/extension/vm-registration-redirect/)

Se la tua esigenza è che l'e-mail coincida con il nome utente guarda se fa al caso tuo questa estensione:

https://extensions.joomla.org/extension/authentication-email/ (https://extensions.joomla.org/extension/authentication-email/)
: Re:Registrazione utenti joomla con first_name, mail, password
: salvoelle 01 Jun 2020, 00:25:31
Forse ho trovato la soluzione
: Re:Registrazione utenti joomla con first_name, mail, password
: salvoelle 01 Jun 2020, 00:31:45
...ditemi come vi sembra come soluzione:
Ho modificato qualche riga del seguente file php .../components/com_virtuemart/views/user/tmpl/edit_address_userfields.php

Per far sparire il campo "name" ho sostituito dalla riga 103 alla 112

CODICE ORIGINALE
:
<tr title="<?php echo strip_tags($descr?>">
   <td class="key"  >
      <label class="<?php echo $field['name'?>" for="<?php echo $field['name'?>_field">
         <?php echo $field['title'] . ($field['required'] ? ' <span class="asterisk">*</span>' ''?>
      </label>
   </td>
   <td>
      <?php echo $field['formcode'?>
   </td>
</tr>


NUOVO CODICE
:
<tr title="<?php echo strip_tags($descr?>" <?php if ($field['name']=="name") {echo 'style=display:none;';};?> >
   <td class="key"  >
      <label class="<?php echo $field['name'?>" for="<?php echo $field['name'?>_field">
         <?php echo $field['title'] . ($field['required'] ? ' *' ''?>
      </label>
   </td>
   <td>
      <?php echo $field['formcode'?>
   </td>
</tr>


Alla fine ho inserito (riga 127) uno JS che mi permette di far derivare il campo "name" dal campo che l'utente compila "first_name"

:
<script type="text/javascript">
var $j = jQuery.noConflict();   //evita conflitti con altre librerie


$j('#first_name_field').change(function () {             
   var reg_user = $j('#first_name_field').val();   //imposta il valore del first_name all'interno della variabile
    $j('#name_field').val(reg_user);            //assegna il valore della variabile al name
});
</script>




Per funzionare ho abilitato, dai campi utente di Virtuemart, il campo "name"


Altra cosa, rispetto alle mie esigenze iniziali, adesso ho inserito la username visibile e obbligatoria, in quanto mi facilita la gestione degli utenti in altre parti del sito


Come vi sembra la soluzione adottata?
: Re:Registrazione utenti joomla con first_name, mail, password
: marine 01 Jun 2020, 00:32:37
il tuo messaggio non è leggibile, sistemalo per cortesia.