. .
pragmaMx Support Forum 18 März 2010, 00:10:44 *
Willkommen Gast. Bitte einloggen oder registrieren.


Einloggen mit Benutzername und Passwort
News:
Brauchen Sie Hilfe? Bitte nutzen Sie unsere Suchfunktion bevor Sie Beiträge oder Fragen ins Board schreiben! Viele Fragen wurden bereits gestellt und beantwortet. Danke!
 
Übersicht Hilfe Forenregeln / Boardrules
 
Suche
Seiten: [1]   Nach unten
Drucken
Autor Thema: Lösung Anzeigefehler Popup im Internet Explorer  (Gelesen 8231 mal)
0 Mitglieder und 1 Gast betrachten dieses Thema.
MrTom Topic starter
weiss was
***
Offline Offline

Geschlecht: Männlich
Beiträge: 108



WWW
« am: 14 November 2005, 20:39:59 »

Da ich selber auch schon viele hilfreiche Dinge in diesem Forum fand, will ich auch einmal eine Kleinigkeit beisteuern. Vielleicht ist es dem ein oder anderen schon mal aufgefallen. Wenn man in Coppermine ein Foto in Zwishcengröße offenhat und da nocheinmal draufklickt, wird das Foto in voller Größe mit HIlfe einer Javascriptfunktion in einem neuen Fenster aufgemacht. Das ganze funktioniert in allen gängigen Browsern ganz gut, nur im Internet Explorer ist das Bild immer nach Links unten geschoben. Wobei das Fenster exakt die Größe des Bildes hat. Das führt dazu das Scrollleisten erscheinen. Ein Webseitenbesucher sprach mich darauf an. Ich ging der Sache nach und wurde nach einigem Suchen fündig.

Das Problem steckt in der Datei displayimage.php im Modulordner gallery. Dort findet man ab Zeile 463 den HTML Quelltext für das Popupfenster. Das Problem beim Originaltext ist das die Ränder nur mit den Netscapekonformen Befehlen marginwidth und marginheight ausformuliert sind. Die Befehle für den IE leftmargin und Topmargin fehlen.

Da man aber diese Befehle sowieso eher nicht verwenden sollte (Grund: (Zitat aus SelfHTML)"Diese Attribute gehörten nie zum HTML-Standard und sind ein typisches Beispiel dafür, welcher Wirrwarr entsteht, wenn Browser ihr eigenes Süppchen kochen. Benutzen Sie auf jeden Fall Stylesheets zum Definieren von Seitenrändern."), habe ich den Quelltext ab Zeile 463 wie folgt abgeändert (ich spare es mir, den Originalquelltext auch noch hierherzukopieren, den kann ja jeder selber nachschauen) (Edit: Wie ihr sicher bemerkt, habe ich auch eine verschachtelte Tabelle entfernt, weil sie meines Erachtens keinen Sinn macht):

Code: [Select]  
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title><?php echo $CONFIG['gallery_name'?>: <?php echo $lang_fullsize_popup['click_to_close'];
    
?>
</title>
<meta http-equiv="content-type" content="text/html; charset=<?php echo $CONFIG['charset'] == 'language file' $lang_charset $CONFIG['charset'?>" />
<link rel="stylesheet" href="<?php echo $THEME_DIR ?>style.css" />
<?php
// changes for pragmaMx
echo '<script type="text/javascript" src="'.UDB_CPG_DIR.'scripts.js"></script>';
#<script type="text/javascript" src="scripts.js"></script>
// end changes for pragmaMx
 
?>

<style type="text/css">
body { margin-left:0px; margin-right:0px; margin-top:0px; margin-bottom:0px }
</style>
</head>
<body scroll="no" bgcolor="#000000">
<script language="JavaScript" type="text/JavaScript">
adjust_popup();
</script>

<table cellspacing="0" cellpadding="0" style="border: 0px; background-color: #000000;" height="100%" width="100%">
 <td bgcolor="#000000" align="center" valign="middle">
<?php
    
if (isset($HTTP_GET_VARS['picfile'])) {
        if (!
GALLERY_ADMIN_MODEcpg_die(ERROR$lang_errors['access_denied'], __FILE____LINE__);

        
$picfile $HTTP_GET_VARS['picfile'];
        
$picname $CONFIG['fullpath'] . $picfile;
        
$imagesize = @getimagesize($picname);
        echo 
"<a href=\"javascript: window.close()\"><img src=\"" path2url($picname) . "\" $imagesize[3] class=\"image\" border=\"0\" alt=\"\" title=\"$picfile\n" $lang_fullsize_popup['click_to_close'] . "\"/></a><br />\n";
    } elseif (isset(
$HTTP_GET_VARS['pid'])) {
        
$pid = (int)$HTTP_GET_VARS['pid'];
        
$sql "SELECT * " "FROM {$CONFIG['TABLE_PICTURES']} " "WHERE pid='$pid' $ALBUM_SET";
        
$result db_query($sql);

        if (!
mysql_num_rows($result)) cpg_die(ERROR$lang_errors['non_exist_ap'], __FILE____LINE__);

        
$row mysql_fetch_array($result);
        
$pic_url get_pic_url($row'fullsize');
        
$geom 'width="' $row['pwidth'] . '" height="' $row['pheight'] . '"';
        echo 
"<a href=\"javascript: window.close()\"><img src=\"" $pic_url "\" $geom class=\"image\" border=\"0\" alt=\"\" title=\"" htmlspecialchars($row['filename']) . "\n" $lang_fullsize_popup['click_to_close'] . "\"></a><br />\n";
    }

    
?>

   </td>
</table>
</body>
</html>

Und schon erscheint das Bild im Popupfenster in allen Browsern Mitiig und mit schwarzem Hintergrund.
Gespeichert
Andi
Administrator
******
Offline Offline

Geschlecht: Männlich
Beiträge: 16.994



WWW
« Antworten #1 am: 14 November 2005, 22:20:07 »

Suppi, danke  thumbup

und getoppt  Smiley
Gespeichert

schön´s Grüssle, Andi
Kein Support über PN, Mail oder ICQ!
Bitte die Fragen im Forum stellen, nur so helfen die Antworten auch den anderen Usern.
Bitte auch die Boardsuche nicht vergessen, oft ist genau dein Problem schon an anderer Stelle gelöst worden!


Schon wieder Neujahr? Dabei hätte das alte noch für Monate gereicht...
Mecki
Inventar
*******
Offline Offline

Geschlecht: Männlich
Beiträge: 1.239


« Antworten #2 am: 14 November 2005, 22:39:29 »

Hi MrTom ,
 
danke  thumbup

LG
Mecki
Gespeichert

Nicht behindert zu sein, ist kein Verdienst, sondern ein Geschenk, das uns jederzeit genommen werden kann.
seleck
weiss mehr
****
Offline Offline

Geschlecht: Männlich
Beiträge: 325



« Antworten #3 am: 30 November 2005, 10:26:48 »

Besten Dank Tom. funktioniert .  thumbup
Gespeichert

If I advance, follow me.
If I stop, push me.
If I fall, inspire me.
Andi
Administrator
******
Offline Offline

Geschlecht: Männlich
Beiträge: 16.994



WWW
« Antworten #4 am: 30 Januar 2006, 22:17:25 »

Die Lösung für die Version 1.4.3 findet sich hier:
http://www.pragmamx.org/modules.php?name=Forum&topic=15265.msg105391#msg105391
Gespeichert

schön´s Grüssle, Andi
Kein Support über PN, Mail oder ICQ!
Bitte die Fragen im Forum stellen, nur so helfen die Antworten auch den anderen Usern.
Bitte auch die Boardsuche nicht vergessen, oft ist genau dein Problem schon an anderer Stelle gelöst worden!


Schon wieder Neujahr? Dabei hätte das alte noch für Monate gereicht...
Seiten: [1]   Nach oben
Drucken
 
Gehe zu:  

Powered by SMF 1.1.11 | SMF © 2006, Simple Machines LLC
design by hENNE, layout based on YAML