Zur Navigation

Upgrade auf 1.1

1 Jörg Kruse

Im folgenden wird ein Upgrade von der Version 1.0.x auf die Version 1.1.2 beschrieben (wer das Forum neu installieren möchte, kann das betreffende Paket auf der Downloadseite herunterladen und muss der im Paket enthaltenen Installations-Anweisung folgen)

1. Download des Upgrade-Pakets:

Download: Upgrade-Paket 1.1.2

2. Entpacken des Archivs

In dem Paket nicht enthalten sind /.htaccess, /robots.txt, /includes/config.php und /images/smilies - diese Dateien bzw. Verzeichnisse werden durch das Upgrade folglich nicht überschrieben

3. Manuelle Anpassungen

Änderungen der .htaccess (auf deinem Webspace)

Folgende Zeile:
RewriteRule ^neue-beitraege-([0-9]+)\.html$ index.php?objekt=thread&modus=neu&seite=$1
... ersetze durch:
RewriteRule ^neue-beitraege-([0-9]+)\.html$ index.php?objekt=thread&modus=neu&seite=$1 [QSA]

Folgende Zeile füge ans Ende hinzu:
RewriteRule ^scripts/bbcode-([0-9]+)-([0-9]+)-([0-9]+)\.js$ scripts/bbcode.php?vars=$2

Für diejenigen, die die Datei head.php, tail.php und die Stylesheet-Datei umgebaut haben und manuell anpassen möchten, beschreibe ich die Änderungen im folgenden Posting. Alle anderen müssen nichts mehr anpassen

4. Als Admin einloggen

... und den Adminbereich aufrufen. Dieser Schritt ist wichtig, da nach dem Hochladen der neue Dateien ein Login nicht mehr möglich ist, aber man im letzten Schritt als Admin das Datenbank-Update durchführen muss.

5. Hochladen der Verzeichnisse und Dateien

Die Verzeichnisse und Dateien der neuen Forenversion hochladen. (Das Verzeichnis /docs und die Datei README müssen nicht mit hochgeladen werden)

6. Datenbank-Update

- im Adminbereich den Button "Datenbank-Update" betätigen (falls nicht sichtbar, die Seite vorher aktualisieren)

Damit sollte das Upgrade erfogreich beendet sein

Bei Unklarheiten oder falls es beim Upgrade zu Problemen kommt, bitte hier melden lächel

27.01.2008 14:54 | geändert: 11.09.2008 21:47

2 Jörg Kruse

Anpassungen für diejenigen, die aufgrund eigener Änderungen die folgenden Dateien manuell anpassen möchten

A. /styles/*.css

wegen der Beseitigung der Inline-Styles gibt es hier einige Änderungen

1. Änderung bestehender Selektoren

Der Abschnitt für das Element code ...:
code {
display:block;
overflow:auto;
margin:0;
padding:10px;
max-height:200px;
border:dashed 1px #999;
background-color:#fcfcfc;
font-family:Courier, monospace;
}
... wird ersetzt durch einen Abschnitt für pre:
pre {
overflow:auto;
margin:0;
padding:10px;
max-height:240px;
border:dashed 1px #999;
background-color:#f9f9f6;
}

Für ul werden die Eigenschaften komplett neu definiert:
ul {
margin:0;
padding:0;
text-indent:0;
list-style-type:none;
line-height:180%;
}

Umbenennung von "bbcode button" in "bbcodebuttons button":
#bbcodebuttons button {
font-weight:normal;
color:#000;
}

2. neue Selektoren, die hinzugefügt werden müssen

#ende a {
white-space:nowrap;
}

Container auf den Profilseiten:
.profile {
margin:0 auto 20px;
width:507px;
}
.profile img {
float:right;
max-width:120px;
max-height:120px;
}
.profile h3 {
clear:both;
margin-top:30px;
}

Scroll-Boxen auf der Registrieren-Seite und auf der Thread-Teilen-Seite:
.infobox {
height:100px;
overflow:auto;
padding:10px;
border:1px solid #77c;
background-color:#fff;
font-size:85%;
}
div>.infobox { /* except IE 6 */
max-height:100px;
height:auto;
}

Submit-Buttons unterhalb des Antwortformulars:
.submitgroup {
margin-top:10px;
width:100%;
font-size:90%;
}
.submit {
float:right;
margin-left:10px;
}
.submit p {
margin-top:0;
}

B. /includes/output/head.php

Content-Style-Type-Header hinzufügen, falls noch nicht vorhanden:
header('Content-Type: ' . $mimetype . '; charset=' . $charset);
header('Content-Style-Type: text/css');

link-Element für Atom-Feed hinzufügen:
<link rel="alternate" type="application/atom+xml" title="Atom" href="<?php echo $bpath ?>/feeds/atom.xml" />

kann entfernt werden:
<meta http-equiv="content-type" content="text/html; charset=<?php echo $charset ?>" />

kann entfernt werden:
if ($bbcode == 1) {
    echo '<script type="text/javascript" src="', $gfpath, 'scripts/bbcode.js"></script>', "\n";
}

C. /includes/output/tail.php

Footer-Include hinzufügen:
<?php

if ($b_footer == true) {
    include ($f_footer);
}
if ($updateinfo == 1) {
    echo '<script type="text/javascript" src="', $updateinfourl, '"></script>', "\n";
}
if ($scriptinfos > 1 || ($scriptinfos == 1 && $sustatus >= 6)) {
    include (INCPATH . '/main/etc/dev.php');
}

?>

Der Aufbau der Navigation wird ab Version 1.1 komplett in der Datei /includes/output/menu.php definiert.

Anstelle der Menü-Liste wird nun dieser Include und folgende Schleife eingebaut:

<div id="navi">
<div id="navinnen">
<h2>Navigation</h2>
<ul>
<?php

include ($f_menu);

foreach ($menu as $submenu) {
    $i = 0;
    $b_ul = false;
    foreach ($submenu as $item) {
        if ($item[1] == '' || $item[1] == $_SERVER['REQUEST_URI']) {
            $x_item = $item[0];
        } else {
            $x_item = '<a href="' . $item[1] . '">' . $item[0] . '</a>';
        }
        if ($i == 0) {
            echo '<li>' . $x_item;
        } else {
            if ($i == 1) {
                echo "\n", '<ul>', "\n";
                $b_ul = true;
            }
            echo '<li>' . $x_item . '</li>', "\n";
        }
        $i++;
    }
    if ($b_ul == true) {
        echo '</ul>', "\n";
    }
    echo '</li>', "\n";
}

?>
</ul>
<div id="naviende"></div>
</div>
</div>

Fragen zur genauen Vorgehensweise können in einem Extra-Thread behandelt werden

27.01.2008 14:55 | geändert: 26.04.2008 22:19

3 Gabi

Hallo Jörg,

bei mir hat das Upgrade in meinem Testforum noch nicht geklappt:

Die Navigation ist danach verschwunden, in der Sidebar steht jetzt nur noch (nicht anklickbar):
Beiträge
User
Infos

includes/output/menu.php habe ich hochgeladen

Woran könnte das liegen?

Gruß Gabi

02.02.2008 14:11

4 Jörg Kruse

Hallo Gabi,

möglicherweise hängt das mit dem Multilayout-Plugin zusammen, das ich für dich programmiert habe?

Ich habe jetzt noch mal getestet - in Unter-Foren mit geändertem Layout tritt dieser Fehler tatsächlich auf hmmm

Ich werde das Plugin mal anpassen zwinker

LG Jörg

02.02.2008 14:35

5 Jörg Kruse

Nachtrag:

das Plugin ist ok - aber die Datei tail.php für das andere Layout muss noch an die Version 1.1 angepasst werden! Danach sollte das Menü normal angezeigt werden lächel

02.02.2008 14:44

6 Gabi

Hallo Jörg,

ich fürchte, mit dem Plugin hat das nichts zu tun:
Ich habe das Multi-Layout zwar in dem Testforum mit drin, benutze es dort aber nicht, d.h. das Problem tritt schon im ganz normalen Forum auf, für das kein separates Layout definiert ist.

LG Gabi

02.02.2008 14:47

7 Gabi

Nachtrag, da haben sich unsere Antworten überschnitten:

Was kann denn das mit tail.php zu tun haben?

Ich dachte, ich muss da nur
if ($b_footer == true) {
include ($f_footer);
}
einfügen, das hat doch mit menu.php nichts zu tun.

LG Gabi

02.02.2008 14:51 | geändert: 02.02.2008 14:52

8 Jörg Kruse

Ja, ich seh grad, die Anleitung für /includes/output/tail.php ist unvollständig traurig - dann hast du die Schleife noch nicht drin, wenn du die Datei manuell geändert hast. Ich korrigier das mal..

Edit: ist jetzt korrigiert - in die Datei tail.php muss wie jetzt in der Anleitung beschrieben noch der Include und die Schleife eingebaut werden..

02.02.2008 14:52 | geändert: 02.02.2008 14:56

9 Gabi

Hallo Jörg,

vielen Dank, damit ist das Menü wieder da und die Freude über die schönen neuen Funktionen ungetrübt. lächel

Folgendes ist mir noch aufgefallen:

1. Zur Bad-Word Liste
Trotz $a_badwords = array('bösesWort1', 'bösesWort2', 'bösesWort3'); in /includes/config.php konnte ich als Gast ein Posting absenden, das bösesWort1 enthielt. Muss man da noch irgendwo was aktivieren, oder habe ich da überhaupt was falsch verstanden?

2. Zur neuen Kurz-Beschreibung und Keywords
würde ich mir wünschen, dass die interne Suche diese Felder dann künftig auch noch umfasst.

LG Gabi

02.02.2008 16:07

10 Jörg Kruse

Hallo Gabi,

1. Zur Bad-Word Liste
Trotz $a_badwords = array('bösesWort1', 'bösesWort2', 'bösesWort3'); in /includes/config.php konnte ich als Gast ein Posting absenden, das bösesWort1 enthielt. Muss man da noch irgendwo was aktivieren, oder habe ich da überhaupt was falsch verstanden?

Ja, dei Bad-Word-Liste ist vielleicht etwas missverständlich lächel Sie hängt nicht mt dem Spamfilter zusammen, sondern ersetzt die Wörter mit ***. Ich hatte diese Funktion in einem anderen Forum benötigt, wo wegen (unfeiwilliger) Werbung bestimmte Markennnamen zensiert werden sollten

2. Zur neuen Kurz-Beschreibung und Keywords
würde ich mir wünschen, dass die interne Suche diese Felder dann künftig auch noch umfasst.

Ja, stimmt, das ist natürlich sinnvoll - das werde ich bei einem späteren Update berücksichtigen

02.02.2008 16:15