Statt "user_level = admin", nur "user_id = 2&

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
Benutzeravatar
ATARI
Mitglied
Beiträge: 1684
Registriert: 22.02.2004 16:51
Wohnort: Monaco Di Bavaria

Statt "user_level = admin", nur "user_id = 2&

Beitrag von ATARI »

Hi Leute,


ich würde gern in mein Forum den "Disallow editing/deleting administrator posts" Mod einbauen.
Dieser Mod macht, dass Moderatoren die Posts von Adminstratoren nicht mehr editieren und / oder löschen können.

Ich hätte aber dass da statt die Posts der Admins (Mehrzahl) nur meine Userid drinnen, die kein anderer editieren darf, also dass weder die Mods noch mein zweiter Admin meine Posts löschen/editieren kann.
Die Mods dürfen aber die Posts des zweiten Admins schon noch löschen/editieren.

Es sind sicher nur ein paar mal das Wort "admin" durch "id2" zu ersetzen, aber ich weiß leider nicht genau.

kann jemand helfen?

Code: Alles auswählen

###############################################
##	Hack Title:		Disallow editing/deleting administrator posts
##	Hack Version:	0.0.2
##	Author:			Freakin' Booty ;-P
##	Website:		http://freakingbooty.no-ip.com
##	Description:	Moderators cannot edit nor delete posts by administrators.
##	Compatibility:	2.0.3 - 2.0.11
##
##	Installation Level: Easy
##	Installation Time: 5
##
##	Files To Edit: 3
##		modcp.php
##		posting.php
##		language/lang_english/lang_main.php
##
##	Included Files: 0
##
##	History:
##      0.0.1:	Initial release.
##		0.0.2:	Confirmed to be compatible with 2.0.5 and 2.0.6.
##
##	Author Notes:
##		To upgrade from 0.0.1 to 0.0.2, you have to do... nothing :D. This release is only to confirm
##		compatibility with 2.0.5 and 2.0.6.
##
##	Support:		http://www.phpbbhacks.com/forums
##	Copyright:		©2003-04 Freakin' Booty ;-P - Disallow editing/deleting admin posts 0.0.2
##
###############################################
##	You downloaded this hack from phpBBHacks.com, the #1 source for phpBB related downloads.
##	Please visit http://www.phpbbhacks.com/forums for support.
###############################################
##
###############################################
##	This hack is released under the GPL License.
##	This hack can be freely used, but not distributed, without permission.
##	Intellectual Property is retained by the hack author(s) listed above.
###############################################

#
#-----[ OPEN ]--------------------------------------------
#
modcp.php

#
#-----[ FIND ]--------------------------------------------
#
# 2.0.3
#
switch( $mode )
{
	case 'delete':

#
#-----[ FIND ]--------------------------------------------
#
# 2.0.4 - 2.0.11
#
	case 'delete':
		if (!$is_auth['auth_delete'])
		{
			message_die(MESSAGE, sprintf($lang['Sorry_auth_delete'], $is_auth['auth_delete_type']));
		}

#
#-----[ AFTER, ADD ]--------------------------------------
#
		if( $userdata['user_level'] != ADMIN )
		{
			$topics_sql = ( isset($HTTP_POST_VARS['topic_id_list']) ) ? implode(',', $HTTP_POST_VARS['topic_id_list']) : $topic_id;
			$sql = "SELECT t.topic_id
					FROM " . TOPICS_TABLE . " t, " . USERS_TABLE . " u
					WHERE u.user_id = t.topic_poster
						AND u.user_level = " . ADMIN . "
						AND t.topic_id IN ($topics_sql)";
			if( !$result = $db->sql_query($sql) )
			{
				message_die(GENERAL_ERROR, 'Could not retrieve topics list', '', __LINE__, __FILE__, $sql);
			}

			if( $db->sql_numrows($result) > 0 )
			{
				message_die(GENERAL_MESSAGE, $lang['Not_auth_edit_delete_admin']);
			}
		}

#
#-----[ OPEN ]--------------------------------------------
#
posting.php

#
#-----[ FIND ]--------------------------------------------
#
		if ( empty($post_id) )
		{
			message_die(GENERAL_MESSAGE, $lang['No_post_id']);
		}

#
#-----[ AFTER, ADD ]--------------------------------------
#
		if( $userdata['user_level'] != ADMIN && ($mode == 'editpost' || $mode == 'delete' || $mode == 'poll_delete') )
		{
			$sql = "SELECT u.user_level
					FROM " . POSTS_TABLE . " p, " . USERS_TABLE . " u
					WHERE p.post_id = $post_id
						AND p.poster_id = u.user_id
						AND u.user_level = " . ADMIN;
			if( !$result = $db->sql_query($sql) )
			{
				message_die(GENERAL_ERROR, 'Could not retrieve post information', '', __LINE__, __FILE__, $sql);
			}
			if( $row = $db->sql_fetchrow($result) )
			{
				message_die(GENERAL_MESSAGE, $lang['Not_auth_edit_delete_admin']);
			}
		}
#
#-----[ OPEN ]--------------------------------------------
#
# Make sure to edit this file for every language installed
#
language/lang_english/lang_main.php

#
#-----[ FIND ]--------------------------------------------
#
//
// That's all, Folks!
// -------------------------------------------------

#
#-----[ BEFORE, ADD ]-------------------------------------
#
//
// Disallow editing/deleting administrator posts
//
$lang['Not_auth_edit_delete_admin'] = 'You cannot edit/delete an administrator\'s posts, sorry.';

#
#-----[ SAVE & CLOSE ALL FILES ]--------------------------
#
Man soll aufhören wenn´s am schönsten ist!

Servus phpBB! ;)
Benutzeravatar
SilverDragon
Mitglied
Beiträge: 238
Registriert: 31.07.2005 21:49
Wohnort: Osnabrück
Kontaktdaten:

Beitrag von SilverDragon »

Also ich würde das mal so versuchen:
in der modcp.php:
if( $userdata['user_level'] != ADMIN )
ändern in
if( $userdata['user_id'] != 2 )
in der posting.php
if( $userdata['user_level'] != ADMIN && ($mode == 'editpost' || $mode == 'delete' || $mode == 'poll_delete') )
ändern in:
if( $userdata['user_id] != 2 && ($mode == 'editpost' || $mode == 'delete' || $mode == 'poll_delete') )
eventuell muss die 2 so eingebeben werden: '2'



versuch macht klug.....
Benutzeravatar
ATARI
Mitglied
Beiträge: 1684
Registriert: 22.02.2004 16:51
Wohnort: Monaco Di Bavaria

Beitrag von ATARI »

merce..



jetzt suche ich noch ein einen kleinen flash-sound, den ich dann einfügen will (wie das geht weiß ich schon, keine sorge) wenn jemand meine posts editieren will, also zusätzlich zum $lang-eintrag!!


so ein fieses "hahaha" a la michael jackson im thriller video.. kann mir da auch noch jemand behilflich sein??


lang eintrag wird dann heißen: "Scher dich zum Teufel", und dazu halt noch so eine derbe teufels-lache in flash! ;)
Man soll aufhören wenn´s am schönsten ist!

Servus phpBB! ;)
Benutzeravatar
SilverDragon
Mitglied
Beiträge: 238
Registriert: 31.07.2005 21:49
Wohnort: Osnabrück
Kontaktdaten:

Beitrag von SilverDragon »

hat das nun geklappt, oder nicht ? würde ich gerne wissen.
...Versuch macht klug....
Benutzeravatar
ATARI
Mitglied
Beiträge: 1684
Registriert: 22.02.2004 16:51
Wohnort: Monaco Di Bavaria

Beitrag von ATARI »

ja hat schon geklappt
Man soll aufhören wenn´s am schönsten ist!

Servus phpBB! ;)
Antworten

Zurück zu „phpBB 2.0: Mod Support“