﻿Utility=Object.extend({trim:function(b){if(b){var c=-1,a=b.length;while(b.charCodeAt(--a)<33){}while(b.charCodeAt(++c)<33){}return b.slice(c,a+1)}else{return""}},getBGImg:function(b){var a=$(b).getStyle("background-image");if(a.empty()){return null}else{a=a.indexOf('"')==-1?a.substring(4,a.length-1):a.substring(5,a.length-2);return this.isImgLink(a)?a:null}},getAllImg:function(a){var b=[];if(a!=null){Try.these((function(){if(a.match("img")){b.push(e[d])}else{var c=this.getBGImg(a);if(c){b.push(c)}var e=a==null?$$("body")[0].descendants():$(a).descendants();for(var d=0;d<e.length;d++){if(e[d].match("img")){b.push(e[d])}else{var c=this.getBGImg(e[d]);if(c){b.push(c)}}}}}).bind(this))}return b},getBGImg:function(d){var c=d.getStyle("background-image");if(c&&c!="none"&&c!="initial"){var a=c.indexOf('"')==-1?c.substring(4,c.length-1):c.substring(5,c.length-2);if(this.isImgLink(a)){var b=new Image();b.src=a;return b}}return null},isImgLoaded:function(a){if(a&&a.src&&!a.src.empty()){if(!a.complete){return false}else{if(a.naturalWidth&&a.naturalWidth==0){return false}else{if(a.width&&a.width==0){return false}}}}return true},isImgLink:function(b){if(b&&!b.empty()){var a=b.indexOf("?");if(a<0){a=b.length-4}else{a-=4}if(a>=1&&(b.indexOf(".jpg")==a||b.indexOf(".jpeg")==(a-1)||b.indexOf(".gif")==a||b.indexOf(".png")==a)){return true}}return false},isMovieLink:function(b){if(b&&!b.empty()){var a=b.indexOf("?");if(a<0){a=b.length-4}else{a-=4}if(a>=1&&b.indexOf(".mov")==a){return true}}return false},isFlashLink:function(b){if(b&&!b.empty()){var a=b.indexOf("?");if(a<0){a=b.length-4}else{a-=4}if(a>=1&&(b.indexOf(".swf")==a||b.indexOf(".fla")==a)){return true}}return false},isAllImgLoaded:function(c){if(c!=null){var a=this.getAllImg(c);for(var b=0;b<a.length;b++){if(a[b]){if(!this.isImgLoaded(a[b])){return false}}}}return true},changeZIndex:function(a,b){$(a).setStyle({zIndex:b})},setOpacityLayer:[],setOpacity:function(a,c){this.stopSetOpacity(a);var e=$(a).getStyle("display")=="none"?0:$(a).getOpacity();var d=c.to=="undefined"?e:c.to;if(e!=d){var b=c.duration?c.duration:1;if(e<d){if(c.scaleDuration&&c.from){b*=((d-e)/d)}this.setOpacityLayer[a]=new Effect.Appear($(a),{to:d,duration:b,afterFinishInternal:(function(){this.setOpacityLayer[a]=null}).bind(this)})}else{if(c.scaleDuration&&c.from){b*=((e-d)/(1-d))*e}this.setOpacityLayer[a]=new Effect.Opacity($(a),{to:d,duration:b,afterFinishInternal:(function(f){if(d==0&&c.hide){f.element.hide()}this.setOpacityLayer[a]=null}).bind(this)})}}},setOpacityState:function(a){if(this.setOpacityLayer[a]){return this.setOpacityLayer[a].state}return"finished"},stopSetOpacity:function(a){if(this.setOpacityLayer[a]){this.setOpacityLayer[a].cancel();this.setOpacityLayer[a]=null}},setStyleLayer:[],setStyle:function(a,b){this.stopSetStyle(a);this.setStyleLayer[a]=new Effect.Morph($(a),{style:b.style,duration:b.duration||1,afterFinishInternal:(function(){this.layerEffect[a]=null}).bind(this)})},stopSetStyle:function(a){if(this.setStyleLayer[a]){this.setStyleLayer[a].cancel();this.setStyleLayer[a]=null}},setStyleState:function(a){if(this.setStyleLayer[a]){return this.setStyleLayer[a].state}return"finished"},setSizeLayer:[],setSize:function(a,b){this.stopSetSize(a);if(b.width!=$(a).getWidth()||b.height!=$(a).getHeight()){this.setSizeLayer[a]=new Effect.Morph($(a),{style:"width: "+b.width+"; height: "+b.height,duration:b.duration||1,afterFinishInternal:(function(){this.setSizeLayer[a]=null}).bind(this)})}},stopSetSize:function(a){if(this.setSizeLayer[a]){this.setSizeLayer[a].cancel();this.setSizeLayer[a]=null}},setSizeState:function(a){if(this.setSizeLayer[a]){return this.setSizeLayer[a].state}return"finished"},getContentDimensions:function(c){var e=$(c).cumulativeOffset();var d=[];d.width=0;d.height=0;var g=$(c).descendants();for(var b=0;b<g.length;b++){if(g[b].visible()&&!g[b].match("meta")&&!g[b].match("link")&&!g[b].match("title")&&!g[b].match("script")&&!g[b].match("head")){var a=g[b].getDimensions();var f=g[b].cumulativeOffset();a.width+=Math.abs(f.left-e.left);a.height+=Math.abs(f.top-e.top);if(a.width>d.width){d.width=a.width}if(a.height>d.height){d.height=a.height}}}return d},getDocumentDimensions:function(){var a=[];a.width=this.getDocumentWidth();a.height=this.getDocumentHeight();return a},getDocumentHeight:function(){var a=Math.max((document.compatMode!="CSS1Compat")?document.body.scrollHeight:document.documentElement.scrollHeight,document.viewport.getHeight());return Math.max(document.body.clientHeight,a)},getDocumentWidth:function(){var a=Math.max((document.compatMode!="CSS1Compat")?document.body.scrollWidth:document.documentElement.scrollWidth,document.viewport.getWidth());return Math.max(a,document.body.clientWidth)},getParam:function(c,a,e){if(e==null||e==true){var f=this.getParam(c,a,false);if(f){return f}else{var d=c.ancestors();for(var b=0;b<d.length;b++){f=this.getParam(d[b],a,false);if(f){return f}}return null}}else{var f=c.readAttribute(a);if(f==""){f=[];f.trigger=c;return f}else{if(f==null){return null}else{return Try.these((function(){f=f.evalJSON();f.trigger=c;return f}).bind(this))||null}}}},dataBrowser:[{string:navigator.userAgent,subString:"Chrome",identity:"Chrome"},{string:navigator.userAgent,subString:"OmniWeb",versionSearch:"OmniWeb/",identity:"OmniWeb"},{string:navigator.vendor,subString:"Apple",identity:"Safari",versionSearch:"Version"},{prop:window.opera,identity:"Opera"},{string:navigator.vendor,subString:"iCab",identity:"iCab"},{string:navigator.vendor,subString:"KDE",identity:"Konqueror"},{string:navigator.userAgent,subString:"Firefox",identity:"Firefox"},{string:navigator.vendor,subString:"Camino",identity:"Camino"},{string:navigator.userAgent,subString:"Netscape",identity:"Netscape"},{string:navigator.userAgent,subString:"MSIE",identity:"IE",versionSearch:"MSIE"},{string:navigator.userAgent,subString:"Gecko",identity:"Mozilla",versionSearch:"rv"},{string:navigator.userAgent,subString:"Mozilla",identity:"Netscape",versionSearch:"Mozilla"}],dataOS:[{string:navigator.platform,subString:"Win",identity:"Windows"},{string:navigator.platform,subString:"Mac",identity:"Mac"},{string:navigator.platform,subString:"Linux",identity:"Linux"}],getBrowser:function(){return this.searchString(this.dataBrowser)||"An unknown browser"},getBrowserVersion:function(){return this.searchVersion(navigator.userAgent)||this.searchVersion(navigator.appVersion)||"an unknown version"},getOS:function(){return this.searchString(this.dataOS)||"an unknown OS"},searchString:function(d){for(var a=0;a<d.length;a++){var b=d[a].string;var c=d[a].prop;this.versionSearchString=d[a].versionSearch||d[a].identity;if(b){if(b.indexOf(d[a].subString)!=-1){return d[a].identity}}else{if(c){return d[a].identity}}}},searchVersion:function(b){var a=b.indexOf(this.versionSearchString);if(a==-1){return}return parseFloat(b.substring(a+this.versionSearchString.length+1))}},window.Utility||{});

