

function scroll(DivId){
  theElement = document.getElementById(DivId);
 
  var selectedPosX = 0;
  var selectedPosY = 0;
       
  while(theElement != null){
    selectedPosX += theElement.offsetLeft;
    selectedPosY += theElement.offsetTop;
    theElement = theElement.offsetParent;
  }
    
 
 window.scrollTo(selectedPosX,selectedPosY);


}
 



function evalScript(scripts)
{
try
	{
		  if(scripts != '' && scripts !=null)
	
		{
		 
                 var script = "";
                
                 var t = new String();
                       t=scripts;
                       t= t.replace(/<script[^>]*>([\s\S]*?)<\/script>/gi, function(){if (t !== null) script += arguments[1] + '\n';return true;});
 		       if(script) (window.execScript) ? window.execScript(script) : window.setTimeout(script, 0);
		}
		 
	      
	}
	catch(e)
	{
                 alert("Script_Error"+e);
		 return false
	}
        return true;
}
var scriptContainers=[];  

var tmpregistration=[];
registerJS = function (id){
//alert("K");
        tmpregistration[id]=1;
 }
registerJS2 = function (id){
        tmpregistration[id]=2;
 }
function XMLHttpGet_Panel(url,panel,ident,header,postData){
   
  YAHOO.namespace("charda.container");
  if (!YAHOO.charda.container.wait) {

            // Initialize the temporary Panel to display while waiting for external content to load

            YAHOO.charda.container.wait = 
                    new YAHOO.widget.Panel("wait",  
                                                    { width: "240px", 
                                                      fixedcenter: true, 
                                                      close: false, 
                                                      draggable: false, 
                                                      zindex:4,
                                                      modal: true,
                                                      visible: false
                                                    } 
                                                );
        
            YAHOO.charda.container.wait.setHeader("Loading, please wait...");
            YAHOO.charda.container.wait.setBody("<img src=\"http://l.yimg.com/a/i/us/per/gr/gp/rel_interstitial_loading.gif\"/>");
            YAHOO.charda.container.wait.render(document.body);

        }


  
YAHOO.charda.container.wait.show();
var sUrl=url;
var callback = {success: function(oResponse) {
                                  YAHOO.charda.container.wait.hide();
				  var oResults;
		if(YAHOO.lang.isArray(postData)){
		  YAHOO.lang.JSON.useNativeParse=true;
		  YAHOO.lang.JSON.useNativeStringify=true;
		    oResults = YAHOO.lang.JSON.parse(oResponse); }else{
		    oResults = YAHOO.lang.JSON.parse(oResponse.responseText);
		  }
			if((oResults) && (oResults.length)) {
				//Result is an array if more than one result, string otherwise
				if(YAHOO.lang.isArray(oResults)) {
					 
                                                   var scriptident = oResults[0].scriptident;
                                                   var html =oResults[0].html;
                                                  // alert(scriptident+'--'+html);
                                                   if(panel != undefined && panel!=null){
                                                  
                                              
                                                  
                                                   
                                                   panel.body.childNodes[0].innerHTML=html;
                                                   startPanel(ident,panel,header);
                                                    
                                                   
                                                   
                                                   var scripts=null; 
                                                   if(scriptident != undefined) scripts=document.getElementById('scriptcontainer'+scriptident).innerHTML;
                                                   
						 
						   if (scripts !=null ){ //&& tmpregistration[scriptident]!=1
						 //   alert("eval script");
						    if (evalScript(scripts)==true){
						    try{
						    //alert(scriptident);
						    var fun = scriptident+'()';
						  //  eval(fun);
						    }catch(e){}//alert(e);
						    
						    }
						    tmpregistration[scriptident]=0;
						    }
						    // if(tmpregistration[scriptident]==1){
						    //alert (typeof scriptident);
						    //var fun = scriptident+'()';
						    
						    //$.fn.fun(); 
						   // if(typeof scriptident == 'function')panel.objects.push(scriptident && scriptident.call && scriptident()||null);
								//functionname();
						                 //var fun = scriptident ;//+'()';
								 //eval(fun);
                                                                 
                                                   // }
                                                    
                                                  
                                                    
                                                  
                                                                    
                                              }
                                  }
                                  }
 

                        },
		failure: function(oResponse) {
			//oResponse.argument.fnLoadComplete();
			//alert("error:"+oResponse);
                        panel.destroy();
                 YAHOO.charda.container.wait.hide();
		},
		argument: {
			 
		},
		timeout: 15000
	};
	if(YAHOO.lang.isArray(postData)){
	  YAHOO.lang.JSON.useNativeStringify = false;
	  var data = YAHOO.lang.JSON.stringify(postData);
	 // var d= 'objectids='+postData;
	  //YAHOO.util.Connect.asyncRequest('POST', sUrl, callback,d);
	    $.ajax({
                  type: "POST",
                  url: url,
                  data: {'objectids':data},
		  success:callback.success,
		  error:callback.failure});
	   
	   }else{
	    YAHOO.util.Connect.asyncRequest('get', sUrl, callback);
	} 
}



function XMLHttpGet2(url,dst,ident,dontaddclear,k,onCompleteFun){
            
      YAHOO.namespace("charda.container");
  if (!YAHOO.charda.container.wait) {

            YAHOO.charda.container.wait = 
                    new YAHOO.widget.Panel("wait",  
                                                    { width: "240px", 
                                                      fixedcenter: true, 
                                                      close: false, 
                                                      draggable: false, 
                                                      zindex:4,
                                                      modal: true,
                                                      visible: false
                                                    } 
                                                );
        
            YAHOO.charda.container.wait.setHeader("Loading, please wait...");
            YAHOO.charda.container.wait.setBody("<img src=\"http://l.yimg.com/a/i/us/per/gr/gp/rel_interstitial_loading.gif\"/>");
            YAHOO.charda.container.wait.render(document.body);

        }


YAHOO.charda.container.wait.show();
var sUrl=url;
var retValue=null;
var callback = {success: function(oResponse) {
                        YAHOO.charda.container.wait.hide();
			var oResults = YAHOO.lang.JSON.parse(oResponse.responseText);
			if((oResults) && (oResults.length)) {
				//Result is an array if more than one result, string otherwise
				if(YAHOO.lang.isArray(oResults)) {
					 
                                                   var scriptident = oResults[0].scriptident;
                                                   var html =oResults[0].html;
                                              //     alert(scriptident+'--'+html);
                                                   if(dontaddclear!=undefined && dontaddclear==true && oResults[0].html==null)return;
                                                   if(dst != undefined){
                                                                    retValue=null;
                                                                    if(k!=undefined && k==true){
                                                                     if(document.getElementById(dst) != null)  document.getElementById(dst).value= (html);
                                                                    }else{
                                                                                     if(document.getElementById(dst) != null){
                                                                                     
                                                                                     document.getElementById(dst).style.display="none";
                                                                                     document.getElementById(dst).innerHTML="";
                                                                                     document.getElementById(dst).innerHTML=html;
                                                                                     if(scriptident!=undefined && scriptident!=null && (tmpregistration[scriptident]!=1)){
                                                                                     evalScript(html);
										     /* var fun = scriptident +'()';
                                                                                      try{
                                                                                         retValue=(eval(fun));
                                                                                         //if(typeof(onCompleteFun)=="function")onCompleteFun(retValue); 
                                                                                         }catch(err){ }*/
                                                                                     //tmpregistration[scriptident]=1;
                                                                                     //alert('eval_done__'+tmpregistration[scriptident]);
                                                                                    }
										  
                                                                                     if (tmpregistration[scriptident]==1){
                                                                                
                                                                                      var fun = scriptident +'()';
                                                                                      try{
                                                                                         retValue=(eval(fun));
                                                                                         //if(typeof(onCompleteFun)=="function")onCompleteFun(retValue); 
                                                                                         }catch(err){ }
                                                                                     }
                                                                                     tmpregistration[scriptident]==0;
                                                                                      $("#"+dst).fadeIn("slow");
                                                                                             
                                                                                     }
                                                                     }
                                                   }
                                 if(typeof(onCompleteFun)=="function")onCompleteFun(retValue); 
                                }
                              
                                }
                                
                                         
                        },
		failure: function(oResponse) {
			//alert("error:"+oResponse);
                 YAHOO.charda.container.wait.hide();
		},
		argument: {
			 
		},
		timeout: 15000
	};

	YAHOO.util.Connect.asyncRequest('get', sUrl, callback);     
}

function loadLiteratureAJAX_Accordion(actObj,target,elem){
                // for (var i=0;i<accordion.getPanels().length;i++){
                // accordion.closePanel(i);                 
                // }
                if (elem.getAttribute('expanded')=="false"){
                 
                 XMLHttpGet2(baseurl+"getliterature/"+actObj,target,actObj,true);
               //   accordion.openPanel(id);
                  //elem.parentNode.setAttribute('aria-expanded',"true");
                 }else{
                 //   accordion.closePanel(id);
                    //elem.parentNode.setAttribute('aria-expanded',"false");
                 }
}

var showInfo=true;
var tmpact="";

function load_content(ident){
  //alert(ident);
  //openObject(ident);
  getInfo(ident,"maincontent",true,true);
}

function getInfo(actObj,target,showMap){
  sm=true;
 if(showMap!=undefined)sm=showMap;
  if(actObj!=null) {
   //tmpact=actObj;
  var info = "";

  if (target !="")info=target;
  if(sm && target!=""){
          XMLHttpGet2(baseurl+"getinfo/"+actObj,info,actObj,true);
  }
  if(!sm && target!="")XMLHttpGet2(baseurl+"getinfo/"+actObj+"?showmap=false",info,actObj,true);
  }
  }

function hidediv(divID) {
document.getElementById(divID).style.visibility = 'collapse';
}

function showdiv(divID) {
document.getElementById(divID).style.visibility = 'visible';
}
  


function showmap(checkbox,ident){
  var div =document.getElementById('map'+ident)               
   if(div !=null && checkbox!=null){
            if(checkbox.checked){
                 div.style.display = "inline-block";
            }else{
                 div.style.display = "none";
            }
   }
}

function makePanel(val,content,header,withoutRender,onCloseFun){
 if(overlaymanager.find(val)){
 showPanel(val);
 return false;
 }
            var panel = new YAHOO.widget.Panel(val, {
                draggable: true,
          //      height:'400px',
	   //     width:'890px',
                 visible:true,
             
		constraintoviewport:false,
 		fixedcenter:false,
 		underlay:"shadow",
		close:false,
               // context: ["panelmenu", "tl"],
	        effect:[{effect:YAHOO.widget.ContainerEffect.FADE,duration:0.5}]

            });
        if(typeof(onCloseFun)=="function") panel.onCloseFun=onCloseFun;   
	 panel.objects = [];
         var divHeader = document.createElement("div");
        divHeader.id = "hd"+val;
        divHeader.className ="hd";
        
         var divButtons = document.createElement("div");
	divButtons.id = "bcpids"+val;
	divButtons.setAttribute("class","panelbuttons");
  
	//var butts = '<a class="minimize" href="#" onclick="javascript:minPanel(\'pids'+val+'\');"></a>';
	//butts = butts + '<a class="close" href="#" onclick="javascript:closePanel(\'pids'+val+'\');"></a>';
	var mybutton=document.createElement("button");
	mybutton.id ="mb"+val;
	mybutton.setAttribute("class","minimize");
	//mybutton.onclick=minPanel('pids'+val);
	mybutton.setAttribute('onclick', 'minPanel(\''+panel.id+'\')');
	
	var mybutton2=document.createElement("button");
	mybutton2.id ="mb2"+val;
	
	mybutton2.setAttribute("class","close");
	mybutton2.setAttribute('onclick', 'closePanel(\''+panel.id+'\')');
	
	//mybutton2.onclick=closePanel('pids'+val);
	
	divButtons.appendChild(mybutton);
	divButtons.appendChild(mybutton2);
	  

      var label = document.createElement('label');

        if(header==undefined){
	  var text = document.createTextNode('Information:');
	}else{
	  var text = document.createTextNode(header);
	}
	  label.appendChild(text);	
	  divHeader.appendChild (label);
	  divHeader.appendChild(divButtons);
      
         
         
panel.setHeader(divHeader);
panel.setBody(content);

 
             
          
panel.setFooter("");

 
 if (!withoutRender){
             startPanel(val,panel,header);    
   
 
 }
 
	    return panel;

 
}

function startPanel(val,panel,header){
          panel.render("panelcontainer");
     
          var bd = panel.body;
          if(bd!=null){
                 bd.setAttribute("class","charda_panel_bd");
             }
             // Create Resize instance, binding it to the 'resizablepanel' DIV 
            var resize = new YAHOO.util.Resize(panel.id, {
                handles: ["b","bl","br"],
                autoRatio: false,
                minWidth: 100,
                minHeight: 100,
                status: true,
                proxy: true,
                useShim: true
                });

            // Setup startResize handler, to constrain the resize width/height
            // if the constraintoviewport configuration property is enabled.
            resize.on("startResize", function(args) {

    		    if (this.cfg.getProperty("constraintoviewport")) {
                    var D = YAHOO.util.Dom;

                    var clientRegion = D.getClientRegion();
                    var elRegion = D.getRegion(this.element);

                    resize.set("maxWidth", clientRegion.right - elRegion.left - YAHOO.widget.Overlay.VIEWPORT_OFFSET);
                    resize.set("maxHeight", clientRegion.bottom - elRegion.top - YAHOO.widget.Overlay.VIEWPORT_OFFSET);
	            } else {
                    resize.set("maxWidth", null);
                    resize.set("maxHeight", null);
	        	}

            },  panel, true);

            // Setup resize handler to update the Panel's 'height' configuration property 
            // whenever the size of the 'resizablepanel' DIV changes.

            // Setting the height configuration property will result in the 
            // body of the Panel being resized to fill the new height (based on the
            // autofillheight property introduced in 2.6.0) and the iframe shim and 
            // shadow being resized also if required (for IE6 and IE7 quirks mode).
            resize.on("resize", function(args) {
                var panelHeight = args.height;
                this.cfg.setProperty("height", panelHeight + "px");
            },  panel, true);
                                
            
                 overlaymanager.register(panel);
                 showPanel(panel.id);
                 var link=document.createElement("a");
                 link.id ="a"+panel.id;
                 var text=document.createTextNode(header+" | ");
                 link.setAttribute('onclick', 'showPanel(\''+panel.id+'\')');
                 link.setAttribute('href', '#');
                 link.appendChild(text);
                 document.getElementById('paneldata').appendChild(link);
}

Array.prototype.array_value_delete = function(position) {

	for (var x = 0; x < this.length; ++x) {

		if (x >= position) {

			this[x] = this[x + 1];
		}

	} this.pop();
};


 
var overlaymanager = new YAHOO.widget.OverlayManager();  

function getInfoInPopUpWithouMap(val,panelname){
  return getInfoInPopUp(val,false,panelname)
}
function getInfoInPopUp(val,showMap,panelname){

var p=overlaymanager.find("pids"+val);
if(p!=null){
   p.show();
   overlaymanager.focus(p);
   overlaymanager.bringToTop(p);
      return;
}
makePanel("pids"+val,'<div style="text-align:left;" id="cid'+val+'"></div>',panelname,false);
getInfo(val,'cid'+val,showMap);
}
 
function registerAJAXContent(ident,content,header){
     makePanel("pids"+ident,content,header,false);
}

function showPanel(val){
   var panel = overlaymanager.find(val);
   
 if(panel!=null){
                 
 
   panel.show();
  
  var bd = panel.body;
 
  
  if(bd!=null){
    bd.style.display = "block";
     
  }
 overlaymanager.bringToTop(panel);
  panel.center();

}
}


function minPanel(val){
  var panel = overlaymanager.find(val);
 if(panel!=null){
  var bd = panel.body;
 
  if(bd!=null){
    bd.style.display = "none";
    
  }
  

panel.hide();
  
 }
}
function closePanel(val){
  var panel = overlaymanager.find(val);
            
if(panel!=null){
   panel.hide();
   overlaymanager.remove(panel);   
  
   var link = document.getElementById("a"+val);
   if(link!=null)document.getElementById('paneldata').removeChild(link);
   sizeBasePage();
   val = val.replace("pids","");
   val = val.replace (/^\s+/, '').replace (/\s+$/, '');
   unregisterVar(val)
   for(var i=0;i<panel.objects.length;i++){
                 var o =panel.objects[i];
                 //var p =o.parentIdent();
                // if(p!=undefined && p!=null)openObject(p)
                 o.destroy();
                 o =null;
   }
   panel.objects=[];
   
   if(typeof(panel.onCloseFun)=='function')panel.onCloseFun();
   panel.destroy();
 }
  
}
 
function addtocollection(dataarray){
  YAHOO.namespace("charda.container");
  if (!YAHOO.charda.container.saving) {

            // Initialize the temporary Panel to display while waiting for external content to load

            YAHOO.charda.container.saving = 
                    new YAHOO.widget.Panel("saving",  
                                                    { width: "240px", 
                                                      fixedcenter: true, 
                                                      close: false, 
                                                      draggable: false, 
                                                      zindex:4,
                                                      modal: true,
                                                      visible: false
                                                    } 
                                                );
    
            YAHOO.charda.container.saving.setHeader("save, please wait...");
            YAHOO.charda.container.saving.setBody("<img src=\"http://l.yimg.com/a/i/us/per/gr/gp/rel_interstitial_loading.gif\"/>");
            YAHOO.charda.container.saving.render(document.body);

        }


  
YAHOO.charda.container.saving.show();
 var JSONdata = YAHOO.lang.JSON.stringify(dataarray);
 $.ajax({
   type: "POST", 
   url: "addtoactivecollection",
   data: {'objectids':JSONdata},
   success: function(oResponse){
   YAHOO.charda.container.saving.hide();
                        /*var oResults = YAHOO.lang.JSON.parse(oResponse);
			if((oResults) && (oResults.length)) {
			
		        if(YAHOO.lang.isArray(oResults)) {
                        if(oResults[0]==true){
                        var f = document.getElementById("helper"+formid);
                         if(f!=null){
                                    var p =f.parentNode.parentNode.id;
                                    closePanel(p)
                                    var id = oResults[1];
                                    if (id!=undefined)openObject(id);
                         }
                        }else{
                                  var error = oResults[1];
                                    
                                if(error != undefined)  alert("post error:"+error);
                        }
                        }}*/
                        load_usercollectionmenu();
		
                        },
  error: function(oResponse) {
		YAHOO.charda.container.saving.hide();
		 
		}

 });
}
function addObjecttoactivecollection(Objident){
  var t = [];
  t.push(Objident);
 addtocollection(t);
 //  $.post("addObjecttoactivecollection/"+Objident , function(){
 // load_usercollectionmenu();  });
}


function setcollection (val){
  $.post(baseurl+"setcollection/"+val,function(){
  load_usercollectionmenu();}  );
}
function renamecollection (val){
                 
  var newname=prompt ("new collectionname");
  if (newname!=""){
  $.post("renamecollection/"+val+"?new_name="+newname,function(){
  load_usercollectionmenu();}  );
  }
}
function newcollection (){
  var newname=prompt ("new collectionname");
  if (newname!=""){
  $.ajax({
   type: "POST",
   url: 'newcollection',
   data: {'collectionname':newname},
   success: function(oResponse){
                 load_usercollectionmenu();
  }
  });               
                 
  /*$.post("newcollection/?collectionname="+newname,function(){
  load_usercollectionmenu();}  );*/
  }
}
function deletecollection (val){
  var answer = confirm ("Delete?")
  if(answer){
  $.post("deletecollection/"+val,function(){
  load_usercollectionmenu();}  );
  }
}
function clearcollection (val){
  $.post("clearcollection/"+val,function(){
  load_usercollectionmenu();}  );
}
function addfiltertocollection (val){
  var saveuri ="addfiltertocollection/"+val;
  var newname=prompt ("filter");
  if (newname!=""){
  $.ajax({
   type: "POST",
   url: saveuri,
   data: {'filter':newname},
   success: function(oResponse){
               
  }  
});
  }
}
var downloadfile = function(url){
	
	jQuery('<form action="'+ url +'" method="'+ ('get') +'"></form>')
		.appendTo('body').submit().remove();
	
}

function getLiteratureXML(val){
  downloadfile("downloadLiteratureAsXML/"+val);
}
function getLiteratureXLS(val){
  
  downloadfile("downloadLiteratureAsXLS/"+val);
}
function downloadcollectionAsXML (val){
  downloadfile("downloadcollectionAsXML/"+val);
}
function downloadcollectionAsC14XML (val){
  downloadfile("downloadcollectionAsC14XML/"+val);
}
function downloadcollectionAsXLS (val){
  downloadfile("downloadcollectionAsXLS/"+val);
}
function downloadcollectionAsC14XLS (val){
  downloadfile("downloadcollectionAsC14XLS/"+val);
}
function downloadcollectionAsKML (val){
  downloadfile("downloadcollectionAsKML/"+val);
}
function downloadcollectionAsTimeKML (val){
 downloadfile("downloadcollectionAsTimeKML/"+val);
 }
function html_entity_decode(str) {
  var ta=document.createElement("textarea");
  ta.innerHTML=str.replace(/</g,"&lt;").replace(/>/g,"&gt;");
  return ta.value;
}
 
  
function load_usercollectionmenu(onCompletefun){
if(globalVars['usercollectionmenu']!= undefined && globalVars['usercollectionmenu']!=null ){
                 var o = globalVars['usercollectionmenu'];
                 globalVars['usercollectionmenu']=null;
                 if(o!=null)o.destroy();
}
   XMLHttpGet2("getusercollectionmenu",'menuright',null,true,false,onCompletefun);  
}

function load_usermenu(ident){
if(globalVars['userobjectmenu']!= undefined && globalVars['userobjectmenu']!=null ){
var o = globalVars['userobjectmenu'];
globalVars['userobjectmenu']=null;
if(o!=null)o.destroy();
}
   
   XMLHttpGet2("getObjectmenu/"+ident,'menucenter');
  
}
baseurl="";
function loaduseraction(val,panelname,ident,onClosefun){
              
  if(val!="0"){

  var x = makePanel("pids"+val,'<div style="text-align:left;" id="cid'+val+'"></div>',panelname,true,onClosefun)
   if(x!=null){
    XMLHttpGet_Panel(baseurl+val,x,ident,panelname);
  }
 }
  
}

function loadSubSiteName(siteId,HtmlElement){
     XMLHttpGet2(baseurl+"getNewSubsiteName/"+siteId,HtmlElement,"",true,true);

}
function loadFeatureName(Ident,HtmlElement){
     XMLHttpGet2(baseurl+"getNewFeatureName/"+Ident,HtmlElement,"",true,true);

}
function loadFindobjectName(Ident,HtmlElement){
     XMLHttpGet2(baseurl+"getNewFindobjectName/"+Ident,HtmlElement,"",true,true);

}



function saveObject(save_uri,formid,reload){
  
  YAHOO.namespace("charda.container");
  if (!YAHOO.charda.container.saving) {

            // Initialize the temporary Panel to display while waiting for external content to load

            YAHOO.charda.container.saving = 
                    new YAHOO.widget.Panel("saving",  
                                                    { width: "240px", 
                                                      fixedcenter: true, 
                                                      close: false, 
                                                      draggable: false, 
                                                      zindex:4,
                                                      modal: true,
                                                      visible: false
                                                    } 
                                                );
    
            YAHOO.charda.container.saving.setHeader("save, please wait...");
            YAHOO.charda.container.saving.setBody("<img src=\"http://l.yimg.com/a/i/us/per/gr/gp/rel_interstitial_loading.gif\"/>");
            YAHOO.charda.container.saving.render(document.body);

        }


  
YAHOO.charda.container.saving.show();
 $.ajax({
   type: "POST",
   url: save_uri,
   data: $("#"+formid).serialize() ,
   success: function(oResponse){
   YAHOO.charda.container.saving.hide();
                        var oResults = YAHOO.lang.JSON.parse(oResponse);
			if((oResults) && (oResults.length)) {
			
		        if(YAHOO.lang.isArray(oResults)) {
                        if(oResults[0]==true){
                                  
                        var f = document.getElementById("helper"+formid);
                       
                         if(f!=null){
                                    var p =f.parentNode.parentNode.parentNode.id;
                                    closePanel(p)
                                    var id = oResults[1];
                                    if (id!=undefined)openObject(id);
                                    
                         }
                        }else{
                                  var error = oResults[1];
                                    
                                if(error != undefined)  alert("post error:"+error);
                        }
                        }}},
  error: function(oResponse) {
		YAHOO.charda.container.saving.hide();
		 alert("post error:"+oResponse);
                 
		}

 });
}

function search(searchtext,url,name){

if (searchtext!= undefined && searchtext !="") {
url=baseurl+url+"/?searchtext="+searchtext;
var ident =new Date().getTime();
    makePanel("pids"+ident,'<div style="text-align:left;" id="cid'+ident+'"></div>',name+":"+searchtext);
    XMLHttpGet2(url,'cid'+ident,ident);
   //element.value="";//document.getElementById('searchtext').value="";

}
}
function noenter() {
  return !(window.event && window.event.keyCode == 13); }

function addChineseToneHandler(e,element){
e = e || window.event;
if (e.keyCode) code = e.keyCode;
else if (e.which) code = e.which;
if(code!=undefined && e.ctrlKey){
var input = element;
if(input){
                 var start = input.value.length-1;
                 var character =input.value.substring(start);
                 var keycode =parseInt( String.fromCharCode(code));
                 if(keycode>0 && keycode<5){
                 
                 var tone="";
                 if (keycode==1){
                 var first=[];
                 first["A"]="Ā";
                 first["a"]="ā";
                 first["E"]="Ē";
                 first["e"]="ē";
                 first["i"]="ī";
                 first["O"]="Ō";
                 first["o"]="ō";
                 first["u"]="ū";
                 first["ü"]="ǖ";
                 tone = first[character];
                // alert(tone);
                 }
                 if (keycode==2){
                 var first=[];
                 first["A"]="Á";
                 first["a"]="á";
                 first["E"]="É";
                 first["e"]="é";
                 first["i"]="í";
                 first["O"]="Ó";
                 first["o"]="ó";
                 first["u"]="ú";
                 first["ü"]="ŭ";
                 tone = first[character];
                 }
                 if (keycode==3){
                 var first=[];
                 first["A"]="Ǎ";
                 first["a"]="ǎ";
                 first["E"]="Ě";
                 first["e"]="ĕ";
                 first["i"]="ĭ";
                 first["O"]="Ŏ";
                 first["o"]="ŏ";
                 first["u"]="ŭ";
                 first["ü"]="ǚ";
                 tone = first[character];      
                 }
                 if (keycode==4){
                 var first=[];
                 first["A"]="À";
                 first["a"]="à";
                 first["E"]="È";
                 first["e"]="è";
                 first["i"]="ì";
                 first["O"]="Ò";
                 first["o"]="ò";
                 first["u"]="ù";
                 first["ü"]="ǜ";
                 tone = first[character];      
                 }
                 
                 if(tone!=undefined && tone!="")input.value=input.value.substring(0,input.value.length-1)+tone;
                 }
                 
}
}
}

function TexthandlerEnter(element,e,url,name){
         if ((e.which && e.which == 13) || (e.keyCode && e.keyCode == 13)) {   
           search(element.searchtext(),url,name)
            //return false;
            return element.value="";
            
         } else {
          
             return true;  
         }  
}
function TexthandlerEnterEvent(element,e,onEnterFun){
         if ((e.which && e.which == 13) || (e.keyCode && e.keyCode == 13)) {   
            if(typeof(onEnterFun)=="function")return onEnterFun();
            
         } else {
          
             return true;  
         }
         return false
}
function saveObjectInline(save_uri,formid,parentident,onCompleteFun){
 
   
  YAHOO.namespace("charda.container");
  if (!YAHOO.charda.container.saving) {

            // Initialize the temporary Panel to display while waiting for external content to load

            YAHOO.charda.container.saving = 
                    new YAHOO.widget.Panel("saving",  
                                                    { width: "240px", 
                                                      fixedcenter: true, 
                                                      close: false, 
                                                      draggable: false, 
                                                      zindex:4,
                                                      modal: true,
                                                      visible: false
                                                    } 
                                                );
    
            YAHOO.charda.container.saving.setHeader("save, please wait...");
            YAHOO.charda.container.saving.setBody("<img src=\"http://l.yimg.com/a/i/us/per/gr/gp/rel_interstitial_loading.gif\"/>");
            YAHOO.charda.container.saving.render(document.body);

        }


  
YAHOO.charda.container.saving.show();

 $.ajax({
   type: "POST",
   url: save_uri,
   data: $("#"+formid).serialize() ,
   success: function(oResponse){
   YAHOO.charda.container.saving.hide();
                        var oResults = YAHOO.lang.JSON.parse(oResponse);
			if((oResults) && (oResults.length)) {
			
		        if(YAHOO.lang.isArray(oResults)) {
                        if(oResults[0]==true){
                        /*alert(parentident);          
                        openObject(parentident);
                                  var up = document.getElementById("update"+parentident);
                                  if(up){
                                          var funcCall = up.value + "('" + parentident + "');";
                                          var ret =eval(funcCall);
                                          
                                  }
                                                                   
                        */
                        var x=oResults[1];
                        
                        if(typeof(onCompleteFun)=="function")onCompleteFun(x);
                        }else{
                                  alert("post error:"+oResults[1]);
                        }
                        }}},
  error: function(oResponse) {
		YAHOO.charda.container.saving.hide();
		 alert("post error:"+oResponse);
                 
		}

 });
 
}
function editObject(val,panelname){
var z = function(){load_content(val);}                 
makePanel("pids"+val,'<div style="text-align:left;" id="cid'+val+'"></div>',panelname,z);
XMLHttpGet2(baseurl+val,'cid'+val);
}

function deleteObject(val,ObjectName){
  var answer = confirm ("Delete?")
if (answer)
  $.post(baseurl+val,function(data){
  var oResults = eval( "(" + data + ")" );
  if((oResults) && (oResults.length)) {
    if(oResults[0]==true){
     if(oResults.lenght>1){
     ident =oResults[1];
     openObject(ident);
     }
    }else{
      alert(oResults[0]);
    }
  }
});
else{
}
}

function clearStatesOptions(HtmlElement) {
	var oSelect = document.getElementById(HtmlElement);
	while( oSelect.options.length>0) {
		oSelect.remove(0);
	}
}

function literaturereference(literature_id,notice) {
    this.literature_id       = literature_id;
    this.notice = notice;
};
function charracteristicreference(characteristic_id,value,notice) {
    this.characteristic_id = characteristic_id;
    this.value = value;
    this.notice = notice;
};


function loadearthmapping(id,name){
                 if(id!=0)loaduseraction('show_earthmapping/'+id,name);
}
function loadmapping(id,name){
                 if(id!=0)loaduseraction('show_mapping/'+id,name);
}
function loadQuickearthmapping(data,name){
      if(!YAHOO.lang.isArray(data))data=[data];
  var val='show_temp_earthmapping'
  var x = makePanel("pids"+val,'<div style="text-align:left;" id="cid'+val+'"></div>',name,true,null)
   if(x!=null){
    XMLHttpGet_Panel(val,x,0,name,data);
  }

		 
}
function loadQuickmapping(data,name){
  if(!YAHOO.lang.isArray(data))data=[data];
   var val='show_temp_mapping'
   var x = makePanel("pids"+val,'<div style="text-align:left;" id="cid'+val+'"></div>',name,true,null)
   if(x!=null){
    XMLHttpGet_Panel(val,x,0,name,data);
  } 

}

var globalVars=[];
function registerVar(Name,Var){
   globalVars[Name]=Var;
}
function unregisterVar(Name){
   if(globalVars[Name]!=undefined){
   var o= globalVars[Name];
   globalVars[Name]=null;
   if (YAHOO.lang.isArray(o)){
                // alert(Name);
              for(var i=0;i<o.length;i++){
             
              }   
   }
   if(o['menu']!= undefined){
   
     var x = o['menu'];
     o['menu']=null;
     z = globalVars[x.id];
     if(z){
                 
      globalVars[x.id]=null;
      x=null;
      //alert("unreg"+z)
      z.destroy();
      z=null;
      }
   o=null;
   
  }
}
}
/*
function newTree(treeident,baseurl,objident){
var newtree = new chardatree(treeident,baseurl,"0000",1);
   registerVar(objident,newtree);
   return newtree;
   }*/
Array.prototype.in_array = function(needle) {
for(var i=0; i < this.length; i++) if(this[i] === needle) return true;
return false;
}

function showNoticeArea(litid,noticearea){
  	var dest = document.getElementById(noticearea);
if(dest == null) return;

	for (var i=0;i<dest.childNodes.length;i++){
	  dest.childNodes.item(i).style.display = "none";
	  if(dest.childNodes.item(i).id == 'noticearea'+litid){
	    dest.childNodes.item(i).style.display = "inline";
	  }
	}
}

function addAjaxToContainer(url,destID,ident,onCompleteFun){
      if(url== undefined || url == null || url=="0" || url=="") return;
     XMLHttpGet2(baseurl+url,destID,ident,true,false,onCompleteFun);

}
function addAjaxToContainer2(url,destid,ident,onCompleteFun){
         addAjaxToContainer(url+ident,destid,ident,onCompleteFun);        
}


function JsonHttpPOST(url,jsondata,onCompleteFun,ident,reload,controlData){
      
      YAHOO.namespace("charda.container");
  if (!YAHOO.charda.container.waitUploading) {

            // Initialize the temporary Panel to display while waiting for external content to load

            YAHOO.charda.container.waitUploading = 
                    new YAHOO.widget.Panel("waitUploading",  
                                                    { width: "240px", 
                                                      fixedcenter: true, 
                                                      close: false, 
                                                      draggable: false, 
                                                      zindex:4,
                                                      modal: true,
                                                      visible: false
                                                    } 
                                                );
    
            YAHOO.charda.container.waitUploading.setHeader("uploading, please wait...");
            YAHOO.charda.container.waitUploading.setBody("<img src=\"http://l.yimg.com/a/i/us/per/gr/gp/rel_interstitial_loading.gif\"/>");
            YAHOO.charda.container.waitUploading.render(document.body);

        }


  
YAHOO.charda.container.waitUploading.show();
var sUrl=url;
$.ajax({
   type: "POST",
   url: url,
   data: {'objectids':jsondata,'control':controlData },
   success: function(oResponse){
  YAHOO.charda.container.waitUploading.hide();
                        var oResults = YAHOO.lang.JSON.parse(oResponse);
			if((oResults) && (oResults.length)) {
			
		        if(YAHOO.lang.isArray(oResults)) {
                        if(oResults[0]==true){
                        if (typeof(onCompleteFun)== "function"){
                                  onCompleteFun();
                        }else{
                                //  alert(typeof(onCompleteFun));
                        }
                        if(reload)  openObject(ident)
                        }else{
                                  //alert("post error:"+oResults[1]);
                        }
                        }}},
  error: function(oResponse) {
		YAHOO.charda.container.waitUploading.hide();
		 alert("post error:"+oResponse);
                 
		}

 });

}




function actionOnObjectsTree(url,chardatree,fun,ident,reload,confirmation) {
	//var src = document.getElementById(sourceID);
	 var  ret= [];
	 
 	var hiLit = chardatree.tree.getNodesByProperty('highlightState',1);
	if (YAHOO.lang.isNull(hiLit)) {
	
	} else {
 		for (var i = 0; i < hiLit.length; i++) {
                 ret.push(hiLit[i].data.id);
		 }
        JsonHttpPOST(url+ident,YAHOO.lang.JSON.stringify(ret),fun,ident,reload,"");
    
}
}
	
	
function actionOnObjects(url,sourceID,fun,ident,reload,confirmation,controlData) {
var answer = true;                 
if (confirmation != undefined && confirmation =="1"){
 answer = confirm ("Delete?")

}
if (answer){
 var src = document.getElementById(sourceID);
 if(src==undefined || src==null) {
  //alert("K");
  return;
} 
 var  ret= [];
 	for(var count=0; count < src.options.length; count++) {
	   
       if(src.options[count].selected == true) {
                    var option = src.options[count];
				try {
                       			  ret.push(option.id);
				 }catch(error) {
				  }
	}
        }
        YAHOO.lang.JSON.useNativeStringify = false;
	//alert("Kss");
        JsonHttpPOST(url+ident,YAHOO.lang.JSON.stringify(ret),fun,ident,reload,controlData);
 
}
}




function clearhtmlelements(htmlelements){
    for(var count=0; count < htmlelements.length; count++) {
    var elem = htmlelements[count];
  
    //alert(elem);
    var o =document.getElementById(elem);
    if(o!=null) o.innerHTML="";
  }
}



function optionclick(e){
var targ;
if (!e) e = window.event;
if (e.target) targ = e.target;
else if (e.srcElement) targ = e.srcElement;
if (targ.nodeType == 3) targ = targ.parentNode;

if(targ!=null)targ.selected=!targ.selected;
}
function loadDropDown(url,HtmlElement,checkbox,filter,useID,addNull,sortfunc,adddrag,dropfunc,multi){
  var sUrl=baseurl+url;
  var  selectbox = document.getElementById(HtmlElement);
   if(selectbox!=null){
    //alert(multi);
   if(multi===undefined || multi==0) clearStatesOptions(HtmlElement);
  
	var callback = {	
		success: function(oResponse) {		
			var oResults = YAHOO.lang.JSON.parse(oResponse.responseText);
			if((oResults) && (oResults.length)) {
				//Result is an array if more than one result, string otherwise
				if(YAHOO.lang.isArray(oResults)) {
                                  var hlp=selectbox.options.length;
                                 
                                 if (typeof(sortfunc) == "function") {
                                
                                  oResults.sort(sortfunc);
                                 }
                                 if(addNull!=undefined && addNull==1) {
                                                selectbox.options[0] = new Option();
                                                selectbox.options[0].innerHTML = "";
						selectbox.options[0].value = 0;
                                                selectbox.options[0].id = 0;
                                                hlp=hlp+1;
                                 }
					for (var i=0, j=oResults.length; i<j; i++) {
						if((YAHOO.lang.isArray(filter) &&!filter.in_array(oResults[i].id )|| (!YAHOO.lang.isArray(filter) ))){
                                               
                                                
                                                var o=new Option();
                                               // o.setAttribute("selected","");  
                                                selectbox.options[i+hlp] =o;
                                               
                                             //   o.appendChild(hand);
                                             //   o.appendChild(text);
                                                o.id=oResults[i].id;
                                               
                                               o.innerHTML = oResults[i].text;
                                               // o.appendChild(ot);
                                               // o.appendChild(ddh);
						 o.value =oResults[i].id;
                                                 if(adddrag!=undefined && adddrag==1){
                                                      var k =  new YAHOO.util.DDProxy(o);
                                                     // k.dragOnly=true;
                                                       k.isTarget=false;
                                                       k.useShim =true;
                                                       //o.click=optionclick;
                                                       YAHOO.util.Event.addListener(o, "click",optionclick ); 
                                                       /*k.onMouseDown=function(){
                                                                    var b = document.getElementById(k.getEL().id);
                                                                    alert(b);
                                                                    if (b.getAttribute("selected")=="selected"){
                                                                    b.removeAttribute("selected");                 
                                                                    }else{
                                                                    b.setAttribute("selected","selected");                 
                                                                    }
                                                                    return true;}
                                                     */           
                                                    //  k.onDrag=function(){alert("KJIUeeeeeees");return true;}
                                                      if (typeof(dropfunc) == "function")   k.onDragDrop = dropfunc;
                                                  }
                                                if(useID!=undefined && useID==1)o.value = oResults[i].secid;
                                                o.id = oResults[i].id;
                                                if(oResults[i].colored){
                                                o.setAttribute("class","colored_dropdown");
                                                }
                                                  
                                        
                                                }
						
					}
				} else {					
					selectbox.options[hlp] = new Option(oResults.text,oResults.id);
				}
			}
								
		
		},
	
		failure: function(oResponse) {
			//oResponse.argument.fnLoadComplete();
			alert("error:"+oResponse);
		},
		
	
		argument: {
			 
		},
		
		//timeout -- if more than 7 seconds go by, we'll abort
		//the transaction and assume there are no children:
		timeout: 7000
	};
	
	//With our callback object ready, it's now time to 
	//make our XHR call using Connection Manager's
	//asyncRequest method:
	YAHOO.util.Connect.asyncRequest('get', sUrl, callback);
    }
  
  
   
  }
 
function sortList(elem) {
var selectBox = document.getElementById(elem);
selectArray = new Array();

for (i = 1; i < selectBox.length; i++) {
selectArray[i] = new Array();
selectArray[i][0] = selectBox.options[i].value.toLowerCase();
selectArray[i][1] = selectBox.options[i].text;

}

selectArray.sort();

for (j = 0; j < selectBox.length - 1; j++) {
selectBox.options[j+1].text = selectArray[j][1];
selectBox.options[j+1].value = selectArray[j][0];
}
}
  
function checkboxToHidden(checkbox,hidden){
if(checkbox.checked ) {
hidden.value = "1";
}else{
hidden.value="0";                 
}
}
function validateNumeric(e,field){
  
          var check = true;
          var value = field.value; //get characters
          //check that all characters are digits, ., -, or ""
          for(var i=0;i < field.value.length; ++i)
          {
               var new_key = value.charAt(i); //cycle through characters
               if(((new_key < "0") || (new_key > "9")) && !(new_key == "") && !(new_key ==".") && !(new_key ==",") && !(new_key =="-"))
               {
                    check = false;
                    break;
               }
          }
          //apply appropriate colour based on value
          if(!check)
          {
               field.style.backgroundColor = "red";
          }
          else
          {
               field.style.backgroundColor = "white";
          }
     } 

function toggleCollMenuDisplay() {
  var div = document.getElementById('colmenu');
  div.style.display = (div.style.display=="block" ? "none" : "block");
  var div3 = document.getElementById('toggleCollMenuViewMore');
  div3.style.display = (div.style.display=="block" ? "none" : "inline");
  var div4 = document.getElementById('toggleCollMenuViewLess');
  div4.style.display = (div.style.display=="block" ? "inline" : "none");
}


 

function markall(div,x){

//var div = x.parentNode;

var elms = div.getElementsByTagName("*");
 for(var i = 0, maxI = elms.length; i < maxI; ++i) {
var elm = elms[i];
    if(elm.type=="checkbox"){
       if ("AC" == (elm.name).substr(0, 2)) {
	     elm.checked = x.checked;
       }
    }
}
}

function startUpload(htmlele){
 $('#'+htmlele).trigger('click');
}

initUpload = function (htmlele,Queue,ident,obj) {
$('#'+htmlele).uploadify({
'uploader'  : '/assets/js/jquery_upload/uploadify.swf',
'script'    : 'add_document/'+ident,
'cancelImg' : '/assets/js/jquery_upload/cancel.png',
'folder'    : '/uploads',
'queueID'        : Queue,
'auto'           : true,
'displayData'    : 'speed',
'width'          : 50,
'height':18,
'buttonImg'      : '/assets/images/upload.png',
'wmode'          : 'opaque', // The wmode of the flash file

'scriptAccess':'always',
 onComplete: function(a, b, c, d, e){
 alert(d);
 obj.reload(); 
},
onError: function(a, b, c, d){
   //            alert(d.info+"--"+d.status);
},
'simUploadLimit':5,
'multi'          : true
});
 }
 
function makeCarousel (htmlelement) {
                 
             var carousel    = new YAHOO.widget.Carousel(htmlelement, {
                        'isCircular': true,
                        'numVisible': 1,
                        'numItems': 4,
                        'scrollInc':3,
                        'navMargin':40

                });

            carousel.render(); // get ready for rendering the widget
            carousel.show();   // display the widget
            var c=[];
            c=carousel.getItems();
         //   alert(c.lenght);
             return carousel;
      }
 


 






google.load('earth', '1',{'callback':function(){googleEarthInit=true;}});
var googleEarthInit=false;

  
      
function buildmenu (htmlelement) {

                  
if(globalVars[htmlelement]!=undefined && globalVars[htmlelement]!=null){
                 var o = globalVars[htmlelement];
                 globalVars[htmlelement]=null;
                 o.destroy();
                // alert("UM"+htmlelement);
}
                   var oMenuBar = new YAHOO.widget.MenuBar(htmlelement, { 
                                                            autosubmenudisplay: true, 
                                                            hidedelay: 1070, 
                                                            lazyload: false });
                
                 globalVars[htmlelement]=oMenuBar;                
                 oMenuBar.render();
                 oMenuBar.show();
return oMenuBar;
                 
}

function buildmenuWithoutRegister (htmlelement) {

                  
                   var oMenuBar = new YAHOO.widget.MenuBar(htmlelement, { 
                                                            autosubmenudisplay: true, 
                                                            hidedelay: 0, 
                                                            lazyload: false });
                
                 oMenuBar.render();
                 oMenuBar.show();
return oMenuBar;
                 
}

function buildaccordionmenu(htmlelement){
 var accordion = new YAHOO.widget.AccordionView(htmlelement, {collapsible: true, expandable:true, width:'auto', animationSpeed: '0.3', animate: true, effect: YAHOO.util.Easing.easeBothStrong}  )   ;
 return accordion;
                                  
}

builsearchfield = function(htmlelement){
var searchField = document.getElementById(htmlelement);
if(searchField!=undefined &&searchField!=null){
searchField.setAttribute("class","searchinactiv");

searchField.onfocus = function () {
	if(searchField.value == searchField.defaultValue) {
		searchField.value = '';
                 searchField.setAttribute("class","searchactiv");
	}
}

searchField.onblur = function () {
	if(searchField.value == '') {
		searchField.value = searchField.defaultValue;
                 searchField.setAttribute("class","searchinactiv");
	}
}
searchField.searchtext = function(){
                 if(searchField.value!=searchField.defaultValue){
                 return searchField.value;
                 }
                 return "";
}
return searchField;
}
return null;
}

function registerVarAtPanel(name,val,ident){
     if(globalVars[ident]!=undefined && globalVars[ident]!=null){
     var o = globalVars[ident];
     o[name]=val;
     }
            
}


  // regular expression defining valid input format
  var dms_re = /(\d{1,3})\D+([0-5][0-9]|[0-9])\D+([0-5][0-9]|[0-9])\D+ ?(e(ast)?$|w(est)?$|n(orth)?$|s(outh)?$)/i
  var lon_re = /[EW]/i
  var lat_re = /[NS]/i
  var neg_re = /[WS]/i
  var precision = 2;  // maximum numbers after decimal point
  var ten_to_n = Math.pow(10,precision);

  // converts coordinate in degrees, minutes, seconds (with direction) to decimal degrees
  function convertDMStoDec(d,m,s,direction,output)
  {
    if(document.getElementById(d)&&document.getElementById(m) &&document.getElementById(s) &&document.getElementById(direction)  &&document.getElementById(output)){                            
 
    var deg =parseInt( document.getElementById(d).value);//parseInt(RegExp.$1, 10);
    var min =parseInt( document.getElementById(m).value);//parseInt(RegExp.$2, 10);
    var sec =parseInt( document.getElementById(s).value);//parseInt(RegExp.$3, 10);
    var dir = document.getElementById(direction).value;//RegExp.$4;
    var dec = deg + min / 60.0 + sec / 3600.00;
    dec = Math.round(dec * ten_to_n)/ten_to_n;
    if (dir.substr(0,1).match(neg_re))
    {
      dec = -dec;
    }
    document.getElementById(output).value =dec;// + " (" + lon_or_lat + ")";
    }else{
              
    }
  return true;
  }

function str_replace(search, replace, subject) {
    return subject.split(search).join(replace);
}

function dec_to_dms(decimal,x,d,m,s,direction)
{
if(document.getElementById(d)&&document.getElementById(m) &&document.getElementById(s) &&document.getElementById(direction)  &&document.getElementById(decimal)){
        var tmpdec =document.getElementById(decimal).value;
               tmpdec = str_replace(',','.',tmpdec);  
	var dec =parseFloat(tmpdec);
        if(isNaN(dec))dec=0;
	if(x=='Lt') {
		document.getElementById(direction).selectedIndex = (dec>=0)?0:1;
	} else if(x=='Lg') {
		document.getElementById(direction).selectedIndex = (dec>=0)?0:1;
	}
	if(dec<0) { dec=Math.abs(dec); }

	var n = dec+'';
	var tmp =[];
         document.getElementById(d).value=0
         document.getElementById(m).value=0
         document.getElementById(s).value=0
         
        tmp = n.split(".");  if(tmp[0]==undefined) { tmp[0]='0' }
         
	document.getElementById(d).value = tmp[0]; // n
        if(tmp[1]!=undefined) {
	n = parseFloat("."+tmp[1])*60+''; // min dec
	tmp = n.split(".");
	document.getElementById(m).value = tmp[0]; // min
	n = parseFloat("."+tmp[1])*60+''; // sec dec
        if(!isNaN(n)){
	tmp = n.split(".");
        if(tmp[0]==undefined) { tmp[0]='0' }
        
	document.getElementById(s).value = tmp[0]; // sec
        }}
	
}
}

 

  
  // for convenience (may be used later for reverse converter)
  function DMSCoordinate(degrees, minutes, seconds, direction)
  {
  this.degrees = degrees;
  this.minutes = minutes;
  this.seconds = seconds;
  this.direction = direction;
  this.toString = function()
  {
    return this.degrees + "\u00b0 " + this.minutes + "' " + this.seconds + '" ' + this.direction;
  }
  }

  
 
  var waitFiledownload=function(state){
	
YAHOO.namespace("charda.container");
if(state){
   if (!YAHOO.charda.container.buildfilemessage) {
            // Initialize the temporary Panel to display while waiting for external content to load
            YAHOO.charda.container.buildfilemessage = 
                    new YAHOO.widget.Panel("buildfilemessage",  
                                                    { width: "240px", 
                                                      fixedcenter: true, 
                                                      close: false, 
                                                      draggable: false, 
                                                      zindex:4,
                                                      modal: true,
                                                      visible: false
                                                    } 
                                                );
    
            YAHOO.charda.container.buildfilemessage.setHeader("building file, please wait...");
            YAHOO.charda.container.buildfilemessage.setBody("<img src=\"http://l.yimg.com/a/i/us/per/gr/gp/rel_interstitial_loading.gif\"/>");
            YAHOO.charda.container.buildfilemessage.render(document.body);
        }
  
YAHOO.charda.container.buildfilemessage.show();
}else{
	if (YAHOO.charda.container.buildfilemessage)YAHOO.charda.container.buildfilemessage.hide();
}
}



var buildFileAndDownload=function(url,datasource){
	
		
		  waitFiledownload(true);
                  YAHOO.lang.JSON.useNativeStringify = false;
                  data = YAHOO.lang.JSON.stringify(datasource);
                  $.ajax({
                  type: "POST",
                  url: url,
                  data: {'objectids':data},
                  success: function(oResponse){
			if(oResponse){
					var file = YAHOO.lang.JSON.parse(oResponse);
					var url ="getTMPFile/"+file;
                                        downloadfile(url);
			}
				       waitFiledownload(false);
				       return;
				       
                                       
				     
                                       },
                 error: function(oResponse) {
                                waitFiledownload(false);
                                
                               }
               
                });
 
}

var buildLiteratureFileAndDownload=function(url){
	
		
		  waitFiledownload(true);
                  YAHOO.lang.JSON.useNativeStringify = false;
                  data = YAHOO.lang.JSON.stringify(datasource);
                  $.ajax({
                  type: "POST",
                  url: url,
                  data: {'objectids':data},
                  success: function(oResponse){
			if(oResponse){
					var file = YAHOO.lang.JSON.parse(oResponse);
					var url ="getTMPFile/"+file;
                                        downloadfile(url);
			}
				       waitFiledownload(false);
				       return;
				       
                                       
				     
                                       },
                 error: function(oResponse) {
                                waitFiledownload(false);
                                
                               }
               
                });
 
}  
  
