Wer war da MOD --> Versteckte User ausblenden?

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.
Antworten
Ralle6000
Mitglied
Beiträge: 154
Registriert: 02.05.2005 08:45

Wer war da MOD --> Versteckte User ausblenden?

Beitrag von Ralle6000 »

Ich habe das Selbe Problem wie in diesem Beitrag schon beschrieben:
ERLEDIGT: Verstecke User komplett verstecken?

Ich möchte, dass die versteckten User ganz ausgeblendet werden und nur die sichtbaren User und Gäste angezeigt werden.

Das, was im Link oben beschrieben ist, funktioniert auch bei der Forum-Standart-Anzeige, aber im "Wer war da" MOD sollen ebenfalls die Versteckten User ausgeblendet werden.

Ich kann zwar hier:

Code: Alles auswählen

*----------WER WAR HEUTE DA HACK----------*/
###############################  SETTINGS ###############################
$enable_wwd_counter = True; #Enables or disables counting of hidden users and guests
							#Values: True or False
Auf "False" stellen, aber dann werden auch die Gäste nicht mehr angezeigt.

Weiß jemand was ich da ändern muss?
(Link zur Textdatei des MODs)

Gruß
Ralle
Benutzeravatar
cYbercOsmOnauT
Ehemaliges Teammitglied
Beiträge: 3820
Registriert: 18.02.2004 23:02
Wohnort: Göttingen
Kontaktdaten:

Beitrag von cYbercOsmOnauT »

Du fragst im falschen Forum. Ich schiebe...

Gruß,
Tekin
• prof. phpbb-Installation, Reparatur, Rettung nach Hackattacken, sowie PHP/JS Programmierung aller Art
Zend Certified Engineer, Linux Administrator und die Sicherheit von 34 Jahren Programmiererfahrung
• Interesse? Kontakt unter t.birduezen@web-coding.eu
Ralle6000
Mitglied
Beiträge: 154
Registriert: 02.05.2005 08:45

Beitrag von Ralle6000 »

OK, Sorry :oops:
Ralle6000
Mitglied
Beiträge: 154
Registriert: 02.05.2005 08:45

Beitrag von Ralle6000 »

Also nochmal zum "Wer war da" MOD, da ich bisher keine Antwort bekommen habe, habe ich das Ding auf "False" gestellt, so dass versteckte User und Gäste nun ausgeblendet werden.

Nun möchte ich aber, dass ein ganz bestimmter (normaler) User genauso wie ich (der Admin) sehen kann, WER sich da zurzeit versteckt (hat gewisse Gründe).

Kann man da irgendwie eine User-ID hinzufügen, für den dann auch alles sichtbar ist???

Ich nehme mal an, das muss irgendwo hier im MOD sein, in der index.php:

Code: Alles auswählen

if ( $userdata['user_level'] == ADMIN )
{
	$sql_add = ", user_allow_viewonline";
}
else
{
	$sql_add2 = "AND user_allow_viewonline = '1'";
}
Habe aber keine Ahnung davon.

[Edit]

Wäre so eine Lösung sicher? Funktionieren tut es anscheinend:

Code: Alles auswählen

if ( $userdata['user_level'] == ADMIN )
{
	$sql_add = ", user_allow_viewonline";
}

if ( $userdata['user_id'] == xx )
{
	$sql_add = ", user_allow_viewonline";
}

else
{
	$sql_add2 = "AND user_allow_viewonline = '1'";
}
(Statt dem "xx" würde ich dann natürlich die User-ID eingeben).

Bitte um Hilfe!

Grüße
Ralf
Kreezer
Mitglied
Beiträge: 2
Registriert: 23.05.2006 12:27

Beitrag von Kreezer »

Ich hab damals für hofipalace.de folgenden Code geschrieben. Vielleicht hilt's ja weiter...

Code: Alles auswählen

// by kreezer - http://www.kreezer.de/
// 20.07.2005, 12:16
$result = $db->sql_query('Select `user_id`, `username`, `user_allow_viewonline`, `user_session_time`, `user_level` FROM '.USERS_TABLE." WHERE `user_session_time` > $mitternacht ORDER BY `user_session_time` DESC");
while( $row = $db->sql_fetchrow($result)) {
   if( $row['user_allow_viewonline'] ) {
      $user_today .= ($count_user_today > 0) ? ', ' : '';
      $user_today .= '<a href="'.append_sid('profile.php?mode=viewprofile&u='.$row['user_id']).'"';
      $user_today .= ($row['user_level'] == 1) ? ' style="color: #'.$theme['fontcolor3'].'"><b>'.$row['username'].'</b></a>' : '';
      $user_today .= ($row['user_level'] == 2) ? ' style="color: #'.$theme['fontcolor2'].'"><b>'.$row['username'].'</b></a>' : '';
      $user_today .= ($row['user_level'] != 1 && $row['user_level'] != 2) ? '">'.$row['username'].'</a>' : '';
      $user_today .= ' ('.$user_today_text['zuletzt_um'].' '.date('H:i', $row['user_session_time']).')';
      $count_user_today++;
   } elseif( !$row['user_allow_viewonline'] && $userdata['user_level'] == ADMIN ) {
      $user_today .= ($count_user_today > 0) ? ', ' : '';
      $user_today .= '<a href="'.append_sid('profile.php?mode=viewprofile&u='.$row['user_id']).'"';
      $user_today .= ($row['user_level'] == 1) ? ' style="color: #'.$theme['fontcolor3'].'"><b><i>'.$row['username'].'</i></b></a>' : '';
      $user_today .= ($row['user_level'] == 2) ? ' style="color: #'.$theme['fontcolor2'].'"><b><i>'.$row['username'].'</i></b></a>' : '';
      $user_today .= ($row['user_level'] != 1 && $row['user_level'] != 2) ? '"><i>'.$row['username'].'</i></a>' : '';
      $user_today .= ' ('.$user_today_text['zuletzt_um'].' '.date('H:i', $row['user_session_time']).')';
      $count_user_today++;
   }
}
Ralle6000
Mitglied
Beiträge: 154
Registriert: 02.05.2005 08:45

Beitrag von Ralle6000 »

Ist das jetzt, um versteckte User ganz auszublenden?
Dann werde ich das mal testen. Vielen Dank!

Aber noch zu meiner anderen Frage:

Versteckte User für einen bestimmten User im "Wer war da MOD" sichtbar machen, kann jemand den Code oben in meinem letzten Posting absegnen? Auch wenn er funktioniert, weiß ich nicht ob das so vielleicht irgendwelche Sicherheitslücken verursacht.

Ich habe wenig Ahnung von PHP.

Grüße
Ralf
Kreezer
Mitglied
Beiträge: 2
Registriert: 23.05.2006 12:27

Beitrag von Kreezer »

Der von mir gepostete Code macht Folgendes:
Für normale Nutzer des Forums werden versteckte Nutzer nicht angezeigt. Nutzer mit Administrationsrechten sehen versteckte Nutzer kursiv angezeigt. Nutzer, welche ihren Onlinestatus nicht verstecken, werden ganz normal angezeigt.

Wenn du nun willst, dass ein bestimmter Nutzer zusätzlich zu den Admins auch versteckte Nutzer sieht, ersetzt du einfach

Code: Alles auswählen

$userdata['user_level'] == ADMIN
durch

Code: Alles auswählen

($userdata['user_level'] == ADMIN || $userdata['user_id'] == DIE_USERID)
PS: Vielleicht ist es einigen Programmieren schon aufgefallen, dass mein kompletter Code ein wenig umständlich ist. Wenn jemand den Code produktiv einsetzen will, kann er mich gern noch einmal kontaktieren, dann mach ich den Code ein wenig "schlanker".
L4OA
Mitglied
Beiträge: 7
Registriert: 17.08.2007 12:41

Beitrag von L4OA »

Um im 'Wer war da'-Mod die Verstckten Benutzer auszublenden einfach in der index.php folgene Zeilen auskommentieren:

Code: Alles auswählen

	$hidden = $db->sql_numrows($result) - $count_user_today;
	$total_users += $hidden;


	$user_today_text .= ( $hidden == 0 || $hidden == '' ) ? $lang['Hidden_users_zero_total'] : '';
	$user_today_text .= ( $hidden == 1 ) ? str_replace('%d', $hidden, $lang['Hidden_user_total']) : 

'';
	$user_today_text .= ( $hidden > 1 ) ? str_replace('%d', $hidden, $lang['Hidden_users_total']) : 

'';
also:

Code: Alles auswählen

//	$hidden = $db->sql_numrows($result) - $count_user_today;
//	$total_users += $hidden;


//	$user_today_text .= ( $hidden == 0 || $hidden == '' ) ? $lang['Hidden_users_zero_total'] : '';
//	$user_today_text .= ( $hidden == 1 ) ? str_replace('%d', $hidden, $lang['Hidden_user_total']) : 

//'';
//	$user_today_text .= ( $hidden > 1 ) ? str_replace('%d', $hidden, $lang['Hidden_users_total']) : 

//'';
Antworten

Zurück zu „phpBB 2.0: Mod Support“