X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=testing%2FMCTXWeb%2Fpublic_html%2Fstatic%2Fmctx.gui.js;h=773fa2335bf48b79e05749595542dcd22b407a91;hb=836f6139e9c8df2c5ebae0bb617b86d618e60534;hp=e7dd167d46ecaf125633952e205ad1efd707a145;hpb=7b58480c5700b8ce4a686836049458be6681934b;p=matches%2FMCTX3420.git diff --git a/testing/MCTXWeb/public_html/static/mctx.gui.js b/testing/MCTXWeb/public_html/static/mctx.gui.js index e7dd167..773fa23 100644 --- a/testing/MCTXWeb/public_html/static/mctx.gui.js +++ b/testing/MCTXWeb/public_html/static/mctx.gui.js @@ -1,17 +1,43 @@ /** * MCTX3420 2013 GUI stuff. + * Coding style: + * - Always end statements with semicolons + * - Egyptian brackets are highly recommended (*cough*). + * - Don't use synchronous stuff - hook events into callbacks + * - $.fn functions should return either themselves or some useful object + * to allow for chaining of method calls */ mctx = {}; -mctx.api = location.protocol + "//" + location.host + "/api/"; +//Don't use this in the final version +mctx.location = window.location.pathname; +mctx.location = mctx.location.substring(0, mctx.location.lastIndexOf('/')) + "/"; +//mctx.location = location.protocol + "//" + location.host + "/"; +mctx.api = location.protocol + "//" + location.host + "/" + "api/"; mctx.expected_api_version = 0; +mctx.has_control = false; +mctx.debug = true; + +mctx.statusCodes = { + STATUS_OK : 1 +}; + +mctx.statusCodesDescription = { + "1" : "Ok", + "-1" : "General error", + "-2" : "Unauthorized", + "-3" : "Not running", + "-4" : "Already exists" +}; + mctx.sensors = { 0 : {name : "Strain gauge 1"}, 1 : {name : "Strain gauge 2"}, 2 : {name : "Strain gauge 3"}, 3 : {name : "Strain gauge 4"}, 4 : {name : "Pressure sensor 1"}, - 5 : {name : "Pressure sensor 2"} + 5 : {name : "Pressure sensor 2"}, + 6 : {name : "Pressure sensor 3"} }; mctx.actuators = { @@ -25,47 +51,119 @@ mctx.strain_gauges = {}; mctx.strain_gauges.ids = [0, 1, 2, 3]; mctx.strain_gauges.time_limit = 20; -function getDate(){ +/** + * Logs a message if mctx.debug is enabled. This function takes + * a variable number of arguments and passes them + * to alert or console.log (based on browser support). + * @returns {undefined} + */ +function debugLog () { + if (mctx.debug) { + if (typeof console === "undefined" || typeof console.log === "undefined") { + for (var i = 0; i < arguments.length; i++) { + alert(arguments[i]); + } + } else { + console.log.apply(this, arguments); + } + } +} + +/** + * Writes the current date to wherever it's called. + */ +function getDate() { document.write((new Date()).toDateString()); } -/** - * Populates the navigation bar +/** + * Should be run before the load of any GUI page. + * To hook events to be called after this function runs, + * use the 'always' method, e.g runBeforeLoad().always(function() {my stuff}); + * @param {type} isLoginPage + * @returns The return value of calling $.ajax */ -$.fn.populateNavbar = function () { - var menu = $("