Link auf Originalbild entfernen Link auf Originalbild entfernen
 

News:

cpg1.5.48 Security release - upgrade mandatory!
The Coppermine development team is releasing a security update for Coppermine in order to counter a recently discovered vulnerability. It is important that all users who run version cpg1.5.46 or older update to this latest version as soon as possible.
[more]

Main Menu

Link auf Originalbild entfernen

Started by Maddin, February 11, 2006, 12:24:12 AM

Previous topic - Next topic

0 Members and 3 Guests are viewing this topic.

Maddin

Hallo,

wenn ein grösseres Bild als in der Detailansicht dargestellt hochgeladen wird, bekommt das Bild einen Link zu der Originaldatei in der Originalgrösse. Hab nichts gefunden das abzustellen. Geht das überhaupt?

Danke und Gruss Martin

tmpicture

Interessiert mich auch.
Kann man das eventuell auch in den Benutzereinstellungen festlegen, welche Gruppe das darf und wer nicht...

Gruss, Tom

Joachim Müller

Keine Gruppen-basierte Einstellung.
Beste Option: garnicht erst zulassen, dass Bilder in gröserer Version entstehen als gewünscht, daher in den Einstellungen folgendes benutzen:

  • "Bilder in Zwischengröße erzeugen": nein
  • Für "Maximale Breite oder Höhe für das Hochladen von Bildern/Videos (in Pixel)" den gleichen Wert einstellen wie für "Maximale Breite oder Höhe von Bildern/Videos in Zwischengröße"
  • "Automatische verkleinerung von Bildern, die die Maximalgröße überschreiten": Ja, alle
Danach die Admin-Werkzeuge benutzen, um alle Bilder neu rechnen zu lassen.




Das oben beschriebene Szenario ist empfohlen, weil keine Resourcen (Webspace!) verschwendet werden. Wer das nicht will entfernt einfach den Link zum Full-Size Pop-Up vom Theme - bearbeite themes/DeinTheme/theme.php, suche nach            $pic_html = "<a href=\"javascript:;\" onclick=\"MM_openBrWindow('displayimage.php?pid=$pid&amp;fullsize=1','" . uniqid(rand()) . "','scrollbars=yes,toolbar=yes,status=yes,resizable=yes,width=$winsizeX,height=$winsizeY')\">";
            $pic_title = $lang_display_image_php['view_fs'] . "\n==============\n" . $pic_title;
            $pic_html .= "<img src=\"" . $picture_url . "\" class=\"image\" border=\"0\" alt=\"{$lang_display_image_php['view_fs']}\" /><br />";
            $pic_html .= "</a>\n";
und kommentiere den Link aus durch Ersetzen des Codes mit            $pic_html = "<!--<a href=\"javascript:;\" onclick=\"MM_openBrWindow('displayimage.php?pid=$pid&amp;fullsize=1','" . uniqid(rand()) . "','scrollbars=yes,toolbar=yes,status=yes,resizable=yes,width=$winsizeX,height=$winsizeY')\">-->";
            $pic_title = $lang_display_image_php['view_fs'] . "\n==============\n" . $pic_title;
            $pic_html .= "<img src=\"" . $picture_url . "\" class=\"image\" border=\"0\" alt=\"{$lang_display_image_php['view_fs']}\" /><br />";
            $pic_html .= "<!--</a>-->\n";


Wenn dieser Abschnitt nicht in Deinem Theme vorhanden ist, dann kopiere function html_picture_menu()
{
    global $lang_display_image_php, $CURRENT_PIC_DATA, $CURRENT_ALBUM_DATA, $CONFIG;

    $mime_content = cpg_get_type($CURRENT_PIC_DATA['filename']);
    $picmenu = '';

  if (false) { //(!($mime_content['content']=='image')) {
    $picmenu = <<<EOT
     <a href="#" onclick="return MM_openBrWindow('setplayer.php?={$mime_content['extension']}','Set_Player','scrollbars=no,toolbar=no,status=no,resizable=no')" class="admin_menu" >{$lang_display_image_php['set_player']}</a>
EOT;
  }

  if ((USER_ADMIN_MODE && $CURRENT_ALBUM_DATA['category'] == FIRST_USER_CAT + USER_ID) || ($CONFIG['users_can_edit_pics'] && $CURRENT_PIC_DATA['owner_id'] == USER_ID && USER_ID != 0) || GALLERY_ADMIN_MODE) {
    $picmenu .= <<<EOT
     <a href="javascript:;" onclick="return MM_openBrWindow('picEditor.php?id={$CURRENT_PIC_DATA['pid']}','Crop_Picture','scrollbars=yes,toolbar=no,status=yes,resizable=yes')" class="admin_menu" >{$lang_display_image_php['crop_pic']}</a> <a href="editOnePic.php?id={$CURRENT_PIC_DATA['pid']}&amp;what=picture"  class="admin_menu">{$lang_display_image_php['edit_pic']}</a> <a href="delete.php?id={$CURRENT_PIC_DATA['pid']}&amp;what=picture"  class="admin_menu" onclick="return confirm('{$lang_display_image_php['confirm_del']}'); return false; ">{$lang_display_image_php['del_pic']}</a>
EOT;
  }

  return $picmenu;
}
zuerst in Dein Theme in eine neue Zeile vor ?>

tmpicture

Danke GauGau,

Die grossen Bilder sollen bleiben. Auch wenn das mit dem Speicherplatz ein ueberzeugendes Argument ist. Werde also den Download Link entfernen...

Trotzdem kann man dann immer noch mit einem klick auf das kleine Bild, sich das Original anzeigen lassen. Und hier geht es dann mit Speichern unter auf die Platte...

Kann man das verhindern?

Danke, Tom

Joachim Müller

Hast Du die von mir empfohlenen Modifikationen durchgeführt? Poste mal einen Link.


Satyr

Quote from: tmpicture on February 12, 2006, 01:27:09 PM
Trotzdem kann man dann immer noch mit einem klick auf das kleine Bild, sich das Original anzeigen lassen. Und hier geht es dann mit Speichern unter auf die Platte...
Kann man das verhindern?


Das lässt sich bei versierten Usern leider kaum verhindern dass sie Bilder speichern wenn sie wirklich wollen. ^^


Besser vor Hotlinking schützen. Wie das geht wird auf www.traffic-klau.de beschrieben.
Kein Support über PN. Bitte im Forum posten, dann ist anderen auch geholfen.

http://www.gothicmodels.net/gothicmodels/gallery/

Testuser: Test23 PW: 123456

tmpicture

Hallo,

Habe die Modifikationen noch nicht durchgeführt. Komme erst die naechsten Tage dazu...
Trotzdem schon mal vielen dank fuer die Hilfe.

Gruss, Tom

DirkM

Hallo GauGau

Quote from: GauGau on February 12, 2006, 11:56:20 AM
Keine Gruppen-basierte Einstellung.
Beste Option: garnicht erst zulassen, dass Bilder in gröserer Version entstehen als gewünscht, daher in den Einstellungen folgendes benutzen:

  • "Bilder in Zwischengröße erzeugen": nein
  • Für "Maximale Breite oder Höhe für das Hochladen von Bildern/Videos (in Pixel)" den gleichen Wert einstellen wie für "Maximale Breite oder Höhe von Bildern/Videos in Zwischengröße"
  • "Automatische verkleinerung von Bildern, die die Maximalgröße überschreiten": Ja, alle
Danach die Admin-Werkzeuge benutzen, um alle Bilder neu rechnen zu lassen.

super Tipp, danach hatte ich gerade gesucht  ;D


QuoteDas oben beschriebene Szenario ist empfohlen, weil keine Resourcen (Webspace!) verschwendet werden. Wer das nicht will entfernt einfach den Link zum Full-Size Pop-Up vom Theme - bearbeite themes/DeinTheme/theme.php, suche nach            $pic_html = "<a href=\"javascript:;\" onclick=\"MM_openBrWindow('displayimage.php?pid=$pid&amp;fullsize=1','" . uniqid(rand()) . "','scrollbars=yes,toolbar=yes,status=yes,resizable=yes,width=$winsizeX,height=$winsizeY')\">";
            $pic_title = $lang_display_image_php['view_fs'] . "\n==============\n" . $pic_title;
            $pic_html .= "<img src=\"" . $picture_url . "\" class=\"image\" border=\"0\" alt=\"{$lang_display_image_php['view_fs']}\" /><br />";
            $pic_html .= "</a>\n";
und kommentiere den Link aus durch Ersetzen des Codes mit            $pic_html = "<!--<a href=\"javascript:;\" onclick=\"MM_openBrWindow('displayimage.php?pid=$pid&amp;fullsize=1','" . uniqid(rand()) . "','scrollbars=yes,toolbar=yes,status=yes,resizable=yes,width=$winsizeX,height=$winsizeY')\">-->";
            $pic_title = $lang_display_image_php['view_fs'] . "\n==============\n" . $pic_title;
            $pic_html .= "<img src=\"" . $picture_url . "\" class=\"image\" border=\"0\" alt=\"{$lang_display_image_php['view_fs']}\" /><br />";
            $pic_html .= "<!--</a>-->\n";


Wenn dieser Abschnitt nicht in Deinem Theme vorhanden ist, dann kopiere function html_picture_menu()
{
    global $lang_display_image_php, $CURRENT_PIC_DATA, $CURRENT_ALBUM_DATA, $CONFIG;

    $mime_content = cpg_get_type($CURRENT_PIC_DATA['filename']);
    $picmenu = '';

  if (false) { //(!($mime_content['content']=='image')) {
    $picmenu = <<<EOT
     <a href="#" onclick="return MM_openBrWindow('setplayer.php?={$mime_content['extension']}','Set_Player','scrollbars=no,toolbar=no,status=no,resizable=no')" class="admin_menu" >{$lang_display_image_php['set_player']}</a>
EOT;
  }

  if ((USER_ADMIN_MODE && $CURRENT_ALBUM_DATA['category'] == FIRST_USER_CAT + USER_ID) || ($CONFIG['users_can_edit_pics'] && $CURRENT_PIC_DATA['owner_id'] == USER_ID && USER_ID != 0) || GALLERY_ADMIN_MODE) {
    $picmenu .= <<<EOT
     <a href="javascript:;" onclick="return MM_openBrWindow('picEditor.php?id={$CURRENT_PIC_DATA['pid']}','Crop_Picture','scrollbars=yes,toolbar=no,status=yes,resizable=yes')" class="admin_menu" >{$lang_display_image_php['crop_pic']}</a> <a href="editOnePic.php?id={$CURRENT_PIC_DATA['pid']}&amp;what=picture"  class="admin_menu">{$lang_display_image_php['edit_pic']}</a> <a href="delete.php?id={$CURRENT_PIC_DATA['pid']}&amp;what=picture"  class="admin_menu" onclick="return confirm('{$lang_display_image_php['confirm_del']}'); return false; ">{$lang_display_image_php['del_pic']}</a>
EOT;
  }

  return $picmenu;
}
zuerst in Dein Theme in eine neue Zeile vor ?>


die Modifikation hat bei mir nicht funktioniert. Der erste Teil ist in dem Classic/theme.php nicht drin. Also Teil 2 in die theme.php eingefügt.

kommt folgende Meldung beim öffnen eines Bildes

Fatal error: Cannot redeclare html_picture_menu() (previously declared in /***/***/***/html/gallery/displayimage.php:63) in /***/***/***/html/gallery/themes/classic/theme.php on line 106


Also die themes/classic/theme.php sieht dann so bei mir aus

<?php
/*************************
  Coppermine Photo Gallery
  ************************
  Copyright (c) 2003-2005 Coppermine Dev Team
  v1.1 originaly written by Gregory DEMAR

  This program is free software; you can redistribute it and/or modify
  it under the terms of the GNU General Public License as published by
  the Free Software Foundation; either version 2 of the License, or
  (at your option) any later version.
  ********************************************
  Coppermine version: 1.4.3
  $Source: /cvsroot/coppermine/stable/themes/classic/theme.php,v $
  $Revision: 1.13 $
  $Author: donnoman $
  $Date: 2005/12/04 03:22:35 $
**********************************************/

// ------------------------------------------------------------------------- //
// This theme has all CORE items removed                                     //
// ------------------------------------------------------------------------- //
define('THEME_IS_XHTML10_TRANSITIONAL',1);

// Added to display flim_strip
function theme_display_film_strip(&$thumb_list$nbThumb$album_name$aid$cat$pos$sort_options$mode 'thumb')
{
    global 
$CONFIG$THEME_DIR;
    global 
$template_film_strip$lang_film_strip;

    static 
$template '';
    static 
$thumb_cell '';
    static 
$empty_cell '';
    static 
$spacer '';

    if ((!
$template)) {
        
$template $template_film_strip;
        
$thumb_cell template_extract_block($template'thumb_cell');
        
$empty_cell template_extract_block($template'empty_cell');
    }

    
$cat_link is_numeric($aid) ? '' '&amp;cat=' $cat;

    
$thumbcols $CONFIG['thumbcols'];
    
$cell_width ceil(100 $CONFIG['max_film_strip_items']) . '%';

    
$i 0;
    
$thumb_strip '';
    foreach(
$thumb_list as $thumb) {
        
//modify $new_size for max dimension of thumbnails in filmstrip
        
$new_size 65;
        
preg_match('/(?<=width=")[0-9]*/',$thumb['image'],$matches,PREG_OFFSET_CAPTURE);
        
$srcWidth=$matches[0][0];
        
preg_match('/(?<=height=")[0-9]*/',$thumb['image'],$matches,PREG_OFFSET_CAPTURE);
        
$srcHeight=$matches[0][0];
        
$ratio max($srcWidth$srcHeight) / $new_size;
        
$ratio max($ratio1.0);
        
$destWidth = (int)($srcWidth $ratio);
        
$destHeight = (int)($srcHeight $ratio);
        
$thumb['image']=preg_replace('/width="[^"]*"/','width="'.$destWidth.'"',$thumb['image']);
        
$thumb['image']=preg_replace('/height="[^"]*"/','height="'.$destHeight.'"',$thumb['image']);
        
$i++;
        if (
$mode == 'thumb') {
            
$params = array('{CELL_WIDTH}' => $cell_width,
                
'{LINK_TGT}' => "displayimage.php?album=$aid$cat_link&amp;pos={$thumb['pos']}",
                
'{THUMB}' => $thumb['image'],
                
'{CAPTION}' => $thumb['caption'],
                
'{ADMIN_MENU}' => ''
                
);
        } else {
            
$params = array('{CELL_WIDTH}' => $cell_width,
                
'{LINK_TGT}' => "index.php?cat={$thumb['cat']}",
                
'{THUMB}' => $thumb['image'],
                
'{CAPTION}' => '',
                
'{ADMIN_MENU}' => ''
                
);
        }
        
$thumb_strip .= template_eval($thumb_cell$params);
    }

    if (
defined('THEME_HAS_FILM_STRIP_GRAPHICS')) {
        
$tile1 $THEME_DIR 'images/tile1.gif';
        
$tile2 $THEME_DIR 'images/tile2.gif';
    } elseif (
defined('THEME_HAS_FILM_STRIP_GRAPHIC')) {
        
$tile1=$tile2=$THEME_DIR 'images/tile.gif';
    } else {
        
$tile1=$tile2'images/tile.gif';
    }

    
$params = array('{THUMB_STRIP}' => $thumb_strip,
        
'{COLS}' => $i,
        
'{TILE1}' => $tile1,
        
'{TILE2}' => $tile2,
        );

    
ob_start();
    
starttable($CONFIG['picture_table_width']);
    echo 
template_eval($template$params);
    
endtable();
    
$film_strip ob_get_contents();
    
ob_end_clean();

    return 
$film_strip;
}

function 
html_picture_menu()
{
    global 
$lang_display_image_php$CURRENT_PIC_DATA$CURRENT_ALBUM_DATA$CONFIG;

    
$mime_content cpg_get_type($CURRENT_PIC_DATA['filename']);
    
$picmenu '';

  if (
false) { //(!($mime_content['content']=='image')) {
    
$picmenu = <<<EOT
     <a href="#" onclick="return MM_openBrWindow('setplayer.php?={$mime_content['extension']}','Set_Player','scrollbars=no,toolbar=no,status=no,resizable=no')" class="admin_menu" >{$lang_display_image_php['set_player']}</a>
EOT;
  }

  if ((
USER_ADMIN_MODE && $CURRENT_ALBUM_DATA['category'] == FIRST_USER_CAT USER_ID) || ($CONFIG['users_can_edit_pics'] && $CURRENT_PIC_DATA['owner_id'] == USER_ID && USER_ID != 0) || GALLERY_ADMIN_MODE) {
    
$picmenu .= <<<EOT
     <a href="javascript:;" onclick="return MM_openBrWindow('picEditor.php?id={$CURRENT_PIC_DATA['pid']}','Crop_Picture','scrollbars=yes,toolbar=no,status=yes,resizable=yes')" class="admin_menu" >{$lang_display_image_php['crop_pic']}</a> <a href="editOnePic.php?id={$CURRENT_PIC_DATA['pid']}&amp;what=picture"  class="admin_menu">{$lang_display_image_php['edit_pic']}</a> <a href="delete.php?id={$CURRENT_PIC_DATA['pid']}&amp;what=picture"  class="admin_menu" onclick="return confirm('{$lang_display_image_php['confirm_del']}'); return false; ">{$lang_display_image_php['del_pic']}</a>
EOT;
  }

  return 
$picmenu;
}

?>


Joachim Müller

kann es sein, dass Du von cpg1.3.x auf cpg1.4.x aktualisiert hast und ein paar Dateien noch alter Stand sind? Lass mal versioncheck.php laufen.

DirkM

Quote from: GauGau on February 14, 2006, 07:27:47 AM
kann es sein, dass Du von cpg1.3.x auf cpg1.4.x aktualisiert hast und ein paar Dateien noch alter Stand sind? Lass mal versioncheck.php laufen.
nope definitiv nicht! Frisch heruntergeladen und installiert, der Versionscheck sagt auch überall 1.43

Habe aber den von dir geposteten code gefunden
Folgender Code kommt in der include/themes.inc.php oder themes/sample/theme.php vor!

            $pic_html = "<a href=\"javascript:;\" onclick=\"MM_openBrWindow('displayimage.php?pid=$pid&amp;fullsize=1','" . uniqid(rand()) . "','scrollbars=yes,toolbar=no,status=no,resizable=yes,width=$winsizeX,height=$winsizeY')\">";
            $pic_title = $lang_display_image_php['view_fs'] . "\n==============\n" . $pic_title;
            $pic_html .= "<img src=\"" . $picture_url . "\" class=\"image\" border=\"0\" alt=\"{$lang_display_image_php['view_fs']}\" /><br />";
            $pic_html .= "</a>\n";


in welcher Datei müßte ich den Code anpassen  ???

Joachim Müller

wie oben beschrieben: in themes/DeinTheme/theme.php
Gibt's einen vernünftigen Grund, keinen Link zu Deiner Seite zu posten?

DirkM

Quote from: GauGau on February 15, 2006, 07:45:13 AM
wie oben beschrieben: in themes/DeinTheme/theme.php
Gibt's einen vernünftigen Grund, keinen Link zu Deiner Seite zu posten?
;) www.totengrund.de/gallery  user: tester pw: test

ich wollte halt nur darauf hinweisen, dass der von dir gepostete Code nicht in der themes/deintheme (zb.classic)/theme.php zu finden ist! Und das hatte mich als Neuling natürlich verwirrt ;D

dieser Tipp von dir reicht mir vollkommen aus, dass ist genau was ich gesucht hatte! Keine Zwischengröße und Beschränkung der Bildgröße :)

QuoteKeine Gruppen-basierte Einstellung.
Beste Option: garnicht erst zulassen, dass Bilder in gröserer Version entstehen als gewünscht, daher in den Einstellungen folgendes benutzen:
"Bilder in Zwischengröße erzeugen": nein
Für "Maximale Breite oder Höhe für das Hochladen von Bildern/Videos (in Pixel)" den gleichen Wert einstellen wie für "Maximale Breite oder Höhe von Bildern/Videos in Zwischengröße"
"Automatische verkleinerung von Bildern, die die Maximalgröße überschreiten": Ja, alle
Danach die Admin-Werkzeuge benutzen, um alle Bilder neu rechnen zu lassen.

Joachim Müller

Quote from: DirkM on February 15, 2006, 09:53:02 AM
ich wollte halt nur darauf hinweisen, dass der von dir gepostete Code nicht in der themes/deintheme (zb.classic)/theme.php zu finden ist!

Quote from: GauGau on February 12, 2006, 11:56:20 AM
Wenn dieser Abschnitt nicht in Deinem Theme vorhanden ist, dann kopiere function html_picture_menu()
{
    global $lang_display_image_php, $CURRENT_PIC_DATA, $CURRENT_ALBUM_DATA, $CONFIG;

    $mime_content = cpg_get_type($CURRENT_PIC_DATA['filename']);
    $picmenu = '';

  if (false) { //(!($mime_content['content']=='image')) {
    $picmenu = <<<EOT
     <a href="#" onclick="return MM_openBrWindow('setplayer.php?={$mime_content['extension']}','Set_Player','scrollbars=no,toolbar=no,status=no,resizable=no')" class="admin_menu" >{$lang_display_image_php['set_player']}</a>
EOT;
  }

  if ((USER_ADMIN_MODE && $CURRENT_ALBUM_DATA['category'] == FIRST_USER_CAT + USER_ID) || ($CONFIG['users_can_edit_pics'] && $CURRENT_PIC_DATA['owner_id'] == USER_ID && USER_ID != 0) || GALLERY_ADMIN_MODE) {
    $picmenu .= <<<EOT
     <a href="javascript:;" onclick="return MM_openBrWindow('picEditor.php?id={$CURRENT_PIC_DATA['pid']}','Crop_Picture','scrollbars=yes,toolbar=no,status=yes,resizable=yes')" class="admin_menu" >{$lang_display_image_php['crop_pic']}</a> <a href="editOnePic.php?id={$CURRENT_PIC_DATA['pid']}&amp;what=picture"  class="admin_menu">{$lang_display_image_php['edit_pic']}</a> <a href="delete.php?id={$CURRENT_PIC_DATA['pid']}&amp;what=picture"  class="admin_menu" onclick="return confirm('{$lang_display_image_php['confirm_del']}'); return false; ">{$lang_display_image_php['del_pic']}</a>
EOT;
  }

  return $picmenu;
}
zuerst in Dein Theme in eine neue Zeile vor ?>