Hallo.
in meinem Board (PunBB) habe ich das Plugin EasyPoll installiert, welches uns die Möglichkeit gibt, Abstimmungen einzustellen (Ja/Nein, Multiumfrage usw).
Das ganze Plugin funktioniert so, dass über dem Thread die Abstimmungsmaske (oder, wenn man schon abgestimmt hat, die Ergebnisse) sieht. Doch das nur, wenn man erst auf das entsprechende Forum und dann auf die Umfrage-Topic klickt. Denn nur dort wird auf die Datei viewpoll.php verwiesen.
Auf der Startseite des Boards steht zu jedem Forum der zuletzt geschriebenen Beitrag in der Form "Am XX.XX.XXXX von USER_BLA" als Link. Dieser Link jedoch verweist auf die Datei viewtopic.php, die keine Umfrage-Eingabemaske oberhalb des Threads einfügt.
Unglücklicherweise klicken alle Benutzer meines Boards immer auf diesen Link und sehen somit nicht, dass man darin abstimmen kann/soll.
Ich habe mich also im Quelltext der index.php umgeschaut und bin auf folgende (für mich viel zu komplizierte) SQL-Anweisung gestoßen:
SELECT c.id AS cid, c.cat_name, f.id AS fid, f.forum_name, f.forum_desc, f.redirect_url, f.moderators, f.num_topics, f.num_posts, f.last_post, f.last_post_id, f.last_poster
FROM forum2_categories AS c
INNER JOIN forum2_forums AS f ON c.id=f.cat_id
LEFT JOIN forum2_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=1)
WHERE fp.read_forum IS NULL OR fp.read_forum=1
ORDER BY c.disp_position, c.id, f.disp_position
Aus dem result dieser SQL-Abfrage wird die Startseite aufgebaut.
Das Einzige, was ich darin ändern möchte, ist, dass das Feld "question" aus der Tabelle forum2_topics hinten anfügen. Dieses ist leer, wenn die Topic keine Umfrage ist. Danach werde ich noch eine if-Abfrage ausführen, und demnach den Link abändern (von viewtopic.php auf viewpoll.php, mitsamt den GET-Parametern). Die Stelle habe ich schon gefunden, ich muss nun nur noch die SQL-Anweisung abändern.
Vorhin habe ich ein Tutorial zu Join durchgemacht, weil ich dieses bisher noch nicht beherrschte. Leider reichen mir diese Kenntnisse nicht, um hier einfach so ein weiteres Feld einzufügen. Versucht habe ich es schon, aber es kam niemals das raus, was ich wollte. Meistens verursachte ich sowieso Fehler...
Könnt ihr mir dabei helfen?
Ich bin Administrator des Boards und habe vollen Zugriff auf die Tabellen und auf den Quelltext.
Ich hoffe, ihr habt (bei dem langen Beitrag) auch verstanden, was ich machen möchte.
Viele Grüße
Enigma