    /** 
    * check to see if the JVM supports the file uploader... 
    */  
    function isValidJVM()  
    {  
        var checker = checkJavaSupport();  
        return (checker.version != null &&  
        checker.version.substr(0,3) == "1.5" ||
        checker.version.substr(0,3) == "1.6" )  
    }  

    function checkJavaSupport () {
      var result = { 
        javaEnabled: false,
        version: ''
      };
      if (typeof navigator != 'undefined' && typeof navigator.javaEnabled != 'undefined') 
        result.javaEnabled = navigator.javaEnabled();
      else
        result.javaEnabled = 'unknown';
      if (navigator.javaEnabled() && typeof java != 'undefined')
        result.version = java.lang.System.getProperty("java.version");
      return result;
    }


    /** 
    * check to see if the file has been uploaded... 
    */  
    
    function test()
    {
        var uploader = document.getElementById("uploader");  
        alert( document.uploader.fileNameToUpload() );
        
    }
    function checkFileUploaded()  
    {  
        var uploader = document.getElementById("uploader");  
        if (!uploader.hasUploaded())  
            {  
            alert("Please upload the file before submitting the form");  
            return false;  
        }  
        else  
        {  
            return true;  
        }  
    }  
    
    
    /* Start of the multihandle Object...*/
    function MultiHandle(owner){
      var my_handlers = new Array();
      var my_owner = owner;
      this.append = function(handler){
        my_handlers[my_handlers.length] = handler;
      }
      this.fire = function(evt){
        var i;
        for(i = 0; i < my_handlers.length; i++){
          my_owner.tempspace = my_handlers[i];
          my_owner.tempspace(evt);
        }
      }
    }
    /* End of the multihandle object*/

    
    
    // .. include the MultiHandle Object of course

    function multihandle_append(object,event,func){
      if(typeof(MultiHandle) != "undefined"){
        var mup_handler = object["mh_"+event];
        if(!mup_handler){
          mup_handler = new MultiHandle(object);
          object["mh_"+event] = mup_handler;
          object[event] = function(evt){this["mh_"+event].fire(evt);};
        }
        mup_handler.append(func);
      }else{
        object.onsubmit = func;
      }
    }

    
    
