ping server function
authorphasefx <phasefx@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Sun, 1 Feb 2009 10:14:56 +0000 (10:14 +0000)
committerphasefx <phasefx@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Sun, 1 Feb 2009 10:14:56 +0000 (10:14 +0000)
git-svn-id: svn://svn.open-ils.org/ILS/branches/staff-client-experiment@12034 dcc99617-32d9-48b4-a31d-7c20da2025e4

Open-ILS/web/opac/locale/en-US/lang.dtd
Open-ILS/xul/staff_client/chrome/content/main/main.js
Open-ILS/xul/staff_client/chrome/content/util/network.js
Open-ILS/xul/staff_client/server/main/menu_frame_menus.xul

index 03c27bf..6332296 100644 (file)
 <!ENTITY staff.main.menu.admin.xuleditor.accesskey "X">
 <!ENTITY staff.main.menu.admin.xuleditor.label "XUL Test">
 <!ENTITY staff.main.menu.admin.venkman.label "Venkman">
+<!ENTITY staff.main.menu.admin.ping "Ping Server">
 <!ENTITY staff.main.menu.cat.accesskey "g">
 <!ENTITY staff.main.menu.cat.add_bib.key "B">
 <!ENTITY staff.main.menu.cat.add_bib.label "Add Bib Record">
index 79a4138..7eefcaf 100644 (file)
@@ -151,7 +151,8 @@ function main_init() {
                        var xulG = {
                                'auth' : G.auth,
                                'url' : url,
-                               'window' : G.window
+                               'window' : G.window,
+                'data' : G.data
                        };
 
                        if (G.data.ws_info && G.data.ws_info[G.auth.controller.view.server_prompt.value]) {
index 3f38a81..14b8f35 100644 (file)
@@ -470,7 +470,39 @@ util.network.prototype = {
                } catch(E) {
                        throw(E);
                }
-       }
+       },
+
+    'ping' : function() {
+        try {
+            JSAN.use('util.file'); JSAN.use('OpenILS.data'); var data = new OpenILS.data(); data.init({'via':'stash'});
+                       var file = new util.file('ping.bat');
+            var path = file._file.path;
+                       file.write_content('truncate+exec',
+                '#!/bin/sh\n' +
+                'ping -n 15 ' + data.server_unadorned + ' > "' + path + '.txt"\n' + /* windows */
+                'ping -c 15 ' + data.server_unadorned + ' >> "' + path + '.txt"\n'  /* unix */
+            );
+            file.close();
+                       file = new util.file('ping.bat');
+
+                       var process = Components.classes["@mozilla.org/process/util;1"].createInstance(Components.interfaces.nsIProcess);
+                       process.init(file._file);
+
+                       var args = [];
+
+                       dump('process.run = ' + process.run(true, args, args.length) + '\n');
+
+            file.close();
+
+            var file = new util.file('ping.bat.txt');
+            var output = file.get_content();
+            file.close();
+
+            return output;
+        } catch(E) {
+            alert(E);
+        }
+    }
 }
 
 /*
index fb3b337..f9c4f89 100644 (file)
                                <menuitem label="&staff.main.menu.admin.venkman.label;" oncommand="try{xulG.window.win.start_debugger();}catch(E){alert(E);}"/>
                                <menuitem label="&staff.main.auth.debug.inspector;" oncommand="try{xulG.window.win.start_inspector();}catch(E){alert(E);}"/>
                                <menuitem label="&staff.main.auth.debug.chrome_list;" oncommand="try{xulG.window.win.start_chrome_list();}catch(E){alert(E);}"/>
+                <menuitem label="&staff.main.menu.admin.ping;" oncommand="try{netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');JSAN.use('util.network'); var n = new util.network(); alert(n.ping());}catch(E){alert(E);}"/>
                        </menupopup>
                </menu>
        </menupopup>