var Browser ={	isIE :!!(window.attachEvent &&!window.opera), 	isOpera :!!window.opera, 	isWebKit :navigator.userAgent.indexOf('AppleWebKit/') >-1,	isGecko :navigator.userAgent.indexOf('Gecko') >-1&&navigator.userAgent.indexOf('KHTML') ==-1};          function FWS_getDeleteIds(checkboxPrefix,start) {	if(typeof start =='undefined')start =0;var ids ='';for(var i =start;;i++) {var checkbox =document.getElementById(checkboxPrefix + i); 	if(checkbox ==null) break; 	if(checkbox.checked) 	ids +=checkbox.value +',';}return ids; } function FWS_setCookie(name,value,lifetime,path,domain) {var str =escape(name) +"="+escape(value); 	if(typeof lifetime !='undefined')str +=";expires="+(new Date((new Date()).getTime() +(1000*lifetime))).toGMTString(); 	if(typeof path =='undefined')path ='/';	if(typeof domain =='undefined')domain ='';str +=";path="+path +";domain="+domain; document.cookie =str; }   function FWS_openDefaultPopup(filename,title,width,height) {var options ='toolbar=no,status=no,menubar=no,width='+width +',height='+height; options +=',resizable=yes,scrollbars=yes,left=0,top=0,screenX=0,screenY=0';window.open(filename,title,options); } function FWS_openPopup(filename,title,options) {window.open(filename,title,options); }function FWS_printObject(object,showFunctions) {	if(typeof showFunctions =='undefined')showFunctions =false; var props ='<pre style="max-height: 500px; overflow: auto; border-top: 1px solid #555;';props +=' border-bottom: 1px solid #555;">';props +=FWS_getObjectProperties(object,showFunctions); props +='</pre>';var el; 	if(!FWS_getElement('FWS_debug_field')) {var str ='';str +='<h3 align="center">JS-Debugging of '+object +' ['+(typeof object) +']</h3>';str +=props; str +='<center><a href="javascript:FWS_hideElement(\'FWS_debug_field\');">Close</a></center>'; el =document.createElement('div'); el.id ='FWS_debug_field';el.innerHTML =str; el.style.backgroundColor ='#ebebeb';el.style.position ='absolute';el.style.zindex =100;el.style.padding ='4px';el.style.margin ='0px';el.style.border ='1px dotted #000';document.getElementsByTagName('body')[0].appendChild(el); }else {el =FWS_getElement('FWS_debug_field'); el.innerHTML +=props; }el.style.width =(window.innerWidth -20)+'px';el.style.left =(window.innerWidth /2-parseInt(el.style.width) /2-4)+'px;';var top =(window.innerHeight /2-el.offsetHeight /2);	if(top <0)top =0;el.style.top =top +'px';el.style.display ='block';}function FWS_getObjectProperties(object,showFunctions) {	if(typeof object =='object'||typeof object =='array'){var str =object +" {\n";for(var x in object) {try {	if(typeof object[x] !='undefined'&&(showFunctions ||typeof object[x] !='function')){str +='  '+x+' => ';str +=FWS_escapeHTML(object[x]); str +="\n";}}catch(Exception) {}}str +='}'+"\n";}else str =FWS_escapeHTML(object); return str; }  function FWS_escapeHTML(input) {	if(typeof input =='string'){	if(input.length >100)	input = input.substring(0,100); while(input.match(/</)) 	input = input.replace(/</,"&lt;"); while(input.match(/>/)) 	input = input.replace(/>/,"&gt;"); }return input; }       function FWS_displayElement(elId,relId,location,padding,display) {var element =FWS_getElement(elId); var relative =FWS_getElement(relId); 	if(element &&relative) {	if(typeof padding =='undefined')padding =0;	if(typeof display =='undefined')display ='block';	if(element.offsetWidth ==0){element.style.position ='absolute';element.style.top ="-600px";element.style.left ="0px";element.style.display ='block';}var ewidth =parseInt(element.offsetWidth); var eheight =parseInt(element.offsetHeight); var rwidth =parseInt(relative.offsetWidth); var rheight =parseInt(relative.offsetHeight); var left =FWS_getPageOffsetLeft(relative); var top =FWS_getPageOffsetTop(relative); switch(location) {case 'topleft':case 'tl':element.style.top =(top -eheight -padding) +"px";element.style.left =(left -ewidth -padding) +"px";break; case 'topleftright':case 'tlr':element.style.top =(top -eheight -padding) +"px";element.style.left =left +"px";break; case 'top':case 't':element.style.top =(top -eheight -padding) +"px";element.style.left =(left +(rwidth /2)-(ewidth /2))+"px";break; case 'toprightleft':case 'trl':element.style.top =(top -eheight -padding) +"px";element.style.left =(left +rwidth -ewidth) +"px";break; case 'topright':case 'tr':element.style.top =(top -eheight -padding) +"px";element.style.left =(left +rwidth +padding) +"px";break; case 'lefttop':case 'lt':element.style.top =top +"px";element.style.left =(left -ewidth -padding) +"px";break; case 'righttop':case 'rt':element.style.top =top +"px";element.style.left =(left +rwidth +padding) +"px";break; case 'c':case 'center':element.style.top =(top +(rheight /2)-(eheight /2))+"px";element.style.left =(left +(rwidth /2)-(ewidth /2))+"px";break; case 'left':case 'l':element.style.top =(top +(rheight /2)-(eheight /2))+"px";element.style.left =(left -ewidth -padding) +"px";break; case 'right':case 'r':element.style.top =(top +(rheight /2)-(eheight /2))+"px";element.style.left =(left +rwidth +padding) +"px";break; case 'leftbottom':case 'lb':element.style.top =(top +rheight -eheight) +"px";element.style.left =(left -ewidth -padding) +"px";break; case 'rightbottom':case 'rb':element.style.top =(top +rheight -eheight) +"px";element.style.left =(left +rwidth +padding) +"px";break; case 'bottomleft':case 'bl':element.style.top =(top +rheight +padding) +"px";element.style.left =(left -ewidth -padding) +"px";break; case 'bottomleftright':case 'blr':element.style.top =(top +rheight +padding) +"px";element.style.left =left +"px";break; case 'bottom':case 'b':element.style.top =(top +rheight +padding) +"px";element.style.left =(left +(rwidth /2)-(ewidth /2))+"px";break; case 'bottomrightleft':case 'brl':element.style.top =(top +rheight +padding) +"px";element.style.left =(left +rwidth -ewidth) +"px";break; case 'bottomright':case 'br':element.style.top =(top +rheight +padding) +"px";element.style.left =(left +rwidth +padding) +"px";break; }element.style.position ='absolute';element.style.display =display; }} function FWS_setOpacity(el,value) {	if(Browser.isIE) el.style.filter ="Alpha(opacity="+value +")";else if(Browser.isOpera ||Browser.isWebKit) el.style.opacity =value /100;else el.style.MozOpacity =value /100;} function FWS_addToPage(html) {var body=document.getElementsByTagName('body')[0]; body.innerHTML +=html; }function FWS_toggleClassName(element,className) {	if(element.className.indexOf(className) >=0)FWS_removeClassName(element,className); else FWS_addClassName(element,className); }function FWS_addClassName(element,className) {FWS_removeClassName(element,className); element.className +=" "+className; }function FWS_removeClassName(element,className) {var cls=element.className.split(" ");var ar =new Array(); for(var i =cls.length;i >0;){	if(cls[--i] !=className) ar[ar.length] =cls[i]; }element.className =ar.join(" ");}function FWS_addEvent(el,evname,func) {	if(el.attachEvent) el.attachEvent("on" +evname,func); else if(el.addEventListener) el.addEventListener(evname,func,true); else el["on" +evname] =func; }function FWS_removeEvent(el,evname,func) {	if(el.detachEvent) el.detachEvent("on" +evname,func); else if(el.removeEventListener) el.removeEventListener(evname,func,true); else el["on" +evname] =null; } function FWS_includeJS(file) {var head =document.getElementsByTagName('head')[0]; head.innerHTML +='<script type="text/javascript" src="'+file +'"></script>';}  function FWS_toggleElement(elId,display) {	if(typeof display =='undefined')display ='block';var element =FWS_getElement(elId); 	if(element.style.display =='none')element.style.display =display; else element.style.display ='none';}  function FWS_showElement(elId,display) {	if(typeof display =='undefined')display ='block';var element =FWS_getElement(elId); 	if(element) element.style.display =display; }  function FWS_hideElement(elId) {var element =FWS_getElement(elId); 	if(element) element.style.display ='none';}   function FWS_replaceContent(id,content) {var element =FWS_getElement(id); 	if(element) element.innerHTML =content; } function FWS_getPageOffsetLeft(el) {var x=el.offsetLeft; 	if(el.offsetParent !=null) x+=FWS_getPageOffsetLeft(el.offsetParent); return x;} function FWS_getPageOffsetTop(el) {var y=el.offsetTop;  if(el.offsetParent !=null) y+=FWS_getPageOffsetTop(el.offsetParent); return y;}function FWS_getIEBody() {	if(document.compatMode &&document.compatMode !="BackCompat")return document.documentElement; return document.body; }function FWS_getScrollOffset() {var dim; 	if(Browser.isIE) {var body=FWS_getIEBody(); dim =new Array(body.scrollLeft,body.scrollTop); }else dim =new Array(window.pageXOffset,window.pageYOffset); return dim; }function FWS_getWindowSize() {var size; 	if(Browser.isIE) {var body=FWS_getIEBody(); size =new Array(body.clientWidth,body.clientHeight); }else size =new Array(window.innerWidth,window.innerHeight); return size; }function FWS_getPageSize() {var size; 	if(Browser.isIE) {var body=FWS_getIEBody(); size =new Array(body.clientWidth,body.clientHeight); }else {var body=document.getElementsByTagName('body')[0]; size =new Array(body.offsetWidth,body.offsetHeight); }return size; }   function FWS_getElement(id) {return document.getElementById(id); } Array.prototype.contains =function(entry) {for(var i =0;i <this.length;i++) {	if(this[i] ==entry) return true; }return false; };Array.prototype.removeEntry =function(entry) {var index =-1;for(var i =0;i <this.length;i++) {	if(this[i] ==entry) {	index = i; break; }}	if(index >=0){var temp =this[index]; this[index] =this[this.length -1];this[this.length -1]=temp; this.pop(); }};  String.prototype.endsWith =function(str) {return this.substr(this.length -str.length) ==str; };String.prototype.trim =function() {	if(this =="")return this; var i =0;for(;i <this.length;i++) {	if(this[i] !='\n'&&this[i] !='\r'&&this[i] !='\t'&&this[i] !=' ')break; }var a=this.length -1;for(;a >=0;a--){	if(this[a] !='\n'&&this[a] !='\r'&&this[a] !='\t'&&this[a] !=' ')break; }return this.substr(i,a - i +1);}; String.prototype.substr_count =function substr_count(needle) {var str =this; var matches =0;var i =0;while(matches <5){	i =-1;try {	i =str.indexOf(needle); }catch(Exception) {}	if(i <0)break; matches++; str =str.substring(i +needle.length); }return matches; };
