Seite 3 von 4

Verfasst: 15.07.2006 07:38
von Simpson
Hast du in der profile1.php neben dem Templatelink auch die Änderungen durchgeführt das die profile1.php auf sich selber zugreift und nicht wieder rüber zur profile.php wandert?

Verfasst: 15.07.2006 14:13
von scheibenbrot
Hallo,
ja klar, aber wie bekomm eich es hin, dass die profile1.php auf die richtige _body.tpl zugreift und nicht auf die profile_add_body.tpl??

Verfasst: 15.07.2006 17:54
von Simpson
Ach verdammt die profile.php war ja nur ne reine Kompassdatei, daran hab ich gar nicht mehr gedacht, sie verweist einen je nachdem was machen will beispielsweise zur usercp_register oder usercp_viewprofile, wo dann die tatsächlichen Arbeiten durchgeführt werden.

Kurz um kommt man um eine Kopie der jeweiligen Unterdateien auch nicht drumrum. Das ist natürlich mist, so werden beispielsweise bei 3 Seiten Profil 12 Dateien daraus (3x original unveränderte profile.php, usercp_register.php, profile_add.body.tpl und 9x veränderte Kopien von den selbigen).

Vor allem wird das natürlich ätzend wenn du mal ein update machst, die darfste dann alle ändern. Ich denke sinniger wäre es die Blöck in den Dateien zu kopieren.

In der profile.php suchste dir dann

Code: Alles auswählen

	else if ( $mode == 'editprofile' || $mode == 'register' )
	{
		if ( !$userdata['session_logged_in'] && $mode == 'editprofile' )
		{
			redirect(append_sid("login.$phpEx?redirect=profile.$phpEx&mode=editprofile", true));
		}

		include($phpbb_root_path . 'includes/usercp_register.'.$phpEx);
		exit;
	}
allerdings das lässte bei den Kopien weg:

Code: Alles auswählen

|| $mode == 'register'
und kopierst das darunter, mit der Änderung das aus editprofile1 wird und in der usercp_register.php kopierste ebenfalls die editprofile Blöcke unterneinander und änderst auf 1, 2, 3 etc. ab und dort auch die Templatverweise auf 1, 2, 3 etc.. Dann werden nur noch die Templatedateien mehr. Ich hoffe mein Gedanke ist da richtig, ich müsste das selber mal ausprobieren, denke aber es sollte gehen, wenn ich nichts ausser acht gelassen habe.

Das ist echt ne hinterhältige Schlange.

Verfasst: 15.07.2006 20:27
von scheibenbrot
Hallo,
ich versteh das jetzt nicht so ganz, was du meinst.

Verfasst: 15.07.2006 22:27
von Simpson
Also ich erklärs dir, aber sage dazu, auch das ist keine Ideallösung, aber egal, es ist schon mal besser als die vorherige.

Du brauchst keine Kopien mehr von der profile.php und auch keine von der usercp_register.php!

Wir lösen das jetzt so das du nur noch die Tempaltedatei profile_add_body.tpl nach profile_add_body1.tpl, profile_add_body2.tpl, profile_add_body3.tpl etc. kopieren musst.


öffne dazu die originale profile.php

suche:

Code: Alles auswählen

	else if ( $mode == 'editprofile' || $mode == 'register' )
	{
		if ( !$userdata['session_logged_in'] && $mode == 'editprofile' )
		{
			redirect(append_sid("login.$phpEx?redirect=profile.$phpEx&mode=editprofile", true));
		}

		include($phpbb_root_path . 'includes/usercp_register.'.$phpEx);
		exit;
	}
füge darunter ein:

Code: Alles auswählen

	else if ( $mode == 'editprofile1' )
	{
		if ( !$userdata['session_logged_in'] && $mode == 'editprofile1' )
		{
			redirect(append_sid("login.$phpEx?redirect=profile.$phpEx&mode=editprofile1", true));
		}

		include($phpbb_root_path . 'includes/usercp_register.'.$phpEx);
		exit;
	}
Das was du jetzt soeben eingefügt hast kannst du direkt darunter beliebig oft einsetzen, du musst nur editprofile1 ändern nach editprofile2, editprofile3 etc. an allen Stellen des Blocks, sprich 3 mal.



Nun öffnest du die usercp_register.php

suche und markiere ab hier:

Code: Alles auswählen

if ( $mode == 'editprofile' )
bis du auf folgendes stösst, das datrfst du nicht mehr mitmarkieren:

Code: Alles auswählen

if ( $mode == 'register' )
Jetzt kopiere das markierte und setze es nochmal direkt unter sich selbst oder anders gesagt vor den Code:

Code: Alles auswählen

if ( $mode == 'register' )


Im gerade kopierten Block änderst du nun noch folgendes

Code: Alles auswählen

if ( $mode == 'editprofile' )
nach

Code: Alles auswählen

if ( $mode == 'editprofile1' )
dann noch

Code: Alles auswählen

body' => 'profile_add_body.tpl')
nach

body' => 'profile_add_body1.tpl')


Den Block kopierst du ebenfalls beliebig oft untereinander und passt ihn jedes mal an aus 1 wird 2 aus 3 wird 4, etc. wie in der Profile.php eben.

Klar?

Jetzt noch die Templates beliebig oft kopieren und der Rest ist HTML.

Verfasst: 15.07.2006 22:43
von scheibenbrot
Hallo,
ok, das hab ich jetzt gut kapiert danke ^^
Das hört sich schon viel besser an, ich werde dass dann mal morgen machen berichte dann ^^

Verfasst: 16.07.2006 13:34
von scheibenbrot
Hallo,
also ich hab das gemacht. Super ist, dass man nun einstellen, kann auf welche template datei etwas sein soll.

Nur da ist noch ein kleines Problem.
Das editprofile greift nicht mehr auf die profile_add_body.tpl sondern auf die profile_add_body1.tpl.
Das editprofile1 greift jetzt natürlich auch auf die profile_add_body1.tpl zu, aber editprofile soll ja auf die profile_add_body.tpl zugreifen. :oops:

Verfasst: 17.07.2006 13:44
von scheibenbrot
:D

Verfasst: 24.07.2006 17:02
von scheibenbrot
:cry:

Verfasst: 24.07.2006 21:39
von Simpson
Also wenn du in allen Dateien erstellten und der Originaldatei unter editprofile auch die entsprechende edtiprofile eingestellt hast, müsste es eigentlich gehen.