Seite 1 von 1

Marquee bei neuer PN und/oder ungelesener PN /

Verfasst: 28.07.2011 18:54
von Talk19zehn
Ich beziehe mich auf jenen Beitrag in der Mod-Anfrage: viewtopic.php?f=87&t=217126

Marquee bei neuer Nachricht und/oder ungelesener Nachricht / Laufschrift: Ohne Gewähr

Hello, meines Wissens ist die strict valide Erstellung eines marquee-tags kaum möglich, gar nicht möglich, umstritten und vieles mehr?
Nicht --> strict valide wendete ich jene Marquee-Zeile an, welche ggf. einer Anpassung bedarf, um valide zu sein. Ich habe keinen Lösungsansatz für ein valides Konstrukt parat. Daher ist die Idee nur bedingt empfehlenswert. :(

Test in der overall_header.html:

Suche:

Code: Alles auswählen

			<ul class="linklist rightside">
				<!-- IF not S_IS_BOT -->
					<!-- IF S_DISPLAY_MEMBERLIST --><li class="icon-members"><a href="{U_MEMBERLIST}" title="{L_MEMBERLIST_EXPLAIN}">{L_MEMBERLIST}</a></li><!-- ENDIF -->
					<!-- IF not S_USER_LOGGED_IN and S_REGISTER_ENABLED --><li class="icon-register"><a href="{U_REGISTER}">{L_REGISTER}</a></li><!-- ENDIF -->
					<li class="icon-logout"><a href="{U_LOGIN_LOGOUT}" title="{L_LOGIN_LOGOUT}" accesskey="l">{L_LOGIN_LOGOUT}</a></li>
				<!-- ENDIF -->
			</ul>
			<span class="corners-bottom"><span></span></span></div>
		</div>
danach einfügen:

Code: Alles auswählen

<div>
	<!-- IF not S_IS_BOT && not $CA_SKIP_PM_NOTIFY && S_USER_LOGGED_IN && S_DISPLAY_PM -->
	<!-- IF S_USER_NEW_PRIVMSG -->
	<p class="pm-notify-new pm-notify-header"><marquee direction="left" scrollAmount="3" align="middle" onmouseover="this.stop()" onmouseout="this.start()">++++++ {L_PRIVATE_MESSAGES} ++++++ Neue private Nachrichten sind eingetroffen ++++++ <a href="{U_PRIVATEMSGS}">{PRIVATE_MESSAGE_INFO}<!-- IF PRIVATE_MESSAGE_INFO_UNREAD -->, {PRIVATE_MESSAGE_INFO_UNREAD}<!-- ENDIF --></a> ++++++</marquee></p>
		<!-- ELSEIF S_USER_UNREAD_PRIVMSG -->
	<p class="pm-notify-unread pm-notify-header"><marquee direction="left" scrollAmount="3" align="middle" onmouseover="this.stop()" onmouseout="this.start()">++++++ {L_PRIVATE_MESSAGES} ++++++ Du hast ungelesene Nachrichten in deinem Postfach ++++++ <a href="{U_PRIVATEMSGS}">{PRIVATE_MESSAGE_INFO}<!-- IF PRIVATE_MESSAGE_INFO_UNREAD -->, {PRIVATE_MESSAGE_INFO_UNREAD}<!-- ENDIF --></a> ++++++</marquee></p>
	<!-- ENDIF -->
	<!-- ENDIF -->
</div>
Der Code blendet sich erst aus, wenn die Vorgaben, wie "der Besuch" des eigenes Postfaches und "das Lesen" der PNs ( beides "sinnbildlich" ) erfüllt ist.

Sprachvariablen für die folgenden Informationen im Lauftext, -

Neue private Nachrichten sind eingetroffen
Du hast ungelesene Nachrichten in deinem Postfach

sind noch anzulegen aber wo (?) und stellen nur einen Vorschlag dar.

Im IE8 und FF5 kann ich zunächst keine Fehler in der Anwendung, soweit ich es überblicke, feststellen. Ich bin nicht fehlerlos! Evtl. ist es gar ratsam einen Container anzulegen und die Codierung dort inhaltlich zu integrieren? Ich würde dieses Vorgehen im Grunde bejahen wollen. Wie ich es schaffe, den Code ggf. valide zu gestalten, wäre meine Frage.

BTW: Mich stören visuell eher "Marquee-Konstrukte" beim Surfen auf einer Seite.
Grüße

Re: Marquee bei neuer PN und/oder ungelesener PN /

Verfasst: 28.07.2011 20:50
von 7emper5i
Hi,
Talk19zehn hat geschrieben: Sprachvariablen für die folgenden Informationen im Lauftext, -

Neue private Nachrichten sind eingetroffen
Du hast ungelesene Nachrichten in deinem Postfach

sind noch anzulegen aber wo (?) und stellen nur einen Vorschlag dar.
Grüße
Am einfachsten legst du die Variablen in der de/common.php ab.

Finde ?> und füge davor ein:

Code: Alles auswählen

// Beginn Marquee bei neuer/ungelesener PN
$lang = array_merge($lang, array(
	'MARQ_NEW_PN'								=> 'Neue private Nachrichten sind eingetroffen',
	'MARQ_UNREAD_PN'							=> 'Du hast ungelesene Nachrichten in deinem Postfach',
));
// END Marquee bei neuer/ungelesener PN
Die Variablen sind beispielhaft gewählt. Probier es mal aus?
Find die Idee sehr interessant.

Gruß

Re: Marquee bei neuer PN und/oder ungelesener PN /

Verfasst: 28.07.2011 23:36
von Talk19zehn
Hi 7emper5i, :D

deinen Vorschlag setzte ich problemlos um, --> wie sollte es auch anders sein, wenn ein Kenner der Materie antwortet! Vielen Dank für dein Feedback.

Codierung lautet nun:

Code: Alles auswählen

<div>
	<!-- IF not S_IS_BOT && not $CA_SKIP_PM_NOTIFY && S_USER_LOGGED_IN && S_DISPLAY_PM -->
	<!-- IF S_USER_NEW_PRIVMSG -->
	<p class="pm-notify-new pm-notify-header"><marquee direction="left" scrollAmount="3" align="middle" onmouseover="this.stop()" onmouseout="this.start()">++++++ {L_PRIVATE_MESSAGES} ++++++ {L_MARQ_NEW_PN} ++++++ <a href="{U_PRIVATEMSGS}">{PRIVATE_MESSAGE_INFO}<!-- IF PRIVATE_MESSAGE_INFO_UNREAD -->, {PRIVATE_MESSAGE_INFO_UNREAD}<!-- ENDIF --></a> ++++++</marquee></p>
		<!-- ELSEIF S_USER_UNREAD_PRIVMSG -->
	<p class="pm-notify-unread pm-notify-header"><marquee direction="left" scrollAmount="3" align="middle" onmouseover="this.stop()" onmouseout="this.start()">++++++ {L_PRIVATE_MESSAGES} ++++++ {L_MARQ_UNREAD_PN} ++++++ <a href="{U_PRIVATEMSGS}">{PRIVATE_MESSAGE_INFO}<!-- IF PRIVATE_MESSAGE_INFO_UNREAD -->, {PRIVATE_MESSAGE_INFO_UNREAD}<!-- ENDIF --></a> ++++++</marquee></p>
	<!-- ENDIF -->
	<!-- ENDIF -->
</div>


Mit einfachen Boardmitteln habe ich einen Hintergrund eingerichtet, der nach dem Wegfall der Marqueezeile ( Ausblendung, da alle Gegebenheiten erfüllt sind ) eine Art "Zierleiste" oder "Zierbalken" stehen ließe. Wer mit diesen einfachen Mitteln leben kann, kann es gerne ausprobieren. Man kann diese Leiste ja auch noch für andere inhaltliche Zwecke nutzen.... :wink:

Code: Alles auswählen

<br />
<div class="navbar">
	<div class="inner"><span class="corners-top"><span></span></span>
	<!-- IF not S_IS_BOT && not $CA_SKIP_PM_NOTIFY && S_USER_LOGGED_IN && S_DISPLAY_PM -->
	<!-- IF S_USER_NEW_PRIVMSG -->
	<p class="pm-notify-new pm-notify-header"><marquee direction="left" scrollAmount="3" align="middle" onmouseover="this.stop()" onmouseout="this.start()">++++++ {L_PRIVATE_MESSAGES} ++++++ {L_MARQ_NEW_PN} ++++++ <a href="{U_PRIVATEMSGS}">{PRIVATE_MESSAGE_INFO}<!-- IF PRIVATE_MESSAGE_INFO_UNREAD -->, {PRIVATE_MESSAGE_INFO_UNREAD}<!-- ENDIF --></a> ++++++</marquee></p>
		<!-- ELSEIF S_USER_UNREAD_PRIVMSG -->
	<p class="pm-notify-unread pm-notify-header"><marquee direction="left" scrollAmount="3" align="middle" onmouseover="this.stop()" onmouseout="this.start()">++++++ {L_PRIVATE_MESSAGES} ++++++ {L_MARQ_UNREAD_PN} ++++++ <a href="{U_PRIVATEMSGS}">{PRIVATE_MESSAGE_INFO}<!-- IF PRIVATE_MESSAGE_INFO_UNREAD -->, {PRIVATE_MESSAGE_INFO_UNREAD}<!-- ENDIF --></a> ++++++</marquee></p>
	<!-- ENDIF -->
	<!-- ENDIF -->
	<span class="corners-bottom"><span></span></span></div>
</div>

Denkbar sind für einen Hintergrund andere CSS-Feinheiten, die ggf. im weiteren Verlauf oder bei Bedarf geklärt werden könn(t)en.

Nochmals Dank an 7emper5i

Beste Grüße

Re: Marquee bei neuer PN und/oder ungelesener PN /

Verfasst: 28.07.2011 23:43
von 7emper5i
Hallo,

Wenn alles so funktioniert,
Gern geschehen ;)

Gruß