Files
Facilitor/APPL/FAC/fac_scan_aiai.asp
Jos Groot Lipman 64b29f0e07 scan_aiai iets beter vrije diskspace afronden
svn path=/Website/branches/v2016.2/; revision=31193
2016-10-24 09:12:25 +00:00

83 lines
2.4 KiB
Plaintext

<%@language = "javascript" %>
<% /*
$Revision$
$Id$
File: fac_scan_aiai.asp
Description: FACILITOR remote support
API om AiAi data op te halen
Wordt regelmatig (15m) aangeroepen vanaf de FACWS001
Context: Je moet ingelogd zijn als FACFAC bij een bepaalde klant
maar eigenlijk maakt het niet uit bij welke: de hele
AiAi folder wordt gescanned
*/
var JSON_Result = true;
%>
<!-- #include file="../Shared/common.inc"-->
<!-- #include file="../Shared/json2.js" -->
<%
user.checkAutorisation("WEB_FACFAC");
var fso = Server.CreateObject("Scripting.FileSystemObject")
var result = { svnrevision: parseInt("$Revision$".replace(/\D/g,'')) };
// Vrije ruimte
try
{
var drvPath = Server.MapPath("../../");
result.drive = fso.GetDriveName(drvPath);
var d = fso.GetDrive(result.drive);
result.total = d.TotalSize;
result.free = d.AvailableSpace;
result.totalGB = Math.round(result.total/1073741824);
result.freeGB = (result.free/1073741824).toFixed(1);
}
catch (e)
{
/* could not read */
}
// AiAi's
var f = fso.GetFolder(Server.MapPath("../../temp/"));
var fname = "";
// Zoek de AiAi folder
for (var ff = new Enumerator(f.SubFolders); !ff.atEnd(); ff.moveNext())
{
if (ff.item().Name.match(/^500_error_[0-9]*/))
{
fname = ff.item().Name;
break;
}
}
if (fname)
{
result.aiaifolder = Server.MapPath("../../temp/" + fname);
var f = fso.GetFolder(result.aiaifolder);
var fc = new Enumerator(f.files);
var dd = new Date();
result.todayname = "log_" + toISODateString(dd) + ".html"
result.files = [];
for (; !fc.atEnd(); fc.moveNext())
{
var f = fc.item();
var filedata = { name: f.Name, date: new Date(f.DateLastModified).getTime(), size: f.Size };
// Merk op dat we echt 168 uur doen. Dat kan over 8 dagen verspreid zijn.
if (filedata.date < new Date().getTime() - 7*24*60*60*1000) // alleen laatste week
continue;
filedata.url = HTTP.urlzelf() + "/temp/" + fname + "/" + f.Name;
if (f.Name == result.todayname)
filedata.today = true;
result.files.push(filedata);
}
// nieuwste vooraan
result.files.sort(function (a, b) { return a.date < b.date? 1: -1 });
}
Response.Write(JSON.stringify(result));
Response.End;
%>