]> www.average.org Git - mkgallery.git/blobdiff - include/show.js
update URL
[mkgallery.git] / include / show.js
index 248dee6829f6d755a851ea387c5268e47dddc56e..b5b00da7e39893b2b9df7b3fb32abf97c25f6bda 100644 (file)
@@ -60,6 +60,16 @@ var Show = new Class({
                        curr: {},
                        next: {},
                };
+/*
+ *  thescripts.com/forum/thread170365.html
+ */
+               var hashpos = document.URL.search(/#/);
+               if (hashpos > 0) {
+                       this.baseurl = document.URL.slice(0,hashpos);
+               } else {
+                       this.baseurl = document.URL
+               }
+
                this.updatecoords();
                this.prevdisplay = new Element('img').
                        setStyle('opacity', 0).
@@ -96,7 +106,7 @@ var Show = new Class({
                if (this.currentid > 0) {
                        this.show(this.currentid-1);
                } else {
-                       alert('show.prev called beyond first element');
+                       /* alert('show.prev called beyond first element'); */
                }
        },
 
@@ -113,11 +123,16 @@ var Show = new Class({
                this.controls.running(1);
        },
 
+       toggleplay: function(){
+               if (this.isplaying) { this.stop(); }
+               else { this.play(); }
+       },
+
        next: function(){
                if (this.currentid < this.vimgs.length-1) {
                        this.show(this.currentid+1);
                } else {
-                       alert('show.next called beyond last element');
+                       /* alert('show.next called beyond last element'); */
                }
        },
 
@@ -127,6 +142,7 @@ var Show = new Class({
                this.ondisplay.setStyle('display', 'none');
                this.stopfx();
                this.options.cbExit();
+               document.location.href = this.baseurl;
        },
 
        comm: function(){
@@ -139,6 +155,7 @@ var Show = new Class({
                this.options.cbStart();
                this.isplaying = play;
                this.controls.running(this.isplaying);
+               this.updatecoords();
                this.show(id);
                return false; /* to make it usable from href links */
        },
@@ -161,8 +178,9 @@ var Show = new Class({
                        this.pendingload = true;
                        this.showloading();
                }
+               document.location.href = this.baseurl+'#'+this.vimgs[id][0];
                this.controls.info(id,this.vimgs.length,
-                               this.vimgs[id][0],
+                               '#'+this.vimgs[id][0],
                                this.vimgs[id][1]);
        },