Преглед на файлове

final touches to aliasByNode automatic stuff

Torkel Ödegaard преди 11 години
родител
ревизия
0b03ca158b
променени са 5 файла, в които са добавени 24 реда и са изтрити 76 реда
  1. 24 3
      src/app/controllers/graphiteTarget.js
  2. 0 51
      src/app/partials/graphite/funcEditor.html
  3. 0 0
      src/css/bootstrap.dark.min.css
  4. 0 0
      src/css/bootstrap.light.min.css
  5. 0 22
      src/css/less/grafana.less

+ 24 - 3
src/app/controllers/graphiteTarget.js

@@ -227,17 +227,38 @@ function (angular, _, config, gfunc, Parser) {
       newFunc.added = true;
       $scope.functions.push(newFunc);
 
+      $scope.moveAliasFuncLast();
+      $scope.smartlyHandleNewAliasByNode(newFunc);
+
+      if (!funcDef.params && newFunc.added) {
+        $scope.targetChanged();
+      }
+    };
+
+    $scope.moveAliasFuncLast = function() {
       var aliasFunc = _.find($scope.functions, function(func) {
-        return func.def.name === 'alias';
+        return func.def.name === 'alias' ||
+               func.def.name === 'aliasByNode' ||
+               func.def.name === 'aliasByMetric';
       });
 
       if (aliasFunc) {
         $scope.functions = _.without($scope.functions, aliasFunc);
         $scope.functions.push(aliasFunc);
       }
+    };
 
-      if (!funcDef.params) {
-        $scope.targetChanged();
+    $scope.smartlyHandleNewAliasByNode = function(func) {
+      if (func.def.name !== 'aliasByNode') {
+        return;
+      }
+      for(var i = 0; i < $scope.segments.length; i++) {
+        if ($scope.segments[i].val.indexOf('*') >= 0)  {
+          func.params[0] = i;
+          func.added = false;
+          $scope.targetChanged();
+          return;
+        }
       }
     };
 

+ 0 - 51
src/app/partials/graphite/funcEditor.html

@@ -1,51 +0,0 @@
-<div class="grafana-func-editor">
-
-  <div class="grafana-func-editor-header">
-   <a ng-click="removeFunction(func)">
-      Remove
-    </a>
-    &nbsp;&nbsp;
-    <a ng-click="helpFunction(func)">
-      Help
-    </a>
-    &nbsp;&nbsp;
-    <a class="close" ng-click="dismiss();" href="">×</a>
-  </div>
-
-  <div class="editor-row" ng-if="func.def.params.length">
-    <div class="section">
-      <div class="editor-option" ng-repeat="param in func.def.params">
-        <label class="small">{{param.name}}</label>
-        <div ng-switch on="param.type">
-          <div ng-switch-when="int">
-             <input
-                type="number"
-                step="any"
-                focus-me="true"
-                class="input-mini"
-                ng-change="functionParamsChanged(func)" ng-model-onblur
-                ng-model="func.params[$index]" />
-          </div>
-          <div ng-switch-when="string">
-             <input
-                type="text"
-                focus-me="true"
-                class="input-small"
-                ng-change="functionParamsChanged(func)" ng-model-onblur
-                ng-model="func.params[$index]" />
-          </div>
-          <div ng-switch-when="select">
-              <select
-                  class="input-mini"
-                  ng-model="func.params[$index]"
-                  ng-change="functionParamsChanged(func)"
-                  focus-me="true"
-                  ng-options="f for f in param.options">
-              </select>
-          </div>
-        </div>
-
-      </div>
-    </div>
-  </div>
-</div>

Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
src/css/bootstrap.dark.min.css


Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
src/css/bootstrap.light.min.css


+ 0 - 22
src/css/less/grafana.less

@@ -383,34 +383,12 @@ select.grafana-target-segment-input {
   }
 }
 
-input[type=text].func-param {
-  border: none;
-  background: inherit;
-  width: 30px;
-  border-radius: none;
-  padding: 0;
-  margin: 0;
-}
-
 .grafana-target {
   .popover-content {
     padding: 0;
   }
 }
 
-.grafana-func-editor {
-  min-width: 140px;
-  .grafana-func-editor-header {
-    background: @grafanaTargetFuncHightlight;
-    text-align: center;
-    border-bottom: 1px solid @grafanaTargetFuncBackground;
-    padding: 3px 5px;
-    white-space: nowrap;
-  }
-  .editor-row {
-    padding: 5px;
-  }
-}
 
 .scrollable {
   max-height: 300px;

Някои файлове не бяха показани, защото твърде много файлове са промени