javascript (showHide) und dabei cookie setzen. geht das?

Alles zu Styles, Templates, Icons und Smilies für phpBB 2.0, sowie allgemeine Designfragen zur Integration von phpBB in bestehende Websites.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.0, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Antworten
Benutzeravatar
ATARI
Mitglied
Beiträge: 1684
Registriert: 22.02.2004 16:51
Wohnort: Monaco Di Bavaria

javascript (showHide) und dabei cookie setzen. geht das?

Beitrag von ATARI »

also es gibt da dieses kleine javascript vom topic calendar, was man ja durch bissl html kenntnisse auch für andere sachen hernehmen kann, ich zb. verwende es um ein aufklappbares quick reply zu haben, siehe hier der code:

Code: Alles auswählen

<script language="JavaScript" type="text/javascript" src="includes/fadetogrey.js"></script>
<table border='0' cellpadding='0' cellspacing='0' width='100%' class='forumline'>
<tr>
	<th colspan="2" height="25" valign="middle">&nbsp;<img src="images/bot.gif" id="quick_reply_open_close" border="0"/>&nbsp;<a title="<b>Schnellantwort-Fenster aus-/einklappen</b>" href="javascript:void(0);" onClick="hdr_toggle('quick_reply','quick_reply_open_close', 'images/bot.gif', 'images/top.gif'); return false;" class="nav" style="color:#0066CC">{L_QUICK_REPLY}</a></th>

</tr>
<tbody id="quick_reply" style="display:none">
<form action='{quick_reply.POST_ACTION}' method='post' name='post' onsubmit='return checkForm(this)'>
        <input type="hidden" name="sid" value="{quick_reply.SID}">
                <tr>
                        <td class='qdare' align='left' valign='top' height="223">
                                &nbsp;<textarea name='message' rows='10' cols='80' wrap='virtual' style='background-image:url(images/007.PNG)' tabindex='3' class='post' onselect='storeCaret(this);' onclick='storeCaret(this);' onkeyup='storeCaret(this);'></textarea><br>&nbsp;
                                <!-- BEGIN smilies -->
                                <img src="{quick_reply.smilies.URL}" border="0" onmouseover="this.style.cursor='hand';" onclick="emoticon(' {quick_reply.smilies.CODE} ');" title="{quick_reply.smilies.DESC}" />
                                <!-- END smilies -->
                                <INPUT TYPE=button CLASS=BUTTON NAME="SmilesButt" VALUE="{L_ALL_SMILIES}" ONCLICK="openAllSmiles();">
                </td></tr><tr>
                        <td class='qdare' align='left' valign='top' height="82"><span class='gen'>
                                <hr />&nbsp;<b>{L_OPTIONS}</b><br />
                                &nbsp;<input type='checkbox' class='checkbox' name='quick_quote' value="ON">{L_QUOTE_LAST_MESSAGE}<br>
                                <!-- BEGIN user_logged_in -->
                                &nbsp;<input type='checkbox' class='checkbox' name='attach_sig' {quick_reply.user_logged_in.ATTACH_SIGNATURE} value="ON">{L_ATTACH_SIGNATURE}<br>
                                &nbsp;<input type='checkbox' class='checkbox' name='notify' {quick_reply.user_logged_in.NOTIFY_ON_REPLY} value="ON">{L_NOTIFY_ON_REPLY}</td>
                                <!-- END user_logged_in -->
                </tr>
                <tr>
                        <td class='catBottom' align='center' height='27' colspan='2'>
                                <input type='hidden' name='mode' value='reply'>
                                <input type='hidden' name='t' value='{quick_reply.TOPIC_ID}'>
                                <input type='hidden' name='last_msg' value='{quick_reply.LAST_MESSAGE}'>
                                <!--input type='hidden' name='message' value=''-->
                                <input type='submit' name='preview' class='liteoption' value='{L_PREVIEW}'>&nbsp;
                                <input type='submit' onClick="this.value='Bitte warten..'" name='post' class='mainoption' value='{L_SUBMIT}' accesskey='s'>
                        </td>
                </tr>
        </table>
</form><hr /></tbody>
und hier die javascript-datei:

Code: Alles auswählen

function hdr_ref(object)
{
	if (document.getElementById)
	{
		return document.getElementById(object);
	}
	else if (document.all)
	{
		return eval('document.all.' + object);
	}
	else
	{
		return false;
	}
}

function hdr_expand(object)
{
	var object = hdr_ref(object);

	if( !object.style )
	{
		return false;
	}
	else
	{
		object.style.display = '';
	}

	if (window.event)
	{
		window.event.cancelBubble = true;
	}
}

function hdr_contract(object)
{
	var object = hdr_ref(object);

	if( !object.style )
	{
		return false;
	}
	else
	{
		object.style.display = 'none';
	}

	if (window.event)
	{
		window.event.cancelBubble = true;
	}
}

function hdr_toggle(object, open_close, open_icon, close_icon)
{
	var object = hdr_ref(object);
	var icone = hdr_ref(open_close);

	if( !object.style )
	{
		return false;
	}

	if( object.style.display == 'none' )
	{
		object.style.display = '';
		icone.src = close_icon;
	}
	else
	{
		object.style.display = 'none';
		icone.src = open_icon;
	}
}
das funzt auch alles supi, die box ist standartmäßig eben geschlossen, und wenn man auf den link klickt klappt sie aus. wunderbar - fürs quick reply.

nun ist es ja bei vbb und ipb standart, das quasi jede box und alles im forum ein und ausklappbar ist und: dieser zustand wird per cookie gespeichert !! d.h. wenn ich bespielsweise im portal die boxen "wetter" und "wer ist online" zuklappe, und dann irgendwann später wieder aufs portal geh, sind die immer noch zu.
nur mal so als beispiel.

ich würde gern wissen, wie könnte man bei dem javascript von oben den zustand ob etwas ein- oder ausgeklappt ist, auch per cookie speichern und nicht per default festlegen?
Man soll aufhören wenn´s am schönsten ist!

Servus phpBB! ;)
Antworten

Zurück zu „phpBB 2.0: Styles, Templates und Grafiken“