var current = 0;
var slideshow = 0;
var slideshow_pause = 3;
+var slideshow_timer = null;
for (i = 0; i < images.length; i++) {
/* this array will contain 0 if image not yet loaded, 1 when loading,
if (keyvalue[0] == "slideshow_pause") {
slideshow_pause = keyvalue[1];
}
+ if (keyvalue[0] == "run_slideshow") {
+ toggle_slideshow();
+ }
}
}
}
function first() {
if (slideshow == 1) {
- toggle_slideshow();
+ toggle_slideshow(true);
}
current = 0;
function next() {
if (slideshow == 1) {
- toggle_slideshow();
+ toggle_slideshow(true);
}
if (current < images.length - 1) {
function previous() {
if (slideshow == 1) {
- toggle_slideshow();
+ toggle_slideshow(true);
}
if (current > 0) {
function last() {
if (slideshow == 1) {
- toggle_slideshow();
+ toggle_slideshow(true);
}
current = images.length - 1;
display_current();
}
-function toggle_slideshow() {
+function toggle_slideshow(now) {
if (slideshow == 0) {
document.getElementById("b_slideshow").value = "~~stop_slideshow~~";
slideshow = 1;
if (current == images.length - 1) {
current = -1;
}
- run_slideshow();
+ if (now) {
+ dbg("now");
+ run_slideshow();
+ } else {
+ setTimeout("run_slideshow()", slideshow_pause * 1000);
+ }
} else {
+ clearTimeout(slideshow_timer);
document.getElementById("b_slideshow").value = "~~run_slideshow~~";
slideshow = 0;
}
if (images_loaded[current + 1] == 2) {
current++;
display_current();
- setTimeout("run_slideshow()", slideshow_pause * 1000);
+ slideshow_timer = setTimeout("run_slideshow()", slideshow_pause * 1000);
} else {
- setTimeout("run_slideshow()", 500);
+ slideshow_timer = setTimeout("run_slideshow()", 500);
}
if (current == images.length - 1) {
- toggle_slideshow();
+ toggle_slideshow(true);
}
}
</script>
$button_slideshow = '
<form><input type="button"
- onclick="toggle_slideshow()"
+ onclick="toggle_slideshow(true)"
value="' + _('Run slideshow!') + '"
id="b_slideshow">
</form>';