/* Data */
(function(window){
var FWDMData = function(props, playListElement){
var _s = this;
var prototype = FWDMData.prototype;
_s.props_obj = props;
_s.navigatorImage_img;
_s.rootElement_el = null;
_s.skinPaths_ar = [];
_s.images_ar = [];
_s.markersList_ar = [];
_s.toolTipWindows_ar = [];
_s.countLoadedSkinImages = 0;
_s.parseDelayId_to;
_s.loadImageId_to;
_s.addKeyboardSupport_bl;
_s.showContextMenu_bl;
_s.showNavigator_bl;
_s.inversePanDirection_bl;
_s.useEntireScreen;
_s.hideController_bl;
_s.showScriptDeveloper_bl;
_s.showMarkers_bl;
_s.hasNavigatorError_bl = false;
_s.showMarkersInfo_bl = false;
_s.addDoubleClickSupport_bl = false;
_s.isMobile_bl = FWDMUtils.isMobile;
_s.hasPointerEvent_bl = FWDMUtils.hasPointerEvent;
//###################################//
/*init*/
//###################################//
_s.init = function(){
_s.parseDelayId_to = setTimeout(_s.parseProperties, 100);
};
//#############################################//
// parse properties.
//#############################################//
_s.parseProperties = function(){
var markersElement_el;
var childKids_ar;
var playListChildren_ar;
var markersChildren_ar;
var errorMessage_str;
var mediaKid;
var test;
var obj;
var obj2;
var child;
var hasError_bl;
var attributeMissing;
var positionError;
var hasElementWithAttribute;
var hasMarker_bl;
var hasContent_bl = false;
//set the root element of the zoomer list.
_s.rootElement_el = playListElement;
if(!_s.rootElement_el){
errorMessage_str = "Make sure that the a div with the id - " + _s.props_obj.markersAndInfoWindowId + " exists, this represents the data playlist.";
_s.dispatchEvent(FWDMData.LOAD_ERROR, {text:errorMessage_str});
return;
}
_s.originalImagePath_str = _s.props_obj.imagePath;
if(!_s.originalImagePath_str){
errorMessage_str = "The imagePath property which represents the path for the iamge to zoom is not defined in the constructor function!";
_s.dispatchEvent(FWDMData.LOAD_ERROR, {text:errorMessage_str});
return;
}
_s.rootElement_el.style.display = "none";
markersElement_el = FWDMUtils.getChildFromNodeListFromAttribute(_s.rootElement_el, "data-markers");
_s.showNavigator_bl = _s.props_obj.showNavigator;
_s.showNavigator_bl = _s.showNavigator_bl == "yes" ? true : false;
if(_s.props_obj.showNavigatorOnMobile && _s.props_obj.showNavigatorOnMobile == "no" && _s.isMobile_bl && _s.showNavigator_bl) _s.showNavigator_bl = false;
_s.showMarkersInfo_bl = _s.props_obj.showMarkersInfo == "yes" ? true : false;
if(_s.isMobile_bl) _s.showMarkersInfo_bl = false;
_s.addDoubleClickSupport_bl = _s.props_obj.addDoubleClickSupport;
_s.addDoubleClickSupport_bl = _s.addDoubleClickSupport_bl == "yes" ? true : false;
if(FWDMUtils.isIEAndLessThen9) _s.addDoubleClickSupport_bl = false;
//set main properties.
_s.backgroundColor_str = _s.props_obj.backgroundColor || "transparent";
_s.backgroundColorOnZoom = _s.props_obj.backgroundColorOnZoom || "transparent";
_s.fullscreenBackgroundColor = _s.props_obj.fullscreenBackgroundColor || "transparent";
_s.preloaderText_str = _s.props_obj.preloaderText || "Loading:";
_s.preloaderFontColor_str = _s.props_obj.preloaderFontColor || "#000000";
_s.preloaderBackgroundColor_str = _s.props_obj.preloaderBackgroundColor || "transparent";
_s.preloaderPosition = _s.props_obj.preloaderPosition || 'center';
_s.preloaderPosition = _s.preloaderPosition.toLowerCase();
_s.preloaderOffsetX = _s.props_obj.preloaderOffsetX;
_s.preloaderOffsetY = _s.props_obj.preloaderOffsetY;
_s.showPreloaderProgressBar = _s.props_obj.showPreloaderProgressBar == "no" ? false : true;
_s.preloaderBackgroundSize = _s.props_obj.preloaderBackgroundSize || 'large';
_s.preloaderProgressBarBackgroundColor = _s.props_obj.preloaderProgressBarBackgroundColor || "#FF0000";
_s.preloaderProgressBarFillColor = _s.props_obj.preloaderProgressBarFillColor || "#FF0000";
_s.preloaderWindowBackgroundOpacity = _s.props_obj.preloaderWindowBackgroundOpacity || 0;
_s.preloaderWidth = _s.props_obj.preloaderWidth || "max";
_s.controllerVerticalPosition_str = _s.props_obj.controllerVerticalPosition || "bottom";
if(_s.controllerVerticalPosition_str != "top" && _s.controllerVerticalPosition_str != "bottom") _s.startDraggingMode_str = "top";
_s.controllerHorizontalPosition_str = _s.props_obj.controllerHorizontalPosition || "center";
if(_s.props_obj.buttons && _s.props_obj.buttons.length > 0){
_s.buttons_ar = FWDMUtils.splitAndTrim(_s.props_obj.buttons, true, true);
}else{
_s.buttons_ar = [];
}
if(_s.isMobile_bl && !_s.hasPointerEvent_bl){
_s.buttonsLabels_ar = null;
_s.contextMenuLabels_ar = null;
}else{
if(_s.props_obj.buttonsToolTips) _s.buttonsLabels_ar = FWDMUtils.splitAndTrim(_s.props_obj.buttonsToolTips, false);
if(_s.props_obj.contextMenuLabels) _s.contextMenuLabels_ar = FWDMUtils.splitAndTrim(_s.props_obj.contextMenuLabels, false);
}
_s.showScriptDeveloper_bl = _s.props_obj.showScriptDeveloper;
_s.showScriptDeveloper_bl = _s.showScriptDeveloper_bl == "no" ? false : true;
_s.dragRotationSpeed = _s.props_obj.dragRotationSpeed || .5;
if(isNaN(_s.dragRotationSpeed)) _s.dragRotationSpeed = .5;
if(_s.dragRotationSpeed < 0){
_s.dragRotationSpeed = 0;
}else if(_s.dragRotationSpeed > 1){
_s.dragRotationSpeed = 1;
}
_s.panSpeed = _s.props_obj.panSpeed || 1;
if(isNaN(_s.panSpeed)) _s.panSpeed = 1;
if(_s.panSpeed < 1){
_s.panSpeed = 1;
}else if(_s.panSpeed > 100){
_s.panSpeed = 100;
}
_s.zoomSpeed = _s.props_obj.zoomSpeed || .1;
if(isNaN(_s.zoomSpeed)) _s.zoomSpeed = .1;
if(_s.zoomSpeed < .1){
_s.zoomSpeed = .1;
}else if(_s.zoomSpeed > 1){
_s.zoomSpeed = 1;
}
_s.imageWidth = _s.props_obj.imageWidth;
if(!_s.imageWidth){
_s.showPropertyError("imageWidth");
return
}else{
_s.imageWidth = parseInt(_s.imageWidth);
}
_s.imageHeight = _s.props_obj.imageHeight;
if(!_s.imageHeight){
_s.showPropertyError("imageHeight");
return
}else{
_s.imageHeight = parseInt(_s.imageHeight);
}
_s.imageOffsetX = parseInt(_s.props_obj.imageOffsetX) || 0;
_s.imageOffsetY = parseInt(_s.props_obj.imageOffsetY) || 0;
_s.zoomFactor = _s.props_obj.zoomFactor;
if(_s.zoomFactor == undefined){
_s.showPropertyError("zoomFactor");
return;
}
if(_s.zoomFactor < 1){
//_s.zoomFactor = 1;
}else if(_s.zoomFactor > 10){
_s.zoomFactor = 10;
}
_s.doubleClickZoomFactor = _s.props_obj.doubleClickZoomFactor;
if(isNaN(_s.doubleClickZoomFactor)) _s.doubleClickZoomFactor = _s.zoomFactor;
if(_s.doubleClickZoomFactor > _s.zoomFactor) _s.doubleClickZoomFactor = _s.zoomFactor;
_s.startZoomFactor = _s.props_obj.startZoomFactor;
if(_s.startZoomFactor == undefined){
_s.startZoomFactor = "default";
return;
}
if(!isNaN(_s.startZoomFactor)){
if(_s.startZoomFactor < .1){
_s.startZoomFactor = .1;
}else if(_s.startZoomFactor > _s.zoomFactor){
_s.startZoomFactor = _s.zoomFactor;
}
}
_s.navigatorWidth = _s.props_obj.navigatorWidth || 120;
_s.navigatorOffsetX = _s.props_obj.navigatorOffsetX || 0;
if(isNaN(_s.navigatorOffsetX)) _s.navigatorOffsetX = 0;
_s.navigatorOffsetY = _s.props_obj.navigatorOffsetY || 0;
if(isNaN(_s.navigatorOffsetY)) _s.navigatorOffsetY = 0;
_s.controllerBackgroundOpacity = _s.props_obj.controllerBackgroundOpacity;
if(!_s.controllerBackgroundOpacity) _s.controllerBackgroundOpacity = 1;
if(isNaN(_s.controllerBackgroundOpacity)) _s.controllerBackgroundOpacity = 1;
if(_s.controllerBackgroundOpacity < 0){
_s.controllerBackgroundOpacity = 0;
}else if(_s.controllerBackgroundOpacity > 1){
_s.controllerBackgroundOpacity = 1;
}
_s.controllerMaxWidth = _s.props_obj.controllerMaxWidth;
if(!_s.controllerMaxWidth) _s.controllerMaxWidth = 900;
if(isNaN(_s.controllerMaxWidth)) _s.controllerMaxWidth = 900;
if(_s.controllerMaxWidth < 200) _s.controllerMaxWidth = 200;
_s.hideControllerDelay = _s.props_obj.hideControllerDelay;
if(_s.hideControllerDelay){
_s.hideController_bl = true;
if(isNaN(_s.hideControllerDelay)){
_s.hideControllerDelay = 4000;
}else if(_s.hideControllerDelay < 0){
_s.hideControllerDelay = 4000;
}else{
_s.hideControllerDelay *= 1000;
}
}
_s.spaceBetweenButtons = _s.props_obj.spaceBetweenButtons || 0;
_s.controllerOffsetWidth = parseInt(_s.props_obj.controllerOffsetWidth) || 0;
_s.scrollBarPosition = _s.props_obj.scrollBarPosition || 0;
_s.startSpaceForScrollBarButtons = _s.props_obj.startSpaceForScrollBarButtons || 0;
_s.startSpaceBetweenButtons = _s.props_obj.startSpaceBetweenButtons || 0;
_s.startSpaceForScrollBar = _s.props_obj.startSpaceForScrollBar || 0;
_s.startSpaceForScrollBar = _s.props_obj.startSpaceForScrollBar || 0;
_s.scrollBarOffsetX = _s.props_obj.scrollBarOffsetX || 0;
_s.controllerOffsetY = _s.props_obj.controllerOffsetY || 0;
_s.scrollBarHandlerToolTipOffsetY = _s.props_obj.scrollBarHandlerToolTipOffsetY || 0;
_s.zoomInAndOutToolTipOffsetY = _s.props_obj.zoomInAndOutToolTipOffsetY || 0;
_s.buttonsToolTipOffsetY = _s.props_obj.buttonsToolTipOffsetY || 0;
_s.hideControllerOffsetY = _s.props_obj.hideControllerOffsetY || 0;
_s.infoWindowBackgroundOpacity = _s.props_obj.infoWindowBackgroundOpacity || 1;
_s.markerToolTipOffsetY = _s.props_obj.markerToolTipOffsetY || 1;
_s.toolTipWindowMaxWidth = _s.props_obj.toolTipWindowMaxWidth || 300;
_s.scrollBarHandlerOffsetX = _s.props_obj.scrollBarHandlerOffsetX || 0;
_s.buttonToolTipFontColor = _s.props_obj.buttonToolTipFontColor || "#000000";
_s.buttonToolTipBackgroundColor = _s.props_obj.buttonToolTipBackgroundColor || "#FF0000";
_s.infoWindowWidth = parseInt(_s.props_obj.infoWindowWidth) || 800;
_s.contextMenuItemBackgroundNormalColor = _s.props_obj.contextMenuItemBackgroundNormalColor || "#FF0000";
_s.contextMenuItemBackgroundSelectedColor = _s.props_obj.contextMenuItemBackgroundSelectedColor || "#FF0000";
_s.contextMenuBorderColor_str = _s.props_obj.contextMenuBorderColor || "#FF0000";
_s.contextMenuSpacerColor_str = _s.props_obj.contextMenuSpacerColor || "#FF0000";
_s.contextMenuItemTextNormalColor_str = _s.props_obj.contextMenuItemTextNormalColor || "#FF0000";
_s.contextMenuItemTextSelectedColor_str = _s.props_obj.contextMenuItemTextSelectedColor || "#FF0000";
_s.contextMenuItemDisabledColor_str = _s.props_obj.contextMenuItemDisabledColor || "#FF0000";
_s.infoWindowBackgroundColor_str = _s.props_obj.infoWindowBackgroundColor || "#FF0000";
_s.infoWindowScrollBarColor_str = _s.props_obj.infoWindowScrollBarColor || "#FF0000";
_s.useVectorIcons = _s.props_obj.useVectorIcons == "yes" ? true : false;
_s.navigatorPosition_str = _s.props_obj.navigatorPosition || "topleft";
_s.navigatorPosition_str = String(_s.navigatorPosition_str).toLowerCase();
test = _s.navigatorPosition_str == "topleft"
|| _s.navigatorPosition_str == "topright"
|| _s.navigatorPosition_str == "bottomleft"
|| _s.navigatorPosition_str == "bottomright";
if(!test) _s.navigatorPosition_str = "topleft";
_s.navigatorBackgroundColor = _s.props_obj.navigatorBackgroundColor || "#FF0000";
_s.navigatorHandlerColor_str = _s.props_obj.navigatorHandlerColor || "#FF0000";
_s.navigatorBorderColor_str = _s.props_obj.navigatorBorderColor || "#FF0000";
_s.showContextMenu_bl = _s.props_obj.showContextMenu;
_s.showContextMenu_bl = _s.showContextMenu_bl == "no" ? false : true;
_s.showControllerBackground = _s.props_obj.showControllerBackground == "no" ? false : true;
_s.disableMouseWheel_bl = _s.props_obj.disableMouseWheel;
_s.disableMouseWheel_bl = _s.disableMouseWheel_bl == "no" ? false : true;
_s.inversePanDirection_bl = _s.props_obj.inversePanDirection;
_s.inversePanDirection_bl = _s.inversePanDirection_bl == "yes" ? true : false;
_s.disableZoom = _s.props_obj.disableZoom == "yes" ? true : false;
_s.disablePan = _s.props_obj.disablePan == "yes" ? true : false;
_s.addKeyboardSupport_bl = _s.props_obj.addKeyboardSupport == "no" ? false : true;
if(_s.isMobile_bl) _s.addKeyboardSupport_bl = false;
_s.useEntireScreen_bl = _s.props_obj.useEntireScreen;
_s.useEntireScreen_bl = _s.useEntireScreen_bl == "yes" ? true : false;
_s.infoText_str = FWDMUtils.getChildFromNodeListFromAttribute(_s.rootElement_el, "data-info");
if(_s.infoText_str){
_s.infoText_str = _s.infoText_str.innerHTML;
}else{
_s.infoText_str = "not defined make sure that an ul element with the attribute data-info is defined!";
}
//markers.
if(markersElement_el) _s.showMarkers_bl = true;
if(_s.showMarkers_bl){
markersChildren_ar = FWDMUtils.getChildren(markersElement_el);
for(var i=0; i can't be loaded, check path!";
}
if(window.console) console.log(e);
var err = {text:message};
setTimeout(function(){
_s.dispatchEvent(FWDMData.LOAD_ERROR, err);
}, 50);
};
_s.stopToLoad = function(){
clearTimeout(_s.loadImageId_to);
if(_s.image_img){
_s.image_img.onload = null;
_s.image_img.onerror = null;
}
};
//####################################//
/* load small images */
//###################################//
_s.loadMainImage = function(){
if(FWDMUtils.isIE || FWDMUtils.isLocal){
_s.image_img = new Image();
_s.image_img.onload = _s.onImageLoadComplete;
_s.image_img.onerror = _s.onImageLoadErrorHandler;
_s.image_img.src = _s.originalImagePath_str;
}else{
_s.imgXHR = new XMLHttpRequest();
_s.imgXHR.responseType = 'arraybuffer';
_s.imgXHR.open('GET', _s.originalImagePath_str, true);
_s.imgXHR.onprogress = onProgress;
_s.imgXHR.onerror = _s.onImageLoadErrorHandler;
_s.imgXHR.onload = onComplete;
try{
_s.imgXHR.send();
}catch(e){
console.log(e)
}
function onProgress(event) {
if(!_s) return;
if(!event.lengthComputable) return;
var loaded = event.loaded;
var total = event.total;
var percent = (loaded/total).toFixed(2);
_s.dispatchEvent(FWDMData.IMAGES_PROGRESS, {percent:percent});
}
function onComplete(event) {
if(!_s) return;
if(_s.imgXHR.status == '404'){
_s.onImageLoadErrorHandler(event);
return;
}
_s.image_img = new Image();
document.documentElement.appendChild(_s.image_img)
_s.image_img.width = _s.imageWidth;
_s.image_img.height = _s.imageHeight;
var h = _s.imgXHR.getAllResponseHeaders();
var m = h.match( /^Content-Type\:\s*(.*?)$/mi );
var mimeType = m[1] || 'image/png';
var blob = new Blob([this.response], {type: mimeType});
_s.image_img.src = URL.createObjectURL(blob);
_s.onImageLoadComplete();
}
}
};
_s.onImageLoadComplete = function(){
_s.originalImage_img = _s.image_img;
_s.dispatchEvent(FWDMData.IMAGES_PROGRESS, {percent:1});
_s.dispatchEvent(FWDMData.READY);
}
_s.onImageLoadErrorHandler = function(e){
var message = "The image with the label " + _s.originalImagePath_str + " can't be loaded, make sure that the image exists and the path is correct!";
console.log(e);
var err = {text:message};
_s.dispatchEvent(FWDMData.LOAD_ERROR, err);
};
//####################################//
/* check if element with and attribute exists or throw error */
//####################################//
_s.checkForAttribute = function(e, attr, position){
var test = FWDMUtils.getChildFromNodeListFromAttribute(e, attr);
test = test ? FWDMUtils.trim(FWDMUtils.getAttributeValue(test, attr)) : undefined;
if(!test){
if(position != undefined){
_s.dispatchEvent(FWDMData.LOAD_ERROR, {text:"Element with attribute " + attr + " is not defined at positon " + (position + 1) + ""});
}else{
_s.dispatchEvent(FWDMData.LOAD_ERROR, {text:"Element with attribute " + attr + " is not defined."});
}
return;
}
return test;
};
//####################################//
/* show error if a required property is not defined */
//####################################//
_s.showPropertyError = function(error){
_s.dispatchEvent(FWDMData.LOAD_ERROR, {text:"The property called " + error + " is not defined."});
};
_s.showMarkerError = function(error, position){
_s.dispatchEvent(FWDMData.LOAD_ERROR, {text:"The marker at position " + (position + 1) + " dose not have defined an attribute " + error + "."});
};
_s.showMarkerTypeError = function(error, position){
_s.dispatchEvent(FWDMData.LOAD_ERROR, {text:"Marker type is incorrect " + error + " at position " + position + ". Accepted types are link, tooltip, infowindow."});
};
//####################################//
/*destroy */
//####################################//
_s.destroy = function(){
var img_img;
clearTimeout(_s.parseDelayId_to);
clearTimeout(_s.loadImageId_to);
if(_s.image_img){
_s.image_img.onload = null;
_s.image_img.onerror = null;
_s.image_img.src = null;
}
if(_s.scrollBarLeft_img) _s.scrollBarLeft_img.src = null;
if(_s.mainLightboxCloseButtonN_img) _s.mainLightboxCloseButtonN_img.src = null;
if(_s.scrollBarProgressLeft_img) _s.scrollBarProgressLeft_img.src = null;
if(_s.mainLightboxCloseButtonS_img) _s.mainLightboxCloseButtonS_img.src = null;
if(_s.controllerBackgroundLeft_img) _s.controllerBackgroundLeft_img.src = null;
if(_s.controllerBackgroundRight_img) _s.controllerBackgroundRight_img.src = null;
if(_s.controllerMoveDownN_img) _s.controllerMoveDownN_img.src = null;
if(_s.controllerMoveDownS_img) _s.controllerMoveDownS_img.src = null;
if(_s.controllerMoveDownD_img) _s.controllerMoveDownD_img.src = null;
if(_s.controllerMoveUpN_img) _s.controllerMoveUpN_img.src = null;
if(_s.controllerMoveUpS_img) _s.controllerMoveUpS_img.src = null;
if(_s.controllerMoveUpD_img) _s.controllerMoveUpD_img.src = null;
if(_s.controllerNextN_img) _s.controllerNextN_img.src = null;
if(_s.controllerNextS_img) _s.controllerNextS_img.src = null;
if(_s.controllerNextD_img) _s.controllerNextD_img.src = null;
if(_s.controllerPrevN_img) _s.controllerPrevN_img.src = null;
if(_s.controllerPrevS_img) _s.controllerPrevS_img.src = null;
if(_s.controllerPrevD_img) _s.controllerPrevD_img.src = null;
if(_s.controllerHideMarkersN_img) _s.controllerHideMarkersN_img.src = null;
if(_s.controllerHideMarkersS_img) _s.controllerHideMarkersS_img.src = null;
if(_s.controllerShowMarkersN_img) _s.controllerShowMarkersN_img.src = null;
if(_s.controllerShowMarkersS_img) _s.controllerShowMarkersS_img.src = null;
if(_s.controllerInfoN_img) _s.controllerInfoN_img.src = null;
if(_s.controllerHideN_img) _s.controllerHideN_img.src = null;
if(_s.controllerHideS_img) _s.controllerHideS_img.src = null;
if(_s.controllerShowN_img) _s.controllerShowN_img.src = null;
if(_s.controllerShowS_img) _s.controllerShowS_img.src = null;
if(_s.controllerFullScreenNormalN_img) _s.controllerFullScreenNormalN_img.src = null;
if(_s.controllerFullScreenNormalS_img) _s.controllerFullScreenNormalS_img.src = null;
if(_s.controllerFullScreenFullN_img) _s.controllerFullScreenFullN_img.src = null;
if(_s.controllerFullScreenFullS_img) _s.controllerFullScreenFullS_img.src = null;
if(_s.zoomInN_img) _s.zoomInN_img.src = null;
if(_s.zoomInS_img) _s.zoomInS_img.src = null;
if(_s.zoomOutN_img) _s.zoomOutN_img.src = null;
if(_s.zoomOutS_img) _s.zoomOutS_img.src = null;
if(_s.scrollBarHandlerN_img) _s.scrollBarHandlerN_img.src = null;
if(_s.scrollBarHandlerN_img) _s.scrollBarHandlerN_img.src = null;
if(_s.scrollBarHandlerS_img) _s.scrollBarHandlerS_img.src = null;
if(_s.scrollBarLeft_img) _s.scrollBarLeft_img.src = null;
if(_s.scrollBarRight_img) _s.scrollBarRight_img.src = null;
if(_s.toolTipLeft_img) _s.toolTipLeft_img.src = null;
if(_s.toolTipPointer_img) _s.toolTipPointer_img.src = null;
if(_s.infoWindowCloseNormal_img) _s.infoWindowCloseNormal_img.src = null;
if(_s.infoWindowCloseSelected_img) _s.infoWindowCloseSelected_img.src = null;
_s.mainPreloader_img = null;
_s.mainLightboxCloseButtonN_img = null;
_s.mainLightboxCloseButtonS_img = null;
_s.controllerBackgroundLeft_img = null;
_s.controllerBackgroundRight_img = null;
_s.controllerMoveDownN_img = null;
_s.controllerMoveDownS_img = null;
_s.controllerMoveUpN_img = null;
_s.controllerMoveUpS_img = null;
_s.controllerNextN_img = null;
_s.controllerNextS_img = null;
_s.controllerPrevN_img = null;
_s.controllerPrevS_img = null;
_s.controllerHideMarkersN_img = null;
_s.controllerHideMarkersS_img = null;
_s.controllerShowMarkersN_img = null;
_s.controllerShowMarkersS_img = null;
_s.controllerInfoN_img = null;
_s.controllerInfoS_img = null;
_s.controllerHideN_img = null;
_s.controllerHideS_img = null;
_s.controllerShowN_img = null;
_s.controllerShowS_img = null;
_s.controllerFullScreenNormalN_img = null;
_s.controllerFullScreenNormalS_img = null;
_s.controllerFullScreenFullN_img = null;
_s.controllerFullScreenFullS_img = null;
_s.zoomInN_img = null;
_s.zoomInS_img = null;
_s.zoomOutN_img = null;
_s.zoomOutS_img = null;
_s.scrollBarHandlerN_img = null;
_s.scrollBarHandlerS_img = null;
_s.scrollBarLeft_img = null;
_s.scrollBarRight_img = null;
_s.toolTipLeft_img = null;
_s.toolTipPointer_img = null;
_s.infoWindowCloseNormal_img = null;
_s.infoWindowCloseSelected_img = null;
_s.props_obj = null;
_s.rootElement_el = null;
_s.skinPaths_ar = null;
_s.markersList_ar = null;
_s.toolTipWindows_ar = null;
_s.buttons_ar = null;
_s.buttonsLabels_ar = null;
_s.contextMenuLabels_ar = null;
_s.backgroundColor_str = null;
_s.handMovePath_str = null;
_s.handGrabPath_str = null;
_s.controllerBackgroundMiddlePath_str = null;
_s.scrollBarMiddlePath_str = null;
_s.controllerPosition_str = null;
_s.preloaderFontColor_str = null;
_s.preloaderBackgroundColor_str = null;
_s.preloaderText_str = null;
_s.buttonToolTipLeft_str = null;
_s.buttonToolTipMiddle_str = null;
_s.buttonToolTipRight_str = null;
_s.buttonToolTipBottomPointer_str = null;
_s.buttonToolTipTopPointer_str = null;
_s.buttonToolTipFontColor_str = null;
_s.contextMenuBackgroundColor_str = null;
_s.contextMenuBorderColor_str = null;
_s.contextMenuSpacerColor_str = null;
_s.contextMenuItemNormalColor_str = null;
_s.contextMenuItemSelectedColor_str = null;
_s.contextMenuItemSelectedColor_str = null;
_s.contextMenuItemDisabledColor_str = null;
_s.navigatorPosition_str = null;
_s.navigatorHandlerColor_str = null;
_s.navigatorBorderColor_str = null;
_s.infoText_str = null;
_s.infoWindowBackgroundColor_str = null;
_s.infoWindowScrollBarColor_str = null;
prototype.destroy();
_s = null;
prototype = null;
FWDMData.prototype = null;
};
_s.init();
};
/* set prototype */
FWDMData.setPrototype = function(){
FWDMData.prototype = new FWDMEventDispatcher();
};
FWDMData.prototype = null;
FWDMData.PRELOADER_LOAD_DONE = "onPreloaderLoadDone";
FWDMData.LOAD_DONE = "onLoadDone";
FWDMData.LOAD_ERROR = "onLoadError";
FWDMData.LIGHBOX_CLOSE_BUTTON_LOADED = "onLightBoxCloseButtonLoadDone";
FWDMData.IMAGE_LOADED = "onImageLoaded";
FWDMData.FIRST_IMAGE_LOAD_COMPLETE = "onFirstImageLoadComplete";
FWDMData.READY = "ready";
FWDMData.SKIN_PROGRESS = "onSkinProgress";
FWDMData.IMAGES_PROGRESS = "onImagesPogress";
FWDMData.hasTouch_bl = false;
window.FWDMData = FWDMData;
}(window));