plugin_edit.html 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. <navbar model="ctrl.navModel"></navbar>
  2. <div class="page-container" ng-init="ctrl.init()">
  3. <div class="page-header">
  4. <div class="plugin-header">
  5. <span class="plugin-header-logo">
  6. <img ng-src="{{ctrl.model.info.logos.large}}">
  7. </span>
  8. <div class="plugin-header-info-block">
  9. <h1 class="plugin-header-name">{{ctrl.model.name}}</h1>
  10. <div class="plugin-header-author">By {{ctrl.model.info.author.name}}</div>
  11. <div class="plugin-header-stamps">
  12. <span class="plugin-header-stamps-type">
  13. <i class="{{ctrl.pluginIcon}}"></i> {{ctrl.model.type}}
  14. </span>
  15. </div>
  16. </div>
  17. </div>
  18. <ul class="gf-tabs">
  19. <li class="gf-tabs-item" ng-repeat="tab in ctrl.tabs">
  20. <a class="gf-tabs-link" ng-click="ctrl.tabIndex = $index" ng-class="{active: ctrl.tabIndex === $index}">
  21. {{::tab}}
  22. </a>
  23. </li>
  24. </ul>
  25. </div>
  26. <div class="page-body">
  27. <div class="tab-content page-content-with-sidebar" ng-if="ctrl.tabs[ctrl.tabIndex] === 'Readme'">
  28. <div ng-bind-html="ctrl.readmeHtml" class="markdown-html">
  29. </div>
  30. </div>
  31. <div class="tab-content page-content-with-sidebar" ng-if="ctrl.tabs[ctrl.tabIndex] === 'Config'">
  32. <div ng-if="ctrl.model.id">
  33. <plugin-component type="app-config-ctrl"></plugin-component>
  34. <div class="gf-form-button-row">
  35. <button type="submit" class="btn btn-success" ng-click="ctrl.enable()" ng-show="!ctrl.model.enabled">Enable</button>
  36. <button type="submit" class="btn btn-success" ng-click="ctrl.update()" ng-show="ctrl.model.enabled">Update</button>
  37. <button type="submit" class="btn btn-danger" ng-click="ctrl.disable()" ng-show="ctrl.model.enabled">Disable</button>
  38. </div>
  39. </div>
  40. </div>
  41. <div class="tab-content page-content-with-sidebar" ng-if="ctrl.tabs[ctrl.tabIndex] === 'Dashboards'">
  42. <dashboard-import-list plugin="ctrl.model"></dashboard-import-list>
  43. </div>
  44. <aside class="page-sidebar">
  45. <section class="page-sidebar-section">
  46. <h4>Version</h4>
  47. <span>{{ctrl.model.info.version}}</span>
  48. <div ng-show="ctrl.model.hasUpdate">
  49. <a ng-click="ctrl.updateAvailable()" bs-tooltip="ctrl.model.latestVersion">Update Available!</a>
  50. </div>
  51. </section>
  52. <section class="page-sidebar-section" ng-show="ctrl.model.type === 'app'">
  53. <h5>Includes</h4>
  54. <ul class="ui-list plugin-info-list">
  55. <li ng-repeat="plug in ctrl.includes" class="plugin-info-list-item">
  56. <i class="{{plug.icon}}"></i>
  57. {{plug.name}}
  58. </li>
  59. </ul>
  60. </section>
  61. <section class="page-sidebar-section">
  62. <h5>Dependencies</h4>
  63. <ul class="ui-list plugin-info-list">
  64. <li class="plugin-info-list-item">
  65. <img src="public/img/grafana_icon.svg"></img>
  66. Grafana {{ctrl.model.dependencies.grafanaVersion}}
  67. </li>
  68. <li ng-repeat="plugDep in ctrl.model.dependencies.plugins" class="plugin-info-list-item">
  69. <i class="{{plugDep.icon}}"></i>
  70. {{plugDep.name}} {{plugDep.version}}
  71. </li>
  72. </ul>
  73. </section>
  74. <section class="page-sidebar-section">
  75. <h5>Links</h4>
  76. <ul class="ui-list">
  77. <li ng-repeat="link in ctrl.model.info.links">
  78. <a href="{{link.url}}" class="external-link" target="_blank">{{link.name}}</a>
  79. </li>
  80. </ul>
  81. </section>
  82. </aside>
  83. </div>
  84. </div>