NAVIGATION
Send a friend PopUp.
Siehe auch http://www.iba-stadtumbau.de/index.php?news-aktuell (Brief unten neben dem Drucker).
Ein Formular welches mit einem Klick eingeblendet werden kann, um einem Adressaten die aktuelle Seitenadresse mitzuteilen.
Docu: –
Forum: Tell a friend
Autor: Oliver Georgi http://phpwcms.de/ → aufbereitet: K.Heermann (flip-flop) (05.05.09)
CMS-Version: >= V1.2.8
Version: V1.0 05.05.08
Bedingung: → /config/phpwcms/conf.inc.php
Möglichkeiten:
An der Stelle im Layout an der das Formular erscheinen soll:
{SHOW_CONTENT:CPA,16}
16 ist die ID des Artikels in dem das Formular abgelegt ist.
Die Aktivierung des Formulars (Klick → ein/aus):
<span class="sendafriend_button"> <a title="Seite Weiterempfehlen" id="safbutton" class="sendafriend" href="#jumpForm17"><span>Weiterempfehlen</span></a> </span>
#jumpForm17 setzt sich zusammen aus #jumpFormCP-ID=17
Dateiname: rt_sendafriend.php
Ort: /template/inc_script/frontend_render/
<?php // ---------------------------------------------------------------- // obligate check for phpwcms constants if (!defined('PHPWCMS_ROOT')) { die("You Cannot Access This Script Directly, Have a Nice Day."); } // ---------------------------------------------------------------- $block['custom_htmlhead']['mootools.js'] = ' <script src="'.TEMPLATE_PATH.'inc_js/mootools/mootools.js" type="text/javascript"></script>'; // Send a Friend $block['custom_htmlhead']['sendafriend.js'] = ' <script src="'.TEMPLATE_PATH.'inc_js/mootools/tools/sendafriend.js" type="text/javascript"></script>'; ?>
Dateiname: sendafriend.css
Ort: /template/inc_css/
/* Send a friend */ #content div.sendafriend { border: 1px solid #D8DBDB; border-right-color: #B1B8B7; border-bottom-color: #B1B8B7; background: #F9F9F9; padding: 5px 0 5px 0; margin: 20px 10px 0 0; line-height: 100%; clear: left; } #content div.sendafriend h3 { font-size: 1.8em; color: #A5ADA5; font-family: Arial, Helvetica, sans-serif; font-weight: normal; height: 35px; line-height: 28px; padding: 0 5px 10px 10px; } #content div.sendafriend form { padding: 0 10px 0 10px; margin: 0; } #content div.sendafriend form p { padding: 0 0 6px 0; margin: 0; } #content div.sendafriend form p em { display: block; font-size: .9em; padding: 0 0 1px 0; margin: 0; color: #686C71; font-style: italic; } #content div.sendafriend div.notice { padding-left: 280px; } #content div.sendafriend div.fields { float: left; } #content div.sendafriend form textarea.text { width: 375px; height: 130px; font-size: 1em; } #content div.sendafriend form input.text { width: 260px; font-size: 1em; } #content div.sendafriend form input.button { width: auto; font-size: 1em; font-weight: bold; margin-top: 6px; } #content div.sendafriend p.notice { font-size: .9em; padding: 10px 12px 5px 12px; margin: 0; color: #686C71; font-style: italic; clear: left; line-height: 125%; } #content div.sendafriend p.error { padding: 0 12px 10px 10px; margin: 0; color: #CC3300; line-height: 125%; font-weight: bold; } #content div.sendafriend p.success { padding: 0 12px 0 10px; margin: 0; color: #5BAC26; line-height: 125%; font-weight: bold; } /* FOOTER -------- */ #footer span.sendafriend_button { width: 200px; height: 16px; } #footer a.sendafriend { /* float: left; */ width: 15px; /* width: 15px; */ height: 16px; padding: 0; margin: 0 0 0 4px; overflow: hidden; background-position: left 2px; background-repeat: no-repeat; } #footer a.sendafriend { background-image: url(../../img/famfamfam/group.gif); margin-left: 5px; } #footer a.sendafriend:hover { background-image: url(../../img/famfamfam/group_add.gif); } #footer a.sendafriend span { /* float: left; */ width: 0; height: 0; margin-left: 18px; }
Dateiname: sendafriend.js
Ort: /template/inc_js/mootools/tools/
window.addEvent('domready', function() { var sendafriend = $('sendafriend'); if(sendafriend) { // do not hide send-a-friend form if( $('safsuccess') || $('saferror') ) { var sendafriend_status = true; } else { var sendafriend_status = false; sendafriend.setStyle('display', 'none'); } $('safbutton').addEvent('click', function(r) { if(sendafriend_status == true) { sendafriend.setStyle('display', 'none'); sendafriend_status = false; } else { sendafriend.setStyle('display', ''); sendafriend_status = true; } }); } });
Empfohlen: Der Vorteil liegt darin, dass das Formular bei ausgeschaltetem JS nicht automatisch sichtbar ist.
sendafriend.js (Wenn das Formular beim Laden der Seite aufblitzt)
window.addEvent('domready', function() { var sendafriend = $('sendafriend'); if(sendafriend) { // do not hide send-a-friend form // if( $('safsuccess') || $('saferror') ) { if( $('safsuccess') || $('saferror') || $('safok') ) { // +KH: id safok used in "on success" sendafriend.setStyle('display', ''); // +KH: if the form pops up during site load var sendafriend_status = true; } else { var sendafriend_status = false; sendafriend.setStyle('display', 'none'); } $('safbutton').addEvent('click', function(r) { if(sendafriend_status == true) { sendafriend.setStyle('display', 'none'); sendafriend_status = false; } else { sendafriend.setStyle('display', ''); sendafriend_status = true; } }); } });
Erster HTML CP:
<div id="sendafriend" class="sendafriend" style="">
Empfohlen:
Erster HTML CP: (wenn das Formular kurz aufblitzt während die Seite geladen wird)
<div id="sendafriend" class="sendafriend" style="display:none">
Die Empfehlung wurde erfolgreich versendet.
Empfohlen:
(bei Erfolg: umschalten nach [X] HTML)
bei Erfolg, wenn ein "Fenster schließen"-Link gewünscht
<p id="safok">Die Empfehlung wurde erfolgreich versendet.</p><br /> [PHP] echo '<a href="index.php?'.$GLOBALS['content']['struct'][$GLOBALS['content']['cat_id']]['acat_alias'].'">Fenster schließen</a>'; [/PHP]
Der “Fenster schließen”-Link hat den Vorteil, dass die Seite ohne Anker neu geladen wird und eine neue Eingabe sofort möglich ist.
<p class="error" id="saferror">Ihre Anfrage konnte leider nicht versendet werden! <br /> Bitte füllen bzw. korrigieren Sie die farblich hervorgehobenen Bereiche.</p>
Der Absender {yourname}
{sender}
empfiehlt Ihnen den Link auf folgende Seite:
{FORM_URL}
------------------------------------------------------------------------
{message}
------------------------------------------------------------------------
Wir weisen darauf hin, dass die Absenderangabe nicht verifiziert ist.
Sollten Sie Zweifel an der Authentizität des Absenders haben,
ignorieren Sie diese E-Mail bitte.
<table width="100%" border="0" cellspacing="0" cellpadding="0"> <tbody> <tr> <td width="300" valign="top"> <p><em>[IF_ERROR:recipient] class="error"[/IF_ERROR]{LABEL:recipient}*</em>{recipient}</p> <p><em>[IF_ERROR:sender] class="error"[/IF_ERROR]{LABEL:sender}*</em>{sender}</p> <p><em>[IF_ERROR:yourname] class="error"[/IF_ERROR]{LABEL:yourname}</em>{yourname}</p> <p><em>[IF_ERROR:mathspam] class="error"[/IF_ERROR]{LABEL:mathspam}</em>{mathspam}</p> <p><br>{sendit}</p> </td> <td class="textarea" valign="top"><em>[IF_ERROR:message] class="error"[/IF_ERROR]{LABEL:message}</em>{message}</td> </tr> </tbody> </table> <p class="notice"><strong>Hinweis:</strong> Die hier eingegebenen Daten werden nicht für andere Zwecke verwendet oder gespeichert.<br /> Für den Inhalt der E-Mail ist ausschließlich der Absender verantwortlich!</p>
Empfohlen:
Vorlage, wenn ein "Fenster schließen"-Link erwünscht (am Ende einfügen)
......... <br /> <a href="index.php?{CATEGORY_ALIAS}">Fenster schließen</a>
(Setz voraus: Standard Tags zusammengefasst)
<note important>Die Rechtslage bei “Send-a-friend”- Angeboten scheint (zumindest in Deutschland) zur Zeit ungeklärt. Sicher ist, dass die gleichzeitige Versendung von zusätzlicher Werbung allemal abgestraft wird. Eine reine Versendung der Adresse der Seite ist bei manchen Urteilen beanstandet worden, bei anderen nicht. Nun gibt jedoch die Möglichkeit, zusätzlichen Text eingeben zu können, dieser zusätzlichen Werbung wieder Raum und ist zumindest ein Unsicherheitsfaktor.
Also: Passenden Disclaimer schreiben, Textfeld eliminieren, unbedingt das Captcha einbauen und die weitere Entwicklung der Rechtslage beobachten wäre eine Möglichkeit, diese ansonsten selbst bei Gerichten prinzipiell als sinnvoll erachtete Variante der Site-Verbreitung einigermaßen unbeanstandet einsetzen zu können…
(Anmerkung: dies stellt keine Rechtsberatung dar!)</note>