leimnud.Package.Public({ info :{ Class :"maborak", File :"module.slider.js", Name :"slider", Type :"module", Version :"0.1" }, content :{ create:function() { this.make=function(options) { this.options = { points:[], width:564, selected:0, name:"val_"+Math.floor(Math.random(5)*100), onchange:function(){} }.concatMaborak(options || {}); if(typeof this.options.points=='string'){ this.options.points=this.parse_string_points(this.options.points); } this.current=0; this.dom = {}; this.make_points(); this.calculate(true); return this; }; this.parse_string_points=function(s) { var a = s.split("-"); var x = parseInt(a[0]) || 0; var y = parseInt(a[1]) || 1; var y = (y<=x)?(x+1):y; var i = 0; var a = []; for(x;x<=y;x++) { a.push({value:((this.options.fill_values)?this.options.fill_values*x:x),label:x}); } return a; }; this.make_points=function() { this.real_width = this.options.width-64; this.spaces(); this.options.target.append( this.dom.a = new DOM('div',{},{position:'relative',height:30,width:this.options.width,border:'1px solid #EEE'}).append( new DOM('div',false,{position:'absolute',width:30,height:30,left:0,top:0,backgroundColor:'orange'}), this.dom.dragbox = new DOM('div',false,{position:'absolute',width:this.real_width,height:30,left:31,top:0,border:'0px solid orange'}).append( this.dom.drag = new DOM('div',false,{position:'absolute',width:30,height:30,left:0,top:0,background:'black',cursor:'move'}) ), new DOM('div',false,{position:'absolute',width:30,height:30,right:0,top:0,border:'1px solid green',backgroundColor:'green'}) ), this.input_hidden=new DOM('input',{type:'hidden',name:this.options.name}) ); this.drag = new this.parent.module.drag({ elements:this.dom.drag, limit:"y", limitbox:this.dom.dragbox }); this.drag.events={ move:this.calculate }; this.drag.make(); }; this.spaces = function() { this.sep = parseInt(this.real_width/this.options.points.length); this.sep_dec = this.real_width/this.options.points.length; this.spaces = []; var a = 0; for(var i=0;i=this.real_width) { t=(this.spaces.length-1); } else { for(var i=0;i=this.spaces[i][0] && c <=this.spaces[i][1]) { t=i; break; } else if(i==(this.spaces.length-1) && c>=this.spaces[i][1]) { t=this.spaces.length-1; break; } } } if(t!=this.current || manual) { this.current=t; if(this.options.out_label) { var ol = this.options.out_label; ol[(ol.tagName=='input')?'value':'innerHTML']=this.get().label; } if(this.options.out_value) { var ol = this.options.out_value; ol[(ol.tagName=='input')?'value':'innerHTML']=this.get().value; } this.input_hidden.value=this.get().value; return this.options.onchange(); } }; this.get=function(uid) { uid = uid || this.current; return this.options.points[uid] || this.options.points[0]; }; this.expand(this); return this; }, eventor:function() { this.make=function(options) { this.options = { slides:[], operation:"+", target:$(document.body), name:"val_"+Math.floor(Math.random(5)*100), result:function(){} }.concatMaborak(options || {}); this.options.target.append( this.input_hidden=new DOM('input',{type:'hidden',name:this.options.name}) ); for(var i=0;i