Wer ist online nur für bestimmte Benutzergruppen [ERLEDIGT]

Du hast Probleme beim Einbau oder bei der Benutzung eines Mods? In diesem Forum bist du richtig.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.0, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Stefan M.
Mitglied
Beiträge: 114
Registriert: 07.09.2007 16:37

Beitrag von Stefan M. »

Ich bin ja Admin vom Forum und sehe trotz dass die Gruppen-ID nicht das Recht hat, die "Wer ist Online-Liste".

Gibt es da auch eine Änderung im Code für Administratoren? Wenn nein, dann ist das auch nicht schlimm, würde mich aber interessieren!

Meine zweite Frage. Wo in der in der ndex_body.tpl muss ich nun einstellen, dass bestimmte Benutergruppen die Suchfunktion und die Mitgliederliste nicht benutzen können?

Dritte Frage: Wenn man die viewonline.php öffnet und das kann auch ein Gast, dann sieht er trotzdem, wer online ist ohne sich nicht einmal anzumelden, ist das richtig?

Wenn ja, wie kann cih das deaktiveren, sprich, dass nur ncoh bestimte Gruppen das sehen können?
Benutzeravatar
Seimon
Mitglied
Beiträge: 893
Registriert: 23.02.2005 18:10
Wohnort: Linz, Österreich

Beitrag von Seimon »

Stefan M. hat geschrieben:Ich bin ja Admin vom Forum und sehe trotz dass die Gruppen-ID nicht das Recht hat, die "Wer ist Online-Liste".
Admins werden nicht speziell behandelt.
Wenn du als Admin nicht in einer der Gruppen bist (Vorsicht: Gruppenleiter beachten), siehst du die "Wer ist Online-Liste" nicht.

Wo in der in der ndex_body.tpl muss ich nun einstellen, dass bestimmte Benutergruppen die Suchfunktion und die Mitgliederliste nicht benutzen können?
Das geht mit diesem Mod nicht!
Man kann damit nur Dinge ein oder ausblenden. Wenn du jetzt den Link zur Mitgliederliste ausblendest gibt es noch immer die möglichkeit die memberlist.php direkt aufzurufen!
Genauso kann jetzt jeder User die viewonline.php per Hand aufrufen.
Stefan M. hat geschrieben:Wenn ja, wie kann cih das deaktiveren, sprich, dass nur ncoh bestimte Gruppen das sehen können?
Nur für eingeloggte:
http://www.phpbb.de/viewtopic.php?t=47560

Nur für bestimmte Gruppen müsste man das modifizieren
Stefan M.
Mitglied
Beiträge: 114
Registriert: 07.09.2007 16:37

Beitrag von Stefan M. »

Admins werden nicht speziell behandelt.
Wenn du als Admin nicht in einer der Gruppen bist (Vorsicht: Gruppenleiter beachten), siehst du die "Wer ist Online-Liste" nicht.
Ich habe gemeint, der Admin kann alles sehen? Sprich, wenn er in keiner Gruppe ist, auch nicht Gruppenleiter, dann sieht er die Liste nicht? Wie kann ich einstellen, dass der Admin sie trotzdem sieht?
Das geht mit diesem Mod nicht!
Man kann damit nur Dinge ein oder ausblenden. Wenn du jetzt den Link zur Mitgliederliste ausblendest gibt es noch immer die möglichkeit die memberlist.php direkt aufzurufen!
Genauso kann jetzt jeder User die viewonline.php per Hand aufrufen.
Könnte ich die FTP-Rechte so einstellen, dass man diese DAtei nicht oer Browser-Zeile öffnen kann?

Sonst müsste ich den Mod, den du mir da gepostet hast:

http://www.phpbb.de/viewtopic.php?t=47560

einfügen. Das Problem ist dann nur, dass der Mod die Registrierten dann sehen obwohl ich das dann für die bestimmten Benutzergruppen haebn möchte. Kann man da die gleiche Methode mit dem

Code: Alles auswählen

<!-- BEGIN switch_usergroup_123 --> 
Hier der Code der nur für die Gruppe sichtbar sein soll. 
<!-- END switch_usergroup_123 -->
auch bei dem Fall benutzen? Oder was für einen Mod muss ich dann benutzen? Kannst du mir da weiterhelfen?
Benutzeravatar
Seimon
Mitglied
Beiträge: 893
Registriert: 23.02.2005 18:10
Wohnort: Linz, Österreich

Beitrag von Seimon »

Stefan M. hat geschrieben:Wie kann ich einstellen, dass der Admin sie trotzdem sieht?
in der includes/functions.php

finde:

Code: Alles auswählen

        if ( !$userdata['session_logged_in'] ) 
        { 
                return false; 
        }
danach füge ein:

Code: Alles auswählen

        if( $userdata['user_level'] == ADMIN )
		  {
			  	return true;
		  }
Benutzeravatar
Seimon
Mitglied
Beiträge: 893
Registriert: 23.02.2005 18:10
Wohnort: Linz, Österreich

Beitrag von Seimon »

Stefan M. hat geschrieben:Kannst du mir da weiterhelfen?
In der memberlist.php, in der search.php und in der viewonline.php
(...redirect=memberlist.$phpEx... anpassen! )

finde:

Code: Alles auswählen

//
// End session management
//
danach füge ein:

Code: Alles auswählen

if (!$userdata['session_logged_in'] ) 
{ 
  redirect(append_sid("login.$phpEx?redirect=memberlist.$phpEx", true)); 
}

$allowed_ugs = array('25676','27234','31366','33665');

$sql = 	"SELECT count(*) AS num 
		FROM " . USER_GROUP_TABLE . " 
		WHERE group_id IN (" . implode(',', $allowed_ugs) . ") AND user_pending = 0 AND user_id = " .$userdata['user_id']; 
if ( !($result = $db->sql_query($sql)) ) 
        { 
                message_die(GENERAL_ERROR, 'Could not get user group', '', __LINE__, __FILE__, $sql); 
        } 
$row = $db->sql_fetchrow($result); 
if ( $row['num'] < 1 && $userdata['user_level'] != ADMIN ) 
        {
        		message_die(GENERAL_MESSAGE, $lang['Not_Authorised'], $lang['Not_Authorised']);
        } 
'25676','27234','31366','33665' sind die berechtigten Gruppen
Zuletzt geändert von Seimon am 13.09.2007 18:27, insgesamt 2-mal geändert.
Stefan M.
Mitglied
Beiträge: 114
Registriert: 07.09.2007 16:37

Beitrag von Stefan M. »

Hallo,

mir wurde leider nicht gesagt, wie ich die Gruppen-ID's finde, aber durch die Suchfunktion habe cih es nun gefunden und es klappt.

WEnn ich auf Suche klicke und auf Mitgliederliste klicke, heist es einfach "Keine Berechtigung", egal ob direktlink oder durch das Board.

Nun habe ich ncoh das Problem mit viewonline.php, dass wen man diese Seite aufruft, dass man die Wer ist Online-Liste sieht. Kann man da auch die Berechtitung verändern? Wo muss ich denn das machen?

Zweite Frage: Ich möchte gerne, dass nur bestimmte Benutzergruppen auf ihr eigenes Profil und von den anderen zugreifen können.
Wo muss ich da was im Code ändern?

Gruß Stefan M.
Benutzeravatar
Seimon
Mitglied
Beiträge: 893
Registriert: 23.02.2005 18:10
Wohnort: Linz, Österreich

Beitrag von Seimon »

Stefan M. hat geschrieben:Nun habe ich ncoh das Problem mit viewonline.php, dass wen man diese Seite aufruft, dass man die Wer ist Online-Liste sieht. Kann man da auch die Berechtitung verändern? Wo muss ich denn das machen?
Genau wie bei der Memberlist und der Suche mit obigem Code.
Stefan M. hat geschrieben:Zweite Frage: Ich möchte gerne, dass nur bestimmte Benutzergruppen auf ihr eigenes Profil und von den anderen zugreifen können.
Wo muss ich da was im Code ändern?

In der profile.php

finde:

Code: Alles auswählen

if ( isset($HTTP_GET_VARS['mode']) || isset($HTTP_POST_VARS['mode']) )
{
	$mode = ( isset($HTTP_GET_VARS['mode']) ) ? $HTTP_GET_VARS['mode'] : $HTTP_POST_VARS['mode'];
	$mode = htmlspecialchars($mode);

	if ( $mode == 'viewprofile' )
	{
danach füge ein:

Code: Alles auswählen

if (!$userdata['session_logged_in'] ) 
{ 
  redirect(append_sid("login.$phpEx?redirect=memberlist.$phpEx", true)); 
}

$allowed_ugs = array('25676','27234','31366','33665');

$sql = 	"SELECT count(*) AS num 
		FROM " . USER_GROUP_TABLE . " 
		WHERE group_id IN (" . implode(',', $allowed_ugs) . ") AND user_pending = 0 AND user_id = " .$userdata['user_id']; 
if ( !($result = $db->sql_query($sql)) ) 
        { 
                message_die(GENERAL_ERROR, 'Could not get user group', '', __LINE__, __FILE__, $sql); 
        } 
$row = $db->sql_fetchrow($result); 
if ( $row['num'] < 1 && $userdata['user_level'] != ADMIN ) 
        {
        		message_die(GENERAL_MESSAGE, $lang['Not_Authorised'], $lang['Not_Authorised']);
        } 
'25676','27234','31366','33665' sind die berechtigten Gruppen
Stefan M.
Mitglied
Beiträge: 114
Registriert: 07.09.2007 16:37

Beitrag von Stefan M. »

Es hat alles funktioniert, ich finds echt klasse von euch! Weiter so!

Mein Dank geht an Seimon, der mich durch alle Fragen durchgeführt hat! WEiter so!

Gruß Stefan M.
Antworten

Zurück zu „phpBB 2.0: Mod Support“