[3.2] [3.3] Adventskalender für phpBB

In diesem Forum können Extension-Autoren ihre Extensions vorstellen, die sich noch im Entwicklungsstatus befinden. Der Einbau in Foren im produktiven Betrieb wird nicht empfohlen.
HJW
Mitglied
Beiträge: 1291
Registriert: 20.04.2007 20:48
Wohnort: 45481 Mülheim an der Ruhr
Kontaktdaten:

Re: Adventskalender für phpBB 3.1.x/3.2.x

Beitrag von HJW »

Code: Alles auswählen

<!-- IF  S_GROUP_2  -->echo $user->data['user_id'];<!-- ENDIF -->
Hallo,

wenn sich da nichts geändert hat, dann darf und muss nach dem <-- und vor dem --> nur ein Blank sein. Außerdem ist der Code für eine Template-Seite und du hast da ein php-Code eingefügt. Wenn du diesen Code in die listener.php einfügst, gibt es natürlich eine Fehlermeldung.
Zuletzt geändert von HJW am 22.11.2017 18:28, insgesamt 1-mal geändert.
Benutzeravatar
Melmac
Ehemaliges Teammitglied
Beiträge: 3623
Registriert: 15.10.2012 03:27

Re: Adventskalender für phpBB 3.1.x/3.2.x

Beitrag von Melmac »

donsenilo hat geschrieben:
Mahony hat geschrieben:Hallo donsenilo
Evtl. klappt es ja so >>> Template Variable zur Prüfung der Gruppen Mitgliedschaft

Grüße: Mahony
Danke für den Tipp, aber das kann nicht funktionieren, da dies für 3.0 ist.
Wie wäre es stattdessen dann mit dieser hier => Group Template Variables - was deren Kompatibilität mit 3.2 betrifft verlasse ich mich jetzt mal auf => https://www.phpbb.com/customise/db/exte ... pic/176221
Handle nur nach derjenigen Maxime, durch die du zugleich wollen kannst, dass sie ein allgemeines Gesetz werde.
(Immanuel Kant)
Benutzeravatar
canonknipser
Ehemaliges Teammitglied
Beiträge: 2053
Registriert: 10.09.2011 11:14
Kontaktdaten:

Re: Adventskalender für phpBB 3.1.x/3.2.x

Beitrag von canonknipser »

Wenn ich mir die Fehlermeldung genauer angucke:
donsenilo hat geschrieben:
Parse error: syntax error, unexpected '<' in /data/web/e14661/html/psi/paranormal/ext/kirk/advent_calendar/event/listener.php on line 155
denke ich, dass du in der falschen Datei eingefügt hast. Die Zeile

Code: Alles auswählen

<!-- IF  S_GROUP_2  -->echo $user->data['user_id'];<!-- ENDIF -->
gehört in das entsprechende Template, nicht in den listener
Grüße, canonknipser
"there are only 10 types of people: those, who understand binary and those, who don't"
just arrived ;) - Bilder
Kein Support via PN, nur im Board und (manchmal) im IRC
Benutzeravatar
Mahony
Ehemaliges Teammitglied
Beiträge: 12178
Registriert: 17.11.2005 22:33
Wohnort: Ostfildern Kemnat
Kontaktdaten:

Re: Adventskalender für phpBB 3.1.x/3.2.x

Beitrag von Mahony »

Hallo
Also mach mal folgendes

Öffne die includes/functions.php

Suche nach

Code: Alles auswählen

'SITE_LOGO_IMG'			=> $user->img('site_logo'),
	));
Füge danach ein

Code: Alles auswählen

if ( !function_exists('group_memberships') )
    {
        include($phpbb_root_path . 'includes/functions_user.'.$phpEx);
    }
    $groups = group_memberships(false,$user->data['user_id']);
    foreach ($groups as $grouprec)
    {
        $template->assign_vars(array(
        'S_GROUP_' . $grouprec['group_id'] => true
        ));
    }
Öffne die \kirk\advent_calendar\styles\all\template\event\overall_header_breadcrumbs_after.html

Ersetze den kompletten Code mit

Code: Alles auswählen

<!-- IF U_ADVENT and S_ADVENT or ADMIN_ID or S_GROUP_6 -->
	<li class="small-icon icon-adventcalendar rightside" data-last-responsive="true"><a href="{U_ADVENT}" title="" role="menuitem">{L_ADVENT}</a></li>
<!-- ENDIF -->

Edit: Oder du nimmst diese (von Melmac empfohlene) Extension https://www.phpbb.com/customise/db/exte ... variables/ <<< damit ersparst du dir die Änderungen an der includes/functions.php

Wobei du die Änderung in der \kirk\advent_calendar\styles\all\template\event\overall_header_breadcrumbs_after.html dennoch machen musst.

Grüße: Mahony
Taekwondo in Berlin
Wer fragt, ist ein Narr für fünf Minuten, wer nicht fragt, ist ein Narr für immer.
Benutzeravatar
Kirk
Supporter
Supporter
Beiträge: 7869
Registriert: 24.05.2010 08:31
Kontaktdaten:

Re: Adventskalender für phpBB 3.1.x/3.2.x

Beitrag von Kirk »

Ich bin zwar nicht am Rechner, aber wenn es funktionieren sollte dann kann diese Gruppe den Kalender aufrufen, aber ich glaube nicht das man auch den Inhalt der einzelnen Tage sieht.
Benutzeravatar
donsenilo
Mitglied
Beiträge: 155
Registriert: 13.12.2011 18:44
Wohnort: Wien
Kontaktdaten:

Re: Adventskalender für phpBB 3.1.x/3.2.x

Beitrag von donsenilo »

Kirk hat geschrieben:Ich bin zwar nicht am Rechner, aber wenn es funktionieren sollte dann kann diese Gruppe den Kalender aufrufen, aber ich glaube nicht das man auch den Inhalt der einzelnen Tage sieht.
Ja, da hast du recht.

Ich habe nun die Änderungen von Mahony durchgeführt, wobei der Link zum Adventkalender gar nicht aufscheint (Cache hab ich sicherheitshalber geleert).
Wenn ich den Kalender direkt per URL aufrufe, wird dieser zwar angezeigt, aber (sowie Kirk es vermutet) beim Klick auf einen Tag kommt die Meldung
Haben wir etwa schon
DEZEMBER???!!!
Es gibt noch nichts !
Also ... naja ... leider haut das Ganze nicht hin und ich bin inzwischen schon ziemlich genervt ...

Aber bitte nicht falsch verstehen !!!
Ich liebe den Kalender und werde ihn so oder so verwenden. Aber das ganze Herumprobieren ist extrem frustrierend ... vor Allem, da PHPbb ja an vielen Stellen überprüft, ob jemand ein Admin ist oder nicht - und ich leider kein Vollprofi-Programmierer bez. PHPbb bin.
Ich werde aber dran bleiben, falls jemand evtl. noch Tipps oder Vorschläge hat ... denn ich denke, dass das Ganze für alle eine bzw. für diese Erweiterung generell eine brauchbare Ergänzung wäre.
----------------------------------
Sorry ... Nachtrag !
In der listener.php müsste ja auch

Code: Alles auswählen

// Admin id
$admin_id = 2;
geändert werden, sonst wird ja immer nur diese ID verwendet, oder ?
Thiesi
Mitglied
Beiträge: 87
Registriert: 02.08.2017 10:44

Re: Adventskalender für phpBB 3.1.x/3.2.x

Beitrag von Thiesi »

Hast du auch den Browser-Cache für den gesamten Zeitraum gelöscht?
Ist die Zeit allgemein im Forum richtig? Wenn nicht, könntest du dir mal das hier ansehen: http://www.unixtime.de
donsenilo hat geschrieben: geändert werden, sonst wird ja immer nur diese ID verwendet, oder ?
Ja, der originale Admin, also das Konto, was automatisch bei der Installation erstellt wird, hat immer die ID 2, wenn sie denn nicht geändert wurde.
Benutzeravatar
donsenilo
Mitglied
Beiträge: 155
Registriert: 13.12.2011 18:44
Wohnort: Wien
Kontaktdaten:

Re: Adventskalender für phpBB 3.1.x/3.2.x

Beitrag von donsenilo »

Thiesi hat geschrieben:Hast du auch den Browser-Cache für den gesamten Zeitraum gelöscht?
Ist die Zeit allgemein im Forum richtig? Wenn nicht, könntest du dir mal das hier ansehen: http://www.unixtime.de
donsenilo hat geschrieben: geändert werden, sonst wird ja immer nur diese ID verwendet, oder ?
Ja, der originale Admin, also das Konto, was automatisch bei der Installation erstellt wird, hat immer die ID 2, wenn sie denn nicht geändert wurde.
Browser-Cache ist ganz frisch und neu (Chrome und IE).
Die Zeit im Forum ist korrekt.
Das mit der Original-Admin-ID hatten wir schon ... und genau darum gehts ja ...

Im Prinzip ist die Frage, wie man die hardcoded-ID durch die vorgeschlagenen Codes ersetzen kann (was muss ich in der listener.php ändern ?).
Thiesi
Mitglied
Beiträge: 87
Registriert: 02.08.2017 10:44

Re: Adventskalender für phpBB 3.1.x/3.2.x

Beitrag von Thiesi »

Hi,

rufe PHPMyAdmin auf und rufe die Tabelle phpbb_users auf. Ändere dein Admin-Konto (siehst du ja am Benutzernamen) und stelle statt 2 deine Wunsch-ID ein.
Suche dann mal in der listener.php

Code: Alles auswählen

// Admin id
$admin_id = 2;
und ersetze mit

Code: Alles auswählen

// Admin id
$admin_id = [...];
Füge statt [...] deine gewünschte ID ein.
Zuletzt geändert von Thiesi am 22.11.2017 20:25, insgesamt 2-mal geändert.
Benutzeravatar
Mahony
Ehemaliges Teammitglied
Beiträge: 12178
Registriert: 17.11.2005 22:33
Wohnort: Ostfildern Kemnat
Kontaktdaten:

Re: Adventskalender für phpBB 3.1.x/3.2.x

Beitrag von Mahony »

Hallo
@Thiesi -- er will nicht seine ID ändern, sondern weiteren Admin-Benutzern den Zugriff ermöglichen!


Um wie viele Admins handelt es sich denn?

Falls nur EIN weiterer Admin abgefragt werden soll, dann würde ich das so machen:

Suche in der listner.php

Code: Alles auswählen

// Admin id
$admin_id = 2;
Füge danach ein

Code: Alles auswählen

// Admin id-2
$admin_id2 = xx;
xx muss mit der ID des Benutzers ersetzt werden!

Suche nach

Code: Alles auswählen

if ($heute_m == 12 || $this->user->data['user_id'] == $admin_id)
		{
			if ($tag_link <= $heute_t || $this->user->data['user_id'] == $admin_id)
			{
				$tuer_kl = implode('', file($a_path . $tag_link . '.php'));
			}
			else
Ersetze mit

Code: Alles auswählen

if ($heute_m == 12 || $this->user->data['user_id'] == $admin_id || $this->user->data['user_id'] == $admin_id2)
		{
			if ($tag_link <= $heute_t || $this->user->data['user_id'] == $admin_id || $this->user->data['user_id'] == $admin_id2)
			{
				$tuer_kl = implode('', file($a_path . $tag_link . '.php'));
			}
			else

Grüße: Mahony
Taekwondo in Berlin
Wer fragt, ist ein Narr für fünf Minuten, wer nicht fragt, ist ein Narr für immer.
Antworten

Zurück zu „Extensions in Entwicklung“