/******************************************************************************************** * BlueShoes Framework; This file is part of the php application framework. * NOTE: This code is stripped (obfuscated). To get the clean documented code goto * www.blueshoes.org and register for the free open source *DEVELOPER* version or * buy the commercial version. * * In case you've already got the developer version, then this is one of the few * packages/classes that is only available to *PAYING* customers. * To get it go to www.blueshoes.org and buy a commercial version. * * @copyright www.blueshoes.org * @author Samuel Blume * @author Andrej Arn */ if (!Bs_Objects) {var Bs_Objects = [];};function Bs_Slider(theFieldnamePrefix) { this._objectId;this.fieldName;this._disabled = false;this.direction = 0;this.width = 100;this.height = 20;this.minVal = 0;this.maxVal = 100;this.valueDefault = 0;this.arrowAmount = 1;this.colorbar;this.baseZindex = 1000;this.moveX = 0;this.moveY = 0;this.imgBasePath;this.imgDir = '/_bsJavascript/components/slider/img/';this._bgImgSrc;this._bgImgRepeat;this._sliderImgSrc;this._sliderImgWidth;this._sliderImgHeight;this.styleContainerClass;this.styleValueFieldClass = 'smalltxt spanSliderField';this.styleValueTextClass = 'smalltxt spanSliderText';this.bgColor;this._arrowIconLeftSrc;this._arrowIconLeftWidth = 0;this._arrowIconLeftHeight = 0;this._IconLeftCssStyle = 0;this._arrowIconRightSrc;this._arrowIconRightWidth = 0;this._arrowIconRightHeight = 0;this._IconRightCssStyle = 0;this.valueInterval = 1;this.useInputField = 2;this.inputTextFieldEvent = 'over';this.ctrl;this._valueInternal;this._display = 2;this._arrowLeftContainerId;this._arrowLeftContainerObj;this._arrowLeftIconId;this._arrowLeftIconObj;this._arrowRightContainerId;this._arrowRightContainerObj;this._arrowRightIconId;this._arrowRightIconObj;this._valueContainerId;this._valueContainerObj;this._handleId;this._handleObj;this._valueFieldId;this._valueFieldObj;this._valueTextId;this._valueTextObj;this._slideBarId;this._slideBarObj;this._colorbarId;this._colorbarObj;this._posUpperLeftX;this._posUpperLeftY;this._posSlideStart;this._posSlideEnd;this._slideWidth;this._attachedEvents;this.eventOnChange;this.slideStartCB;this.slideMoveCB;this.slideEndCB;this._constructor = function(theFieldnamePrefix) { this._id = Bs_Objects.length;Bs_Objects[this._id] = this;this._objectId = "Bs_Slider_"+this._id;this.objectName = this._objectId;if (typeof(theFieldnamePrefix) == 'string') { this.fieldName = theFieldnamePrefix + '_value';this.objectName = theFieldnamePrefix;} } this._checkup = function() { if (typeof(this.minVal) == 'undefined') this.minVal = 0;if (typeof(this.maxVal) == 'undefined') this.maxVal = 10;if (typeof(this.valueDefault) == 'undefined') this.valueDefault = this.minVal;this._valueInternal = this.valueDefault;if (typeof(this.imgBasePath) == 'string') this.imgDir = this.imgBasePath;} this.render = function(tagId) { this._checkup();this._containerId = 'co' + tagId;this._handleId = 'po' + tagId;this._arrowLeftContainerId = 'alc' + tagId;this._arrowLeftIconId = 'ali' + tagId;this._arrowRightContainerId = 'arc' + tagId;this._arrowRightIconId = 'ari' + tagId;this._valueContainerId = 'vc' + tagId;this._valueFieldId = 'vf' + tagId;if (typeof(this.fieldName) == 'undefined') this.fieldName = tagId + '_value';this._valueTextId = 'vt' + tagId;this._slideBarId = 'bar' + tagId;this._colorbarId = 'cb' + tagId;var divWidth = this.width;var divHeight = this.height;var completeWidth = this.width + this._arrowIconLeftWidth + this._arrowIconRightWidth + this._sliderImgWidth +15;var out = new Array();var outI = 0;var localOffset = 0;out[outI++] = '';out[outI++] = '';document.getElementById(tagId).innerHTML = out.join('');this._containerObj = document.getElementById(this._containerId);this._handleObj = document.getElementById(this._handleId);this._valueContainerObj = document.getElementById(this._valueContainerId);this._arrowLeftContainerObj = document.getElementById(this._arrowLeftContainerId);this._arrowLeftIconObj = document.getElementById(this._arrowLeftIconId);this._arrowRightContainerObj = document.getElementById(this._arrowRightContainerId);this._arrowRightIconObj = document.getElementById(this._arrowRightIconId);this._valueFieldObj = document.getElementById(this._valueFieldId);this._valueTextObj = document.getElementById(this._valueTextId);this._slideBarObj = document.getElementById(this._slideBarId);this._colorbarObj = document.getElementById(this._colorbarId);this._posSlideStart = getDivLeft(this._slideBarObj);this._slideWidth = this.width - this._sliderImgWidth;this._posSlideEnd = this._posSlideStart + this._slideWidth;this._currentRelSliderPosX = this._posSlideStart;if (this.valueDefault > this.minVal) { var hundertPercent = this.maxVal - this.minVal;var myPercent = (this.valueDefault-this.minVal) * 100 / hundertPercent;this._currentRelSliderPosX += (myPercent * this._slideWidth / 100);this._updateColorbar(this._currentRelSliderPosX);} this._handleObj.style.left = this._currentRelSliderPosX;this._handleObj.style.display = 'block';temp = ech_attachMouseDrag(this._handleObj,this.slideStart,null,this.slideMove,null,this.slideEnd,null,null,null);temp = temp.linkCtrl(getDivImage('','bsslidericonname'));this.ctrl = temp;this.ctrl.sliderObj = this;var x = getDivLeft(this._handleObj);var y = getDivTop(this._handleObj);y = 0;if (this.direction == 0) { this.ctrl.minX = this._posSlideStart;this.ctrl.maxX = this._posSlideEnd;this.ctrl.minY = y; this.ctrl.maxY = y;} else { alert('not implemented');} } this.drawInto = function(tagId) { this.render(tagId);if (this._disabled) this.setDisabled(true);} this.draw = function(tagId) { this.render(tagId);if (this._disabled) this.setDisabled(true);} this.attachEvent = function(trigger, yourEvent) { if (typeof(this._attachedEvents) == 'undefined') { this._attachedEvents = new Array();} if (typeof(this._attachedEvents[trigger]) == 'undefined') { this._attachedEvents[trigger] = new Array(yourEvent);} else { this._attachedEvents[trigger][this._attachedEvents[trigger].length] = yourEvent;} } this.hasEventAttached = function(trigger) { return (this._attachedEvents && this._attachedEvents[trigger]);} this.fireEvent = function(trigger) { if (this._attachedEvents && this._attachedEvents[trigger]) { var e = this._attachedEvents[trigger];if ((typeof(e) == 'string') || (typeof(e) == 'function')) { e = new Array(e);} for (var i=0; i this.maxVal) val = this.maxVal;return val;} this._getNewLocationFromCursor = function() { var ox = this._posEventSlideStartX;var oy = this._posEventSlideStartY;switch(this.direction) { case 0: var t = this.ctrl.pageX - ox;var x = parseInt(this._posObjSlideStartX) + t;if (x > this.ctrl.maxX) x = this.ctrl.maxX;if (x < this.ctrl.minX) x = this.ctrl.minX;return x;if (this.ctrl.pageX > this.ctrl.maxX) { x=this.ctrl.maxX;} else if (this.ctrl.pageX < this.ctrl.minX) { x=this.ctrl.minX;} else { x = this.ctrl.pageX;if (x < this.ctrl.minX) x = this.ctrl.minX;if (x > this.ctrl.maxX) x = this.ctrl.maxX;} return x;break;case 1: if(this.ctrl.pageY>this.ctrl.maxY) y=this.ctrl.maxY;else if(this.ctrl.pageYthis.ctrl.maxY) y=this.ctrl.maxY;} return y;break;} } this.updatePointer = function(newPos) { this.updateHandle(newPos);} this.updateHandle = function(newPos) { this._currentRelSliderPosX = newPos;this.ctrl.div.style.left = newPos;return;switch(this.direction) { case 0: moveDivTo(this.ctrl.div, newPos, getDivTop(this.ctrl.div));break;case 1: moveDivTo(this.ctrl.div, getDivTop(this.ctrl.div), newPos);break;} } this.updateValueField = function(val) { if (this._valueFieldObj) { this._valueFieldObj.value = val;} } this.updateValueText = function(val) { if (this._valueTextObj) { this._valueTextObj.innerHTML = val;} } this.arrowOnClick = function() { } this.onChange = function(val) { this.setValue(val);} this.updateInputBox = function(val) { this.setValue(val);} this.textboxEdit = function(editMode) { if (this._disabled) return;if (editMode) { if ('undefined' != typeof(this._valueFieldObj)) { this._valueTextObj.style.display = 'none';this._valueFieldObj.style.display = 'block';bsFormFieldSetFocusAndSelect(this._valueFieldObj, false);} } else { if ('undefined' != typeof(this._valueTextObj)) { this._valueFieldObj.style.display = 'none';this._valueTextObj.style.display = 'block';} } } this.slideMove = function(ctrl, client) { ctrl.sliderObj.onChangeBySlide(ctrl);} this.slideStart = function(ctrl,client) { ctrl.sliderObj._posEventSlideStartX = ctrl.startX;ctrl.sliderObj._posEventSlideStartY = ctrl.startY;ctrl.sliderObj._posObjSlideStartX = ctrl.sliderObj._handleObj.style.left;ctrl.sliderObj._posObjSlideStartY = ctrl.sliderObj._handleObj.style.top;var pos = ctrl.sliderObj.getSliderPos();ctrl.sliderObj.setValue(pos);if ('undefined' != typeof(ctrl.sliderObj.slideStartCB)) { ctrl.sliderObj.slideStartCB(ctrl.sliderObj, ctrl.sliderObj.getValue(), pos);} } this.slideEnd = function(ctrl,client){ var pos = ctrl.sliderObj.getSliderPos();if ('undefined' != typeof(ctrl.sliderObj.slideEndCB)) { ctrl.sliderObj.slideEndCB(ctrl.sliderObj, ctrl.sliderObj.getValue(), pos);} return;} this._constructor(theFieldnamePrefix);}