Open Italia Network
Open Italia Network

Home page

Pierandrea Pes
pierpes@altavista.org
http://pierpes.altavista.org
 

Come usare Dynamic User Data

Con Dynamic User Data potete aggiungere dei nuovi campi nel modulo di registrazione dei nuovi

utenti.

Se ad esempio volete inserire un campo nel quale indicare gli anni d'età dell'utente, andate su

Amministrazione -> Gestione Utenti, cliccate su "Dynamic User Data" e scorrete la pagina verso

"Aggiungi campo". Adesso in "Etichetta campo" scrivete per esempio "_ETA" (senza le virgolette),

selezionate "Integer" per il tipo di dati e inserite 3 come lunghezza. Quindi premete "Invia".

Se adesso provate a registrare un nuovo utente, noterete che è comparso il nuovo campo _ETA. Questa

dicitura non è proprio chiarissima, non trovate? Tutto quello che dovete fare è aprire il file

/language/ita/dynamic_user.php e inserire la seguente riga di codice:

define('_ETA','La tua età');

In questo modo comparirà la stringa "La tua età" come descrizione del campo.

Supponete adesso di voler fare in modo che l'informazione sull'età non compaia quando un utente (non

un amministratore) visualizza le informazioni di un altro utente. Non volete cioè rendere pubblica l'età

dei vostri iscritti.

Per far ciò aprite il file /modules/NS-User/user.php e cercate la riga (a circa un terzo del documento) in

cui è scritto

case _UDCONST_INTEGER:

Più sotto dovrebbe esserci un codice di questo tipo:

$dynavar = pnUserGetVar($prop_label, $userinfo['pn_uid']); if ($dynavar) { $showmedyn[$prop_label_text] = $dynavar; } break;

Modificatelo come segue:

if ($prop_label != "_ETA") { $dynavar = pnUserGetVar($prop_label, $userinfo['pn_uid']); } if ($dynavar) { $showmedyn[$prop_label_text] = $dynavar; } break;

Naturalmente se inserite un altro tipo di campo dovete sostituire _ETA con il nome appropriato. Inoltre

se l'informazione non fosse un numero intero ma, per esempio, una stringa, dovete modificare il codice

subito dopo case _UDCONST_STRING: ... e così via.

E' un modo un po' drastico di risolvere il problema, ma funziona! Spero di esservi stato utile.

Pierandrea Pes

http://pierpes.altervista.org/


2003 ©  Open Italia Network
http://www.openitalia.net/CMpro-v-p-141.html