diff --git a/pkg/api/frontendsettings.go b/pkg/api/frontendsettings.go index f23f416b47a..dd84f7827eb 100644 --- a/pkg/api/frontendsettings.go +++ b/pkg/api/frontendsettings.go @@ -137,9 +137,11 @@ func getFrontendSettingsMap(c *middleware.Context) (map[string]interface{}, erro "allowOrgCreate": (setting.AllowUserOrgCreate && c.IsSignedIn) || c.IsGrafanaAdmin, "authProxyEnabled": setting.AuthProxyEnabled, "buildInfo": map[string]interface{}{ - "version": setting.BuildVersion, - "commit": setting.BuildCommit, - "buildstamp": setting.BuildStamp, + "version": setting.BuildVersion, + "commit": setting.BuildCommit, + "buildstamp": setting.BuildStamp, + "latestVersion": plugins.GrafanaLatestVersion, + "hasUpdate": plugins.GrafanaHasUpdate, }, } diff --git a/pkg/plugins/update_checker.go b/pkg/plugins/update_checker.go index 1d13df1a629..6d3626fff16 100644 --- a/pkg/plugins/update_checker.go +++ b/pkg/plugins/update_checker.go @@ -69,7 +69,6 @@ func checkForUpdates() { return } - log.Info("GNET PLUG: %v", len(data.Plugins)) for _, plug := range Plugins { for _, gplug := range data.Plugins { if gplug.Id == plug.Id { @@ -103,6 +102,7 @@ func checkForUpdates() { if strings.Contains(setting.BuildVersion, "-") { GrafanaLatestVersion = githubLatest.Testing + GrafanaHasUpdate = githubLatest.Testing != setting.BuildVersion } else { GrafanaLatestVersion = githubLatest.Stable GrafanaHasUpdate = githubLatest.Stable != setting.BuildVersion diff --git a/public/app/core/controllers/login_ctrl.js b/public/app/core/controllers/login_ctrl.js index 89757c3d141..4249d55a44f 100644 --- a/public/app/core/controllers/login_ctrl.js +++ b/public/app/core/controllers/login_ctrl.js @@ -39,7 +39,9 @@ function (angular, coreModule, config) { $scope.buildInfo = { version: config.buildInfo.version, commit: config.buildInfo.commit, - buildstamp: new Date(config.buildInfo.buildstamp * 1000) + buildstamp: new Date(config.buildInfo.buildstamp * 1000), + latestVersion: config.buildInfo.latestVersion, + hasUpdate: config.buildInfo.hasUpdate, }; $scope.submit = function() { diff --git a/public/app/features/plugins/partials/ds_list.html b/public/app/features/plugins/partials/ds_list.html index c5ca9f514a4..c4625abfe6b 100644 --- a/public/app/features/plugins/partials/ds_list.html +++ b/public/app/features/plugins/partials/ds_list.html @@ -20,8 +20,9 @@
  • - - {{ds.type}} +
    + {{ds.type}} +
    diff --git a/public/app/features/plugins/partials/plugin_list.html b/public/app/features/plugins/partials/plugin_list.html index 344dbd65fcf..64e511805dc 100644 --- a/public/app/features/plugins/partials/plugin_list.html +++ b/public/app/features/plugins/partials/plugin_list.html @@ -33,8 +33,13 @@
  • - - {{plugin.type}} +
    + + {{plugin.type}} +
    +
    + Update available! +
    diff --git a/public/app/partials/login.html b/public/app/partials/login.html index b63e587c00e..ff8d22451a8 100644 --- a/public/app/partials/login.html +++ b/public/app/partials/login.html @@ -78,9 +78,9 @@ Grafana version: {{buildInfo.version}}, commit: {{buildInfo.commit}}, build date: {{buildInfo.buildstamp | date: 'yyyy-MM-dd HH:mm:ss' }}
    +
  • - - - diff --git a/public/sass/components/_cards.scss b/public/sass/components/_cards.scss index 08baf146c93..40d6c0ab85e 100644 --- a/public/sass/components/_cards.scss +++ b/public/sass/components/_cards.scss @@ -76,13 +76,20 @@ } .card-item-header { + margin-bottom: $spacer; +} + +.card-item-type { color: $text-color-weak; text-transform: uppercase; - margin-bottom: $spacer; font-size: $font-size-sm; font-weight: bold; } +.card-item-notice { + font-size: $font-size-sm; +} + .card-item-name { color: $headings-color; overflow: hidden; @@ -107,6 +114,16 @@ .card-list-layout-grid { + .card-item-type { + display: inline-block; + } + + .card-item-notice { + font-size: $font-size-sm; + display: inline-block; + margin-left: $spacer; + } + .card-item-header-action { float: right; } @@ -165,6 +182,7 @@ .card-item-header { float: right; + text-align: right; } .card-item-figure {