menu per le pagine riservate

La discussione sul CMS Made Simple in italiano.

Moderator: magallo

Post Reply
axxe16

menu per le pagine riservate

Post by axxe16 »

Ciao a tutti,
ho implementato in un mio progetto le aree riservate e vorrei generare un menu che visualizzi solo le pagine riservate... c'è modo di farlo?
ingegnimultimediali
Forum Members
Forum Members
Posts: 41
Joined: Mon Mar 10, 2008 5:44 pm

Re: menu per le pagine riservate

Post by ingegnimultimediali »

basta inserire un prefisso all'alias delle pagine riservate e gestire il menu facendo visualizzare solo quelle pagine con quel determinato prefix.

Inoltre se il menu deve comparire solo una volta loggati lo puoi inserire in un tag del tipo:

  {if $ccuser->loggedin()}

      Navigation
      {menu template='simple_navigation.tpl' number_of_levels='1' includeprefix="private_"}
 
 
{/if}
axxe16

Re: menu per le pagine riservate

Post by axxe16 »

si ci avevo pensato  ;D, però nel mio progetto gestisco prima di tutto tre aree riservate differenti (ed in teoria infinite...) vorrei creare un menu che mi permetta di riconoscere i template che contengono un area riservata per un dato gruppo di utenti in modo tale da poter passare il nome del gruppo al menu...
stavo cercando di far funzionare questo anche se non mi è chiarissimo:

http://forum.cmsmadesimple.org/index.ph ... 384.0.html
ingegnimultimediali
Forum Members
Forum Members
Posts: 41
Joined: Mon Mar 10, 2008 5:44 pm

Re: menu per le pagine riservate

Post by ingegnimultimediali »

puoi sempre aggiungere all'IF precedente il memberof() credo sia proprio di FEU

{if $ccuser->loggedin() && memberof('tuogruppo')}
axxe16

Re: menu per le pagine riservate

Post by axxe16 »

si ok, ma come faccio a identificare le pagine? Per gestire le pagine riservate attualmente uso una cosa del genere:

Code: Select all

{content block='gruppo area riservata' oneline='true' assign='gruppo'}
{if $gruppo==''}
    {content}
{else}
{if $ccuser->loggedin()}
	{if $ccuser->memberof($gruppo)}
        <h4>Benvenuto utente registrato!</h4>
        <p>Pagina riservata per: {$gruppo}</p>
        <br/>
        <br/>
            {content}
    {else}
        <h4>Benvenuto utente registrato!</h4>
        <p>Il tuo account non è abilitato ad accedere a questa pagina</p>
    {/if}
{else}
<h4>Per accedere a questa area devi autenticarti</h4> 
<p>Puoi farlo utilizzando il form in basso a sinistra. Se non hai un account registrati!</p>
{/if}

{/if}
l'ideale sarebbe risucire a pescare dal menu $gruppo...
ingegnimultimediali
Forum Members
Forum Members
Posts: 41
Joined: Mon Mar 10, 2008 5:44 pm

Re: menu per le pagine riservate

Post by ingegnimultimediali »

scusa ma se come prefix dell'alias metti proprio il gruppo poi non potresti fare una cosa del genere?

Code: Select all

{content block='gruppo area riservata' oneline='true' assign='gruppo'}
{if $gruppo==''}
    {content}
{else}
{if $ccuser->loggedin()}
	{if $ccuser->memberof($gruppo)}
        <h4>Benvenuto utente registrato!</h4>
        <p>Pagina riservata per: {$gruppo}</p>
        <br/>
// MENU PER GRUPPO
      {menu template='simple_navigation.tpl' number_of_levels='1' includeprefix="$gruppo_"}

        <br/>
            {content}
    {else}
        <h4>Benvenuto utente registrato!</h4>
        <p>Il tuo account non è abilitato ad accedere a questa pagina</p>
    {/if}
{else}
<h4>Per accedere a questa area devi autenticarti</h4> 
<p>Puoi farlo utilizzando il form in basso a sinistra. Se non hai un account registrati!</p>
{/if}

{/if}
axxe16

Re: menu per le pagine riservate

Post by axxe16 »

si hai ragione ma vallo a spiegare al cliente che deve andare ad aggiungere all'alias di pagina un prefisso... già spiegare l'alias..

Per il momento con questo UDT vado a recuperare il campo gruppi, ora dovrei riuscire a confrontare nel menu il valore recuperato dalla pagina con il gruppo dell'utente. In questo modo posso filtrare le pagine appartenenti ad un dato gruppo!

Code: Select all

$pagealias = $params['pagealias'];

global $gCms;

$manager =& $gCms->GetHierarchyManager();
$nodo =& $manager->sureGetNodeByAlias($pagealias);
if ($nodo != null)
{
  $contentobj =& $nodo->GetContent();
  $content = $contentobj->Show('gruppo_area_riservata');
}
echo "reserved-" . $content;
Post Reply

Return to “Italian - Italiano”