Hallo!
Wie kriege ich es hin, dass Profile nur innerhalb der eigenen Gruppe einsehbar sind?
Bin für jeden Hinweis dankbar!
Profile nur innerhalb der eigenen Gruppe einsehbar.
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.
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.
- Leuchte
- Ehemaliges Teammitglied
- Beiträge: 9179
- Registriert: 26.05.2003 14:57
- Wohnort: Duisburg
- Kontaktdaten:
Wie versprochen
language/lang_german/lang_main.php - FindeFüge davor einincludes/usercp_viewprofile.php - FindeFüge danach einSomit ist das Profile für alle Tabu, die nicht in der Gruppe des Besitzers sind. Sollen Admins immer zugriff haben muss in der ersten Zeile der Änderungdurchausgetauscht werden
language/lang_german/lang_main.php - Finde
Code: Alles auswählen
?>
Code: Alles auswählen
$lang['Profile_not_in_group'] = 'Du bist nicht in der Gruppe des Benutzers und kannst dieses Profil nicht ansehen';
Code: Alles auswählen
message_die(GENERAL_MESSAGE, $lang['No_user_id_specified']);
}
Code: Alles auswählen
if($userdata['session_logged_in'])
{
function member_of($group_id) // by saerdnaer
{
global $db;
$profile = get_userdata($_GET[POST_USERS_URL]);
$sql = "SELECT count(*) AS num
FROM " . USER_GROUP_TABLE . "
WHERE user_id = '" . $profile['user_id'] . "'
AND user_pending = '0'
AND group_id IN ( " . $group_id . " )";
if(!($result = $db->sql_query($sql)))
{
message_die(GENERAL_ERROR, 'Could not get group auth', '', __LINE__, __FILE__, $sql);
}
$row = $db->sql_fetchrow($result);
if($row['num'] > 0)
{
return $profile['user_member_of_' . $group_id] = true;
}
return $profile['user_member_of_' . $group_id] = false;
}
$sql = "SELECT group_id
FROM " . USER_GROUP_TABLE . "
WHERE user_id = '". $userdata['user_id'] ."'
AND user_pending = '0'";
if(!($result = $db->sql_query($sql)))
{
message_die(GENERAL_ERROR, 'Could not get group ids', '', __LINE__, __FILE__, $sql);
}
$ingroup = "";
while($row = $db->sql_fetchrow($result))
{
if(member_of($row['group_id']))
{
$ingroup .= 1;
}
else
{
$ingroup .= 0;
}
}
if($ingroup == 0)
{
message_die(GENERAL_MESSAGE, $lang['Profile_not_in_group']);
}
}
Code: Alles auswählen
if($userdata['session_logged_in'])
Code: Alles auswählen
if($userdata['session_logged_in'] && $userdata['user_level'] != ADMIN)