mirror of
https://github.com/ntop/ntopng.git
synced 2026-04-29 15:39:33 +00:00
84 lines
2.2 KiB
JavaScript
84 lines
2.2 KiB
JavaScript
/* This page is not currently used */
|
|
|
|
var page = new WebPage(), idx = 0, loadInProgress = false;
|
|
var system = require('system');
|
|
|
|
page.onConsoleMessage = function(msg) {
|
|
console.log(msg);
|
|
};
|
|
|
|
page.onLoadStarted = function() {
|
|
loadInProgress = true;
|
|
};
|
|
|
|
page.onLoadFinished = function() {
|
|
loadInProgress = false;
|
|
};
|
|
|
|
page.onError = function(msg, trace) {
|
|
};
|
|
|
|
var args = system.args;
|
|
if (args.length < 6) {
|
|
console.log("USAGE: phantomjs get_report.js <port> <output_pdf> <username> <password> <num_hours>");
|
|
phantom.exit(1);
|
|
}
|
|
var port = args[1];
|
|
var output = args[2];
|
|
var user = args[3];
|
|
var password = args[4];
|
|
var num_hours = args[5];
|
|
var address = "http://localhost:"+port+"/lua/login.lua";
|
|
|
|
var steps = [
|
|
function(address, output) {
|
|
page.open(address);
|
|
},
|
|
function(address, output, user, password, num_hours) {
|
|
page.evaluate(function(user, password, num_hours) {
|
|
var arr = document.getElementsByClassName("form-control");
|
|
var i;
|
|
|
|
for (i = 0 ; i < arr.length ; i++) {
|
|
console.log(arr[i].name);
|
|
if (arr[i].name == "user") arr[i].value = user;
|
|
if (arr[i].name == "password") arr[i].value = password;
|
|
if (arr[i].name == "referer") arr[i].value = "/lua/pro/report.lua?numhours="+num_hours+"&printable=true";
|
|
//if (arr[i].name == "referer") arr[i].value = "/lua/flows_stats.lua";
|
|
}
|
|
}, user, password, num_hours);
|
|
},
|
|
function() {
|
|
page.evaluate(function() {
|
|
var arr = document.getElementsByClassName("form-signin");
|
|
var i;
|
|
|
|
for (i = 0 ; i < arr.length ; i++) {
|
|
if (arr[i].getAttribute('method') == "POST") {
|
|
console.log(arr[i].action);
|
|
arr[i].submit();
|
|
return;
|
|
}
|
|
}
|
|
|
|
});
|
|
},
|
|
function(address, output) {
|
|
var size = { format: "A4", orientation: 'portrait', margin: '1cm' };
|
|
page.viewportSize = { width: 1920, height: 1080 };
|
|
//page.viewportSize = { width: 600, height: 600 };
|
|
page.paperSize = size;
|
|
page.render(output);
|
|
},
|
|
function() {
|
|
phantom.exit();
|
|
}
|
|
];
|
|
|
|
|
|
interval = setInterval(function() {
|
|
if (!loadInProgress && typeof steps[idx] == "function") {
|
|
steps[idx](address, output, user, password, num_hours);
|
|
idx++;
|
|
}
|
|
}, 1000);
|