Reformatted and gjslinted example-screenshot.js.

This commit is contained in:
Marc Jansen
2013-03-15 11:40:55 +01:00
parent 8692c42318
commit 24d3c903fe
+24 -24
View File
@@ -1,3 +1,5 @@
/** /**
* This script is supposed to be executed via phantomjs. It will generate * This script is supposed to be executed via phantomjs. It will generate
* screenshots of the html files in the directory specified by a commandline * screenshots of the html files in the directory specified by a commandline
@@ -32,13 +34,12 @@
*/ */
(function() { // global closure (function() { // global closure
var // imports var page = require('webpage').create(), // imports
page = require('webpage').create(),
fs = require('fs'), fs = require('fs'),
system = require('system'), system = require('system'),
// arguments // arguments
baseExamplesUrl = system.args[1]; baseExamplesUrl = system.args[1],
exampleDir = system.args[2]; exampleDir = system.args[2],
// various settings // various settings
ignoreFiles = [ ignoreFiles = [
'example-list.html' 'example-list.html'
@@ -73,40 +74,40 @@ var util = {
* Appends a slash to given string if it isn't there already. * Appends a slash to given string if it isn't there already.
*/ */
appendSlash: function(str) { appendSlash: function(str) {
return ((/\/$/).test(str)) ? str : str + "/"; return ((/\/$/).test(str)) ? str : str + '/';
}, },
/** /**
* generates an URL out of * Generates an URL out of given baseurl and path.
*/ */
buildUrl: function(baseurl, path) { buildUrl: function(baseurl, path) {
var name = util.baseName(path), var name = util.baseName(path),
mode = "raw"; mode = 'raw';
return util.appendSlash(baseurl) + name + "?mode=" + mode; return util.appendSlash(baseurl) + name + '?mode=' + mode;
}, },
/** /**
* Simple progressbar logger that uses our globals. * Simple progressbar logger that uses our globals.
*/ */
logProgress: function() { logProgress: function() {
var doneSymbol = "-", var doneSymbol = '-',
todoSymbol = " ", todoSymbol = ' ',
str = "[", str = '[',
percent = (lenHtmlFiles === 0) ? 0 : (pageindex / lenHtmlFiles * 100), percent = (lenHtmlFiles === 0) ? 0 : (pageindex / lenHtmlFiles * 100),
i = 0; i = 0;
for (; i < pageindex; i++) { for (; i < pageindex; i++) {
str += doneSymbol; str += doneSymbol;
} }
for (i = 0; i < lenHtmlFiles - pageindex; i++) { for (i = 0; i < lenHtmlFiles - pageindex; i++) {
str += (i === 0) ? ">" : todoSymbol; str += (i === 0) ? '>' : todoSymbol;
} }
str += "]"; str += ']';
if (percent < 10) { if (percent < 10) {
str += " "; str += ' ';
} else if (percent < 100) { } else if (percent < 100) {
str += " "; str += ' ';
} }
str += " " + percent.toFixed(1) + " % done"; str += ' ' + percent.toFixed(1) + ' % done';
if (fileName !== "") { if (fileName !== '') {
str += ", " + util.baseName(fileName) + ""; str += ', ' + util.baseName(fileName) + '';
} }
console.log(str); console.log(str);
} }
@@ -124,10 +125,10 @@ for(var i = 0; i< exampleDirList.length; i++) {
} }
lenHtmlFiles = htmlFiles.length; lenHtmlFiles = htmlFiles.length;
console.log("Capturing " + lenHtmlFiles + " example screenshots."); console.log('Capturing ' + lenHtmlFiles + ' example screenshots.');
// The main interval function that is executed regularily and renders a page to // The main interval function that is executed regularily and renders a
// a file // page to a file
var interval = setInterval(function() { var interval = setInterval(function() {
if (!loadInProgress && pageindex < lenHtmlFiles) { if (!loadInProgress && pageindex < lenHtmlFiles) {
util.logProgress(); util.logProgress();
@@ -143,7 +144,7 @@ var interval = setInterval(function() {
} }
if (pageindex == lenHtmlFiles) { if (pageindex == lenHtmlFiles) {
util.logProgress(); util.logProgress();
console.log(lenHtmlFiles + " screenshots captured."); console.log(lenHtmlFiles + ' screenshots captured.');
phantom.exit(); phantom.exit();
} }
}, intervalMillisecs); }, intervalMillisecs);
@@ -155,7 +156,7 @@ page.onLoadStarted = function() {
// When the page is loaded, render it to an image // When the page is loaded, render it to an image
page.onLoadFinished = function() { page.onLoadFinished = function() {
var dest = exampleDir + fs.separator + util.baseName(fileName) + ".png"; var dest = exampleDir + fs.separator + util.baseName(fileName) + '.png';
window.setTimeout(function() { window.setTimeout(function() {
loadInProgress = false; loadInProgress = false;
page.render(dest); // actually render the page. page.render(dest); // actually render the page.
@@ -163,5 +164,4 @@ page.onLoadFinished = function() {
}, renderMillisecs); }, renderMillisecs);
}; };
})(); // eof global closure })(); // eof global closure