Pagina 1 di 1

nascondere codice agli utenti

Inviato: 17/07/2013, 10:23
da DOWGR
Supponiamo che nel indice vorrei creare una semplice tabella e possibile far in modo che gli utenti di un determinato gruppo non la visualizzano?

Re: nascondere codice agli utenti

Inviato: 17/07/2013, 19:32
da Tiger
Apri:
includes/functions.php

cerca:

Codice: Seleziona tutto

// application/xhtml+xml not used because of IE
    header('Content-type: text/html; charset=UTF-8');
aggiungi prima:

Codice: Seleziona tutto

// Check what group a user is in
    if ( !function_exists('group_memberships') )
    {
        include($phpbb_root_path . 'includes/functions_user.'.$phpEx);
    }

    $groups = group_memberships(false,$user->data['user_id']);
    foreach ($groups as $grouprec)
    {
        $template->assign_vars(array(
            'S_GROUP_' . $grouprec['group_id'] => true
        ));
    }  
Adesso non ti resta che utilizzare l'IF per il gruppo/gruppi a cui vuoi far visualizzare un determinato contenuto:

<!-- IF S_GROUP_X -->

oppure:
<!-- IF (S_GROUP_X or S_GROUP_X) --> //se gli utenti fanno parte di questi gruppi

oppure:
<!-- IF not S_GROUP_X --> // visualizza per tutti eccetto questo gruppo

Logicamente devi sostituire X con l'id dei gruppi a cui vuoi far visualizzare o escludere un eterminato contenuto codice.

Re: nascondere codice agli utenti

Inviato: 17/07/2013, 20:03
da Astro86
Scusate se mi intrometto in questo Topic...

Tiger una volta inserito quel codice in functions, mi funzionerà anche se ad esempio metto questi IF nei BBcode come code e quote ed i BBcode Personalizzati?

Re: nascondere codice agli utenti

Inviato: 17/07/2013, 21:07
da Micogian
Si può fare una cosa più semplice, nel file functions.php trova il codice che assegna le variabili:

Codice: Seleziona tutto

	// The following assigns all _common_ variables that may be used at any point in a template.
	$template->assign_vars(array(
		'SITENAME'						=> $config['sitename'],
e si aggiunge la variabile seguente:

Codice: Seleziona tutto

		'GROUP_XX'					=> ($user->data['group_id'] == '99' ? true : false ,
		
Se l'utente fa parte del group_id=99 la variabile GROUP_XX è true e può essere utilizzata nel template con una condizione IF

<!-- IF GROUP_XX -->
codice da inserire
<!-- ENDIF -->