/* * Image scrolling JQuery code. * * Copyright (c) 2007, 2008 Jan Dittberner * Jan Dittberner IT-Consulting & -Solutions * Cottbuser Str. 1, D-01129 Dresden * All rights reserved. * * This file is part of the ScrollingJQueryGallery component of the * gnuviech-server.de Websitetools * * ScrollingJQueryGallery 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 3 of the * License, or (at your option) any later version. * * ScrollingJQueryGallery is distributed in the hope that it will be * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * General Public License for more details. * * You should have received a copy of the GNU General Public License * along with ScrollingJQueryGallery. If not, see * . * * Version: $Id$ */ var imgprefix = ""; var imgfull = ""; var imgthumb = ""; function getPathParts(imagesrc) { var filename = imagesrc.substring(imagesrc.lastIndexOf("/") + 1); var pathstart =imagesrc.substring(0, imagesrc.lastIndexOf("/") + 1); if (pathstart.indexOf(imgfull) == (pathstart.length - imgfull.length)) { pathstart = pathstart.substring(0, pathstart.length - imgfull.length); } else if (pathstart.indexOf(imgthumb) == (pathstart.length - imgthumb.length)) { pathstart = pathstart.substring(0, pathstart.length - imgthumb.length); } var dirname = pathstart.split(imgprefix)[1]; var basename = dirname + filename var retval = { 'filename' : filename, 'pathstart' : pathstart, 'dirname' : dirname, 'basename' : basename }; return retval; } function updateContentImage(pathParts) { var content_main = $("#content_main img").attr("src", pathParts.pathstart + pathParts.filename); $("#content_main a").attr("href", pathParts.pathstart + imgfull + pathParts.filename); $.getJSON("fetchdescription.php", {"imagename" : pathParts.basename}, function(data, textStatus) { $("#imagedescription").text(data["data"]); }); } $(document).ready(function() { $("#arrleft").mouseover(function() { $("#scrollable").animate({ left: "0px" }, 5000); }).mouseout(function() { $("#scrollable").stop(); }); $("#arrright").mouseover(function() { offset = parseInt($("#imgscroller").css("width")) - parseInt($("#scrollable").css("width")); $("#scrollable").animate({ left: offset + "px" }, 18000); }).mouseout(function() { $("#scrollable").stop(); }); $("#backbtn").click(function() { var parts = getPathParts($("img#contentimg").attr("src")); var pred = null; $("div.thumbnail img").each(function() { if (pred == null) { pred = getPathParts(this.src); } else { var thumbparts = getPathParts(this.src); if (thumbparts.basename == parts.basename) { updateContentImage(pred); } pred = thumbparts; } }); }); $("#fwdbtn").click(function() { var parts = getPathParts($("img#contentimg").attr("src")); var pred = null; $("div.thumbnail img").each(function() { var thumbparts = getPathParts(this.src); if (thumbparts.basename == parts.basename) { pred = thumbparts; } else if (pred != null) { updateContentImage(thumbparts); pred = null; } }); }); $("div.thumbnail img").mouseover(function() { updateContentImage(getPathParts(this.src)); }); $("a.lightbox").lightBox(); });