Login
Nome utente:

Password:

Ricorda



Recupero password

Registrati!
Navigazione
Utenti Online
16 utente(i) online
(1 utente(i) in Tutorial)

Iscritti: 0
Ospiti: 16

altro...
Tutorial :: Sviluppo e Hack

Visualizzare il gruppo utente


Visualizzare il gruppo utente
Defkon1
Questo semplice hack permetterà di visualizzare il gruppo di appartenenza di un utente direttamente nel rispettivo profilo.
Profilo Autore: Defkon1
Ingegnere informatico da anni impegnato nella comunità opensource.

Al momento è Webmaster del portale XoopsItalia.
Questo semplice hack permetterà di visualizzare il gruppo di appartenenza di un utente direttamente nel rispettivo profilo. Oltre ai vantaggi in termini puramente informativi ed estetici, risulta particolarmente utile nelle applicazioni in cui è necessario che ogni utente identifichi il gruppo di appartenenza, come strutture aziendali e CRM.

Questa modifica è stata sviluppata da Jordi R. Cardona (aka Jordi_rc) da un'idea di bluescreen. Il presente articolo è un adattamento dalla FAQ originale pubblicata su Xoops.org


1. Costanti linguistiche

Iniziamo aggiungendo nel file /language/italian/user.php il seguente codice:

// hack jordi: visualizzazione gruppo utente
define('_US_GRUPPI','Gruppo');
// hack jordi: fine



Se utilizzate un sistema multilingua, è necessario inserire questo codice anche in ogni pack linguistico aggiuntivo (es. /language/english/user.php, /language/french/user.php,...)



2. Assegnare il gruppo utente

Nel file userinfo.php trovate il seguente blocco di codice:

if ( is_object($xoopsUser) && $isAdmin ) {

    
$xoopsTpl->assign('lang_editprofile'_US_EDITPROFILE);

    
$xoopsTpl->assign('lang_deleteaccount'_US_DELACCOUNT);

    
$xoopsTpl->assign('user_uid'$thisUser->getVar('uid'));

}


e aggiungete subito di seguito:

// hack jordi: visualizzazione gruppo utente
$arrayGruppi $thisUser->getGroups();
$nomiGruppi='';
        
//Gruppo numero 1: Admin (default)
if ( in_array("1"$arrayGruppi) ) { $nomiGruppi 'Amministratore'; }
//Gruppo numero 2: utenti registrati (default)
elseif ( in_array("2"$arrayGruppi) ) { $nomiGruppi .= 'Utente registrato'; }

//Gruppo 4: gruppo personalizzato
elseif ( in_array("4"$arrayGruppi) ) { $nomiGruppi .= 'Gruppo personalizzato'; }

//Inserire qui altri gruppi


$xoopsTpl->assign('lang_gruppi'_US_GRUPPI);
$xoopsTpl->assign('user_gruppi'$nomiGruppi);

// hack jordi: fine


Il gruppo numero 3 è stato saltato, in quanto di default è il gruppo riservato agli utenti anonimini; non essendo registrati non hanno un proprio profilo, quindi non sono interessati da questa modifica.

E' stato aggiunto il gruppo 4, ipotizzando un qualsiasi gruppo personalizzato aggiunto al sistema. E' ovviamente possibile eliminarlo qualora non esistano altri gruppi oltre i 3 di sistema, ed è possibile aggiungerne altri copiando e modificando la stessa linea di codice (es. gruppo 5, gruppo 6, ...).

Se nel vostro sistema è previsto che un utente faccia parte di più gruppi è sufficiente sostituire gli statement "elseif" con dei semplici "if" per visualizzarli tutti.



3. Modificare il template

Aprite il file /modules/system/templates/system_userinfo.html e trovate il seguente blocco di codice:

<tr valign="top">

<
td class="head" width="25%"><{$lang_avatar}></td>
<
td align="center" class="even"><img src="<{$user_avatarurl}>" alt="Avatar" /></td>

</
tr>


e di seguito inserite:

<!-- hack jordivisualizzazione gruppo utente -->
<
tr>
<
td class="head" width="25%"><{$lang_gruppi}></td>
<
td class="odd"><{$user_gruppi}></td>
</
tr>
<!-- 
hack jordifine -->


4. Fine!

L'hack è completo!

Non è stato necessario sfruttare il database (anche se sarebbe stato possibile) e sono state sufficienti pochi semplici righe di codice per ottenere uno splendido risultato.

3 semplici passi verso un portale più personalizzato e professionale.
<< Il primo libro ITALIANO su Xoops! Limitare il numero dei messaggi privati per ogni utente. >>
API: RSS | RDF | ATOM
Copyright© Defkon1 & Xoops Italia
I commenti sono di proprietà degli autori. Si declina ogni responsibilità sul loro contenuto.
Sostieni XoopsItalia!
Ultimi Tutorial
Ultime Traduzioni
XOOPS ITALIA © 2002-2012 - Powered by XOOPS