/*
function loadPanel(loader,toolbar,callback,uri,data,submit,command){

         if(xajax.$(callback).innerHTML==""){

            refreshPanel(loader,toolbar,callback,uri,data,submit,command);

         }else if(xajax.$(callback).style.display=='none'){

            openPanel(toolbar,callback);

         }else {

            closePanel(toolbar,callback);

         }

}

function refreshPanel(loader,toolbar,callback,uri,data,submit,command){

         xajax.config.loader=loader;

         if(command=='xajax_ez_publish'){

            xajax_ez_forward(callback,uri,data,submit);

         }else if(command=='xajax_ez_discard'){

            xajax_ez_discard(callback,uri,data,submit);

         }else{

            xajax_ez_forward(callback,uri,data,submit);

         }

         openPanel(toolbar,callback);

}

function closePanel(toolbar,callback){

         xajax.$(callback).style.display = "none";

         xajax.$(toolbar).getElementsByTagName('a')["collapse"].innerHTML = "+";

}

function openPanel(toolbar,callback){

         xajax.$(callback).style.display = "block";

         xajax.$(toolbar).getElementsByTagName('a')["collapse"].innerHTML = "-";

}
*/

function findForm(element){

         var parent = element.parentNode;

         while(parent.tagName.toLowerCase()!="form"){

               parent = parent.parentNode;

         }

         return parent;

}

function upload_file(callbackID,form,iframeID,iframeName,storeButtonName){

         var iframe = createIframe(form,iframeID,iframeName);

         if(typeof iframe.onreadystatechange == 'object' ){ // for IE 

            iframe.onreadystatechange = function(){

                if(iframe.readyState == 'complete' && !iframe.loaded){

                    // IE load twice (bug or feature?)
                    iframe.loaded = true;

                    var xmlDoc = document.frames(iframe.id);

                    if(xmlDoc.window.document.location != iframe.src){

                       form = findForm(iframe);
                       form.target = "";
                       storeButton = document.getElementById(storeButtonName);
                       form.removeChild(storeButton);
                       form.removeChild(iframe);
                       xajax_ez_forward(callbackID,form.action,xajax.getFormValues(form),storeButtonName);
                       /* 
                       var xhtml = this.contentDocument.body.innerHTML;

                       xmlDoc.window.document.location = 'about:blank';

                       form.removeChild(this);

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

                       div.innerHTML = xhtml;

                       var callback = document.getElementById(callbackID);

                       for(var i=0;i<callback.childNodes.length;i++){
                           callback.removeChild(childNodes[i]);
                       }

                       callback.appendChild(div);
                       */

                    }

                }

            }


         }else{
 
             iframe.onload = function(){

                xmlDoc = iframe.contentWindow;

                if(xmlDoc.window.document.location != iframe.src){

                   form = findForm(this);

                   form.target = "";

                   storeButton = document.getElementById(storeButtonName);
 
                   form.removeChild(storeButton);

                   xajax_ez_forward(callbackID,form.action,xajax.getFormValues(form),"StoreButton");
                   /*
                   var xhtml = this.contentDocument.body.innerHTML;
                   xmlDoc.window.document.location = 'about:blank';
                   form.removeChild(this);
                   document.getElementById(callbackID).innerHTML = xhtml;
                   */

                }

             }

         }
 
         var storeButton = document.createElement("input");
         storeButton.name = storeButtonName;
         storeButton.id = storeButtonName;
         storeButton.type = "hidden";
         var xajaxAction = form.action;
         form.action = form.action.replace("/layout/set/xajax/","/");
         form.appendChild(storeButton);
         form.target = iframeID;
         form.submit();
         form.action = xajaxAction;

}

function createIframe(form,id,name){

         var iframe;

         if(document.all && navigator.appName == "Microsoft Internet Explorer") // for IE
         {
            iframe = document.createElement('<iframe id="'+id+'" name="'+name+'">');
         }
         else // for FF
         {
            iframe = document.createElement('iframe');
            iframe.id = id;
            iframe.name = name;
         }

         iframe.width = '0';
         iframe.height = '0';
         iframe.style.display = 'none';
         iframe.scrolling = 'auto';
         iframe.src = 'about:blank';
         form.appendChild(iframe);
         return iframe;

}

function escapeHTML(someText) {
  var div = document.createElement('div');
  var text = document.createTextNode(someText);
  div.appendChild(text);
  return div.innerHTML;
}
