user online liste nur für bestimmte usergruppe

Du suchst einen bestimmten Mod, weißt aber nicht genau wo bzw. ob er überhaupt existiert? Wenn dir dieser Artikel nicht weiterhilft, kannst du hier den von dir gewünschten/gesuchten Mod beschreiben ...
Falls ein Mod-Autor eine der Anfragen hier aufnimmt um einen neuen Mod zu entwicklen, geht's in phpBB 2.0: Mods in Entwicklung weiter.
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.
holzi12
Mitglied
Beiträge: 22
Registriert: 21.07.2005 10:07

user online liste nur für bestimmte usergruppe

Beitrag von holzi12 »

Hallo,

Ich möchte die Wer ist online Anzeige für einen Teil der user nicht sichtbar machen.
Ich hab hier die Anleitung gefunden, wie man sie für Gäste unsichtbar macht, sobald sich der user aber registriert kann er die Liste wieder sehen.
Ich möchte aber, daß z.b: nur user der Gruppe "Gruppe1" die "Wer ist online" sehen können, alle anderen egal ob Gast oder andere reg. User nicht.
Funktioniert das mit phpbb?

TIA,
holzi12
shwepsi
Mitglied
Beiträge: 1697
Registriert: 02.06.2003 14:37
Wohnort: NRW - immer dem Monitorleuchten folgen...
Kontaktdaten:

Beitrag von shwepsi »

klar, aber du musst dafür ein paar Zeilen Code einbauen

möchtest du das eher Mod like mit Admin Panel unterstützung?
Also bei den Gruppen eine Einstellung Wer ist online sichtbar erlauben /verbieten
(viele änderungen in vielen Dateien)

oder reicht dir wenn du das im Quelltext einstellen kannst?
(wenig Änderungen in wenig Dateien)
Die Weisheit verfolgte mich sekundenlang...
Aber sie überholte mich und war fortan nicht mehr gesehen !!!
holzi12
Mitglied
Beiträge: 22
Registriert: 21.07.2005 10:07

Beitrag von holzi12 »

hallo,

Danke für die Antwort. Am liebsten wärs mir schon, wenn ich es für die einzelnen Gruppen einstellen kann (also mit Admin-Panel).

lg
holzi12
shwepsi
Mitglied
Beiträge: 1697
Registriert: 02.06.2003 14:37
Wohnort: NRW - immer dem Monitorleuchten folgen...
Kontaktdaten:

Beitrag von shwepsi »

ok, das machen wir dann in 2 Schritten
a) das ACP mit einstellen

danach wird kontrolliert ob das klappt mit den Berechtigungen setzen

b) das in der overall_header

dann wird das auch funktionstüchtig für das die Wer ist online Liste umgesetzt

PS: hast du die Codechanges wegen der Gäste? dann kann ich da vielleicht mit einer kleinen Änderung das machen. Sonst ist das doppelt gemoppelt oder macht das mit den Gästen sogar wieder kaputt.

Gleich kommt auch der Post mit den ersten Satz an Änderungen
Die Weisheit verfolgte mich sekundenlang...
Aber sie überholte mich und war fortan nicht mehr gesehen !!!
holzi12
Mitglied
Beiträge: 22
Registriert: 21.07.2005 10:07

Beitrag von holzi12 »

ok, vielen Dank :)

folgende Änderungen für die "wer ist online" hab ich gemacht:

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

nebenbei hab ich auch folgende Änderung an der memberliste durchgeführt, aber das ist nicht so wichtig
http://www.phpbb.de/viewtopic.php?p=263706#263706
shwepsi
Mitglied
Beiträge: 1697
Registriert: 02.06.2003 14:37
Wohnort: NRW - immer dem Monitorleuchten folgen...
Kontaktdaten:

Beitrag von shwepsi »

achte bei SQL auf das prefix !!
SQL:

Code: Alles auswählen

ALTER TABLE `phpbb_groups` ADD `group_wiol` TINYINT( 4 ) DEFAULT '0' NOT NULL ;
Öffne includes/constants.php
Suche:

Code: Alles auswählen

// Group settings
define('GROUP_OPEN', 0);
define('GROUP_CLOSED', 1);
define('GROUP_HIDDEN', 2);
Füge danach ein:

Code: Alles auswählen

// Who Is Online List Permission
define('WIOL_DENIED', 0);
define('WIOL_PERMITED', 1);
Öffne admin/admin_groups.php
Suche:

Code: Alles auswählen

		$group_info = array (
			'group_name' => '',
			'group_description' => '',
			'group_moderator' => '',
Füge danach ein:

Code: Alles auswählen

			'group_wiol' => WIOL_DENIED),
Suche:

Code: Alles auswählen

$group_open = ' checked="checked"';
Füge danach ein:

Code: Alles auswählen

		$wiol_permitted = ' checked="checked"';
Suche:

Code: Alles auswählen

	$group_open = ( $group_info['group_type'] == GROUP_OPEN ) ? ' checked="checked"' : '';
	$group_closed = ( $group_info['group_type'] == GROUP_CLOSED ) ? ' checked="checked"' : '';
	$group_hidden = ( $group_info['group_type'] == GROUP_HIDDEN ) ? ' checked="checked"' : '';
Füge danach ein:

Code: Alles auswählen

	$wiol_permitted = ( $group_info['group_wiol'] == WIOL_PERMITED ) ? ' checked="checked"' : '';
	$wiol_denied = ( $group_info['group_wiol'] == WIOL_DENIED ) ? ' checked="checked"' : '';
Suche:

Code: Alles auswählen

		'L_GROUP_OPEN' => $lang['group_open'],
		'L_GROUP_CLOSED' => $lang['group_closed'],
		'L_GROUP_HIDDEN' => $lang['group_hidden'],
füge danach ein:

Code: Alles auswählen

		'L_GROUP_WIOL' => $lang['group_wiol'],
		'L_PERMITTED' => $lang['permitted'],
		'L_DENIED' => $lang['denied'],
Suche:

Code: Alles auswählen

		'S_GROUP_OPEN_CHECKED' => $group_open,
		'S_GROUP_CLOSED_CHECKED' => $group_closed,
		'S_GROUP_HIDDEN_CHECKED' => $group_hidden,
Füge danach ein:

Code: Alles auswählen

		'S_WIOL_DENIED_CHECKED' => $wiol_denied,
		'S_WIOL_PERMITTED_CHECKED' => $wiol_permitted,
		'S_WIOL_DENIED' => WIOL_DENIED,
		'S_WIOL_PERMITED' => WIOL_PERMITED,
Suche:

Code: Alles auswählen

			$sql = "UPDATE " . GROUPS_TABLE . "
				SET group_type = $group_type, group_name = '" . str_replace("\'", "''", $group_name) . "', group_description = '" . str_replace("\'", "''", $group_description) . "', group_moderator = $group_moderator 
				WHERE group_id = $group_id";
darin suche:

Code: Alles auswählen

SET group_type = $group_type,
füge danach ein: (Leerzeichen auch !)

Code: Alles auswählen

 group_wiol = $group_wiol,
Suche

Code: Alles auswählen

			$sql = "INSERT INTO " . GROUPS_TABLE . " (group_type, group_name, group_description, group_moderator, group_single_user) 
				VALUES ($group_type, '" . str_replace("\'", "''", $group_name) . "', '" . str_replace("\'", "''", $group_description) . "', $group_moderator,	'0')";
ersetze mit:

Code: Alles auswählen

			$sql = "INSERT INTO " . GROUPS_TABLE . " (group_type, group_wiol, group_name, group_description, group_moderator, group_single_user) 
				VALUES ($group_type, $group_wiol, '" . str_replace("\'", "''", $group_name) . "', '" . str_replace("\'", "''", $group_description) . "', $group_moderator,	'0')";
Öffne templates\subSilver\admin\group_edit_body.tpl
Suche:

Code: Alles auswählen

	<!-- BEGIN group_edit -->
Füge DAVOR ein:

Code: Alles auswählen

	<tr>
	  <td class="row1" width="38%"><span class="gen">{L_GROUP_WIOL}:</span></td>
	  <td class="row2" width="62%"> 
		<input type="radio" name="group_wiol" value="{S_WIOL_PERMITED}" {S_WIOL_PERMITTED_CHECKED} /> {L_PERMITTED} &nbsp;&nbsp;<input type="radio" name="group_wiol" value="{S_WIOL_DENIED}" {S_WIOL_DENIED_CHECKED} />	{L_DENIED}</td> 
	</tr>
Öffne jede language\lang_****\lang_admin.php
Suche:

Code: Alles auswählen

// That's all Folks!
// Na Gott sei Dank!
//
Füge DAVOR ein:

Code: Alles auswählen

// Who is online Permission
$lang['group_wiol'] = 'Wer ist online Liste Sichtbarkeit';
$lang['permitted'] = 'erlaubt';
$lang['denied'] = 'verbieten';
Speichern, schliessen, hochladen

Nun gehen ins ACP und schaue mithilfe von phpmyadmin ob die Einstellung auch schön in der Datenbank ankommt

klappt es soweit?
Die Weisheit verfolgte mich sekundenlang...
Aber sie überholte mich und war fortan nicht mehr gesehen !!!
holzi12
Mitglied
Beiträge: 22
Registriert: 21.07.2005 10:07

Beitrag von holzi12 »

Danke erstmal, eine Kleines Problem hab ich da:

Wenn ich versuche bei einer Gruppe die Berechtigung zu setzen kommt im apc diese Meldung:

SQL Error : 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' group_name = "Gruppe.1', group_description = '', group_moderator = 2 ' at line 2

UPDATE phpbb_groups SET group_type = 2, group_wiol = , group_name = 'Gruppe.1', group_description = '', group_moderator = 2 WHERE group_id = 3

Line : 343
File : admin_groups.php

dort ist folgender Code

Code: Alles auswählen

$sql = "UPDATE " . GROUPS_TABLE . "
				SET group_type = $group_type,  group_wiol = $group_wiol,  group_name = '" . str_replace("\'", "''", $group_name) . "', group_description = '" . str_replace("\'", "''", $group_description) . "', group_moderator = $group_moderator 
				WHERE group_id = $group_id";
			if ( !$db->sql_query($sql) )
			{
				message_die(GENERAL_ERROR, 'Could not update group', '', __LINE__, __FILE__, $sql);
			}
Ich hab wahrscheinlich grad Tomaten auf den Augen, aber ich finde den Fehler nicht *heul*
shwepsi
Mitglied
Beiträge: 1697
Registriert: 02.06.2003 14:37
Wohnort: NRW - immer dem Monitorleuchten folgen...
Kontaktdaten:

Beitrag von shwepsi »

sorry, da fehlte eine Zeile

öffne admin/admin_groups.php
suche:

Code: Alles auswählen

$group_type = isset($HTTP_POST_VARS['group_type']) ? intval($HTTP_POST_VARS['group_type']) : GROUP_OPEN;
füge danach ein:

Code: Alles auswählen

		$group_wiol = isset($HTTP_POST_VARS['group_wiol']) ? intval($HTTP_POST_VARS['group_wiol']) : WIOL_DENIED;
Die Weisheit verfolgte mich sekundenlang...
Aber sie überholte mich und war fortan nicht mehr gesehen !!!
holzi12
Mitglied
Beiträge: 22
Registriert: 21.07.2005 10:07

Beitrag von holzi12 »

ok danke :)

das funktioniert mal 8)
shwepsi
Mitglied
Beiträge: 1697
Registriert: 02.06.2003 14:37
Wohnort: NRW - immer dem Monitorleuchten folgen...
Kontaktdaten:

Beitrag von shwepsi »

holzi12 hat geschrieben:ok danke :)

das funktioniert mal 8)
gut, der Rest muss mal leider warten ... ich muss leider gerade 2 Stunden weg
Die Weisheit verfolgte mich sekundenlang...
Aber sie überholte mich und war fortan nicht mehr gesehen !!!
Antworten

Zurück zu „phpBB 2.0: Mod Suche/Anfragen“