diff options
Diffstat (limited to 'phpfspot.js')
-rw-r--r-- | phpfspot.js | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/phpfspot.js b/phpfspot.js index 74ad4b9..d8290ad 100644 --- a/phpfspot.js +++ b/phpfspot.js @@ -13,6 +13,11 @@ function showImage(id, scrollup) if(scrollup != undefined) { window.scrollTo(0,0); } + + /* delete some global vars */ + delete(origHeight); + delete(origWidth); + delete(photo_details_pos); } function moveToThumb(thumb_id) @@ -249,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'); @@ -509,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; |