dashboard.html 6.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. <div ng-controller="DashCtrl" body-class>
  2. <div class="navbar navbar-static-top">
  3. <div class="navbar-inner">
  4. <div class="container-fluid">
  5. <span class="brand"><img src="img/small.png" bs-tooltip="'Grafana'" data-placement="bottom"> {{dashboard.title}}</span>
  6. <ul class="nav pull-right" ng-controller='dashLoader' ng-init="init()" ng-include="'app/partials/dashLoader.html'">
  7. </ul>
  8. </div>
  9. </div>
  10. </div>
  11. <div class="submenu-controls">
  12. <div class="submenu-panel" ng-controller="SubmenuCtrl" ng-repeat="pulldown in dashboard.pulldowns | filter:{ enable: true }">
  13. <div class="submenu-panel-title">
  14. <span class="small"><strong>{{pulldown.type}}:</strong></span>
  15. </div>
  16. <div class="submenu-panel-wrapper">
  17. <grafana-simple-panel type="pulldown.type" ng-cloak></grafana-simple-panel>
  18. </div>
  19. </div>
  20. <div class="clearfix"></div>
  21. </div>
  22. <div class="clearfix"></div>
  23. <div class="container-fluid main">
  24. <div>
  25. <div class="grafana-container container">
  26. <!-- Rows -->
  27. <div class="grafana-row" ng-controller="RowCtrl" ng-repeat="(row_name, row) in dashboard.rows" ng-style="row_style(row)">
  28. <div class="row-control">
  29. <div class="row-control-inner" style="padding:0px;margin:0px;position:relative;">
  30. <div class="row-close" ng-show="row.collapse" data-placement="bottom" >
  31. <span class="row-button bgWarning" config-modal="app/partials/roweditor.html" class="pointer">
  32. <i bs-tooltip="'Configure row'" data-placement="right" ng-show="row.editable" class="icon-cog pointer"></i>
  33. </span>
  34. <span class="row-button bgPrimary" ng-click="toggle_row(row)">
  35. <i bs-tooltip="'Expand row'" data-placement="right" class="icon-caret-left pointer" ></i>
  36. </span>
  37. <span class="row-button row-text" ng-click="toggle_row(row)">{{row.title || 'Row '+$index}}</span>
  38. </div>
  39. <div class="row-open" ng-show="!row.collapse">
  40. <div class='row-tab bgPrimary' ng-click="toggle_row(row)">
  41. <span class="row-tab-button">
  42. <i class="icon-caret-right"></i>
  43. </span>
  44. </div>
  45. <div class='row-tab bgSuccess dropdown' ng-show="row.editable">
  46. <span class="row-tab-button dropdown-toggle" data-toggle="dropdown">
  47. <i class="icon-th-list"></i>
  48. </span>
  49. <ul class="dropdown-menu dropdown-menu-right" role="menu" aria-labelledby="drop1">
  50. <li class="dropdown-submenu">
  51. <a href="javascript:void(0);">Add Panel</a>
  52. <ul class="dropdown-menu">
  53. <li><a ng-click="add_panel_default('graph')">Graph</a></li>
  54. <li><a ng-click="add_panel_default('text')">Text</a></li>
  55. </ul>
  56. </li>
  57. <li class="dropdown-submenu">
  58. <a href="javascript:void(0);">Set height</a>
  59. <ul class="dropdown-menu">
  60. <li><a ng-click="set_height('100px')">100 px</a></li>
  61. <li><a ng-click="set_height('150px')">150 px</a></li>
  62. <li><a ng-click="set_height('200px')">200 px</a></li>
  63. <li><a ng-click="set_height('250px')">250 px</a></li>
  64. <li><a ng-click="set_height('300px')">300 px</a></li>
  65. <li><a ng-click="set_height('350px')">350 px</a></li>
  66. <li><a ng-click="set_height('450px')">450 px</a></li>
  67. <li><a ng-click="set_height('500px')">500 px</a></li>
  68. <li><a ng-click="set_height('600px')">600 px</a></li>
  69. <li><a ng-click="set_height('700px')">700 px</a></li>
  70. </ul>
  71. </li>
  72. <li class="dropdown-submenu">
  73. <a href="javascript:void(0);">Move</a>
  74. <ul class="dropdown-menu">
  75. <li><a ng-click="move_row(-1)">Up</a></li>
  76. <li><a ng-click="move_row(1)">Down</a></li>
  77. </ul>
  78. </li>
  79. <li>
  80. <a config-modal="app/partials/roweditor.html">Row editor</a>
  81. </li>
  82. <li>
  83. <a ng-click="delete_row()">Delete row</a>
  84. </li>
  85. </ul>
  86. </div>
  87. </div>
  88. </div>
  89. <div style="padding-top:0px" ng-if="!row.collapse">
  90. <!-- Panels -->
  91. <div ng-repeat="(name, panel) in row.panels|filter:isPanel" ng-hide="panel.hide" class="panel nospace" ng-style="{'width':(panel.span/1.2)*10+'%'}" data-drop="true" ng-model="row.panels" data-jqyoui-options jqyoui-droppable="{index:$index,mutate:false,onDrop:'panelMoveDrop',onOver:'panelMoveOver(true)',onOut:'panelMoveOut'}" ng-class="{'dragInProgress':dashboard.$$panelDragging}">
  92. <!-- Content Panel -->
  93. <div style="position:relative">
  94. <grafana-panel type="panel.type" ng-cloak></grafana-panel>
  95. </div>
  96. </div>
  97. <div ng-show="rowSpan(row) < 10 && dashboard.$$panelDragging" class="panel" style="margin:5px;width:30%;background:rgba(100,100,100,0.50)" ng-class="{'dragInProgress':dashboard.panelDragging}" ng-style="{height:row.height}" data-drop="true" ng-model="row.panels" data-jqyoui-options jqyoui-droppable="{index:row.panels.length,mutate:false,onDrop:'panelMoveDrop',onOver:'panelMoveOver',onOut:'panelMoveOut'}">
  98. </div>
  99. <div class="clearfix"></div>
  100. </div>
  101. </div>
  102. </div>
  103. </div>
  104. <div ng-show='dashboard.editable' class="row-fluid add-row-panel-hint">
  105. <div class="span12" style="text-align:right;">
  106. <span style="margin-right: 10px;" ng-click="add_row_default()" class="pointer btn btn-info btn-mini">
  107. <span><i class="icon-plus-sign"></i> ADD A ROW</span>
  108. </span>
  109. </div>
  110. </div>
  111. </div>
  112. </div>
  113. </div>