getOptions: function(){
return {
onClick: $empty,
- zIndex: 3,
- buttonClass: 'controlButton',
- buttons: ['prev','stop','play','next','exit','comm'],
+ zIndex: 9,
+ buttonClass: 'controlButton'
}
},
this.container = new Element('div').addClass(name).
setProperties({
id: name,
- name: name,
+ name: name
}).setStyles({
- zIndex: this.options.zIndex,
+ zIndex: this.options.zIndex
}).addEvent('click', function(){
this.options.onClick()
}.bind(this)).injectInside(this.parent);
- this.options.buttons.each(function(el){
+ var buttons = ['prev','stop','play','next','exit','comm'];
+ buttons.each(function(el){
var sub = new Element('div');
sub.addClass(this.options.buttonClass).setProperties({
id: el,
name: el,
- title: el,
+ title: el
}).addEvent('click', function(){
this[el]();
}.bind(this)).injectInside(this.container);
},this);
this.posbox = new Element('span').
addClass('controlPosition').setProperties({
- id: 'controlPosition',
+ id: 'controlPosition'
}).injectInside(this.commbox);
this.refbox = new Element('a', {
href: 'javascript: void(1);',
- html: 'title',
+ html: 'title'
}).addClass('controlRef').setProperties({
- id: 'controlRef',
+ id: 'controlRef'
}).injectInside(this.commbox);
},
},
prev: function(){
+ if (this.prevdisabled) { return; }
if (this.show.prev) { this.show.prev() }
else { alert('no method for "prev", file complaint with UN') }
},
},
next: function(){
+ if (this.nextdisabled) { return; }
if (this.show.next) { this.show.next() }
else { alert('no method for "next", file complaint with UN') }
},
},
info: function(pos, max, ref, txt){
- var msg = 'pos='+pos+', max='+max+', ref='+ref+', txt='+txt;
+ var p1 = pos + 1;
this.refbox.set('html',txt);
this.refbox.set('href',ref);
- this.posbox.set('text',pos+' of '+max);
+ this.posbox.set('text',p1+' of '+max);
+ if (p1 < 2) {
+ this.prevbox.set('id', 'prevDisabled');
+ this.prevdisabled = true;
+ } else {
+ this.prevbox.set('id', 'prev');
+ this.prevdisabled = false;
+ }
+ if (p1 >= max) {
+ this.nextbox.set('id', 'nextDisabled');
+ this.nextdisabled = true;
+ } else {
+ this.nextbox.set('id', 'next');
+ this.nextdisabled = false;
+ }
},
running: function(isrunning){
this.stopbox.setStyle('display', 'none');
this.playbox.setStyle('display', 'block');
}
- },
+ }
});
+
Controls.implement(new Options);