// JavaScript Document

// MOOTOOLS PATCH :: START
// Need to override this Mootools function (Request.HTML) to give us the correct HTML data in Safari     

        Request.HTML.implement({
     
            processHTML: function(text){
                var match = text.match(/<body[^>]*>([\s\S]*?)<\/body>/i);
                text = (match) ? match[1] : text;
               
               var container = new Element('div');
              
              return $try(function(){
                   var root = '<root>' + text + '</root>', doc;
                   if (Browser.Engine.trident){
                      doc = new ActiveXObject('Microsoft.XMLDOM');
                      doc.async = false;
                    doc.loadXML(root);
                 } else {
                    doc = new DOMParser().parseFromString(root, 'text/html'); // Updated line allows HTML entities in loaded document (like &amp;)
                 }
                root = doc.getElementsByTagName('root')[0];
              for (var i = 0, k = root.childNodes.length; i < k; i++){
                     var child = Element.clone(root.childNodes[i], true, true);
                     if (child) container.grab(child);
                 }
                 return container;
             }) || container.set('html', text);
         }
    
     });
// MOOTOOLS PATCH :: END