%@LANGUAGE="JSCRIPT"%><%
Response.Expires = 0; // Immediate Expires: header
Response.AddHeader("Cache-Control", "must-revalidate, post-check=0, pre-check=0");
//
// Get node or attribute value via XPath. Detect and throw various XPath errors
//
function getValueXPath(XmlDoc, expr)
{
var node;
try {
node = XmlDoc.selectSingleNode(expr);
if(expr.search(/\@\w+$/) != -1) // Parameter value
return node.value;
else
return node.text;
} catch(ex) {
if(ex.message == "Object required") ex.message = "Failed to find value";
throw "XPath {" + expr + "}: " + ex.message;
}
}
function genList()
{
var XmlDoc = new ActiveXObject("Msxml2.DOMDocument");
// BEWARE: http://support.microsoft.com/kb/313372 and the use of the z: prefix below.
XmlDoc.setProperty("SelectionLanguage", "XPath");
XmlDoc.setProperty("SelectionNamespaces", "xmlns:z='http://www.ivoa.net/xml/VOEvent/v1.1'");
var evInPath = Server.MapPath("/VOEvent/events/rcvd");
var evOutPath = Server.MapPath("/VOEvent/events/sent");
var evImgBasePath = Server.MapPath("/VOEvent/images");
var FSO = new ActiveXObject("Scripting.FileSystemObject");
var evFiles = new Enumerator(FSO.GetFolder(evInPath).Files);
var result = "";
for (; !evFiles.atEnd(); evFiles.moveNext())
{
var evPath = evFiles.item();
var evID = FSO.GetBaseName(evPath);
if(!FSO.FileExists(evOutPath + "\\" + evID + ".xml")) continue; // Skip uncompleted jobs!
var evStrm = FSO.OpenTextFile(evPath);
var evXml = evStrm.ReadAll();
evStrm.Close();
XmlDoc.loadXML(evXml);
var evIvorn = getValueXPath(XmlDoc, '/z:VOEvent/@ivorn'); // Message IVORN
var evDate = getValueXPath(XmlDoc, '/z:VOEvent/Who/Date').replace(/T/, " ");
var nImages = FSO.GetFolder(evImgBasePath + "\\" + evID).Files.Count;
result += "
" + evDate +
" UTC | " +
// encodeURIComponent(evIvorn.replace(/.*#(.*)/, "$1")) + " | " +
evIvorn + "" +
"Data (" + nImages + " images) |
"
}
return result;
}
%>
Followup Data at <%= Util.Prefs.SiteName %>
 |
<%= Util.Prefs.SiteName %> | VOEvent Followup Data |
|
 |
 |
|
|
|
 |
 |
 |
|
 |
Followup Data for VOEvents |
<%= genList() %>
|
|
|
|
|
|