| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150 |
- <div class="modal-body">
- <div class="pull-right editor-title">Dashboard settings</div>
- <div ng-model="editor.index" bs-tabs>
- <div ng-repeat="tab in ['General','Index','Rows','Controls']" data-title="{{tab}}">
- </div>
- </div>
- <div ng-show="editor.index == 0">
- <div class="row-fluid">
- <div class="span4">
- <label class="small">Title</label><input type="text" class="input-large" ng-model='dashboard.current.title'></input>
- </div>
- <div class="span1">
- <label class="small"> Editable </label><input type="checkbox" ng-model="dashboard.current.editable" ng-checked="dashboard.current.editable" />
- </div>
- <div class="span3">
- <label class="small">Style</label><select class="input-small" ng-model="dashboard.current.style" ng-options='f for f in ["dark","light"]'></select>
- </div>
- </div>
- </div>
- <div ng-show="editor.index == 1">
- <div class="row-fluid">
- <h4>Index Settings</h4>
- <div ng-show="dashboard.current.index.interval != 'none'" class="row-fluid">
- <div class="span12">
- <p class="small">
- Time stamped indices use your selected time range to create a list of
- indices that match a specified timestamp pattern. This can be very
- efficient for some data sets (eg, logs) For example, to match the
- default logstash index pattern you might use
- <code>[logstash-]YYYY.MM.DD</code>. The [] in "[logstash-]" are
- important as they instruct Kibana not to treat those letters as a
- pattern.
- Please also note that indices should rollover at midnight <strong>UTC</strong>.
- </p>
- <p class="small">
- See <a href="http://momentjs.com/docs/#/displaying/format/">http://momentjs.com/docs/#/displaying/format/</a>
- for documentation on date formatting.
- </p>
- </div>
- </div>
- </div>
- <div class="row-fluid">
- <div class="span2">
- <h6>Timestamping</h6><select class="input-small" ng-model="dashboard.current.index.interval" ng-options='f for f in ["none","hour","day","week","month","year"]'></select>
- </div>
- <div class="span4" ng-show="dashboard.current.index.interval != 'none'">
- <h6>Index pattern <small>Absolutes in []</small></h6>
- <input type="text" class="input-medium" ng-model="dashboard.current.index.pattern">
- </div>
- <div class="span2" ng-show="dashboard.current.index.interval != 'none'">
- <h6>Failover <i class="icon-question-sign" bs-tooltip="'If no indices match the pattern, failover to default index *NOT RECOMMENDED*'"></i></h6>
- <input type="checkbox" ng-model="dashboard.current.failover" ng-checked="dashboard.current.failover" />
- </div>
- <div class="span4" ng-show="dashboard.current.failover || dashboard.current.index.interval == 'none'">
- <h6>Default Index <small ng-show="dashboard.current.index.interval != 'none'">If index not found</small></h6>
- <input type="text" class="input-medium" ng-model="dashboard.current.index.default">
- </div>
- </div>
- </div>
- <div ng-show="editor.index == 2">
- <div class="row-fluid">
- <div class="span12">
- <table class="table table-condensed table-striped">
- <thead>
- <th>Title</th>
- <th>Delete</th>
- <th>Move</th>
- </thead>
- <tr ng-repeat="row in dashboard.current.rows">
- <td>{{row.title}}</td>
- <td><i ng-click="dashboard.current.rows = _.without(dashboard.current.rows,row)" class="pointer icon-remove"></i></td>
- <td><i ng-click="_.move(dashboard.current.rows,$index,$index-1)" ng-hide="$first" class="pointer icon-arrow-up"></i></td>
- <td><i ng-click="_.move(dashboard.current.rows,$index,$index+1)" ng-hide="$last" class="pointer icon-arrow-down"></i></td>
- </tr>
- </table>
- </div>
- </div>
- <div class="row-fluid">
- <form>
- <div class="span5">
- <label class="small">Title</label>
- <input type="text" class="input-large" ng-model='row.title' placeholder="New row"></input>
- </div>
- <div class="span2">
- <label class="small">Height</label>
- <input type="text" class="input-mini" ng-model='row.height'></input>
- </div>
- <div class="span1">
- <label class="small"> Editable </label>
- <input type="checkbox" ng-model="row.editable" ng-checked="row.editable" />
- </div>
- </form>
- </div>
- </div>
- <div ng-show="editor.index == 3" ng-controller="dashLoader">
- <h5>Allow saving to</h5>
- <div class="row-fluid">
- <div class="span2">
- <label class="small">File</label><input type="checkbox" ng-model="loader.save_local" ng-checked="loader.save_local">
- </div>
- <div class="span2">
- <label class="small">Browser</label><input type="checkbox" ng-model="loader.save_default" ng-checked="loader.save_default">
- </div>
- <div class="span2">
- <label class="small">Gist <tip>Requires your domain to be OAUTH registered with Github<tip></label><input type="checkbox" ng-model="loader.save_gist" ng-checked="loader.save_gist">
- </div>
- <div class="span2">
- <label class="small">Elasticsearch</label><input type="checkbox" ng-model="loader.save_elasticsearch" ng-checked="loader.save_elasticsearch">
- </div>
- </div>
- <h5>Allow loading from</h5>
- <div class="row-fluid">
- <div class="span2">
- <label class="small">Local file</label><input type="checkbox" ng-model="loader.load_local" ng-checked="loader.load_local">
- </div>
- <div class="span2">
- <label class="small">Gist</label><input type="checkbox" ng-model="loader.load_gist" ng-checked="loader.load_gist">
- </div>
- <div class="span2">
- <label class="small">Elasticsearch</label><input type="checkbox" ng-model="loader.load_elasticsearch" ng-checked="loader.load_elasticsearch">
- </div>
- <div class="span3" ng-show="loader.load.elasticsearch">
- <label class="small">ES list size</label><input class="input-mini" type="number" ng-model="loader.load_elasticsearch_size">
- </div>
- </div>
- <h5>Sharing</h5>
- <div class="row-fluid">
- <div class="span2" >
- <label class="small">Allow Sharing <tip>Allow generating adhoc links to dashboards</tip></label><input type="checkbox" ng-model="loader.save_temp" ng-checked="loader.save_temp">
- </div>
- <div class="span2" ng-show="loader.save_temp">
- <label class="small">TTL <tip>Expire temp urls</tip></label><input type="checkbox" ng-model="loader.save_temp_ttl_enable">
- </div>
- <div class="span5" ng-show="loader.save_temp && loader.save_temp_ttl_enable">
- <label class="small">TTL Duration <tip>Elasticsearch date math, eg: 1m,1d,1w,30d </tip></label><input class="input-small" type="text" ng-model="loader.save_temp_ttl">
- </div>
- </div>
- </div>
- </div>
- <div class="modal-footer">
- <button ng-click="add_row(dashboard.current,row); reset_row();" class="btn btn-success" ng-show="editor.index == 2">Create Row</button>
- <button type="button" class="btn btn-danger" ng-click="editor.index=0;dismiss();reset_panel();dashboard.refresh()">Close</button>
- </div>
|