template.html 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135
  1. <aside class="dashboard-settings__aside">
  2. <h2 class="dashboard-settings__aside-header">
  3. <i class="fa fa-cog"></i>
  4. Settings
  5. </h2>
  6. <a href="{{::section.url}}" class="dashboard-settings__nav-item" ng-class="{active: ctrl.viewId === section.id}" ng-repeat="section in ctrl.sections">
  7. <i class="{{::section.icon}}"></i>
  8. {{::section.title}}
  9. </a>
  10. <div class="dashboard-settings__aside-actions">
  11. <button class="btn btn-primary" ng-click="ctrl.saveDashboard()" ng-show="ctrl.canSave">
  12. Save
  13. </button>
  14. <button class="btn btn-inverse" ng-click="ctrl.openSaveAsModal()" ng-show="ctrl.canSaveAs">
  15. Save As...
  16. </button>
  17. </div>
  18. </aside>
  19. <div class="dashboard-settings__content" ng-if="ctrl.viewId === 'settings'">
  20. <h3 class="dashboard-settings__header">
  21. General
  22. </h3>
  23. <div class="gf-form-group">
  24. <div class="gf-form">
  25. <label class="gf-form-label width-7">Name</label>
  26. <input type="text" class="gf-form-input width-30" ng-model='ctrl.dashboard.title'></input>
  27. </div>
  28. <div class="gf-form">
  29. <label class="gf-form-label width-7">Description</label>
  30. <input type="text" class="gf-form-input width-30" ng-model='ctrl.dashboard.description'></input>
  31. </div>
  32. <div class="gf-form">
  33. <label class="gf-form-label width-7">
  34. Tags
  35. <info-popover mode="right-normal">Press enter to add a tag</info-popover>
  36. </label>
  37. <bootstrap-tagsinput ng-model="ctrl.dashboard.tags" tagclass="label label-tag" placeholder="add tags">
  38. </bootstrap-tagsinput>
  39. </div>
  40. <folder-picker initial-title="ctrl.dashboard.meta.folderTitle"
  41. initial-folder-id="ctrl.dashboard.meta.folderId"
  42. on-change="ctrl.onFolderChange($folder)"
  43. enable-create-new="true"
  44. is-valid-selection="true"
  45. label-class="width-7"
  46. dashboard-id="ctrl.dashboard.id">
  47. </folder-picker>
  48. <gf-form-switch class="gf-form" label="Editable" tooltip="Uncheck, then save and reload to disable all dashboard editing" checked="ctrl.dashboard.editable" label-class="width-7">
  49. </gf-form-switch>
  50. </div>
  51. <gf-time-picker-settings dashboard="ctrl.dashboard"></gf-time-picker-settings>
  52. <h5 class="section-heading">Panel Options</h5>
  53. <div class="gf-form">
  54. <label class="gf-form-label width-11">
  55. Graph Tooltip
  56. <info-popover mode="right-normal">
  57. Cycle between options using Shortcut: CTRL+O or CMD+O
  58. </info-popover>
  59. </label>
  60. <div class="gf-form-select-wrapper">
  61. <select ng-model="ctrl.dashboard.graphTooltip" class='gf-form-input' ng-options="f.value as f.text for f in [{value: 0, text: 'Default'}, {value: 1, text: 'Shared crosshair'},{value: 2, text: 'Shared Tooltip'}]"></select>
  62. </div>
  63. </div>
  64. <div class="gf-form-button-row">
  65. <button class="btn btn-danger" ng-click="ctrl.deleteDashboard()" ng-show="ctrl.canDelete">
  66. Delete Dashboard
  67. </button>
  68. </div>
  69. </div>
  70. <div class="dashboard-settings__content" ng-if="ctrl.viewId === 'annotations'" ng-include="'public/app/features/annotations/partials/editor.html'">
  71. </div>
  72. <div class="dashboard-settings__content" ng-if="ctrl.viewId === 'templating'" ng-include="'public/app/features/templating/partials/editor.html'">
  73. </div>
  74. <div class="dashboard-settings__content" ng-if="ctrl.viewId === 'links'" >
  75. <dash-links-editor dashboard="ctrl.dashboard"></dash-links-editor>
  76. </div>
  77. <div class="dashboard-settings__content" ng-if="ctrl.viewId === 'versions'" >
  78. <gf-dashboard-history dashboard="dashboard"></gf-dashboard-history>
  79. </div>
  80. <div class="dashboard-settings__content" ng-if="ctrl.viewId === 'dashboard_json'" >
  81. <h3 class="dashboard-settings__header">JSON Model</h3>
  82. <div class="dashboard-settings__subheader">
  83. The JSON Model below is data structure that defines the dashboard. Including settings, panel settings & layout,
  84. queries etc.
  85. </div>
  86. <div class="gf-form">
  87. <code-editor content="ctrl.json" data-mode="json" data-max-lines=30 ></code-editor>
  88. </div>
  89. <div class="gf-form-button-row">
  90. <button class="btn btn-primary" ng-click="ctrl.saveDashboardJson()" ng-show="ctrl.canSave">
  91. Save Changes
  92. </button>
  93. </div>
  94. </div>
  95. <div class="dashboard-settings__content" ng-if="ctrl.viewId === 'permissions'" >
  96. <dashboard-permissions ng-if="ctrl.dashboard && !ctrl.hasUnsavedFolderChange"
  97. dashboardId="ctrl.dashboard.id"
  98. backendSrv="ctrl.backendSrv"
  99. folder="ctrl.getFolder()"
  100. />
  101. <div ng-if="ctrl.hasUnsavedFolderChange">
  102. <h5>You have changed folder, please save to view permissions.</h5>
  103. </div>
  104. </div>
  105. <div class="dashboard-settings__content" ng-if="ctrl.viewId === '404'">
  106. <h3 class="dashboard-settings__header">Settings view not found</h3>
  107. <div>
  108. <h5>The settings page could not be found or you do not have permission to access it</h5>
  109. </div>
  110. </div>
  111. <div class="dashboard-settings__content" ng-if="ctrl.viewId === 'make_editable'">
  112. <h3 class="dashboard-settings__header">Make Editable</h3>
  113. <button class="btn btn-primary" ng-click="ctrl.makeEditable()">
  114. Make Editable
  115. </button>
  116. </div>