Commit a6f8d571 by Rashid Khan

reorganized pie panel editor, added option to change legend position

parent 06d04828
...@@ -106,6 +106,10 @@ ...@@ -106,6 +106,10 @@
font-size: 85%; font-size: 85%;
} }
.input-append label {
font-size: inherit !important;
}
.large { .large {
font-size: 120%; font-size: 120%;
} }
......
<div class="row-fluid" ng-switch="panel.mode" ng-controller="pie"> <div class="row-fluid" ng-switch="panel.mode" ng-controller="pie">
<div ng-switch-when="terms"> <div ng-switch-when="terms">
<div class="row-fluid"> <div class="row-fluid">
<div class="span4"> <div class="span3">
<label class="small">Mode</label>
<select class="input-small" ng-change="set_mode(panel.mode)" ng-model="panel.mode" ng-options="f for f in ['terms','goal']"></select>
</div>
<div class="span3">
<form style="margin-bottom: 0px"> <form style="margin-bottom: 0px">
<h6> Field</h6> <label class="small">Field</label>
<input type="text" style="width:90%" bs-typeahead="fields.list" ng-model="panel.query.field"> <input type="text" style="width:90%" bs-typeahead="fields.list" ng-model="panel.query.field">
</form> </form>
</div> </div>
<div class="span8"> <div class="span5">
<form class="input-append" style="margin-bottom: 0px"> <form class="input-append" style="margin-bottom: 0px">
<h6>Query</h6> <label class="small">Query</label>
<input type="text" style="width:80%" ng-model="panel.query.query"> <input type="text" style="width:80%" ng-model="panel.query.query">
<button class="btn" ng-click="get_data()"><i class="icon-search"></i></button> <button class="btn" ng-click="get_data()"><i class="icon-search"></i></button>
</form> </form>
</div> </div>
</div> </div>
<div class="row-fluid"> <div class="row-fluid">
<div class="span1"> <div class="span3">
<h6>Length</h6> <label class="small">Length</label>
<input type="number" style="width:80%" ng-model="panel.size" ng-change="get_data()"> <input type="number" style="width:80%" ng-model="panel.size" ng-change="get_data()">
</div> </div>
<div class="span11"> <div class="span8">
<form class="input-append" style="margin-bottom: 0px"> <form class="input-append" style="margin-bottom: 0px">
<h6>Exclude Terms(s) (comma seperated)</h6> <label class="small">Exclude Terms(s) (comma seperated)</label>
<input array-join type="text" style="width:90%" ng-model='panel.exclude'></input> <input array-join type="text" style="width:90%" ng-model='panel.exclude'></input>
<button class="btn" ng-click="get_data()"><i class="icon-search"></i></button> <button class="btn" ng-click="get_data()"><i class="icon-search"></i></button>
</form> </form>
...@@ -30,16 +34,20 @@ ...@@ -30,16 +34,20 @@
</div> </div>
</div> </div>
<div ng-switch-when="goal"> <div ng-switch-when="goal">
<div class="row-fluid"> <div class="row-fluid">
<div class="span3">
<label class="small">Mode</label>
<select class="input-small" ng-change="set_mode(panel.mode)" ng-model="panel.mode" ng-options="f for f in ['terms','goal']"></select>
</div>
<div class="span2"> <div class="span2">
<form style="margin-bottom: 0px"> <form style="margin-bottom: 0px">
<h6>Goal</h6> <label class="small">Goal</label>
<input type="number" style="width:90%" ng-model="panel.query.goal"> <input type="number" style="width:90%" ng-model="panel.query.goal">
</form> </form>
</div> </div>
<div class="span9"> <div class="span5">
<form class="input-append" style="margin-bottom: 0px"> <form class="input-append" style="margin-bottom: 0px">
<h6>Query</h6> <label class="small">Query</label>
<input type="text" style="width:80%" ng-model="panel.query.query"> <input type="text" style="width:80%" ng-model="panel.query.query">
<button class="btn" ng-click="get_data()"><i class="icon-search"></i></button> <button class="btn" ng-click="get_data()"><i class="icon-search"></i></button>
</form> </form>
...@@ -55,14 +63,11 @@ ...@@ -55,14 +63,11 @@
<label class="small"> Tilt </label><input type="checkbox" ng-model="panel.tilt" ng-checked="panel.tilt"> <label class="small"> Tilt </label><input type="checkbox" ng-model="panel.tilt" ng-checked="panel.tilt">
</div> </div>
<div class="span1"> <div class="span1">
<label class="small"> Legend </label><input type="checkbox" ng-model="panel.legend" ng-checked="panel.legend">
</div>
<div class="span1">
<label class="small"> Labels </label><input type="checkbox" ng-model="panel.labels" ng-checked="panel.labels"> <label class="small"> Labels </label><input type="checkbox" ng-model="panel.labels" ng-checked="panel.labels">
</div> </div>
<div class="span2"> <div class="span3">
<label class="small">Mode</label> <label class="small">Legend</label>
<select class="input-small" ng-change="set_mode(panel.mode)" ng-model="panel.mode" ng-options="f for f in ['terms','goal']"></select> <select class="input-small" ng-model="panel.legend" ng-options="f for f in ['above','below','none']"></select></span>
</div> </div>
</div> </div>
<h5>Panel Spy</h5> <h5>Panel Spy</h5>
......
...@@ -3,10 +3,14 @@ ...@@ -3,10 +3,14 @@
<i bs-modal="'partials/modal.html'" class="icon-eye-open"></i> <i bs-modal="'partials/modal.html'" class="icon-eye-open"></i>
</span> </span>
<div ng-repeat="query in plot.getData()" style="float:left;padding-left: 10px;"> <div ng-show="panel.legend == 'above'" ng-repeat="query in plot.getData()" style="float:left;padding-left: 10px;">
<span ng-show='panel.chart != "none"'><div style="display:inline-block;border-radius:5px;background:{{query.color}};height:10px;width:10px"></div></span><span class="small"> {{query.label}} ({{query.data[0][1]}}) </span></span> <span ng-show='panel.chart != "none"'><div style="display:inline-block;border-radius:5px;background:{{query.color}};height:10px;width:10px"></div></span><span class="small"> {{query.label}} ({{query.data[0][1]}}) </span></span>
</div><br> </div><br>
<div style="clear:both"></div> <div style="clear:both"></div>
<div pie params="{{panel}}" style="height:{{panel.height || row.height}};position:relative"></div> <div pie params="{{panel}}" style="height:{{panel.height || row.height}};position:relative"></div>
<div ng-show="panel.legend == 'below'" ng-repeat="query in plot.getData()" style="float:left;padding-left: 10px;">
<span ng-show='panel.chart != "none"'><div style="display:inline-block;border-radius:5px;background:{{query.color}};height:10px;width:10px"></div></span><span class="small"> {{query.label}} ({{query.data[0][1]}}) </span></span>
</div>
</kibana-panel> </kibana-panel>
\ No newline at end of file
...@@ -12,7 +12,7 @@ angular.module('kibana.pie', []) ...@@ -12,7 +12,7 @@ angular.module('kibana.pie', [])
labels : true, labels : true,
mode : "terms", mode : "terms",
group : "default", group : "default",
default_field : '_all', default_field : 'DEFAULT',
spyable : true, spyable : true,
} }
_.defaults($scope.panel,_d) _.defaults($scope.panel,_d)
...@@ -122,7 +122,7 @@ angular.module('kibana.pie', []) ...@@ -122,7 +122,7 @@ angular.module('kibana.pie', [])
var complete = results.hits.total; var complete = results.hits.total;
var remaining = $scope.panel.query.goal - complete; var remaining = $scope.panel.query.goal - complete;
$scope.data = [ $scope.data = [
{ label : 'Complete', data : complete, color: '#51A351' }, { label : 'Complete', data : complete, color: '#86B22D' },
{ data : remaining, color: '#EEE'}] { data : remaining, color: '#EEE'}]
$scope.$emit('render'); $scope.$emit('render');
}); });
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment