X-Git-Url: https://git.nubati.net/cgi-bin/gitweb.cgi?p=phpfspot.git;a=blobdiff_plain;f=phpfspot.js;h=d8290ad7d1047f09b9dd1e18a43765fb3a36a4af;hp=ca3f9c01508fa8c94e25eae0794823d7986b8f12;hb=28fa997f064f52f6b1d420da9fb643db34508b38;hpb=d9ee4599c943bf674f180a5fab849ec256658a41 diff --git a/phpfspot.js b/phpfspot.js index ca3f9c0..d8290ad 100644 --- a/phpfspot.js +++ b/phpfspot.js @@ -1,9 +1,36 @@ -function showImage(id) +function showImage(id, scrollup) { - var image_div = document.getElementById("content"); - image_div.innerHTML = HTML_AJAX.grab(encodeURI('rpc.php?action=showphoto&id=' + id)); + content = document.getElementById("content"); + + /* blank the screen */ + if(scrollup != undefined) { + content.innerHTML = ""; + } + + HTML_AJAX.replace(content, encodeURI('rpc.php?action=showphoto&id=' + id)); + + /* scroll the window up to the top */ + if(scrollup != undefined) { + window.scrollTo(0,0); + } + + /* delete some global vars */ + delete(origHeight); + delete(origWidth); + delete(photo_details_pos); } +function moveToThumb(thumb_id) +{ + if(thumb_id == undefined) + return; + + if(thumbimg = document.getElementById('thumbimg' + thumb_id)) { + window.scrollTo(0, thumbimg.offsetTop-100); + } + +} // moveToThumb() + function showCredits() { var credits = document.getElementById("content"); @@ -58,13 +85,17 @@ function refreshSelectedTags() selected_tags.innerHTML = HTML_AJAX.grab(encodeURI('rpc.php?action=show_selected_tags')); } -function showPhotoIndex(begin_with) +function showPhotoIndex(begin_with, last_photo) { - if(begin_with == undefined) - HTML_AJAX.replace(document.getElementById("content"), encodeURI('rpc.php?action=show_photo_index')); - else - HTML_AJAX.replace(document.getElementById("content"), encodeURI('rpc.php?action=show_photo_index&begin_with=' + begin_with)); -} + var url = "rpc.php?action=show_photo_index"; + if(begin_with != undefined) + url = url + '&begin_with=' + begin_with; + if(last_photo != undefined) + url = url + '&last_photo=' + last_photo; + + HTML_AJAX.replace(document.getElementById("content"), encodeURI(url)); + +} // showPhotoIndex() // if photo index is currently shown, refresh it function refreshPhotoIndex() @@ -223,6 +254,58 @@ function getPhotoToShow() return photo_to_show; } +function zoom(mod) +{ + if(mod == undefined) + return; + + if(photo = document.getElementById('photo')) { + + if(origWidth == undefined) + origWidth = photo.width; + if(origHeight == undefined) + origHeight = photo.height; + + if(mod != 0) { + new_w = photo.width * (1 + mod/100); + new_h = photo.height * (1 + mod/100); + photo.width = new_w; + photo.height = new_h; + + if(photo_details_pos == undefined) { + photo_details_pos = document.getElementById('photo_details').offsetLeft; + } + + if((photo.offsetLeft + new_w) >= photo_details_pos-20) { + hidePhotoDetails('true'); + } + else { + hidePhotoDetails('false'); + } + } + else { + photo.width = origWidth; + photo.height = origHeight; + hidePhotoDetails('false'); + } + } + +} // zoom() + +function hidePhotoDetails(mode) +{ + if(photo_details = document.getElementById('photo_details')) { + if(mode == 'true') { + photo_details.style.visibility = 'hidden'; + photo_details.style.display = 'none'; + } + else { + photo_details.style.visibility = 'visible'; + photo_details.style.display = 'inline'; + } + } +} // hidePhotoDetails() + function showCalendar(date_box, click_obj) { var calendar = document.getElementById('calendar'); @@ -483,3 +566,6 @@ var autobrowse = 0; var sliding = 0; var sliding_paused = 0; var sliding_time = 3; +var origHeight; +var origWidth; +var photo_details_pos;