forum.coppermine-gallery.net

Support => Deutsch (German) => Language Specific Support => cpg1.4.x Deutsch (German) => Topic started by: hama on July 06, 2006, 09:51:21 pm

Title: displayimage.php
Post by: hama on July 06, 2006, 09:51:21 pm
Hallo German Support

Ich habe eine Frage zu displayimage.php. Wenn ich da mit Hilfe der Pfeile von Hand weiterklicke, also nicht die Slideshow wähle, rutscht mir das neue Bild im Browser immer wieder nach oben und ich muss, damit ich das ganze Bild sehe, jeweils wieder nach unten scrollen. Gibt's da einen Hack, der das unterbindet? Ist vermutlich schwieirig, da ja jedes Mal die Seite neu geladen wird.

Gruess aus der Schweiz

hama
Title: Re: displayimage.php
Post by: Joachim Müller on July 07, 2006, 01:02:58 am
Hallo Hans,

in Theorie ist das leicht: setze einen Anchor auf die Höhe der Bildernavi, und ändere dann die vorwärts/rückwärts-Blättern Links ab. Ich bin mir sicher, dass das schonmal jemand en Detail beschrieben hat.
Setze den Anchor in
Code: [Select]
// HTML template for the image navigation barund das Linkziel in
Code: [Select]
$prev_tgt = "{$_SERVER['PHP_SELF']}?album=$album$cat_link&pos=$prev"; und dem entsprechenden vorwärts-Link.

Wenn Du mit dieser Info nix anfangen kannst, dann melde Dich bitte nochmal für bessere Instruktionen.

Gruß Joachim
Title: Re: displayimage.php
Post by: hama on July 07, 2006, 08:32:15 pm

Quote
Wenn Du mit dieser Info nix anfangen kannst, dann melde Dich bitte nochmal für bessere Instruktionen.

Ich wäre echt froh, ein bisschen umfangreichere Informationen zu bekommen, damit das dann sauber läuft. Du musst dich dazu jedoch überhaupt nicht beeilen. Zuerst soll jetzt mal die WM zu Ende gehen, zwei spannende Spiele liegen noch vor uns.  :)

Es freut mich übrigens sehr, dass eine einfache Lösung möglich ist (du schreibst ja, es sei gar nicht so schwierig), ohne dass Ajax oder so zum Zug kommen muss.

Gruess Hans

Title: Re: displayimage.php
Post by: Joachim Müller on July 08, 2006, 10:13:38 am
OK, hier die Details... Bearbeite themes/dein_theme/theme.php

Suche
Code: [Select]
// HTML template for the image navigation bar
$template_img_navbar = <<<EOT
Wenn vorhanden, suche
Code: [Select]
<a href="{THUMB_TGT}" class="navmenu_pic" title="{THUMB_TITLE}"><img src="{LOCATION}images/thumbnails.gif" align="middle" border="0" alt="{THUMB_TITLE}" /></a>und ersetze mit
Code: [Select]
<a name="top_display_media"></a>
<a href="{THUMB_TGT}" class="navmenu_pic" title="{THUMB_TITLE}"><img src="{LOCATION}images/thumbnails.gif" align="middle" border="0" alt="{THUMB_TITLE}" /></a>
Wenn nicht vorhanden in Deinem Theme, dann kopiere die entsprechende Sektion aus dem sample theme und bearbeite entsprechend. In Deinem Fall, kopiere
Code: [Select]
// HTML template for the image navigation bar
$template_img_navbar = <<<EOT

        <tr>
                <td align="center" valign="middle" class="navmenu" width="48">
                        <a name="top_display_media"></a>
                        <a href="{THUMB_TGT}" class="navmenu_pic" title="{THUMB_TITLE}"><img src="{LOCATION}images/thumbnails.gif" align="middle" border="0" alt="{THUMB_TITLE}" /></a>
                </td>
                <td align="center" valign="middle" class="navmenu" width="48">
                        <a href="javascript:;" class="navmenu_pic" onclick="blocking('picinfo','yes', 'block'); return false;" title="{PIC_INFO_TITLE}"><img src="{LOCATION}images/info.gif" border="0" align="middle" alt="{PIC_INFO_TITLE}" /></a>
                </td>
                <td align="center" valign="middle" class="navmenu" width="48">
                        <a href="{SLIDESHOW_TGT}" class="navmenu_pic" title="{SLIDESHOW_TITLE}"><img src="{LOCATION}images/slideshow.gif" border="0" align="middle" alt="{SLIDESHOW_TITLE}" /></a>
                </td>
                <td align="center" valign="middle" class="navmenu" width="100%">
                        {PIC_POS}
                </td>
<!-- BEGIN report_file_button -->
                <td align="center" valign="middle" class="navmenu" width="48">
                        <a href="{REPORT_TGT}" class="navmenu_pic" title="{REPORT_TITLE}"><img src="{LOCATION}images/report.gif" border="0" align="middle" alt="{REPORT_TITLE}" /></a>
                </td>
<!-- END report_file_button -->
<!-- BEGIN ecard_button -->
                <td align="center" valign="middle" class="navmenu" width="48">
                        <a href="{ECARD_TGT}" class="navmenu_pic" title="{ECARD_TITLE}"><img src="{LOCATION}images/ecard.gif"  border="0" align="middle" alt="{ECARD_TITLE}" /></a>
                </td>
<!-- END ecard_button -->
                <td align="center" valign="middle" class="navmenu" width="48">
                        <a href="{PREV_TGT}" class="navmenu_pic" title="{PREV_TITLE}"><img src="{LOCATION}images/prev.gif"  border="0" align="middle" alt="{PREV_TITLE}" /></a>
                </td>
                <td align="center" valign="middle" class="navmenu" width="48">
                        <a href="{NEXT_TGT}" class="navmenu_pic" title="{NEXT_TITLE}"><img src="{LOCATION}images/next.gif"  border="0" align="middle" alt="{NEXT_TITLE}" /></a>
                </td>
        </tr>

EOT;
in eine neue Zeile vor
Code: [Select]
?>Dadurch hast Du den Anchor gesetzt.

Jetzt auf zu den Links, die geändert werden müssen: suche nach
Code: [Select]
function theme_html_img_nav_menu()Wenn vorhanden in Deinem Theme, finde
Code: [Select]
$prev_tgt = "{$_SERVER['PHP_SELF']}?album=$album$cat_link&amp;pos=$prev$uid_link";und ersetze durch
Code: [Select]
$prev_tgt = "{$_SERVER['PHP_SELF']}?album=$album$cat_link&amp;pos=$prev$uid_link#top_display_media";Tue das gleiche mit
Code: [Select]
$next_tgt = "{$_SERVER['PHP_SELF']}?album=$album$cat_link&amp;pos=$next$uid_link";und ersetze mit
Code: [Select]
$next_tgt = "{$_SERVER['PHP_SELF']}?album=$album$cat_link&amp;pos=$next$uid_link#top_display_media";Wenn function theme_html_img_nav_menu() nicht in Deinem Theme vorhanden ist, dann kopiere
Code: [Select]
function theme_html_img_nav_menu()
{
    global $CONFIG, $CURRENT_PIC_DATA, $meta_nav, $THEME_DIR ; //$PHP_SELF,
    global $album, $cat, $pos, $pic_count, $lang_img_nav_bar, $lang_text_dir, $template_img_navbar;

    $cat_link = is_numeric($album) ? '' : '&amp;cat=' . $cat;
        $uid_link = is_numeric($_GET['uid']) ? '&amp;uid=' . $_GET['uid'] : '';

    $human_pos = $pos + 1;
    $page = ceil(($pos + 1) / ($CONFIG['thumbrows'] * $CONFIG['thumbcols']));
    $pid = $CURRENT_PIC_DATA['pid'];

    $start = 0;
        $start_tgt = "{$_SERVER['PHP_SELF']}?album=$album$cat_link&amp;pos=$start";
        $start_title = $lang_img_nav_bar['go_album_start'];
        $meta_nav .= "<link rel=\"start\" href=\"$start_tgt\" title=\"$start_title\" />
        ";
        $end = $pic_count - 1;
        $end_tgt = "{$_SERVER['PHP_SELF']}?album=$album$cat_link&amp;pos=$end";
        $end_title = $lang_img_nav_bar['go_album_end'];
        $meta_nav .= "<link rel=\"last\" href=\"$end_tgt\" title=\"$end_title\" />
        ";

    if ($pos > 0) {
        $prev = $pos - 1;
        $prev_tgt = "{$_SERVER['PHP_SELF']}?album=$album$cat_link&amp;pos=$prev$uid_link#top_display_media";
        $prev_title = $lang_img_nav_bar['prev_title'];
                                $meta_nav .= "<link rel=\"prev\" href=\"$prev_tgt\" title=\"$prev_title\" />
                                ";
    } else {
        $prev_tgt = "javascript:;";
        $prev_title = "";
    }

    if ($pos < ($pic_count -1)) {
        $next = $pos + 1;
        $next_tgt = "{$_SERVER['PHP_SELF']}?album=$album$cat_link&amp;pos=$next$uid_link#top_display_media";
        $next_title = $lang_img_nav_bar['next_title'];
                                $meta_nav .= "<link rel=\"next\" href=\"$next_tgt\" title=\"$next_title\"/>
                                ";
    } else {
        $next_tgt = "javascript:;";
        $next_title = "";
    }

    if (USER_CAN_SEND_ECARDS) {
        $ecard_tgt = "ecard.php?album=$album$cat_link&amp;pid=$pid&amp;pos=$pos";
        $ecard_title = $lang_img_nav_bar['ecard_title'];
    } else {
        template_extract_block($template_img_navbar, 'ecard_button'); // added to remove button if cannot send ecard
        /*$ecard_tgt = "javascript:alert('" . addslashes($lang_img_nav_bar['ecard_disabled_msg']) . "');";
        $ecard_title = $lang_img_nav_bar['ecard_disabled'];*/
    }

                //report to moderator buttons
    if (($CONFIG['report_post']==1) && (USER_CAN_SEND_ECARDS)) {
        $report_tgt = "report_file.php?album=$album$cat_link&amp;pid=$pid&amp;pos=$pos";
    } else { // remove button if report toggle is off
        template_extract_block($template_img_navbar, 'report_file_button');

    }

                    $thumb_tgt = "thumbnails.php?album=$album$cat_link&amp;page=$page$uid_link";
        $meta_nav .= "<link rel=\"up\" href=\"$thumb_tgt\" title=\"".$lang_img_nav_bar['thumb_title']."\"/>
        ";

    $slideshow_tgt = "{$_SERVER['PHP_SELF']}?album=$album$cat_link$uid_link&amp;pid=$pid&amp;slideshow=".$CONFIG['slideshow_interval'];

    $pic_pos = sprintf($lang_img_nav_bar['pic_pos'], $human_pos, $pic_count);

    if (defined('THEME_HAS_NAVBAR_GRAPHICS')) {
            $location= $THEME_DIR;
        } else {
            $location= '';
        }

    $params = array('{THUMB_TGT}' => $thumb_tgt,
        '{THUMB_TITLE}' => $lang_img_nav_bar['thumb_title'],
        '{PIC_INFO_TITLE}' => $lang_img_nav_bar['pic_info_title'],
        '{SLIDESHOW_TGT}' => $slideshow_tgt,
        '{SLIDESHOW_TITLE}' => $lang_img_nav_bar['slideshow_title'],
        '{PIC_POS}' => $pic_pos,
        '{ECARD_TGT}' => $ecard_tgt,
        '{ECARD_TITLE}' => $ecard_title,
        '{PREV_TGT}' => $prev_tgt,
        '{PREV_TITLE}' => $prev_title,
        '{NEXT_TGT}' => $next_tgt,
        '{NEXT_TITLE}' => $next_title,
        '{PREV_IMAGE}' => ($lang_text_dir=='ltr') ? 'prev' : 'next',
        '{NEXT_IMAGE}' => ($lang_text_dir=='ltr') ? 'next' : 'prev',
        '{REPORT_TGT}' => $report_tgt,
        '{REPORT_TITLE}' => $lang_img_nav_bar['report_title'],
        '{LOCATION}' => $location,
        );

    return template_eval($template_img_navbar, $params);
}
in eine neue Zeile vor
Code: [Select]
?>
Das sollte es gewesen sein - viel Spaß.

Joachim
Title: Re: displayimage.php
Post by: hama on July 08, 2006, 11:26:59 pm

Quote
Das sollte es gewesen sein - viel Spaß.

Das hat von A bis Z geklappt. Thanks!

P.S.: Nebenbei gab's für die Deutschland-Elf ja auch noch irgendwie ein Happy End.  :)

Title: Re: displayimage.php
Post by: Hexo on August 16, 2009, 06:15:26 pm
Ich hab das jetzt genau so eingestellt und es klappt wunderbar.
Allerdings nur beim FF, IE7 und Opera.
Der IE8 springt bei mir leider nicht an die position.
Beispielgalerie:
http://www.holyhell.de/gallery/thumbnails.php?album=5
Title: Re: displayimage.php
Post by: Αndré on August 16, 2009, 06:20:48 pm
Der IE8 springt bei mir leider nicht an die position.
Das ist dann ein Fehler im IE8. Ich kann mir aber nicht vorstellen, dass der IE8 solch fundamentale Sachen nicht unterstützt.