Notification + Archiv Mods wie kombinieren? (gelöst!)

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
Overhead
Mitglied
Beiträge: 609
Registriert: 13.03.2007 16:04
Wohnort: Germersheim

Notification + Archiv Mods wie kombinieren? (gelöst!)

Beitrag von Overhead »

Zuerst habe ich den notification mod eingebaut

Installations Text hier

dannach habe ich den archive mod eingebaut - habe allerdings erst im nachhinein bemerkt das dadurch in der admin_forum.php eine modifiziert Stelle bearbeitet wurde.

Installations Text von Archive mod hier

In der admin_forums.php gibt es ursprünglich folgende Codezeilen (etwa ab 286):

Code: Alles auswählen

else
{
	$l_title = $lang['Create_forum'];
	$newmode = 'createforum';
        $buttonvalue = $lang['Create_forum'];
        
        $forumdesc = '';
	$forumstatus = FORUM_UNLOCKED;
	$forum_id = ''; 
	$prune_enabled = '';
}
Der notification-mod will, dass die Zeilen gefunden werden und dann durch folgendes ersetzt werden:

Code: Alles auswählen

else
{
	$l_title = $lang['Create_forum'];
	$newmode = 'createforum';
	$buttonvalue = $lang['Create_forum'];

	$forumdesc = '';
	$forumstatus = FORUM_UNLOCKED;
	$forum_id = ''; 
	$prune_enabled = '';
	$forum_notify = '1';
}

( $forum_notify == '1' ) ? $notify_enabled = "selected=\"selected\"" : $notify_disabled = "selected=\"selected\"";
$notifylist = "<option value=\"1\" $notify_enabled>" . $lang['Forum_notify_enabled'] . "</option>\n";
$notifylist .= "<option value=\"0\" $notify_disabled>" . $lang['Forum_notify_disabled'] . "</option>\n";
Soweit so gut. Nun will aber der archive-mod an einer bestimmten Stelle eingetragen werden:

Code: Alles auswählen

$forumdesc = '';
	$forumstatus = FORUM_UNLOCKED;
	$forum_id = '';
	$prune_enabled = '';
 // add archiv mod
        $forum_default_archive = 0;
        $forum_enable_archive = 0;
    //end add archiv mod
	$forum_notify = '1';
Also genau in eine Modifikation hinein – kollidieren nun die Befehle miteinander – augenscheinlich werden Sie ja vom phpBB richtig abgearbeitet – mit dem bekannten Fehler im ACP, dass der archive-mod sich dort nicht richtig einstellen lässt, weil beide Mods den gleichen Schalter nutzen. (siehe Bild)

[ externes Bild ]

Mit anderen Worten der notifcation mod funktioniert noch - und beim Archive mod, musste nun von Hand in der Datenbank der Schalter von 0 auf 1 gesetzt werden - Leider müsste ich das jedesmal von Hand machen sobald ich dem Forum einen weiteren Bereich hinzufügen wollte weil sonst der neue Bereich nicht archivierbar wäre.

Frage: An welcher Stelle müsste ich in der admin_forums.php etwas ändern um die zwei wieder auseinander zu bekommen (liegt als txt hier), bzw. in welchem Template müsste ich eine Änderung vornehmen, damit die zwei getrennt angezeigt werden?

Danke.

cu Overhead
Zuletzt geändert von Overhead am 18.04.2007 16:55, insgesamt 1-mal geändert.
== MAKE MY DAY ==
Benutzeravatar
S2B
Ehemaliges Teammitglied
Beiträge: 3258
Registriert: 10.08.2004 22:48
Wohnort: Aachen
Kontaktdaten:

Beitrag von S2B »

Code: Alles auswählen

else
{
   $l_title = $lang['Create_forum'];
   $newmode = 'createforum';
   $buttonvalue = $lang['Create_forum'];

   $forumdesc = '';
   $forumstatus = FORUM_UNLOCKED;
   $forum_id = '';
   $prune_enabled = '';
   $forum_default_archive = 0;
   $forum_enable_archive = 0;
   $forum_notify = '1';
}

( $forum_notify == '1' ) ? $notify_enabled = "selected=\"selected\"" : $notify_disabled = "selected=\"selected\"";
$notifylist = "<option value=\"1\" $notify_enabled>" . $lang['Forum_notify_enabled'] . "</option>\n";
$notifylist .= "<option value=\"0\" $notify_disabled>" . $lang['Forum_notify_disabled'] . "</option>\n";
So muss es später aussehen, allerdings dürfte sich das nicht darauf auswirken, ob die Einstellungen des Archive MODs angezeigt werden oder nicht...

Dass die Beschreibung für den Archive MOD unter dem Eintrag des anderen MODs steht, liegt daran, dass du sie wahrscheinlich beim Einbau an die falsche Stelle gepackt hast. Die Beschreibung gehört zum Foren-Status-Feld, da man dort "Archiv" auswählen kann (markiert das Forum als Archiv).
Gruß, S2B
Keinen Support per ICQ/PM!
Hier kann man meine PHP-Skripte und meine MODs für phpBB runterladen.
Benutzeravatar
Overhead
Mitglied
Beiträge: 609
Registriert: 13.03.2007 16:04
Wohnort: Germersheim

Beitrag von Overhead »

@ S2B

Ich hatte mich da wohl etwas missverständlich ausgedrückt -

Beide Mods greifen genau an der gleichen Stelle ein:

Wenn Du den notification verbaust läßt er Dich nach dem suchen was ich in dem ersten Codeblock geschrieben habe (siehe dazu den Installationstext des mods ab Zeile 847)

Code: Alles auswählen

# 
#-----[ FIND ]------------------------------------------ 
# 

else
{
	$l_title = $lang['Create_forum'];
	$newmode = 'createforum';
        $buttonvalue = $lang['Create_forum'];
        
        $forumdesc = '';
	$forumstatus = FORUM_UNLOCKED;
	$forum_id = ''; 
	$prune_enabled = '';
}

# 
#-----[ REPLACE WITH ]------------------------------------------ 
#  

else
{
	$l_title = $lang['Create_forum'];
	$newmode = 'createforum';
	$buttonvalue = $lang['Create_forum'];

	$forumdesc = '';
	$forumstatus = FORUM_UNLOCKED;
	$forum_id = ''; 
	$prune_enabled = '';
	$forum_notify = '1';
}

( $forum_notify == '1' ) ? $notify_enabled = "selected=\"selected\"" : $notify_disabled = "selected=\"selected\"";
$notifylist = "<option value=\"1\" $notify_enabled>" . $lang['Forum_notify_enabled'] . "</option>\n";
$notifylist .= "<option value=\"0\" $notify_disabled>" . $lang['Forum_notify_disabled'] . "</option>\n";
- der archive mod läßt Dich nach genau dem gleichen Block suchen (Installtionstext des mods ab Zeile 127)

Code: Alles auswählen

#
#-----[ FIND ]---------------------------------------------------
#
				$forum_id = ''; 
				$prune_enabled = '';

#
#-----[ AFTER, ADD ]---------------------------------------------
#
				$forum_default_archive = 0;
				$forum_enable_archive = 0;
, d.h. der zweite mod möchte dort eine Eintragung angehängt haben, dieser Anhang steht dann aber mitten im Block der durch den ersten mod schon verändert wurde, wie Du siehst habe ich das nicht an die falsche Stelle gepackt sondern dorthin wo es die modder wollten.

und so sieht das dann aus:

Code: Alles auswählen

   else
{
	$l_title = $lang['Create_forum'];
	$newmode = 'createforum';
	$buttonvalue = $lang['Create_forum'];

	$forumdesc = '';
	$forumstatus = FORUM_UNLOCKED;
	$forum_id = '';
	$prune_enabled = '';
 // add archiv mod
        $forum_default_archive = 0;
		$forum_enable_archive = 0;
    //end add archiv mod
	$forum_notify = '1';
}

( $forum_notify == '1' ) ? $notify_enabled = "selected=\"selected\"" : $notify_disabled = "selected=\"selected\"";
$notifylist = "<option value=\"1\" $notify_enabled>" . $lang['Forum_notify_enabled'] . "</option>\n";
$notifylist .= "<option value=\"0\" $notify_disabled>" . $lang['Forum_notify_disabled'] . "</option>\n";

 // add archiv mod
 include($phpbb_root_path . "includes/functions_archive.$phpEx");
 //end add archiv mod
			$catlist = get_list('category', $cat_id, TRUE);

   // replace by archiv mod
   //		$forumstatus == ( FORUM_LOCKED ) ? $forumlocked = "selected=\"selected\"" : $forumunlocked = "selected=\"selected\"";
   // add archiv mod
            $forumlocked = ($forumstatus == FORUM_LOCKED) ? 'selected="selected"' : '';
			$forumunlocked = ($forumstatus == FORUM_UNLOCKED) ? 'selected="selected"' : '';
			$forumarchive = ($forumstatus == FORUM_ARCHIVE) ? ' selected="selected"' : '';

			$forum_enable_archive_yes = ($forum_enable_archive) ? ' checked="checked"' : '';
			$forum_enable_archive_no = (!$forum_enable_archive) ? ' checked="checked"' : '';
// End add archiv mod
Das hier das Foren Statusfeld ist klar, im ACP gibt es aber dadurch nur die Möglichkeit das abonnieren zu erlauben oder zu verbieten, es wird dadurch nur die Sache des notification mod geschaltet der archiv mod der das gleiche Feld benutzen will bleibt dann außen vor, und der sollte dort eigentlich die Möglichkeit der Archivierung ein- oder ausschalten bieten.

Wenn ich nun Dein Snippet verbaue mache ich ja eigentlich nur die Bereinigung des Codes um meine Kommentierung - zumindest ist mir da nichts anderes aufgefallen - oder habe ich da etwas übersehen?

cu Overhead
== MAKE MY DAY ==
Benutzeravatar
S2B
Ehemaliges Teammitglied
Beiträge: 3258
Registriert: 10.08.2004 22:48
Wohnort: Aachen
Kontaktdaten:

Beitrag von S2B »

S2B hat geschrieben:Dass die Beschreibung für den Archive MOD unter dem Eintrag des anderen MODs steht, liegt daran, dass du sie wahrscheinlich beim Einbau an die falsche Stelle gepackt hast. Die Beschreibung gehört zum Foren-Status-Feld, da man dort "Archiv" auswählen kann (markiert das Forum als Archiv).
Das bezog sich auf die Änderungen an der tpl-Datei (imho admin/forum_edit_body.tpl).

Zu deinem PHP-Problem hatte ich oben schon die Lösung gepostet.
Gruß, S2B
Keinen Support per ICQ/PM!
Hier kann man meine PHP-Skripte und meine MODs für phpBB runterladen.
Benutzeravatar
Overhead
Mitglied
Beiträge: 609
Registriert: 13.03.2007 16:04
Wohnort: Germersheim

Beitrag von Overhead »

@ S2B

nach Deiner Erklärung hat es geklingelt (manchmal dauert es halt länger) - jetzt habe ich in dem von Dir genannten tpl nachgeschaut und dort den Einbaufehler gefunden - der Bereich Status war weg und durch die Notification ersetz - nachdem ich nun den Statusbereich aus der Originalinstallation reingenommen habe und dann durch die archive mod Eintragung ergänzt habe werden nun beide Möglichkeiten angezeigt und ausgeführt - Dein snippet hatte ich sicherehitshalber in der php auch verbaut - und nun läuft es.

Vielen Dank!

cu Overhead
== MAKE MY DAY ==
Antworten

Zurück zu „phpBB 2.0: Mod Support“