index.html 3.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="utf-8">
  5. <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  6. <meta name="viewport" content="width=device-width">
  7. <meta name="theme-color" content="#000">
  8. <title>Grafana</title>
  9. [[if .User.LightTheme]]
  10. <link rel="stylesheet" href="[[.AppSubUrl]]/css/grafana.light.min.css">
  11. [[else]]
  12. <link rel="stylesheet" href="[[.AppSubUrl]]/css/grafana.dark.min.css">
  13. [[end]]
  14. <link rel="icon" type="image/png" href="[[.AppSubUrl]]/img/fav32.png">
  15. <base href="[[.AppSubUrl]]/" />
  16. <!-- build:js [[.AppSubUrl]]/app/app.js -->
  17. <script src="[[.AppSubUrl]]/public/vendor/requirejs/require.js"></script>
  18. <script src="[[.AppSubUrl]]/public/app/components/require.config.js"></script>
  19. <!-- endbuild -->
  20. </head>
  21. <body ng-cloak ng-controller="GrafanaCtrl" ng-class="{'sidemenu-open': contextSrv.sidemenu}">
  22. <div class="sidemenu-canvas">
  23. <aside class="sidemenu-wrapper" ng-if="contextSrv.sidemenu">
  24. <div ng-include="'app/partials/sidemenu.html'"></div>
  25. </aside>
  26. <div class="page-alert-list">
  27. <div ng-repeat='alert in dashAlerts.list' class="alert-{{alert.severity}} alert">
  28. <button type="button" class="alert-close" ng-click="dashAlerts.clear(alert)">
  29. <i class="fa fa-times-circle"></i>
  30. </button>
  31. <div class="alert-title">{{alert.title}}</div>
  32. <div ng-bind='alert.text'></div>
  33. </div>
  34. </div>
  35. <div ng-view class="main-view"></div>
  36. </div>
  37. </div>
  38. </body>
  39. <script>
  40. window.grafanaBootData = {
  41. user:[[.User]],
  42. settings: [[.Settings]],
  43. };
  44. require(['app'], function (app) {
  45. app.boot();
  46. })
  47. </script>
  48. [[if .GoogleAnalyticsId]]
  49. <script>
  50. (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  51. (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  52. m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  53. })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
  54. ga('create', '[[.GoogleAnalyticsId]]', 'auto');
  55. ga('send', 'pageview');
  56. </script>
  57. [[end]]
  58. [[if .GoogleTagManagerId]]
  59. <script>
  60. dataLayer = [{
  61. 'IsSignedIn': '[[.User.IsSignedIn]]',
  62. 'Email': '[[.User.Email]]',
  63. 'Name': '[[.User.Name]]',
  64. 'UserId': '[[.User.Id]]',
  65. 'OrgId': '[[.User.OrgId]]',
  66. 'OrgName': '[[.User.OrgName]]',
  67. }];
  68. </script>
  69. <!-- Google Tag Manager -->
  70. <noscript><iframe src="//www.googletagmanager.com/ns.html?id=GTM-K2MJ65" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
  71. <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
  72. j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src='//www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
  73. })(window,document,'script','dataLayer','[[.GoogleTagManagerId]]');</script>
  74. <!-- End Google Tag Manager -->
  75. [[end]]
  76. </html>