index.html 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  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/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. </body>
  38. <script>
  39. window.grafanaBootData = {
  40. user:[[.User]],
  41. settings: [[.Settings]],
  42. };
  43. require(['app/app'], function (app) {
  44. app.boot();
  45. })
  46. </script>
  47. [[if .GoogleAnalyticsId]]
  48. <script>
  49. (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  50. (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  51. m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  52. })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
  53. ga('create', '[[.GoogleAnalyticsId]]', 'auto');
  54. ga('send', 'pageview');
  55. </script>
  56. [[end]]
  57. [[if .GoogleTagManagerId]]
  58. <script>
  59. dataLayer = [{
  60. 'IsSignedIn': '[[.User.IsSignedIn]]',
  61. 'Email': '[[.User.Email]]',
  62. 'Name': '[[.User.Name]]',
  63. 'UserId': '[[.User.Id]]',
  64. 'OrgId': '[[.User.OrgId]]',
  65. 'OrgName': '[[.User.OrgName]]',
  66. }];
  67. </script>
  68. <!-- Google Tag Manager -->
  69. <noscript><iframe src="//www.googletagmanager.com/ns.html?id=GTM-K2MJ65" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
  70. <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],
  71. 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);
  72. })(window,document,'script','dataLayer','[[.GoogleTagManagerId]]');</script>
  73. <!-- End Google Tag Manager -->
  74. [[end]]
  75. </html>