Simple Header Problem beim Sudoku MOD 1.0.6a

Allgemeiner Support zum phpBB 2 Board und phpBB 2 Modifikationen
Forumsregeln
Auch wenn hier der Support für phpBB 2 weiterhin aufrecht erhalten bleibt, weisen wir darauf hin, dass das phpBB 2 nicht mehr offiziell unterstützt und weiterentwickelt wird!
femu
Beiträge: 176
Registriert: Mo 22.Mai, 2006 10:36
Wohnort: Pfaffenhofen
Kontaktdaten:

Simple Header Problem beim Sudoku MOD 1.0.6a

Beitrag von femu »

Hallo Zusammen,

ich dachte mir, daß ich hier mal mein kleines Prolem auch mal poste. Wie ich Karsten kenn, fällt ihm bestimmt was dazu ein :D

Ok. In der angehängten Datei gibt's eine Funktion, die ein Helper PopUp öffnet (mode=helper). Das Problem, das ich dabei habe, ist, daß die normale overall_header.tpl / overall_footer.tpl gezogen werden.

Ich hab schon bei phpbb.de und phpbb.com gesucht und bin zumindest schon mal soweit gekommen, daß es irgendwie mit der Variable $gen_simple_header = true gehen soll. Allerdings krieg ich das nicht wirklich gebacken, weil ja nicht nur ein Template zum Aufruf definiert ist, sondern derer mehrere. Nun soll aber nur ganz speziell dieses eine (sudoku_helper.tpl) mit dem simple Header/Footer ausgestattet werden.

Wenn da jemand spontan die Lösung kennt, wäre ich sehr dankbar!

Vielen Dank und Gruß
Felix
Zuletzt geändert von femu am Do 24.Mai, 2007 14:03, insgesamt 2-mal geändert.
Benutzeravatar
oxpus
Administrator
Beiträge: 28737
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Ja, korrekt:
Füge vor

Code: Alles auswählen

$template->set_filenames(array( 
		'body' => 'sudoku_helper_body.tpl'
die Zeile

Code: Alles auswählen

$gen_simple_header = true;
ein, um genau den Simple Header zu erhalten.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
femu
Beiträge: 176
Registriert: Mo 22.Mai, 2006 10:36
Wohnort: Pfaffenhofen
Kontaktdaten:

Beitrag von femu »

Hmmm ... Das hatte ich auch schon versucht. Aber wirkt irgendwie nicht. Habe auch mal den Browser Cache und den Orion Cache gelöscht, ändert aber nichts :-(

Also so schaut's jetzt bei mir aus:

Code: Alles auswählen

if ( $mode == 'helper'&&$sudoku_user['game_helper'] )
{
$gen_simple_header = true;
$template->set_filenames(array( 
		'body' => 'sudoku_helper_body.tpl'
		));
sudoku_build_helper($sudoku_user);
		$template->assign_vars(array(
		'L_SUDOKU_HELPER_TITLE' =>$lang['sudoku_helper_title'],
		'L_SUDOKU_HELPER_EXPLAIN'=>$lang['sudoku__game_helper_explain'],
		'L_SUDOKU_HIDE_HELPER' =>$lang['sudoku_helper_hide'],
		'L_SUDOKU_RELOAD_HELPER' =>$lang['sudoku_helper_reload'],
		

		));
Aus einem mir nicht nachvollziehbaren Grund greift diese Variable nicht .... Gibt's vielleicht eine Möglichkeit etwas einzufügen, daß mir zeigt, daß die Variable auch tatsächlich vorhanden ist?

Kannst es auch gerne mal live anschauen (http://www.die-muellers.org/sudoku.php Login Testuser Pwd. tester)

Danke und Gruß
Felix
JaneDoe
Beiträge: 230
Registriert: Sa 16.Jul, 2005 12:18

Beitrag von JaneDoe »

In der 1.0.6.a wird ein "light" header includiert.
Benutzeravatar
AmigaLink
Beiträge: 5843
Registriert: Mi 03.Mär, 2004 09:05
Wohnort: NRW
Kontaktdaten:

Beitrag von AmigaLink »

[center].: Web Relax .::. Essen mit Freude .::. AmigaLink.de :.
______________________________________

Kein Support per PM, ICQ oder eMail!!!
[/center]
JaneDoe
Beiträge: 230
Registriert: Sa 16.Jul, 2005 12:18

Beitrag von JaneDoe »

Versteh ich nicht.

in dem Popup hängt alles auf halb 8 weil der normale header includiert wird.
In der neuen Version wird genau aus diesem Grunde ein light_header includiert was auch funktioniert.
Nun soll dort die Lösung des Problems sein den light_header wieder zu entfernen und den alten Zustand der hier angehängten Datei herzustellen.

Durchaus interessant ;)
Benutzeravatar
oxpus
Administrator
Beiträge: 28737
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Öhm, nein, da ging es doch eher darum, daß jemand den neuen Header verwenden wollte, ohne die neue Version zu besitzen.
So habe ich das jedenfalls verstanden...
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
AmigaLink
Beiträge: 5843
Registriert: Mi 03.Mär, 2004 09:05
Wohnort: NRW
Kontaktdaten:

Beitrag von AmigaLink »

Ich hab das nicht genau gelesen. Vergesst den link wieder. ;)
[center].: Web Relax .::. Essen mit Freude .::. AmigaLink.de :.
______________________________________

Kein Support per PM, ICQ oder eMail!!!
[/center]
Benutzeravatar
oxpus
Administrator
Beiträge: 28737
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Daher hatte ich auch noch nichts gesperrt ;)
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
femu
Beiträge: 176
Registriert: Mo 22.Mai, 2006 10:36
Wohnort: Pfaffenhofen
Kontaktdaten:

Beitrag von femu »

Da war Karsten mal wieder 'ne Minute schneller ...

@ Amigalink: Das ist definitiv das Beste ;)

Dieser Light Header ist total verstümmelt und zeigt dann auch die normale Seite verstümmelt an. Die overall_light_header.php und die passende .tpl am besten gleich löschen!

Darum habe ich den im ersten Step mal mit dem normalen Header versehen. So wird wenigstens die Haupt- und Spielseite normal im Forum angezeigt, wie es sich gehört.

Jetzt geht's ja nur noch um das Finetuning bezgl des PopUps. Der Rest läuft ja einwandfrei.
Benutzeravatar
oxpus
Administrator
Beiträge: 28737
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Okay, so sollte es gehen:
Füge mal vor die Zeile

Code: Alles auswählen

include($phpbb_root_path . 'includes/page_header.'.$phpEx); 
diese Zeilen ein:

Code: Alles auswählen

if ( htmlspecialchars($_GET['mode']) == 'helper' )
{
	$sudoku_user = get_sudoku_user($user_id);
	if ($sudoku_user['game_helper'])
	{
		$gen_simple_header = true;
	}
}
und natürlich meine zuerst gepostete Änderung rückgängig machen...
Zuletzt geändert von oxpus am Mo 21.Mai, 2007 19:08, insgesamt 1-mal geändert.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
AmigaLink
Beiträge: 5843
Registriert: Mi 03.Mär, 2004 09:05
Wohnort: NRW
Kontaktdaten:

Beitrag von AmigaLink »

Hmmm - wäre es nicht evtl. sinnvoller (einfacher) den Light Header zu reparieren, anstatt irgendwelche anderen Verrenkungen zu machen?
[center].: Web Relax .::. Essen mit Freude .::. AmigaLink.de :.
______________________________________

Kein Support per PM, ICQ oder eMail!!!
[/center]
Benutzeravatar
oxpus
Administrator
Beiträge: 28737
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Wieso?
Man muss doch nicht immer einen 2. Header verwenden, wenn das phpBB doch alles liefert, was gewünscht ist...
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
AmigaLink
Beiträge: 5843
Registriert: Mi 03.Mär, 2004 09:05
Wohnort: NRW
Kontaktdaten:

Beitrag von AmigaLink »

Grundsätzlich gebe ich dir da natürlich recht. Aber wenn ich das richtig verstanden habe, dann wird normalerweise von dem MOD generell eine light_header.php anstelle der page_header.php aufgerufen. Das ist IMHO beim Sudoku eine sehr sehr gute sache. Denn während des Spiels wird die Seite sehr sehr oft neu geladen und somit jedesmal (absolut unnötig) der ganze Code der page_header.php ausgeführt. Das führt schon bei einem Original Vanilla zu einer nicht unerheblichen Serverbelastung (vor allem wenn mehrere User gleichzeitig Spielen) und bei einem gemoddetem Board ... :eek:
Ich nutze auf EmF ebenfalls Sudoku (von einem anderem Autor) und lasse genau aus diesem Grund sehr viel Code nicht ausführen wenn sich der User im Sudoku befindet. Die Lösung mit dem light_header ist aber für Admins ohne PHP-Erfahrung garantiert die einfachere.
[center].: Web Relax .::. Essen mit Freude .::. AmigaLink.de :.
______________________________________

Kein Support per PM, ICQ oder eMail!!!
[/center]
JaneDoe
Beiträge: 230
Registriert: Sa 16.Jul, 2005 12:18

Beitrag von JaneDoe »

[quote="femu";p="73121"]Da war Karsten mal wieder 'ne Minute schneller ...

@ Amigalink: Das ist definitiv das Beste ;)

Dieser Light Header ist total verstümmelt und zeigt dann auch die normale Seite verstümmelt an. Die overall_light_header.php und die passende .tpl am besten gleich löschen!

Darum habe ich den im ersten Step mal mit dem normalen Header versehen. So wird wenigstens die Haupt- und Spielseite normal im Forum angezeigt, wie es sich gehört.

Jetzt geht's ja nur noch um das Finetuning bezgl des PopUps. Der Rest läuft ja einwandfrei.[/quote]

So sieht das in einem Standardboard aus, ohne irgendwelche Mods.

Da würd ich von verstümmelt nicht reden. Da scheint mir doch das Problem woanders.
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
femu
Beiträge: 176
Registriert: Mo 22.Mai, 2006 10:36
Wohnort: Pfaffenhofen
Kontaktdaten:

Beitrag von femu »

Mit verstümmelt meinte ich auch nicht das PopUp, sondern die normale Seite. Mit dem Light Zeugs wird ja mein Layout nicht dargestellt. Und da gehört der Mod halt rein. Und nicht in irgendein Irgendwas Layout. Das Spiel soll ja schließlich wie die anderen Sachen einen Teil meines Boards darstellen.

Also bitte zurück zum Thema bzw. meiner Frage (programmiertechnisch!). Die Fragestellung war schließlich eine andere.

@ Karsten: Das war des Rätsels Lösung! Super. Vielen Dank wie immer!

@ Amigalink & Karsten: Die von Amigalink angesprochene Variante zu überlegen ist wahrscheinlich gar nicht mal so übel. Ich kenne mich da ja zu wenig aus, aber ich denke sowas in der Art wie beim Editieren eines Textes mit Ajax nur für das Sudoku Board wäre dann vermutlich die eleganteste Variante. Bei mir ist das jetzt nicht so dramatisch, da ich nur eine kleine Gemeinde habe, aber für andere kann sich das dann schon bemerkbar machen.


Schönen Abend noch zusammen und Gruß
Felix
Benutzeravatar
oxpus
Administrator
Beiträge: 28737
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

@AmigaLink
Nun, man könnte, wenn Teile der page_header.php sinnvoll sind, auch eine andere Variable definieren und damit noch mehr "ausblenden", um die Last weiter zu verringern...
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
femu
Beiträge: 176
Registriert: Mo 22.Mai, 2006 10:36
Wohnort: Pfaffenhofen
Kontaktdaten:

Beitrag von femu »

[quote="AmigaLink";p="73125"]Grundsätzlich gebe ich dir da natürlich recht. Aber wenn ich das richtig verstanden habe, dann wird normalerweise von dem MOD generell eine light_header.php anstelle der page_header.php aufgerufen. Das ist IMHO beim Sudoku eine sehr sehr gute sache. Denn während des Spiels wird die Seite sehr sehr oft neu geladen und somit jedesmal (absolut unnötig) der ganze Code der page_header.php ausgeführt. Das führt schon bei einem Original Vanilla zu einer nicht unerheblichen Serverbelastung (vor allem wenn mehrere User gleichzeitig Spielen) und bei einem gemoddetem Board ... :eek:
Ich nutze auf EmF ebenfalls Sudoku (von einem anderem Autor) und lasse genau aus diesem Grund sehr viel Code nicht ausführen wenn sich der User im Sudoku befindet. Die Lösung mit dem light_header ist aber für Admins ohne PHP-Erfahrung garantiert die einfachere.[/quote]

Moin. Ich hab mir das gerade mal bei Dir angeschaut. Ist aber genauso (zumindest auf den ersten Blick), wie ich es bei mir auch habe. Der Sudoku, den ich verwende (gibt's im Übrigen hier. Weiter unten im Thread auch ein Upgrade Tool für das vorhandene)), ist eine Erweiterung des MODs, den Du auch verwendest. Er wurde lediglich um einige Funktionen erweitert (Cash MOD Integration, Helper, etc.)

Es sieht bei mir also genau gleich aus und es wird halt nach jedem Zug das Fenster (inkl. der standard overall_header.tpl / -footer.tpl) geladen.

Daher meine Idee, das Spieleboard mit Ajax Funktionalität zu versehen, so daß nur das Brett an sich geladen/geändert wird. Das wäre natürlich der Idealfall :p

Ob das überhaupt und wenn ja, wie das gemacht werden könnte, bin ich natürlich überfragt. Das kann dann eher Oxpus wieder beantworten.

Zumindest ist ja erst mal mein Problem gelöst und ich kann mir merken, wie ich das machen muß, wenn ich das so ähnlich mal wieder brauchen sollte :D


Gruß
Felix
Benutzeravatar
oxpus
Administrator
Beiträge: 28737
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Öhm, ja, Ajax wäre hier nicht verkehrt, um gerade die Zahlen in das Spielbrett einzutragen und auch gleich prüfen zu lassen, wenn man einen Fehler gemacht hat.
Aber da ich selbst den soduko MOD kaum kenne und noch diverse andere Baustellen offen sind, werde ich mich da in näherer Zukunft nicht unbedingt dran austoben...
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
AmigaLink
Beiträge: 5843
Registriert: Mi 03.Mär, 2004 09:05
Wohnort: NRW
Kontaktdaten:

Beitrag von AmigaLink »

oxpus hat geschrieben:Nun, man könnte, wenn Teile der page_header.php sinnvoll sind, auch eine andere Variable definieren und damit noch mehr "ausblenden", um die Last weiter zu verringern...
Das mache ich ja bei mir. :)
Ich sag ja nur das die light_header Variante für PHP-Unerfahrene die bessere Lösung ist. ;)
femu hat geschrieben:Moin. Ich hab mir das gerade mal bei Dir angeschaut. Ist aber genauso (zumindest auf den ersten Blick), wie ich es bei mir auch habe.
Nur auf den ersten Blick! :D
oxpus hat geschrieben:Öhm, ja, Ajax wäre hier nicht verkehrt, um gerade die Zahlen in das Spielbrett einzutragen und auch gleich prüfen zu lassen, wenn man einen Fehler gemacht hat.
Stimmt, das wäre eine Prima sache.
Fördert den Spielfluss und senkt den Traffic. Vielleicht setzt das einer der Autoren ja mal irgendwann um.
[center].: Web Relax .::. Essen mit Freude .::. AmigaLink.de :.
______________________________________

Kein Support per PM, ICQ oder eMail!!!
[/center]
Benutzeravatar
oxpus
Administrator
Beiträge: 28737
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Naja, Ajax verringert den Traffic zum User-Client (Browser), aber ob das hier auch wirklich mehr Zeit bringt, wage ich mal hier zu bezweifeln...
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
AmigaLink
Beiträge: 5843
Registriert: Mi 03.Mär, 2004 09:05
Wohnort: NRW
Kontaktdaten:

Beitrag von AmigaLink »

Wäre auf jeden Fall recht angenehm.
Allerdings könnte es auch störend sein, wenn der Server lahmt. :(

Egal, ich brauche es nicht.
Auf EmF läuft das Speil auch so sehr zügig. :)
[center].: Web Relax .::. Essen mit Freude .::. AmigaLink.de :.
______________________________________

Kein Support per PM, ICQ oder eMail!!!
[/center]
Benutzeravatar
oxpus
Administrator
Beiträge: 28737
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Wie sieht es denn eigentlich mit Gamepacks aus?
Dem MOD sind ja 20 Spiele beigelegt (nicht gerade viel) und wieviele gibts dann mit weiteren Packs?
Und kann man die auch selber erstellen?

Wäre übel, wenn ein User in kurzer Zeit alle Spiele durchwurschtelt. Der verliert dann sofort das Interesse daran...
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
JaneDoe
Beiträge: 230
Registriert: Sa 16.Jul, 2005 12:18

Beitrag von JaneDoe »

Da ist sowohl ein Generator für einzelne Spiele im Acp integriert als auch für komplette Gamepacks zum erstellen usw..
Dieser Satz kein Verb.
Benutzeravatar
oxpus
Administrator
Beiträge: 28737
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Ich werde den mal ausprobieren.
Schliesslich ist es ein extrem interessantes Spiel...
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Antworten