var mutils = new MiscUtils();

EventUtil.addEventHandler(window, 'load', onWindowLoad);

///////////////////////////////////////////////////////////////
// FUNCTIONS
///////////////////////////////////////////////////////////////
//-------------------------------------------------------
function onWindowLoad() {
  if (document.getElementById('thisIsTheDownloadPage')) {
    downloadPage.init( );
  }
}

//-------------------------------------------------------
function openWindow(url){
  window.open(url, 'newWindow','width=800,height=450,location=yes,menubar=yes,resizable=yes,scrollbars=yes,toolbar=no');
}


////////////////////////////////////////////////////////////////////////////////////
// CLASS/OBJECT FOR AJAX LOG DOWNLOAD CODE - THIS IS FOR THE DOWNLOAD PAGE
////////////////////////////////////////////////////////////////////////////////////
var downloadPage = {
  myConn:      false,
  body:        false,
  downloadLinks:     false,
  init:        function( ){
    if( !document.getElementById ||
        !document.getElementsByTagName ) return;
    downloadPage.myConn = new XHConn();
    if( !downloadPage.myConn ) return;
    downloadPage.body    = document.getElementsByTagName( 'body' )[0];
//    downloadPage.downloadLinks = mutils.getElementsByClassName( 'downloadlink' );
    downloadPage.downloadLinks = document.links;
    for (var i=0; i < downloadPage.downloadLinks.length; i++) {
      downloadPage.addEvent( downloadPage.downloadLinks[i],
                          'click',
                          function(evt){
                            // disable click event
                            if (typeof evt.preventDefault!= 'undefined') {
                              evt.preventDefault(); // W3C
                            } else {
                              evt.returnValue = false; // IE
                            } 

                            // log download and forward user to the url disabled link pointed at
                            if (evt.srcElement) { // IE
                              var url = evt.srcElement;
                            } else { // everyone else
                              var url = evt.target;
                            }
                            window.location.href = url; 
                            downloadPage.logDownload( url );
                            return false;
                          } );
    }
  },
  logDownload:  function( url ){
    var fnWhenDone = function(oXML) {
//      downloadPage.target.innerHTML = oXML.responseText;
    };
    downloadPage.myConn.connect("/imapp/download/index.php", "POST", "logDownload=true&url="+url, fnWhenDone);
  },
  addEvent: function( obj, type, fn ){  // the add event function
    if (obj.addEventListener) obj.addEventListener( type, fn, false );
    else if (obj.attachEvent) {
      obj["e"+type+fn] = fn;
      obj[type+fn] = function() {
        obj["e"+type+fn]( window.event );
      };
      obj.attachEvent( "on"+type, obj[type+fn] );
    }
  }
};




