Merge branch 'devel' of h1dev:/srv/APKPM/
[APKPM.git] / public / gearman.html
index 7e80567..6692a55 100644 (file)
@@ -3,19 +3,25 @@
  <script src="http://code.angularjs.org/angular-0.9.12.min.js" ng:autobind></script>
  <body>
   <script>
-    function GearmanCntl($xhr) {
+    function GearmanCntl($xhr,$location) {
       var self = this;
-  
       this.status_update = function() {
         $xhr('JSON', '/_g/status?callback=JSON_CALLBACK', function(code,response) {
           self.g = response;
         });
       }
-      this.status_update();
+       this.status_update();
+      setInterval( this.status_update, 5000 );
+
+       var a = $location.hashPath.split('/');
+       self.function_name = a[0];
+       self.args = a[1];
  
       this.fetch = function() {
         self.clear();
-       self.url = '/g/' + self.function + '/' + self.args + '?callback=JSON_CALLBACK';
+        $location.hashPath = self.function_name + '/' + self.args;
+       self.url = '/g/' + $location.hashPath + '?callback=JSON_CALLBACK';
         $xhr('JSON', self.url, function(code, response) {
           self.code = code;
           self.response = response;
         self.response = null;
       };
     }
-    GearmanCntl.$inject = ['$xhr'];
+    GearmanCntl.$inject = ['$xhr','$location'];
   </script>
   <div ng:controller="GearmanCntl">
-    <select name="function">
+    <select name="function_name">
     <option ng:repeat="f in g.status" ng:show="f.available" value="{{f.function}}">{{f.function}}</option>
     <input type="text" name="args"     value="127.0.0.1" size="40"/>
     <button ng:click="fetch()">fetch</button>
     <button ng:click="clear()">clear</button>
 
+    <table ng:show="response.columns">
+    <tr><th ng:repeat="c in response.columns">{{c}}</th></tr>
+    <tr ng:repeat="r in response.rows">
+     <td ng:repeat="v in r">{{v}}</td>
+    </tr>
+    </table>
+
     <pre>
 url={{url}}
 code={{code}}
@@ -44,7 +57,7 @@ response={{response}}
 
 <table>
 <tr><th>function</th><th>total</th><th>running</th><th>available</th></tr>
-<tr ng:repeat="f in g.status">
+<tr ng:repeat="f in g.status.$orderBy('function')">
 <td>{{f.function}}</td>
 <td>{{f.total}}</td>
 <td>{{f.running}}</td>