Nachdem nun Mitglieder mich bereits gebeten haben, diesen Mod zu veröffentlichen, tue ich dies natürlich auch!
(An dieser Stelle auch nochmals Danke an mawenzi für die Unterstützung bie Problemen, die ich hatte)
Dieser Mod ermöglicht es, Mitgliedern entscheiden zu lassen, ob bei Gäste ein Wasserzeichen auf ihrem Bild zu sehen sein soll. Dieses Wasserzeichen sehen nur Gäste. Dies soll es den sog. "Bildschirmausdruck-Kopierer" es mehr erschweren, die Bilder so einfach zu "Klauen". Ist ebenfalls kein 100%iger Schutz gegen Bilderklau, aber immerhin!
Als Wasserzeichen verwende ich wegen Qualitätsgründen ein transparentes PNG, das nachher über das Bild gelegt wird. Damit dies aber auch im IE transparent angezeigt wird, ist ein Javascript notwendig. Näheres siehe weiter unten. Alternativ kann aber auch ein transparentes GIF verwendet werden, bei dem man dieses Javascript nicht benötigt!
Demo:
http://www.thepictureworld.de/details.php?image_id=570Bevor ihr nun loslegt, macht am besten eine Sicheurng eurer Daten sowie Datenbank!!!!!!!
1. Anlegen von Datenbankfelder in der Datenbank. Einmal in
4images_images und in
4images_images_tempimage_watermark tinyint(1) Standard=1 bei radiobutton auf --- lassenWer möchte, das standardmäßig KEIN Wasserzeichen aktiv ist, setzt bei Standard eine 0 anstatt der 12. In der
db_field_definations.php folgenden Code einfügen:
$additional_image_fields['image_watermark '] = array($lang['image_watermark '], "radio", 0);Hinweis:Wenn ihr hinter dem "radio", anstelle der 0 eine 1 setzt, wird es zu einem Pflichtfeld!!!!3. In der
main.php folgendes einsetzen:
$lang['image_watermark '] = "Wasserzeichen für Gäste aktivieren?";4. Damit dieser Parameter aus der main.pho auch greift muss in der
page_header.php noch folgendes rein:
"lang_image_watermark " => $lang['image_watermark '],5. Damit man später mit eine {if...}-Abfrage das Wasserzeichen einoder ausblenden kann, muss noch in die
details.php folgendes rein:
Finde bei
PRINT OUT diesen Code:
$site_template->register_vars(array(
"msg" => $msg,
"clickstream" => $clickstream,
"lang_category" => $lang['category'],
"lang_added_by" => $lang['added_by'],
und füge danach ein:
"image_watermark " => ($image_row['image_watermark ']) ? 1 : 0
6. Jetzt kommen die eigentlichen Arbeiten in den verschiedenen Templates.
Finde in der
member_uploadform.html und in der
member_editimage.htmldiesen Code:
<tr>
<td class="row2" valign="top"><b>{lang_keywords}</b><br>
<font size="1">(Schlüsselwörter durch ein Leerzeichen trennen)</font></td>
<td class="row2">
<textarea cols="70" class="textarea" rows="6" wrap="VIRTUAL" name="image_keywords">{image_keywords}</textarea>
</td>
</tr>
und füge danach ein:
<tr>
<td class="row2" valign="top"><b>{lang_image_watermark }</b></td>
<td class="row2" valign="top"><input type="radio" name="image_copyright" value="1" {image_watermark _yes} />
{lang_yes} <input type="radio" name="image_copyright" value="0" {image_watermark _no} />
{lang_no}</td>
</tr>
7. Öffne unter
(yourtemplates)/media/ die Datei jpg.html.
ACHTUNG. Diese Aufbau hier ladet zusätzliche ein transparente gif als Hintergrund über das eigentliche Bild. Somit kann selbst mit rechter Maustaste kein Bild abgespeichert werden.Einfach den Inhalt durch diesen hier ersetzen:
<!-- Template file for JPEG Files -->
<table border="1" cellpadding="0" cellspacing="0">
<tr>
<td background="{media_src}" {width_height}>
<table border="0" cellpadding="0" cellspacing="0">
<tr>
<td background="images/spacer.gif" {width_height} valign="bottom" align="right">
{if user_loggedout}{if image_watermark}<script language="javascript" type="text/javascript">
od_displayImage('myImg1', 'images/watermark', 200, 200, '', 'Variable Opacity Rules');
</script><img src="spacer.gif" alt="" border="0" vspace="0" hspace="0" align="absmiddle">{endif image_watermark}{endif user_loggedout}
{if user_loggedin}<img src="/images/spacer.gif" border="0" vspace="0" hspace="0" align="absmiddle">{endif user_loggedin}
</td>
</tr>
</table>
</td>
</tr>
</table>
Bie diesem Beispiel hier ist das PNG nachher 200x200 Pixel gross. Diese Maßangabe muss korrekt 1:1 zum wahren PNG-Bild nachher sein. Also nich 200x200 eingeben und das Bild aber nur 100x100 Pixel gross machen!!!Macht das auch mit den anderen Medien-Dateien wie JPEG oder GIF usw....8. In das Verzeichnis "images" (im ROOT) legt ihr nun zu einem ein 1x1 Pixel großes transparentes GIF-Bild namens
spacer.gif rein oder kopiert es aus euren templates/images-Verzeichnis heraus. Zusätzlich erstellt ihr ein 200x200 Pixel grosses PNG-Wasserzeichen (transparent) mit eurem Logo oder sonst irgend einem Wasserzeichenhinweis und legt es ebenfalls dort ab. Bennent es "watermark.png". Solltet ihr ein kleineres oder grösses Bild machen, müssen diese Maße auch in der JPG.html unbedingt angegeben werden!!!!!!!
9. Ladet nun diese beiden Skripte herunter, entpackt diese und speichert sie auf eurem Server ins Root (Hauptverzeichnis)ab.
http://www.thepictureworld.de/scripts.zip10. Öffnet in eurem template-Verzeichnis die Datei
header.html und fügt zwischen
</head> und
<body>diesen Code ein:
<script language="javascript" src="browserdetect_lite.js" type="text/javascript"></script>
<script language="javascript" src="opacity.js" type="text/javascript"></script>
Wenn ich nun nichts auf die Schnelle übersehen habe, müsste es dann alles soweit funktionieren. Ein Mitglied kann nun selbst bei seinen Bildern jeweils entscheiden, ob ein Wasserzeichen zu sehen sein soll für Gäste oder nicht. Standardmäßig ist es bei jedem Bild aktiv.
Dann mal viel Spass. Sollte ich was übersehen haben, dann einfach melden.