Sida 1 av 2

Hur dölja "användargrupper" för alla utom admin? -

Postat: 2007-02-18 20:37
av Sofia
Hej!

Jag har precis lagt till "Hack Title: Restrict Guest Access " och det funkar jättebra (gör så att endast medlemmar får tillgång till medlemslista, sök, användargrupper...).

Jag skulle vilja dölja ''användargrupper'' för alla utom admin! Medlemmar kommer endast att läggas till i olika grupper av admin, och det ska inte gå att söka till grupperna. Därför vill jag inte att dom ska synas.

Någon som har något tips på hur jag kan lösa detta?

Vårt forum (ej igång, bara ''på plats''): http://www.nordafrika.se/forum/phpBB2/

Mvh, Sofia

Postat: 2007-02-19 10:30
av PazZze
gör om alla grupper till en dold grupp, då ser man bara den man själv är medlem i...

Postat: 2007-02-19 12:13
av Sofia
Jag vill inte att användargrupperna ska synas över huvud taget för andra än admin o möjligen mod. Alternativet ska inte ens vara klickbart om man säger så. :) Eller att om man klickar på det så ska ingen information alls komma upp.

Postat: 2007-02-19 14:59
av PazZze
Ändra i templates/subSilver/overall_header.tpl och ta bort länken till grupperna

Postat: 2007-02-19 15:26
av Sofia
Men om jag gör så, försvinner inte valet för admin då också?

Den ska alltså bara vara dold för medlemmar och gäster, men synas och kunna användas av admin.

Mvh, Sofia

Postat: 2007-02-19 17:21
av Marcus
Jo, det gör det...

Men du kan ju ändra på länkens adress berorende på vem som är inloggad.

Öppna <forumrot>/includes/page_header.php

Och leta upp raden:

'U_GROUP_CP' => append_sid('groupcp.'.$phpEx),

Och ändre den till:

'U_GROUP_CP' => ( $userdata['user_level'] == ADMIN ) ? append_sid('groupcp.'.$phpEx) : append_sid('index.'.$phpEx),


Då kommer alla som inte är admin att frå den länken som en länk tillbaka till index.php. Lite fult... men det går säkert att lösa snyggare.

/marcus

Edit: Så att jag skrivit fel...

Postat: 2007-02-19 19:12
av Kjell
Kan man inte bara använda den här i overall_header.tpl filen.

<!-- BEGIN switch_admin_link -->
{U_MEMBERLIST}
<!-- END switch_admin)link -->

Eller bättre så här....

<!-- BEGIN switch_admin_link --><a href="{U_MEMBERLIST}" class="mainmenu"><img src="templates/subSilver/images/icon_mini_members.gif" width="12" height="13" border="0" alt="{L_MEMBERLIST}" hspace="3" />{L_MEMBERLIST}</a><!-- END switch_admin)link -->

Postat: 2007-02-19 22:25
av Marcus
Jo, men det kräver lite mer än så... men det är en mycket snyggare lösning (men nu kanske jag har tid att visa den snygga lösningen... :-))

Man måste också skapa en instruktion i <forumrot>/includes/page_header.php som får de där taggarna att fungerar.

Leta upp följade kod:

Kod: Markera allt

//
// Login box?
//
if ( !$userdata['session_logged_in'] )
{
   $template->assign_block_vars('switch_user_logged_out', array());
   //
   // Allow autologin?
   //
   if (!isset($board_config['allow_autologin']) || $board_config['allow_autologin'] )
   {
      $template->assign_block_vars('switch_allow_autologin', array());
      $template->assign_block_vars('switch_user_logged_out.switch_allow_autologin', array());
   }
}
else 
{
   $template->assign_block_vars('switch_user_logged_in', array());
   if ( !empty($userdata['user_popup_pm']) )
   {
      $template->assign_block_vars('switch_enable_pm_popup', array());
   }
}
Och lägg till:

Kod: Markera allt

   if ($userdata['user_level'] == ADMIN)
   {
      $template->assign_block_vars('switch_admin_link', array());
   }
precis innan sista } i det kodstycket.

Det ska alltså se ut så här när du är klar:

Kod: Markera allt

//
// Login box?
//
if ( !$userdata['session_logged_in'] )
{
   $template->assign_block_vars('switch_user_logged_out', array());
   //
   // Allow autologin?
   //
   if (!isset($board_config['allow_autologin']) || $board_config['allow_autologin'] )
   {
      $template->assign_block_vars('switch_allow_autologin', array());
      $template->assign_block_vars('switch_user_logged_out.switch_allow_autologin', array());
   }
}
else 
{
   $template->assign_block_vars('switch_user_logged_in', array());
   if ( !empty($userdata['user_popup_pm']) )
   {
      $template->assign_block_vars('switch_enable_pm_popup', array());
   }
   if ($userdata['user_level'] == ADMIN)
   {
      $template->assign_block_vars('switch_admin_link', array());
   }
}
Sedan kan du göra precis som Svågadalen skrev.

/Marcus

Postat: 2007-02-20 07:43
av Kjell
Jag glömde def. av taggarna, tack Marcus :)
Hoppas Sofia hängen med nu....
För att vara mer tydlig, så ska du Sofia göra det Marcus skriver och sedan editera overall_header.tpl med taggarna <!-- BEGIN switch_admin_link --> den länk och information du inte vill visa användarna och avsluta med <!-- END switch_admin_link --> .

Som du säker förstår så går det att använda dessa taggar på fler sätt, dölja andra länkar, information å bilder etc.


Lycka till Sofia.

Postat: 2007-02-20 13:39
av Sofia
Oh, hjälp! Jag försökte skumma igenom era tips nu när jag sitter på jobbet... men det snurrar mest! :D

Jag får kolla lite i filerna där hemma och ändra i lugn och ro! Så "hojtar" jag till om det är nåt jag inte förstår (stoor chans att det blir så).

Tack för hjälpen och tipsen!

Mvh, Sofia

Postat: 2007-02-20 22:43
av Sofia
Jag försökte följa era instruktioner, dubbelkollade, så jag är ganska säker på att jag gjorde rätt. Men det blev bara tok! Sidan blev helt vit och enbart textlänkar... Knas, med andra ord!

Försöker med den lite enklare lösningen att länka tillbaka till indexsidan. :D

Mvh, Sofia

Postat: 2007-02-20 22:52
av Sofia
Runt denna kod
<!-- BEGIN switch_admin_link --><a href="{U_MEMBERLIST}" class="mainmenu"><img src="templates/subSilver/images/icon_mini_members.gif" width="12" height="13" border="0" alt="{L_MEMBERLIST}" hspace="3" />{L_MEMBERLIST}</a><!-- END switch_admin)link -->
ska det vara egen rad, mellanslag före/efter? Jag lade in den direkt på raden där ursprungskoden låg, och då blev det helknas i forumet. Helt vitt med bara textlänkar... När jag tog bort den så var det som vanligt igen.

Nu har jag lagt in den ''enkla men ej så snygga" varianten. Tror att den kan duga åt oss! :D

Mvh, Sofia

Postat: 2007-02-20 23:26
av Kjell
Har inte provat detta änu, men kan vara värt ett försök..
Lägg in taggarna på en egen rad före och efter userkoden

<!-- BEGIN switch_admin_link -->
Din kod på en egen rad
<!-- END switch_admin)link -->

Postat: 2007-02-21 09:38
av Marcus
Ja, <!-- BEGIN ... --> och <!-- END ... --> ska vara på egna rader... annars kan inte template.php tolka dem.

Jag missade det i koden som svågadalen skrev... :oops:

Notera att det inte är runt

Kod: Markera allt

<a href="{U_MEMBERLIST}" class="mainmenu"><img src="templates/subSilver/images/icon_mini_members.gif" width="12" height="13" border="0" alt="{L_MEMBERLIST}" hspace="3" />
Du ska sätta dessa, utan runt:

Kod: Markera allt

<a href="{U_GROUP_CP}" class="mainmenu"><img src="templates/subSilver/images/icon_mini_members.gif" width="12" height="13" border="0" alt="{L_GROUP_CP}" hspace="3" />
Notera också det lilla, men tilltrasslande, stavfelet i hans kod.
Det ska inte vara ett )-tecken i END-taggen.

Det ska alltså stå:

Kod: Markera allt

<!-- BEGIN switch_admin_link --> 
<a href="{U_GROUP_CP}" class="mainmenu"><img src="templates/subSilver/images/icon_mini_members.gif" width="12" height="13" border="0" alt="{L_GROUP_CP}" hspace="3" />
<!-- END switch_admin_link -->
/marcus

Postat: 2007-02-22 20:24
av Sofia
Tack för all hjälp!

Nu har jag ju "facit" här, men får vänta i några dagar till jag känner mig redo för att prova igen! :D