1,22 → 1,82 |
var xmlHttp; |
var servidorBaseUrl = "@server.base.url@"; |
/** |
* |
* AJAX Functions |
* |
* This code is protected under GNU LGPL License |
* |
* @author Jorge Machado |
* @date April 2008 |
**/ |
|
/** |
* Starts XMLHTTP Ajax request |
* |
* @author Jorge Machado |
* @date April 2008 |
* |
* params: |
* @params HTTP GET Parameters for query string |
* @xmlHttpRequest request |
* @id target element |
* @stateChanged target function |
* @innerPhrase to put while waiting for response |
* @navjsp requested jsp |
*/ |
function startRequest(xmlHttpRequest,params,id,stateChanged,innerPhrase,navjsp) |
{ |
if(innerPhrase != '') |
getObjectById(id).innerHTML = innerPhrase; |
if (xmlHttpRequest==null) |
{ |
alert ("Browser does not support HTTP Request"); |
return; |
} |
var url= navjsp; |
if(params != null && params.length > 0) |
{ |
url=url+"?"+ params; |
url=url+"&sid="+Math.random(); |
} |
else |
{ |
url=url+"?sid="+Math.random(); |
} |
xmlHttpRequest.onreadystatechange=stateChanged; |
xmlHttpRequest.open("GET",url,true); |
xmlHttpRequest.send(null); |
} |
|
function getObjectById(objectId) { |
|
/** |
* Return an HTML element given ID |
* |
* @author Jorge Machado |
* @date April 2008 |
* |
* params: |
* @objectId required object |
*/ |
function getObjectById(objectId) |
{ |
// cross-browser function to get an object's style object given its id |
try |
{ |
if(document.getElementById && document.getElementById(objectId)) { |
if(document.getElementById && document.getElementById(objectId)) |
{ |
// W3C DOM |
return document.getElementById(objectId); |
} else if (document.all(objectId)) { |
} |
else if (document.all(objectId)) |
{ |
// MSIE 4 DOM |
return document.all(objectId); |
} else if (document.layers && document.layers[objectId]) { |
} |
else if (document.layers && document.layers[objectId]) |
{ |
// NN 4 DOM.. note: this won't find nested layers |
return document.layers[objectId]; |
} else { |
} |
else |
{ |
return false; |
} |
} |
24,32 → 84,23 |
{ |
return false; |
} |
|
} // getObjectById |
|
function GetXmlHttpObject() |
{ |
var objXMLHttp=null; |
if (window.XMLHttpRequest) |
{ |
objXMLHttp=new XMLHttpRequest(); |
} |
else if (window.ActiveXObject) |
{ |
objXMLHttp=new ActiveXObject("Microsoft.XMLHTTP"); |
} |
return objXMLHttp; |
} |
|
/** |
* Creates a new XmlHttpObject |
* @author Jorge Machado |
* @date April 2008 |
* |
* params: |
* @handler target xmlHttpObject function |
*/ |
function GetXmlHttpObject(handler) |
{ |
|
var objXmlHttp=null; |
|
if (navigator.userAgent.indexOf("Opera")>=0) |
{ |
alert("This example doesn't work in Opera") ; |
return ; |
return objXmlHttp; |
} |
if (navigator.userAgent.indexOf("MSIE")>=0) |
{ |
67,7 → 118,7 |
catch(e) |
{ |
alert("Error. Scripting for ActiveX might be disabled") ; |
return ; |
return objXmlHttp; |
} |
} |
if (navigator.userAgent.indexOf("Mozilla")>=0) |
79,75 → 130,30 |
} |
} |
|
/** |
* |
* Application Methods Examples |
* |
* |
*/ |
/*************************************************** |
TopFlashNews |
***************************************************/ |
var xmlHttpTopFlashNews; |
var getFlashNewsTimeout; |
var getFlashNewsJsp; |
|
|
function getImportState() |
function getFlashNews(jsp,timeout) |
{ |
xmlHttp=GetXmlHttpObject(stateChangedGetImportState); |
getObjectById("importState").innerHTML = "<div class=\"statusSearch\">Updating import state ....</div>"; |
if (xmlHttp==null) |
{ |
alert ("Browser does not support HTTP Request"); |
return; |
getFlashNewsJsp = jsp; |
getFlashNewsTimeout = timeout; |
getFlashNewsTimeoutCall(); |
} |
//http://servidor:8080 |
var url= servidorBaseUrl + "/jsp/import/getImportState.jsp"; |
url=url+"?sid="+Math.random(); |
xmlHttp.onreadystatechange=stateChangedGetImportState; |
xmlHttp.open("GET",url,true); |
xmlHttp.send(null); |
} |
|
function stateChangedGetImportState() |
function getFlashNewsTimeoutCall() |
{ |
if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete") |
{ |
var html = xmlHttp.responseText; |
getObjectById("importState").innerHTML=html; |
if(!(getObjectById("importStateStatus") != null && getObjectById("importStateStatus").value == 'STOPPED')) |
{ |
setTimeout(getImportState,5000); |
xmlHttpTopFlashNews=GetXmlHttpObject(stateChangedGetFlashNews); |
startRequest(xmlHttpTopFlashNews,"","flashTopNews",stateChangedGetFlashNews,"",getFlashNewsJsp) |
} |
} |
} |
|
|
//GET DESTAQUE |
|
var iterator = 0; |
var cookie; |
function getFlashNewsNext() |
{ |
getFlashNews(cookie); |
} |
function getFlashNews() |
{ |
xmlHttp=GetXmlHttpObject(stateChangedGetFlashNews); |
if (xmlHttp==null) |
{ |
alert ("Browser does not support HTTP Request"); |
return; |
} |
var url= servidorBaseUrl + "/public/announcements/getFlashNews.jsp"; |
url=url+"?sid="+Math.random()+"&iterator="+iterator; |
iterator++; |
xmlHttp.onreadystatechange=stateChangedGetFlashNews; |
xmlHttp.open("GET",url,true); |
xmlHttp.send(null); |
} |
|
function stateChangedGetFlashNews() |
{ |
if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete") |
if (xmlHttpTopFlashNews.readyState==4 || xmlHttpTopFlashNews.readyState=="complete") |
{ |
getObjectById("flashTopNews").innerHTML=xmlHttp.responseText; |
setTimeout(getFlashNews,5000); |
getObjectById("flashTopNews").innerHTML=xmlHttpTopFlashNews.responseText; |
setTimeout(getFlashNewsTimeoutCall,getFlashNewsTimeout); |
} |
} |
|