Profil in einem Popup öffnen

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.
raphael
Mitglied
Beiträge: 213
Registriert: 04.05.2004 22:11
Wohnort: Nettersheim
Kontaktdaten:

Profil in einem Popup öffnen

Beitrag von raphael »

Ich würde in meinem Forum das Profil eines Mitglieds gerne in einem Popup öffnen lassen. Wenn jemand also auf den Benutzernamen in der viewforum.php, index.php oder memberlist.php klickt soll sich das Profil in einem Popup öffnen.
Ich habe hier schon danach gesucht, wurde aus den Ergebnissen (zumal sie schon sehr weit zurückliegen und sich auf eine alte Version beziehen) nicht richtig schlau.

Was muss ich z.B. an der viewforum.php an diesen Stellen umändern um den gewünschten Effekt zu erhalten?

Code: Alles auswählen

		$topic_author = ( $topic_rowset[$i]['user_id'] != ANONYMOUS ) ? '<a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . '=' . $topic_rowset[$i]['user_id']) . '">' : '';
		$topic_author .= ( $topic_rowset[$i]['user_id'] != ANONYMOUS ) ? $topic_rowset[$i]['username'] : ( ( $topic_rowset[$i]['post_username'] != '' ) ? $topic_rowset[$i]['post_username'] : $lang['Guest'] );

		$topic_author .= ( $topic_rowset[$i]['user_id'] != ANONYMOUS ) ? '</a>' : '';

Code: Alles auswählen

		$last_post_author = ( $topic_rowset[$i]['id2'] == ANONYMOUS ) ? ( ($topic_rowset[$i]['post_username2'] != '' ) ? $topic_rowset[$i]['post_username2'] . ' ' : $lang['Guest'] . ' ' ) : '<a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . '='  . $topic_rowset[$i]['id2']) . '">' . $topic_rowset[$i]['user2'] . '</a>';
Über Hilfe wäre ich sehr dankbar.
Benutzeravatar
Leuchte
Ehemaliges Teammitglied
Beiträge: 9179
Registriert: 26.05.2003 14:57
Wohnort: Duisburg
Kontaktdaten:

Beitrag von Leuchte »

raphael
Mitglied
Beiträge: 213
Registriert: 04.05.2004 22:11
Wohnort: Nettersheim
Kontaktdaten:

Beitrag von raphael »

Ich werde es mal austesten. Danke für den Link (an phpbb.com hab ich garnicht gedacht :oops:)
raphael
Mitglied
Beiträge: 213
Registriert: 04.05.2004 22:11
Wohnort: Nettersheim
Kontaktdaten:

Beitrag von raphael »

Ich habe die Dateien mal etwas angepasst, sodass das komplette Profil angezeigt wird. Das Outfit passe ich noch etwas an, damit es absolut meinen Vorstellungen entspricht.

Allerdings habe ich noch eine Frage:
Durch diesen Mod kann man das Miniprofil nur über die viewtopic.php aufrufen. Wie muss ich die Links in viewforum.php, memberlist.php und index.php anpassen um auch dort das Miniprofil aufrufen zu können?
Acid
Ehrenadmin
Beiträge: 12195
Registriert: 26.04.2001 02:00
Wohnort: Berlin

Beitrag von Acid »

Zwischenfrage.. was soll in den anderen Bereichen als Link für das Miniprofil dienen? Wenn´s der Name ist, könnt man nicht mehr auf´s "richtige Profil" gelangen.
raphael
Mitglied
Beiträge: 213
Registriert: 04.05.2004 22:11
Wohnort: Nettersheim
Kontaktdaten:

Beitrag von raphael »

Das "richtige" Profil würde dann einfach wegfallen. Ich habe das Miniprofil mitlerweile so umgebaut, dass es dem richtigen in nichts mehr nachsteht. Das ist alles kompakter und verzichtet auf Header und Footer. Außerdem ist ein Popup praktischer, damit die Mitglieder weiterhin auf der aktuellen Seite bleiben.
Darum bräuchte ich das Profil am Ende garnicht mehr.
Acid
Ehrenadmin
Beiträge: 12195
Registriert: 26.04.2001 02:00
Wohnort: Berlin

Beitrag von Acid »

Code: Alles auswählen

# 
#-----[ ÖFFNEN ]------------------------------------------ 
# 
# memberlist.php
# 
#-----[ FINDE ]------------------------------------------ 
# 
		$row_class = ( !($i % 2) ) ? $theme['td_class1'] : $theme['td_class2'];

# 
#-----[ DARUNTER EINFÜGEN ]------------------------------------------ 
# 
		// Mini Profile Begin
		$mini_profile_url = append_sid("profile.$phpEx?mode=miniprofile&" . POST_USERS_URL .'=' . $user_id);
		$mini_profile ='<a href="' . $mini_profile_url . '" onclick="window.open(\'' .$mini_profile_url . '\', \'_miniprofile\', \'HEIGHT=300,resizable=yes,scrollbars=yes,WIDTH=290\');return false;" target="_miniprofile">' . $username . '</a></span>';
		// Mini Profile End

# 
#-----[ FINDE ]------------------------------------------ 
# 
			'USERNAME' => $username,

# 
#-----[ DARUNTER EINFÜGEN ]------------------------------------------ 
# 
			//Begin Mini Profile MOD
			'MINIPROFILE' => $mini_profile,
			//End Mini Profile MOD

# 
#-----[ ÖFFNEN ]------------------------------------------ 
# 
# templates/subSilver/memberlist_body.tpl
# 
#-----[ FINDE ]------------------------------------------ 
# 
<a href="{memberrow.U_VIEWPROFILE}" class="gen">{memberrow.USERNAME}</a>

# 
# 
#-----[ MIT FOLGENDEM ERSETZEN ]------------------------------------------ 
#
{memberrow.MINIPROFILE}
Genügt dir das Anleitung für die anderen Bereiche ? Die Schritte wären identisch, natürlich unterscheiden sich die zu findenen Bereiche (die einzufügenden Codes wären fast identisch (nur die Variabel $user_id und $username sind gegebenfalls anders)).
Zuletzt geändert von Acid am 27.09.2004 20:06, insgesamt 1-mal geändert.
raphael
Mitglied
Beiträge: 213
Registriert: 04.05.2004 22:11
Wohnort: Nettersheim
Kontaktdaten:

Beitrag von raphael »

Du meintest wohl memberlist_body.tpl anstatt viewtopic_body.tpl
Hier musste man übrigens anstatt $poster_id $user_id und anstatt $poster $username verwenden.

Achja, die anderen Links zum Profil sind übrigens nicht alle nach diesem Muster gestrickt. Ich ändere da einfach die Links direkt um, sodass ich in den Template-Dateien nichts mehr machen muss. Da habe ich mir allerdings generell ein arbeitsintensives Ziel gesteckt. Ich muss jetzt insgesamt so um die 50 Links an allen Ecken und Kanten in sauvielen Dateien ändern :roll: (Da habe ich ziemlich falsch gelegen, als ich mal grade von 4 Dateien ausging) und immer wieder die dämlichen Variabeln ändern :-? Naja, das wird schon hinhauen.
Ich meld mich vielleicht nochmal, wenn ich irgendwo Probleme bekommen sollte.

Danke für die Hilfe!
raphael
Mitglied
Beiträge: 213
Registriert: 04.05.2004 22:11
Wohnort: Nettersheim
Kontaktdaten:

Beitrag von raphael »

So, da bin ich nochmal.
Ich habe jetzt (hoffentlich ;)) alle Links geändert. Naja, sagen wir fast alle.
Es sind noch drei Dinge übrig geblieben:

1.) In der index.php steht unten im Feld "Registrierte Benutzer: xxx, yyy,", die gerade online sind. Wo finde ich das in der index.php? In der Template-Datei ist dafür "{LOGGED_IN_USER_LIST}" vorhanden. Wo wird das genauer definiert (oder wie auch immer man sowas bezeichnet)?

2.) In der viewforum.php sieht man oben links ein "Benutzer in diesem Forum: xxx, yyy". Auch hier konnte ich nirgends etwas dazu finden. In der Template-Datei befindet sich auch wieder ein "{LOGGED_IN_USER_LIST}", dass damit zu tun hat.

3.) Ich habe das Birthday-Addon für den Kalender (mycalendar) eingebaut. Ich konnte das auch so anpassen, dass sich das Miniprofil in einem neuen Fenster öffnet. Allerdings öffnet es sich im Vollbild. Vielleicht weiß jemand, was ich an dieser Stelle falsch gemacht habe:

Code: Alles auswählen

            while ($topic = $db->sql_fetchrow($result)) { 
                $topic_text = $lang['Birthday']; 
                $username = $topic['username'];
                $birthday = $topic['birthday']; 
                $user_id = $topic['user_id']; 
                $mini_profile_url = append_sid("profile.$phpEx?mode=miniprofile&" . POST_USERS_URL . "=$user_id"); 

                $template->assign_block_vars('date_row.date_cell.switch_date_cells.date_event', array( 
                     'U_EVENT' => "$first_date<a href=\"$mini_profile_url\" onclick=\"window.open(\'' .$mini_profile_url . '\', \'_miniprofile\', \'HEIGHT=600,resizable=yes,scrollbars=yes,WIDTH=540\');return false;\" target=\"_miniprofile\" onMouseOver=\"createTitle(this, '<b>" . $lang['Birthday'] . ":</b> $username<br>" . $lang['Calendar_birthday_greeting_first'] . "&nbsp;<b>$birthday</b>&nbsp;" . $lang['Calendar_birthday_greeting_sec'] . "', event.pageX, event.pageY);\" onMouseOut=\"destroyTitle();\" class=\"gensmall\">$topic_text: <b>$username</b></a>") 
                ); 
            }
Ansonsten hat aber schon alles gut hingehauen. Danke nochmals für die Hilfe!
Acid
Ehrenadmin
Beiträge: 12195
Registriert: 26.04.2001 02:00
Wohnort: Berlin

Beitrag von Acid »

1) und 2) page_header.php

Code: Alles auswählen

$user_online_link = '<a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=" . $row['user_id']) . '"' . $style_color .'>' . $row['username'] . '</a>';

Code: Alles auswählen

$user_online_link = '<a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=" . $row['user_id']) . '"' . $style_color .'><i>' . $row['username'] . '</i></a>';
3) Ersetze die Zeile mal mit..

Code: Alles auswählen

'U_EVENT' => $first_date .'<a href="'. $mini_profile_url .'" onclick="window.open(\''. $mini_profile_url .'\', \'_miniprofile\', \'height=600,resizable=yes,scrollbars=yes,width=540\'); return false;" target="_miniprofile" onMouseOver="createTitle(this, \'<b>'. $lang['Birthday'] .':</b> '. $username .'<br />'. $lang['Calendar_birthday_greeting_first'] .'&nbsp;<b>'. $birthday .'</b>&nbsp;'. $lang['Calendar_birthday_greeting_sec'] .'\', event.pageX, event.pageY);" onMouseOut="destroyTitle();" class="gensmall">'. $topic_text .': <b>'. $username .'</b></a>')
Antworten

Zurück zu „phpBB 2.0: Mod Support“