Seite 1 von 1

MOD AOS Who Visited a Topic

Verfasst: 04.11.2015 13:04
von Walter91
Ich habe mir diesen MOD https://www.phpbb.com/customise/db/mod/ ... d_a_topic/ eingebaut. Läuft sehr gut.
Meine Frage dazu ist kann ich diese Anzeige auch in meinen Rules Page MOD einbauen.
Hab schon Probiert,funktoniert aber nicht. Geht das überhaupt oder nur in der viewtopic.php ?

Re: MOD AOS Who Visited a Topic

Verfasst: 04.11.2015 13:48
von waldkatze
Ich habe gerade folgendes getestet. Es funktioniert sogar 8)

rules.php
suche

Code: Alles auswählen

include($phpbb_root_path . 'includes/functions_user.' . $phpEx);
füge danach ein

Code: Alles auswählen

include($phpbb_root_path . 'includes/who_visited_a_topic.' . $phpEx);
suche

Code: Alles auswählen

$user->setup('mods/rules');
füge danach ein

Code: Alles auswählen

$topic_id    = request_var('t', 0);
suche

Code: Alles auswählen

$template->assign_var('S_PUBLIC_CATS', sizeof($public_cats) + ((sizeof($public_cats) % 2 != 0) ? -1 : 0));
füge davor ein

Code: Alles auswählen

unset($rowset, $user_cache);
    aos_who_visited_a_topic_init();
rules_body.html
suche

Code: Alles auswählen

<!-- INCLUDE overall_footer.html -->
füge davor ein

Code: Alles auswählen

<!-- MOD : AOS Who Visited a Topic - Start -->
<!-- IF S_WHO_VISITED_A_TOPIC -->
<h3><a href="{U_WVT}" onclick="window.open(this.href,'','statusbar=no,menubar=no,toolbar=no,scrollbars=yes,resizable=yes,width=500,height=300'); return false;">{L_WHO_VISITED_A_TOPIC}</a></h3>
<p><!-- IF NUM_VISITORS -->{NUM_VISITORS}<!-- IF NUM_VISITORS == 1 -->{L_USER_VISIT}<!-- ELSE -->{L_USER_VISITS}<!-- ENDIF --><!-- BEGIN visited_topic --><span title="{visited_topic.USER_LAST_VIEW_TIME}">{visited_topic.USER}</span><!-- IF VIEW_COUNT --> ({visited_topic.USER_VIEW_COUNT})<!-- ENDIF --><!-- IF not visited_topic.S_LAST_ROW -->, <!-- ENDIF --><!-- END visited_topic --><!-- IF NUM_USER_IN_TOPIC -->, ... [<a href="{U_WVT}" onclick="window.open(this.href,'','statusbar=no,menubar=no,toolbar=no,scrollbars=yes,resizable=yes,width=500,height=300'); return false;">{L_VIEW_MORE}</a>]<!-- ENDIF --><!-- ELSE -->{L_NONE_USER_VISIT}<!-- ENDIF --></p>
<!-- ENDIF -->
<!-- MOD : AOS Who Visited a Topic - End -->
Edit:
Das geht so aber nur wenn du diese Anzeige in nur einen MOD einbaust. Diese Lösung speichert die Anzeige unter der topic_id 0
Bei Einfügen in mehrere Seiten wäre leider wesentlich mehr Aufwand notwendig,sonst bekommst du eine fehlerhafte Zähleranzeige.

Re: MOD AOS Who Visited a Topic

Verfasst: 06.11.2015 17:10
von Walter91
Danke Waldkatze.Das hat so geklappt mit deiner Anleitung.Die Besucher werden jetzt im Rules MOD angezeigt :grin:
Was ich jetzt nich ganz richtig verstanden hab ist,warum deine Beschreibung nur mit einem MOD geht.
Weil das so gut funktioniert wollte ich das auch noch gerne in andere Seiten einfügen um die User anzuzeigen.
Hast du da evtl. eine Lösung.

Re: MOD AOS Who Visited a Topic

Verfasst: 07.11.2015 12:20
von waldkatze
Die MOD ist ursprünglich vom Programmierer dafür vorgesehen die Besucher in den jeweiligen Forumbeiträgen anzuzeigen.
Die Besucher werden dabei der jeweiligen Topic-ID zugeordnet und in der extra Datenbank-Tabelle topics_views gespeichert.
Wenn du ein neues Forum einrichtest,hat die erste ID den Wert 1 dann 2,3, usw.

Mein Codebeispiel verwendet im oben gezeigten Beitrag jedoch immer den Wert 0 (damit es nicht zu Konflikten mit den Beitrag-ID kommt)
Deshalb ist das wie oben schon geschrieben nur eine Notlösung.

Wenn du diesen Code in mehrere MODS einfügen willst,speichert das zwar die Besucher in der Tabelle aber wird nicht den jeweiligen MOD zugeordnet.
Dazu wird eine extra Spalte in der Datenbank-Tabelle benötigt,um die Zuordnung möglich zu machen.
Außerdem müsste die Zuordnung im Quellcode von AOS Who Visited a Topic ergänzt werden.
Ich habe ab Ende November mal endlich wieder keinen 12 bis 14 Stunden Arbeitstag.Dann werde ich mich mal daran setzen den Code entsprechend anzupassen.Ich bin auch immer noch phpBB 3.0.x Freak 8)