UNPKG

queen

Version:

A platform for running scripts on many browsers

88 lines (74 loc) 2.18 kB
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <title></title> <link href="http://fonts.googleapis.com/css?family=Sanchez" rel="stylesheet" type="text/css"> <link rel="shortcut icon" href="favicon.png" /> <link rel="stylesheet" href="/queen.css" type="text/css"> </head> <body> <h1> <img id="logo" src="favicon.png" /> <span id="Status"></span> </h1> <script src="socketio.js"></script> <script src="queen.js"></script> <script> var config = {}; if(typeof console !== "undefined"){ config.logger = function(message){ console.log(message); }; } var workerProvider = Queen("//" + window.location.host + "/capture", config); // UI var workerCount = 0; var available = true; var connected = false; var statusElement = document.getElementById('Status'); function updateStatus(){ var status; if(connected){ status = "Connected to " + window.location.host; if(available && workerCount){ status += ", hosting " + workerCount + " workers"; } else if(!available){ status += ", at maximum capacity (" + workerCount + " workers)"; } } else { status = "Trying to connect to " + window.location.host; } statusElement.innerText = status; } updateStatus(); workerProvider.on('connect', function(){ connected = true; updateStatus(); }); workerProvider.on('disconnect', function(){ connected = false; updateStatus(); }); workerProvider.on('available', function(){ available = true; statusElement.innerText = "Connected to " + window.location.host; updateStatus(); }); workerProvider.on('unavailable', function(){ available = false; updateStatus(); }); workerProvider.on('worker', function(worker){ workerCount++; document.title = "(" + workerCount + ") Queen"; updateStatus(); }); workerProvider.on('workerDead', function(workerId){ workerCount--; document.title = "(" + workerCount + ") Queen"; updateStatus(); }); </script> </body> </html>