Ignore:
Timestamp:
08/16/07 08:06:05 (17 years ago)
Author:
niltonneto
Message:

Nova versão do Instant Messenger.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/instant_messenger/js/XMLTools.js

    r27 r55  
    11var XMLTools = { 
    22   "__DEBUG__" : false, 
    3    "__DEFAULT_URI__" : im_path + 'controller.php?action=',  
     3   "__DEFAULT_URI__" : im_path + 'controller.php?action=', 
    44   "__HTTP__" : null, 
    55   "__MODE__" : 'X', 
     6   "__RETURN_MODE_DEFAULT__" : 'JSON', 
     7   "__RETURN_MODE__" : false, 
    68   "__THREADS__" : [], 
    79   "http" : function() 
     
    6668                                    __HTTP__.responseXML : 
    6769                                    __HTTP__.responseText; 
    68        
     70 
    6971                        var handler = __this.__THREADS__[__pTarget]; 
    7072                        delete __this.__THREADS__[__pTarget]; 
     
    8789      { 
    8890         var target = this.__DEFAULT_URI__ + pTarget; 
     91         if ( this.__RETURN_MODE__ ) 
     92         { 
     93            target += '&returnMode=' + this.__RETURN_MODE__; 
     94            this.__RETURN_MODE__ = false; 
     95         } 
     96         else 
     97            target += '&returnMode=' + this.__RETURN_MODE_DEFAULT__; 
    8998 
    9099         if ( pMethod == 'POST' ) 
     
    96105            __HTTP__.setRequestHeader('Pragma', 'no-cache'); 
    97106            __HTTP__.onreadystatechange = __handler; 
    98             __HTTP__.send(pData); 
     107            pData = ( pData ) ? pData : null ; 
    99108         } 
    100109         else 
     
    102111            __HTTP__.open("GET", target, true); 
    103112            __HTTP__.onreadystatechange = __handler; 
    104             __HTTP__.send(null); 
     113            pData = null; 
    105114         } 
     115         __HTTP__.send(pData); 
    106116      } 
    107117      catch(e) 
     
    113123   "transform" : function(pXML, pXSL) 
    114124   { 
    115         var fragment = null; 
    116         if ( window.XSLTProcessor ) 
    117         { 
    118                 var xslProc = new XSLTProcessor(); 
    119                 xslProc.importStylesheet(pXSL); 
    120                 fragment = xslProc.transformToFragment(pXML, document); 
    121                  
    122                 // para retornar valor igual ao ie. 
    123                 var aux = document.createElement("div"); 
    124                 aux.appendChild(fragment); 
    125                 fragment = aux.innerHTML; 
    126         } 
    127         else 
    128         { 
    129                 var xslTemplate = new ActiveXObject("Msxml2.XSLTemplate"); 
    130                 xslTemplate.stylesheet = pXSL; 
    131     
    132                 var myXslProc = xslTemplate.createProcessor(); 
    133                 myXslProc.input = pXML; 
    134     
    135                 myXslProc.transform(); 
    136                 fragment = myXslProc.output; 
    137                  
    138         } 
    139         return fragment; 
    140    } 
     125                try 
     126                { 
     127                        var fragment = null; 
     128                        if ( window.XSLTProcessor ) 
     129                        { 
     130                                var xslProc = new XSLTProcessor(); 
     131                                xslProc.importStylesheet(pXSL); 
     132                                fragment = xslProc.transformToFragment(pXML, document); 
     133 
     134                                // para retornar valor igual ao ie. 
     135                                var aux = document.createElement("div"); 
     136                                aux.appendChild(fragment); 
     137                                fragment = aux.innerHTML; 
     138                        } 
     139                        else 
     140                        { 
     141                                var xslTemplate = new ActiveXObject("MSXML2.XSLTemplate"); 
     142                                xslTemplate.stylesheet = pXSL; 
     143 
     144                                var myXslProc = xslTemplate.createProcessor(); 
     145                                myXslProc.input = pXML; 
     146 
     147                                myXslProc.transform(); 
     148                                fragment = myXslProc.output; 
     149                        } 
     150                        return fragment; 
     151                } 
     152                catch(e) 
     153                { 
     154                        alert("transform\n\n" + e + "\n\n" + e.description); 
     155                } 
     156   }, 
     157        "create" : function() 
     158        { 
     159                try 
     160                { 
     161                        var a = false; 
     162                        if ( document.implementation.createDocument ) 
     163                                a = document.implementation.createDocument("", "", null); 
     164                        else if ( ActiveXObject ) 
     165                                a = new ActiveXObject("Msxml2.DOMDocument"); 
     166 
     167                        with ( a ) 
     168                                appendChild(createProcessingInstruction("xml", "version='1.0'")); 
     169 
     170                        return a; 
     171                } 
     172                catch(e) 
     173                { 
     174                        alert("create\n\n" + e + "\n\n" + e.description); 
     175                } 
     176        } 
    141177} 
Note: See TracChangeset for help on using the changeset viewer.