phpBB: _blank Link target für Post Beiträge

10. February 2008

Im phpBB.de Forum habe ich eine Anleitung für Links als Target_blank ändern von FlashMan gefunden.

Anleitung:

Schritt 1
Öffne Datei “$boardroot/includes/functions.php”

Suche nach (Zeile 2743)
Code:

case ‘bbcode_htm’:
return array(
‘#<!\-\- e \-\-><a href=”mailto:(.*?)”>.*?</a><!\-\- e \-\->#’,
‘#<!\-\- l \-\-><a (?:class=”[\w-]+” )?href=”(.*?)(?:(&|\?)sid=[0-9a-f]{32})?”>.*?</a><!\-\- l \-\->#’,
‘#<!\-\- ([mw]) \-\-><a (?:class=”[\w-]+” )?href=”(.*?)”>.*?</a><!\-\- \1 \-\->#’,
‘#<!\-\- s(.*?) \-\-><img src=”\{SMILIES_PATH\}\/.*? \/><!\-\- s\1 \-\->#’,
‘#<!\-\- .*? \-\->#s’,
‘#<.*?>#s’,
);

Ersetze durch
Code:

case ‘bbcode_htm’:
return array(
‘#<!\-\- e \-\-><a href=”mailto:(.*?)”>.*?</a><!\-\- e \-\->#’,
‘#<!\-\- l \-\-><a target=_blank (?:class=”[\w-]+” )?href=”(.*?)(?:(&|\?)sid=[0-9a-f]{32})?”>.*?</a><!\-\- l \-\->#’,
‘#<!\-\- ([mw]) \-\-><a target=_blank (?:class=”[\w-]+” )?href=”(.*?)” >.*?</a><!\-\- \1 \-\->#’,
‘#<!\-\- s(.*?) \-\-><img src=”\{SMILIES_PATH\}\/.*? \/><!\-\- s\1 \-\->#’,
‘#<!\-\- .*? \-\->#s’,
‘#<.*?>#s’,
);

Schritt 2:
Öffne Datei “$boardroot/includes/functions_content.php”

Suche nach (Zeile 592)
Code:

$html = “$whitespace<!– $tag –><a$class href=\”$url\”>$text</a><!– $tag –>$append”;

Ersetze durch
Code:

$html = “$whitespace<!– $tag –><a$class target=\”_blank\” href=\”$url\”>$text</a><!– $tag –>$append”;

Schritt 3:
Öffne Datei “bbcode.html” (sollte im “Template” Verzeichnis des gewählten Styles liegen, also “$boardroot/styles/$stylename/template/bbcode.html”)

Suche nach
Code:

<!– BEGIN url –><a href=”{URL}” class=”postlink”>{DESCRIPTION}</a><!– END url –>

Ersetze durch
Code:

<!– BEGIN url –><a target=”_blank” href=”{URL}” class=”postlink”>{DESCRIPTION}</a><!– END url –>

ACHTUNG: das muss für JEDEN Style gemacht werden, der verwendet werden soll.

Schritt 4:
Datein in die richtigen Ordner des Forums kopieren und Administrationsbereich betreten, gleich auf der ersten Seite weiter unten “Den Cache Leeren” klicken.

Danach sollte alles wie in den Vorgängerversionen des PHPBB funktionieren und alle Links in Postings in eigenen Fenstern/Tabs geöffnet werden.

NSLU2 mit 8 GB SD Karte

3. February 2008

NSLU2 von LinksysJuhu! Ich habe das NSLU2 von Linksys :)
Quake 3 Models könnt ihr nun auch hier downloaden

Ich habe mir das NSLU2 bei K&M Elektronik für 75,70 € gekauft.
Dazu habe ich mir noch eine 8 GB SDHC Karte (class 2) von Conrad für 52,95 € gekauft, da
die 8 GB SDHC Karte (class 6) von Extrememory für nur 34,99 € bei K&M Elektronik ausverkauft war.

Der Verkäufer von K&M Elektronik meinte dass es ab 4 GB Karten Probleme bei manchen Kartenlesern gibt. So war es dann leider auch.

Das NSLU2 ist ein Network Storage Link. Man schließt es im Netzwerk an und kann daran Festplatten oder USB Sticks usw. anschließen die dann im Netzwerk zur Verfügung stehen.

Zu Hause angekommen mußte ich leider feststellen, daß mein MobileMate SD+ (Model -103) die 8 GB SDHC Karte nicht lesen kann.

Also bin ich nochmal zu Conrad gefahren und habe mir den neueren MobileMate SD+ gekauft, der auch SDHC Karten lesen kann.

Nun konnte ich endlich loslegen mit dem Anschließen des NSLU2.
Die standart IP lautet 192.168.1.77. Diese wird beim Installieren der Software für das NSLU2 angezeigt.

Im Web Setup (http:/192.168.1.77) sieht man die Firmware mit der man alles einstellen kann. Wie ich dann festellte kann man mit einem Datenträger der NTFS oder FAT32 hat keine Benutzer verwalten. Man benötigt dafür als Format ext3. Das Problem was sich daraus ergibt ist, “Wie formatiere ich eine SD Karte zu ext3?”.

Nach langem Suchen habe ich einen guten Hinweis gefunden. Das NSLU2 kann SD Karten ins ext3 Format formatieren.

Das habe ich natürlich auch gleich ausprobiert. Doch geklapt hat es leider nicht :(
Um trotzdem Benutzer einrichten zu können habe ich eine externe Festplatte angeschlossen und diese komplett zu ext3 formatiert. Zusätzlich habe ich auch noch eine neuere Firmware installiert. Unzwar die Firmware Unslung.
Ich habe dann nochmal den MobileMate am zweiten USB Anschluss angeschlossen und nochmal probiert die SD Karte zu formatieren, und siehe da, plötzlich klapt es! :)

Nun kann ich mein NSLU2 auch ohne eine externe Festplatte nutzen und trotzdem Benutzer verwalten, weil meine SD Karte nun im ext3 Format ist. Ext3 wird für Linux Festplatten benutzt. Zurück formatieren in NTFS oder FAT32 dürfte kein Problem sein. Ein Tool dafür hab ich auch noch gefunden - Memory Card data recovery.

Erreichen kann man den FTP Server von meinem NSLU2 unter ftp://quake3stuff.dyndns.org/quake3stuff .

Inspiration für die Zukunft

25. January 2008

Was kann ich noch alles für meine Quake3Stuff.de Seite machen?

  • eine Blog Seite wie diese ;)
  • Wordpress ausprobieren und Layout Template wenn möglich erstellen.
    Ein Blick in die Ordner Struktur von Wordpress ist dabei sehr hilfreich.
    Die Templates werden als theme bezeichnet und liegen im Ordner wordpress\wp-content\themes
  • ein Backend Bereich um neue Maps, Models, Skins usw. in die Datenbank einzutragen und zu warten.
    Bisher geschieht dies mit phpmyadmin.
  • News Archiv Übersicht
  • Kommentare für News…
  • Suchfunktion für News, Models, Maps und Skins.
  • Datenbank anlegen für Maps und Skins

Wie Ihr sieht gibt es viel zu tun. Nebenbei erweitere ich auch noch mein CMS Filomatic. Letzte Woche habe ich das Foren System phpBB erfolgreich mit Filomatic verknüpfen können. Das Forum finedet ihr auf www.quake3stuff.de/phpBB3 .
Wie man sehen kann werden bei mir auch die Topic Themen mit angezeigt.

Ich hoffe dass es mit Wordpress genauso gut klappen wird.

phpBB3: CSS username class

25. January 2008

Ich habe allen Usernamen die verlinkt sind eine CSS Klasse .username zugewiesen. Somit werden die Usernamen in einer speziellen Farbe angezeigt.

Der Weg zu der Änderung:

index.php

‘body’ => ‘index_body.html’

phpBB/styles/../template/index_body.html

<!– INCLUDE forumlist_body.html –>

In der phpBB/styles/../template/forumlist_body.html suchen nach

{forumrow.LAST_POSTER_FULL}

Alles durchsuchen nach {forumrow.LAST_POSTER_FULL}
In der phpBB3/includes/function_display.php suchen nach

{forumrow.LAST_POSTER_FULL}

function get_username_string

‘LAST_POSTER_FULL’ => get_username_string(’full’, $row[’forum_last_poster_id’], $row[’forum_last_poster_name’], $row[’forum_last_poster_colour’]),

In der phpBB3/includes/function_content.php

function get_username_string($mode, $user_id, $username, $username_colour = ”, $guest_username = false, $custom_profile_url = false)
{
global $phpbb_root_path, $phpEx, $user, $auth;$profile_url = ”;
$username_colour = ($username_colour) ? ‘#’ . $username_colour : ”;if ($guest_username === false)
{
$username = ($username) ? $username : $user->lang[’GUEST’];
}
else
{
$username = ($user_id && $user_id != ANONYMOUS) ? $username : ((!empty($guest_username)) ? $guest_username : $user->lang[’GUEST’]);
}// Only show the link if not anonymous
if ($mode != ‘no_profile’ && $user_id && $user_id != ANONYMOUS)
{
// Do not show the link if the user is already logged in but do not have u_viewprofile permissions (relevant for bots mostly).
// For all others the link leads to a login page or the profile.
if ($user->data[’user_id’] != ANONYMOUS && !$auth->acl_get(’u_viewprofile’))
{
$profile_url = ”;
}
else
{
$profile_url = ($custom_profile_url !== false) ? $custom_profile_url . ‘&u=’ . (int) $user_id : append_sid(”{$phpbb_root_path}memberlist.$phpEx”, ‘mode=viewprofile&u=’ . (int) $user_id);
}
}
else
{
$profile_url = ”;
}switch ($mode)
{
case ‘profile’:
return $profile_url;
break;case ‘username’:
return $username;
break;case ‘colour’:
return $username_colour;
break;

case ‘no_profile’:
case ‘full’:
default:

$tpl = ”;
if (!$profile_url && !$username_colour)
{
$tpl = ‘{USERNAME}’;
}
else if (!$profile_url && $username_colour)
{
$tpl = ‘<span style=”color: {USERNAME_COLOUR};” class=”username-coloured”>{USERNAME}</span>’;
}
else if ($profile_url && !$username_colour)
{
$tpl = ‘<a href=”{PROFILE_URL}” class=”username”>{USERNAME}</a>’;
}
else if ($profile_url && $username_colour)
{
$tpl = ‘<a href=”{PROFILE_URL}” style=”color: {USERNAME_COLOUR};” class=”username-coloured”>{USERNAME}</a>’;
}

return str_replace(array(’{PROFILE_URL}’, ‘{USERNAME_COLOUR}’, ‘{USERNAME}’), array($profile_url, $username_colour, $username), $tpl);
break;
}
}

Und das wars :D
Im Backend wird dann nur noch der Cach gelöscht und alle Template Datein sind aktualisiert.

phpBB3: Forumliste mit Topic Titel

25. January 2008

Mir ist es gelungen die Topic Titel in der Forum Liste mit einzublenden und zu verlinken.

Der Weg zu der Änderung:

index.php

‘body’ => ‘index_body.html’

phpBB/styles/../template/index_body.html

<!– INCLUDE forumlist_body.html –>

In der forumlist_body.html suchen nach

{forumrow.LAST_POSTER_FULL}

Alles durchsuchen nach {forumrow.LAST_POSTER_FULL}
In der phpBB3/includes/function_display.php suchen nach

$template->assign_block_vars(’forumrow’

SQL Abfrage für den Topic Titel.
Es wird die Template Variable {forumrow.TOPIC_TITLE} über ‘TOPIC_TITLE’ => $topic_title definiert.

$sql = “SELECT `topic_id` FROM `phpbb_posts` where `post_id` =”.$row[’forum_last_post_id’];
$Topicresult = $db->sql_query($sql);
while ($row2 = $db->sql_fetchrow($Topicresult)){$topic_id = $row2[’topic_id’];$sql = “SELECT `topic_title` FROM `phpbb_topics` where `topic_id` =”.$topic_id;$Topicresult2 = $db- >sql_query($sql);while ($row3 = $db- >sql_fetchrow($Topicresult2)){$topic_title = ‘ <span class=”topic_title”><a href=”‘.$last_post_url_main.’” class=”topic_title”>’.$row3[’topic_title’].’</a></span> ‘;}
}$template- >assign_block_vars(’forumrow’, array(’S_IS_CAT’ = > false,

‘S_NO_CAT’ = > $catless && !$last_catless,

‘S_IS_LINK’ = > ($row[’forum_type’] == FORUM_LINK) ? true : false,

‘S_UNREAD_FORUM’ = > $forum_unread,

‘S_LOCKED_FORUM’ = > ($row[’forum_status’] == ITEM_LOCKED) ? true : false,

‘S_SUBFORUMS’ = > (sizeof($subforums_list)) ? true : false,

‘FORUM_ID’ = > $row[’forum_id’],

‘FORUM_NAME’ = > $row[’forum_name’],

‘FORUM_DESC’ = > generate_text_for_display($row[’forum_desc’], $row[’forum_desc_uid’], $row[’forum_desc_bitfield’], $row[’forum_desc_options’]),

‘TOPICS’ = > $row[’forum_topics’],

$l_post_click_count = > $post_click_count,

‘FORUM_FOLDER_IMG’ = > $user->img($folder_image, $folder_alt),

‘FORUM_FOLDER_IMG_SRC’ = > $user->img($folder_image, $folder_alt, false, ”, ’src’),

‘FORUM_IMAGE’ = > ($row[’forum_image’]) ? ‘<img src=”‘ . $phpbb_root_path . $row[’forum_image’] . ‘” alt=”‘ . $user->lang[$folder_alt] . ‘” />’ : ”,

‘FORUM_IMAGE_SRC’ = > ($row[’forum_image’]) ? $phpbb_root_path . $row[’forum_image’] : ”,

‘LAST_POST_SUBJECT’ = > censor_text($last_post_subject),

‘LAST_POST_TIME’ = > $last_post_time,

‘LAST_POSTER’ = > get_username_string(’username’, $row[’forum_last_poster_id’], $row[’forum_last_poster_name’], $row[’forum_last_poster_colour’]),

‘LAST_POSTER_COLOUR’ = > get_username_string(’colour’, $row[’forum_last_poster_id’], $row[’forum_last_poster_name’], $row[’forum_last_poster_colour’]),

‘LAST_POSTER_FULL’ = > get_username_string(’full’, $row[’forum_last_poster_id’], $row[’forum_last_poster_name’], $row[’forum_last_poster_colour’]),

‘MODERATORS’ = > $moderators_list,

‘SUBFORUMS’ = > $s_subforums_list,

‘L_SUBFORUM_STR’ = > $l_subforums,

‘L_FORUM_FOLDER_ALT’ = > $folder_alt,

‘L_MODERATOR_STR’ = > $l_moderator,

‘U_VIEWFORUM’ = > $u_viewforum,

‘U_LAST_POSTER’ = > get_username_string(’profile’, $row[’forum_last_poster_id’], $row[’forum_last_poster_name’], $row[’forum_last_poster_colour’]),

‘U_LAST_POST’ = > $last_post_url,

‘U_LAST_POST_MAIN’ = > $last_post_url_main,

‘TOPIC_TITLE’ = > $topic_title)

);

Für die forumlist_body.html

<dd class=”lastpost”><span> <!– IF forumrow.LAST_POST_TIME –><dfn>{L_LAST_POST}</dfn>{forumrow.TOPIC_TITLE} {L_POST_BY_AUTHOR} {forumrow.LAST_POSTER_FULL}<a href=”{forumrow.U_LAST_POST}”>{LAST_POST_IMG}</a> <br />{L_POSTED_ON_DATE} {forumrow.LAST_POST_TIME}<!– ELSE –>{L_NO_POSTS}<!– ENDIF –></span></dd>

Und das wars :D
Im Backend wird dann nur noch der Cach gelöscht und alle Template Datein sind aktualisiert.


Quake3Stuff.de WebDev Blog is proudly powered by WordPress | WPD
Beiträge (RSS) und Kommentare (RSS)