X-Git-Url: https://git.mdrn.pl/redakcja.git/blobdiff_plain/1fbf854ce423d2d56723ff10608267403f4916b0..498a170cda5709e04ff7599c4194a4059e859880:/redakcja/static/js/wiki/view_gallery.js?ds=sidebyside diff --git a/redakcja/static/js/wiki/view_gallery.js b/redakcja/static/js/wiki/view_gallery.js index 1be30bf6..65a716af 100644 --- a/redakcja/static/js/wiki/view_gallery.js +++ b/redakcja/static/js/wiki/view_gallery.js @@ -1,14 +1,17 @@ (function($){ function normalizeNumber(pageNumber, pageCount){ - // Numer strony musi być pomiędzy 1 a najwyższym numerem + // Page number should be >= 1, <= pageCount; 0 if pageCount = 0 var pageNumber = parseInt(pageNumber, 10); + if (!pageCount) + return 0; + if (!pageNumber || - pageNumber == NaN || - pageNumber == Infinity || - pageNumber == -Infinity || - pageNumber < 1) + isNaN(pageNumber) || + pageNumber == Infinity || + pageNumber == -Infinity || + pageNumber < 1) return 1; if (pageNumber > pageCount) @@ -45,12 +48,15 @@ var old_callback = options.callback || function() { }; this.noupdate_hash_onenter = true; + this.vsplitbar = 'GALERIA'; options.callback = function(){ var self = this; this.dimensions = {}; this.zoomFactor = 1; + if (this.config().page == undefined) + this.config().page = CurrentDocument.galleryStart; this.$element = $("#side-gallery"); this.$numberInput = $('.page-number', this.$element); @@ -66,6 +72,10 @@ self.setPage($(this).val()); }); + $('.start-page', this.$element).click(function(){ + self.setPage(CurrentDocument.galleryStart); + }); + $('.previous-page', this.$element).click(function(){ self.setPage(parseInt(self.$numberInput.val(),10) - 1); }); @@ -87,7 +97,7 @@ self.dimensions.galleryHeight = self.$image.parent().height(); }); - $('.gallery-image img', this.$element).load(function(){ + this.$image.load(function(){ console.log("Image loaded.") self._resizeImage(); }).bind('mousedown', function() { @@ -108,8 +118,8 @@ var $img = this.$image; $img.css({ - width: null, - height: null + width: '', + height: '' }); this.dimensions = { @@ -139,7 +149,6 @@ ScanGalleryPerspective.prototype.setPage = function(newPage){ newPage = normalizeNumber(newPage, this.doc.galleryImages.length); - $('#imagesCount').val(this.doc.galleryImages.length); this.$numberInput.val(newPage); this.config().page = newPage; $('.gallery-image img', this.$element).attr('src', this.doc.galleryImages[newPage - 1]); @@ -163,12 +172,6 @@ // var position = normalizePosition(this.$image.position().left, this.$image.position().top, this.dimensions.galleryWidth, this.dimensions.galleryHeight, this.dimensions.width, this.dimensions.height); this._resizeImage(); - /* this.$image.css({ - width: this.dimensions.width, - height: this.dimensions.height, - left: position.x, - top: position.y - });*/ }; /* @@ -226,12 +229,14 @@ $.wiki.Perspective.prototype.onEnter.call(this); $('.vsplitbar').not('.active').trigger('click'); - + $(".vsplitbar-title").html("↓ GALERIA ↓"); + this.doc.refreshGallery({ success: function(doc, data){ self.$image.show(); console.log("gconfig:", self.config().page ); self.setPage( self.config().page ); + $('#imagesCount').html("/" + doc.galleryImages.length); $('.error_message', self.$element).hide(); if(success) success();