/** Copyright (c) Fluid, Inc. All Right Reserved. $Date: 2008/07/29 19:01:50 $ $Revision: 1.76 $*/if(fluid==null)var fluid={classPath:"",includes:null,application:null,classRegistry:new Object(),configurationRegistry:new Object(),setupFromScriptTag:function(){var scripts=document.getElementsByTagName("script");var script;var fluidCore;for(var i=0;i<scripts.length;i++){script=scripts[i];if(script.src.indexOf("fluid/core/Fluid.js")!=-1){fluidCore=script;break;}}if(fluidCore!=null){var scriptSrc=fluidCore.src;var srcParts=scriptSrc.split("?");if(srcParts.length>1){var classPath=null;var includes=null;var applicationClass=null;var applicationParams=new Array();var params=srcParts[1].split("&");for(var i=0;i<params.length;i++){var keyValue=params[i].split("=");var key=keyValue[0];var value=keyValue[1];switch(key){case"classPath":classPath=unescape(value);break;case"include":includes=value.split(",");;break;case"run":applicationClass=value;break;default:applicationParams.push({key:key,value:unescape(value)});}}var innerHTMLScript='<scr'+'ipt type="text/javascript" src="' + classPath + 'fluid/util/InnerHTML.js"></scr'+'ipt>';document.write(innerHTMLScript);this.initialize(classPath,includes,applicationClass,applicationParams);}}},initialize:function(classPath,includes,applicationClass,applicationParams){fluid.classPath=classPath;fluid.includes=includes;fluid.loadIncludes();if(applicationClass!=null)fluid.runApplication(applicationClass,applicationParams);},loadIncludes:function(){if(fluid.includes!=null){for(var i=0;i<fluid.includes.length;i++){fluid.include(fluid.includes[i]);}}},runApplication:function(applicationClass,applicationParams){fluid.include(applicationClass);var constructor=eval(applicationClass);fluid.application=new constructor();if(applicationParams!=null){for(var i=0;i<applicationParams.length;i++){var param=applicationParams[i];fluid.application[param.key]=param.value;}}fluid.application.initialize();},declare:function(namespace){var objects=namespace.split(".");var len=objects.length;var object=window;for(var i=0;i<len;i++){if(object[objects[i]]==null)object[objects[i]]=new Object();object=object[objects[i]];}},include:function(classToInclude){if(fluid.classRegistry[classToInclude]==null){var scriptUrl=fluid.classPath+classToInclude.split(".").join("/")+".js";fluid.load(scriptUrl);}},load:function(scriptUrl){var request=fluid.createRequest();if(request!=null){request.open("GET",scriptUrl,false);request.send(null);if(request.readyState==4&&request.status==200){eval.apply(window,[request.responseText]);return true;}}return false;},extend:function(concrete,base){var existing=concrete.prototype;concrete.prototype=new base();for(var i in existing)concrete.prototype[i]=existing[i];concrete.base=base;concrete.prototype.constructor=concrete;},createRequest:function(){var request=null;if(window.XMLHttpRequest){request=new XMLHttpRequest();}else if(window.ActiveXObject){try{request=new ActiveXObject("Msxml2.XMLHTTP");}catch(e){try{request=new ActiveXObject("Microsoft.XMLHTTP");}catch(e){}}}return request;},stringToXML:function(xmlString){var xml=null;if(window.ActiveXObject){xml=new ActiveXObject("Microsoft.XMLDOM");xml.async="false";xml.loadXML(xmlString);}else{var parser=new DOMParser();xml=parser.parseFromString(xmlString,"text/xml");}return xml.documentElement;},defineConfiguration:function(id,config){fluid.configurationRegistry[id]=config;},getConfiguration:function(id){return fluid.configurationRegistry[id];}};fluid.setupFromScriptTag();