var reSelected = /.*selected.*/;
-Lightbox = function(grid, toolbar, complete, container_type) {
+Lightbox = function(grid, toolbar, complete, container_type, orderable) {
var self = this;
this.grid = grid;
this._buildSlidesIndex(); // set this.slides and this.lastSlide;
// drag and drop
this.disableDefaultDragging();
- addListener(this.grid, 'dragstart', function(evt){self.onDragStart(evt);});
- addListener(this.grid, 'dragover', function(evt){self.onDragOver(evt);});
- addListener(this.grid, 'dragend', function(evt){self.onDragEnd(evt);});
+ this._DDOrderingListeners = {'dragstart' : function(evt){self.onDragStart(evt);},
+ 'dragover' : function(evt){self.onDragOver(evt);},
+ 'dragend' : function(evt){self.onDragEnd(evt);}
+ };
+ if(orderable) {this.enableDDOrdering();}
};
Lightbox.prototype._buildSlidesIndex = function() {
this.switchToolBarPositioning(false);
}
};
+
Lightbox.prototype.windowScrollGridHandler = function(evt) {
if (!this.complete &&
!this.fetchingDisabled &&
Lightbox.prototype.onChangeHandler = function(evt) {
var target = getTargetedObject(evt);
if (target.name === 'sort_on') {
+ if (target.value === 'position') {this.enableDDOrdering();}
+ else {this.disableDDOrdering();}
this.fm.submitButton = {'name' : 'set_sorting', 'value' : 'ok'};
this.fm.submit(evt);
}
return slides;
};
+
+Lightbox.prototype.enableDDOrdering = function() {
+ addListener(this.grid, 'dragstart', this._DDOrderingListeners.dragstart);
+ addListener(this.grid, 'dragover', this._DDOrderingListeners.dragover);
+ addListener(this.grid, 'dragend', this._DDOrderingListeners.dragend);
+};
+
+Lightbox.prototype.disableDDOrdering = function() {
+ removeListener(this.grid, 'dragstart', this._DDOrderingListeners.dragstart);
+ removeListener(this.grid, 'dragover', this._DDOrderingListeners.dragover);
+ removeListener(this.grid, 'dragend', this._DDOrderingListeners.dragend);
+};
+
Lightbox.prototype.onDragStart = function(evt) {
var target = getTargetedObject(evt);
this.dragged = target;