diff options
author | Aaron LI <aaronly.me@outlook.com> | 2016-11-23 16:53:57 +0800 |
---|---|---|
committer | Aaron LI <aaronly.me@outlook.com> | 2016-11-23 16:54:27 +0800 |
commit | a993ae58f3c848bbf46c90f217d1dbc1f44828c1 (patch) | |
tree | 9b9a7f6006c5ba1705766142abefc0454f2f1ff3 /fg21sim/webui/static | |
parent | 58bc8b4bca4a0272ea78294d8aa413598eaf75c6 (diff) | |
download | fg21sim-a993ae58f3c848bbf46c90f217d1dbc1f44828c1.tar.bz2 |
webui: products: Implement GET action "which"
The "which" GET action try to locate the given executable name/path, in
order to check whether the executable callable.
This function will be used to check the validity of the specified FITS
viewer, which opens the HPX FITS images.
Diffstat (limited to 'fg21sim/webui/static')
-rw-r--r-- | fg21sim/webui/static/js/products.js | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/fg21sim/webui/static/js/products.js b/fg21sim/webui/static/js/products.js index 0b25eaa..72a7028 100644 --- a/fg21sim/webui/static/js/products.js +++ b/fg21sim/webui/static/js/products.js @@ -192,6 +192,25 @@ var getServerManifest = function (url) { /** + * Locate the command in the `$PATH` on the server, which checks + * whether the command can be called. + * + * @param {String} cmd - The command name or path. + */ +var whichExecutable = function (url, cmd) { + return $.getJSON(url, {action: "which", cmd: JSON.stringify(cmd)}) + .fail(function (jqxhr) { + var modalData = {}; + modalData.icon = "times-circle"; + modalData.contents = "Cannot locate the command in PATH!"; + modalData.code = jqxhr.status; + modalData.reason = jqxhr.statusText; + showModalProducts(modalData); + }); +}; + + +/** * Reset the products manifest on both the server side and client side */ var resetManifest = function (url) { @@ -270,7 +289,7 @@ $(document).ready(function () { // Save current products manifest $("#save-products").on("click", function () { - saveServerManifest(ajax_url); + saveServerManifest(ajax_url, true); }); // Show product information (metadata) |