Seite 1 von 2
Ungelesene Beiträge als Popup-Fenster
Verfasst: 01.12.2013 18:58
von Knowhow-Sauger
Hallo Freunde,
wenn man neue Beiträge lesen möchte, muss man ja immer wieder auf "ungelesene Beiträge" klicken.
Viel leichter wäre es daher, wenn unten rechts ein kleines PopUp-Fenster eingeblendet wird, wo man sofort alle ungelesenen Threads auf einen Blick hat.
Gibt es sowas?
DANKE!
Re: Ungelesene Beiträge als Popup-Fenster
Verfasst: 01.12.2013 20:09
von Miriam
Wäre es nicht sinnvoller, den Link zu den ungelesenen Beiträgen an eine besser zugängliche Stelle umzusetzen?
Re: Ungelesene Beiträge als Popup-Fenster
Verfasst: 01.12.2013 20:37
von Kirk
Hallo
Probier mal das hier:
Erstelle eine Datei Namens
unread_posts.php
mit folgendem Inhalt:
https://www.phpbb.de/support/pastebin.p ... iew&s=1360
Lade diese Datei in deinen Forenroot
Erstelle eine Datei Namens
unread_posts.html
mit folgendem Inhalt:
Code: Alles auswählen
<!-- INCLUDE simple_header.html -->
<meta http-equiv="refresh" content="30">
<!-- IF S_SHOW_TOPICS -->
<!-- IF .searchresults -->
<div class="forumbg">
<div class="inner"><span class="corners-top"><span></span></span>
<ul class="topiclist">
<li class="header">
<dl class="icon">
<dt>{L_TOPICS}</dt>
<dd class="posts">{L_REPLIES}</dd>
<dd class="views">{L_VIEWS}</dd>
<dd class="lastpost"><span>{L_LAST_POST}</span></dd>
</dl>
</li>
</ul>
<ul class="topiclist topics">
<!-- BEGIN searchresults -->
<li class="row<!-- IF searchresults.S_ROW_COUNT is even --> bg1<!-- ELSE --> bg2<!-- ENDIF -->">
<dl class="icon" style="background-image: url({searchresults.TOPIC_FOLDER_IMG_SRC}); background-repeat: no-repeat;">
<dt <!-- IF searchresults.TOPIC_ICON_IMG -->style="background-image: url({T_ICONS_PATH}{searchresults.TOPIC_ICON_IMG}); background-repeat: no-repeat;"<!-- ENDIF -->>
<!-- IF searchresults.S_UNREAD_TOPIC --><a href="{searchresults.U_NEWEST_POST}">{NEWEST_POST_IMG}</a> <!-- ENDIF -->
<a href="{searchresults.U_VIEW_TOPIC}" class="topictitle">{searchresults.TOPIC_TITLE}</a> {searchresults.ATTACH_ICON_IMG}
<!-- IF searchresults.S_TOPIC_UNAPPROVED or searchresults.S_POSTS_UNAPPROVED --><a href="{searchresults.U_MCP_QUEUE}">{searchresults.UNAPPROVED_IMG}</a> <!-- ENDIF -->
<!-- IF searchresults.S_TOPIC_REPORTED --><a href="{searchresults.U_MCP_REPORT}">{REPORTED_IMG}</a><!-- ENDIF --><br />
<!-- IF searchresults.PAGINATION --><strong class="pagination"><span>{searchresults.PAGINATION}</span></strong><!-- ENDIF -->
{L_POST_BY_AUTHOR} {searchresults.TOPIC_AUTHOR_FULL} » {searchresults.FIRST_POST_TIME}
<!-- IF not searchresults.S_TOPIC_GLOBAL -->{L_IN} <a href="{searchresults.U_VIEW_FORUM}">{searchresults.FORUM_TITLE}</a><!-- ELSE --> ({L_GLOBAL})<!-- ENDIF -->
</dt>
<dd class="posts">{searchresults.TOPIC_REPLIES}</dd>
<dd class="views">{searchresults.TOPIC_VIEWS}</dd>
<dd class="lastpost"><span>
{L_POST_BY_AUTHOR} {searchresults.LAST_POST_AUTHOR_FULL}
<!-- IF not S_IS_BOT --><a href="{searchresults.U_LAST_POST}">{LAST_POST_IMG}</a> <!-- ENDIF --><br />{searchresults.LAST_POST_TIME}<br /> </span>
</dd>
</dl>
</li>
<!-- END searchresults -->
</ul>
<span class="corners-bottom"><span></span></span></div>
</div>
<!-- ELSE -->
<div class="panel">
<div class="inner"><span class="corners-top"><span></span></span>
<strong>{L_NO_SEARCH_RESULTS}</strong>
<span class="corners-bottom"><span></span></span></div>
</div>
<!-- ENDIF -->
<!-- ENDIF -->
<!-- INCLUDE simple_footer.html -->
Das hier
<meta http-equiv="refresh" content="30">
bedeutet das dieses Popup-Fenster alle 3 Sek. aktualisiert.
Lade diese Datei in deinen template Ordner deines Styles.
Öffne:
root/styles/stylename/template/overall_header.html
Finde:
Davor einfügen:
Code: Alles auswählen
<script type="text/javascript" language="JavaScript">
<!--
function AutoPopUp() {
var dateiname = "{U_SEARCH_UNREAD_POSTS}";
eigenschaften= "left=10,top=10,";
eigenschaften= eigenschaften + "width=200,height=100,"
// hier andere Fenstereigenschaften festlegen:
// für ja den Wert von Null auf Eins ändern
eigenschaften= eigenschaften + "menubar=0"; // Menüleiste
eigenschaften= eigenschaften + "toolbar=0"; // Symbolleiste
eigenschaften= eigenschaften + "statusbar=0"; // Statuszeile
eigenschaften= eigenschaften + "scrollbars=yes"; // Scrollbars
eigenschaften= eigenschaften + "resizable=yes"; // Größe veränderbar
eigenschaften= eigenschaften + "locationbar=0"; // Adresszeile
eigenschaften= eigenschaften + "directories=0"; // Linkleiste
fenster04 = window.open(dateiname,"Titeltext",eigenschaften);
fenster04.focus();
}
window.setTimeout('AutoPopUp()', 4000);
//-->
</script>
Das hier
window.setTimeout('AutoPopUp()', 4000);
bedeutet das sich das Fenster nach 4 Sek. automatisch öffnet.
Die Position und Größe dieses Popup-Fensters kannst du in diesem Script nach belieben anpassen.
Öffne:
root/includes/funtions.php
Finde:
Code: Alles auswählen
'U_SEARCH_UNREAD' => append_sid("{$phpbb_root_path}search.$phpEx", 'search_id=unreadposts'),
Danach einfügen:
Code: Alles auswählen
'U_SEARCH_UNREAD_POSTS' => append_sid("{$phpbb_root_path}unread_posts.$phpEx", 'search_id=unreadposts'),
Zum Schluß noch alle Cache leeren!
Re: Ungelesene Beiträge als Popup-Fenster
Verfasst: 02.12.2013 19:34
von Knowhow-Sauger
Hallo Kirk,
erstmal ganz herzlichen Dank für die Mühe!
Jedoch meinte ich kein separates Fenster, sondern ein Button der unten rechts eingeblendet wird und der fixiert ist (der also auch beim scrollen nicht verschwindet).
So sollte es aussehen:
http://www.kurzehosenforum.com/screenhot-ub.png
Dass unten rechts also immer die ungelesenen Beiträge stehen. Ist doch praktisch, so kann man gleich von einem ungelesenen Thread zum Nächsten springen. So wie es jetzt ist, muss man ja immer wieder zuerst auf "ungelesene Beiträge" klicken.
Und leider funktioniert Deine Variante nicht. Ich bekomme folgende Fehlermeldung angezeigt:
In dem sich öffnenden Popup-Fenster steht:
Parse error: syntax error, unexpected $end in /home/.sites/110/site2750/web/cache/tpl_prosilver_unread_posts.html.php on line 13
Vielleicht könntest Du nochmal schauen.
DANKE!
Re: Ungelesene Beiträge als Popup-Fenster
Verfasst: 02.12.2013 19:50
von Kirk
Der Fehler liegt bei dir.
Deine
unread_posts.html
Code: Alles auswählen
<!-- INCLUDE simple_header.html -->
<meta http-equiv="refresh" content="30">
<!-- IF S_SHOW_TOPICS -->
<!-- IF .searchresults -->
<div class="forumbg">
<div class="inner"><span class="corners-top"><span></span></span>
<ul class="topiclist">
<li class="header">
<dl class="icon">
<dt>{L_TOPICS}</dt>
<dd class="posts">{L_REPLIES}</dd>
Meine
unread_posts.html
Code: Alles auswählen
<!-- INCLUDE simple_header.html -->
<meta http-equiv="refresh" content="30">
<!-- IF S_SHOW_TOPICS -->
<!-- IF .searchresults -->
<div class="forumbg">
<div class="inner"><span class="corners-top"><span></span></span>
<ul class="topiclist">
<li class="header">
<dl class="icon">
<dt>{L_TOPICS}</dt>
<dd class="posts">{L_REPLIES}</dd>
<dd class="views">{L_VIEWS}</dd>
<dd class="lastpost"><span>{L_LAST_POST}</span></dd>
</dl>
</li>
</ul>
<ul class="topiclist topics">
<!-- BEGIN searchresults -->
<li class="row<!-- IF searchresults.S_ROW_COUNT is even --> bg1<!-- ELSE --> bg2<!-- ENDIF -->">
<dl class="icon" style="background-image: url({searchresults.TOPIC_FOLDER_IMG_SRC}); background-repeat: no-repeat;">
<dt <!-- IF searchresults.TOPIC_ICON_IMG -->style="background-image: url({T_ICONS_PATH}{searchresults.TOPIC_ICON_IMG}); background-repeat: no-repeat;"<!-- ENDIF -->>
<!-- IF searchresults.S_UNREAD_TOPIC --><a href="{searchresults.U_NEWEST_POST}">{NEWEST_POST_IMG}</a> <!-- ENDIF -->
<a href="{searchresults.U_VIEW_TOPIC}" class="topictitle">{searchresults.TOPIC_TITLE}</a> {searchresults.ATTACH_ICON_IMG}
<!-- IF searchresults.S_TOPIC_UNAPPROVED or searchresults.S_POSTS_UNAPPROVED --><a href="{searchresults.U_MCP_QUEUE}">{searchresults.UNAPPROVED_IMG}</a> <!-- ENDIF -->
<!-- IF searchresults.S_TOPIC_REPORTED --><a href="{searchresults.U_MCP_REPORT}">{REPORTED_IMG}</a><!-- ENDIF --><br />
<!-- IF searchresults.PAGINATION --><strong class="pagination"><span>{searchresults.PAGINATION}</span></strong><!-- ENDIF -->
{L_POST_BY_AUTHOR} {searchresults.TOPIC_AUTHOR_FULL} » {searchresults.FIRST_POST_TIME}
<!-- IF not searchresults.S_TOPIC_GLOBAL -->{L_IN} <a href="{searchresults.U_VIEW_FORUM}">{searchresults.FORUM_TITLE}</a><!-- ELSE --> ({L_GLOBAL})<!-- ENDIF -->
</dt>
<dd class="posts">{searchresults.TOPIC_REPLIES}</dd>
<dd class="views">{searchresults.TOPIC_VIEWS}</dd>
<dd class="lastpost"><span>
{L_POST_BY_AUTHOR} {searchresults.LAST_POST_AUTHOR_FULL}
<!-- IF not S_IS_BOT --><a href="{searchresults.U_LAST_POST}">{LAST_POST_IMG}</a> <!-- ENDIF --><br />{searchresults.LAST_POST_TIME}<br /> </span>
</dd>
</dl>
</li>
<!-- END searchresults -->
</ul>
<span class="corners-bottom"><span></span></span></div>
</div>
<!-- ELSE -->
<div class="panel">
<div class="inner"><span class="corners-top"><span></span></span>
<strong>{L_NO_SEARCH_RESULTS}</strong>
<span class="corners-bottom"><span></span></span></div>
</div>
<!-- ENDIF -->
<!-- ENDIF -->
<!-- INCLUDE simple_footer.html -->
Was das andere anbelangt, schau wie du das link an der Seite eingebaut hast, so baust du es recht ein
und setzt den Code von der
unread_posts.html
dann dort rein.
Re: Ungelesene Beiträge als Popup-Fenster
Verfasst: 02.12.2013 20:01
von Knowhow-Sauger
Ich kann zwischen den beiden Dateien keine Unterschiede feststellen. Ich habe 3x die beiden Datein verglichen. Wo soll da der Fehler sein?
Re: Ungelesene Beiträge als Popup-Fenster
Verfasst: 03.12.2013 13:24
von Knowhow-Sauger
Der Code ist falsch. In dem Popup-Fenster steht:
Parse error: syntax error, unexpected $end in /home/.sites/110/site2750/web/cache/tpl_prosilver_unread_posts.html.php on line 13
Wäre nett wenn Du mir nochmal helfen könntest. Danke.
Re: Ungelesene Beiträge als Popup-Fenster
Verfasst: 03.12.2013 17:30
von Kirk
Knowhow-Sauger hat geschrieben:Ich kann zwischen den beiden Dateien keine Unterschiede feststellen.
Wirklich nicht? Vergleiche es nochmal
hier
Knowhow-Sauger hat geschrieben:Der Code ist falsch. In dem Popup-Fenster steht
Der Code ist schon richtig, habe es ja vorher getestet.
Nachtrag:
Man sollte dieses Script in der
overall_header.html
zwischen ein IF Statement setzen, damit die Gäste
kein Popup-Fenster zu sehen bekommen, weil deine Gäste nicht das Recht haben auf Ungelesene Beiträge zu gehen.
Re: Ungelesene Beiträge als Popup-Fenster
Verfasst: 04.12.2013 01:46
von Knowhow-Sauger
Hallo Kirk,
es tut mir wirklich Leid, aber ich kann immer noch keine Unterschiede zwischen den beiden Dateien entdecken!
Und ich bin extra nochmal beide Dateien
GANZ gründlich durchgegangen. Sorry, aber WO soll da bitte der Fehler sein? Und wo soll der Fehler überhaupt her kommen? Ich habe die Datei genau so kopiert wie Du sie mir geschickt hast. Ich habe nichts verändert.
Re: Ungelesene Beiträge als Popup-Fenster
Verfasst: 04.12.2013 17:30
von Kirk
Wenn ich diesen
Link aufrufe und mir den Quelltext anzeigen lasse, sehe ich folgendes:
Code: Alles auswählen
<!-- INCLUDE simple_header.html -->
<meta http-equiv="refresh" content="30">
<!-- IF S_SHOW_TOPICS -->
<!-- IF .searchresults -->
<div class="forumbg">
<div class="inner"><span class="corners-top"><span></span></span>
<ul class="topiclist">
<li class="header">
<dl class="icon">
<dt>{L_TOPICS}</dt>
<dd class="posts">{L_REPLIES}</dd>
Und so sollte die
unread_posts.html
aussehen:
Code: Alles auswählen
<!-- INCLUDE simple_header.html -->
<meta http-equiv="refresh" content="30">
<!-- IF S_SHOW_TOPICS -->
<!-- IF .searchresults -->
<div class="forumbg">
<div class="inner"><span class="corners-top"><span></span></span>
<ul class="topiclist">
<li class="header">
<dl class="icon">
<dt>{L_TOPICS}</dt>
<dd class="posts">{L_REPLIES}</dd>
<dd class="views">{L_VIEWS}</dd>
<dd class="lastpost"><span>{L_LAST_POST}</span></dd>
</dl>
</li>
</ul>
<ul class="topiclist topics">
<!-- BEGIN searchresults -->
<li class="row<!-- IF searchresults.S_ROW_COUNT is even --> bg1<!-- ELSE --> bg2<!-- ENDIF -->">
<dl class="icon" style="background-image: url({searchresults.TOPIC_FOLDER_IMG_SRC}); background-repeat: no-repeat;">
<dt <!-- IF searchresults.TOPIC_ICON_IMG -->style="background-image: url({T_ICONS_PATH}{searchresults.TOPIC_ICON_IMG}); background-repeat: no-repeat;"<!-- ENDIF -->>
<!-- IF searchresults.S_UNREAD_TOPIC --><a href="{searchresults.U_NEWEST_POST}">{NEWEST_POST_IMG}</a> <!-- ENDIF -->
<a href="{searchresults.U_VIEW_TOPIC}" class="topictitle">{searchresults.TOPIC_TITLE}</a> {searchresults.ATTACH_ICON_IMG}
<!-- IF searchresults.S_TOPIC_UNAPPROVED or searchresults.S_POSTS_UNAPPROVED --><a href="{searchresults.U_MCP_QUEUE}">{searchresults.UNAPPROVED_IMG}</a> <!-- ENDIF -->
<!-- IF searchresults.S_TOPIC_REPORTED --><a href="{searchresults.U_MCP_REPORT}">{REPORTED_IMG}</a><!-- ENDIF --><br />
<!-- IF searchresults.PAGINATION --><strong class="pagination"><span>{searchresults.PAGINATION}</span></strong><!-- ENDIF -->
{L_POST_BY_AUTHOR} {searchresults.TOPIC_AUTHOR_FULL} » {searchresults.FIRST_POST_TIME}
<!-- IF not searchresults.S_TOPIC_GLOBAL -->{L_IN} <a href="{searchresults.U_VIEW_FORUM}">{searchresults.FORUM_TITLE}</a><!-- ELSE --> ({L_GLOBAL})<!-- ENDIF -->
</dt>
<dd class="posts">{searchresults.TOPIC_REPLIES}</dd>
<dd class="views">{searchresults.TOPIC_VIEWS}</dd>
<dd class="lastpost"><span>
{L_POST_BY_AUTHOR} {searchresults.LAST_POST_AUTHOR_FULL}
<!-- IF not S_IS_BOT --><a href="{searchresults.U_LAST_POST}">{LAST_POST_IMG}</a> <!-- ENDIF --><br />{searchresults.LAST_POST_TIME}<br /> </span>
</dd>
</dl>
</li>
<!-- END searchresults -->
</ul>
<span class="corners-bottom"><span></span></span></div>
</div>
<!-- ELSE -->
<div class="panel">
<div class="inner"><span class="corners-top"><span></span></span>
<strong>{L_NO_SEARCH_RESULTS}</strong>
<span class="corners-bottom"><span></span></span></div>
</div>
<!-- ENDIF -->
<!-- ENDIF -->
<!-- INCLUDE simple_footer.html -->
Wenn du jetzt die beiden vergleichst, dann siehst du das bei deinem Code einiges fehlt.