mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
feat(pluginlist): link in plugin list now goes to app/plugin default nav unless enabled
This commit is contained in:
parent
5ffd57695c
commit
f4a013946f
@ -29,6 +29,7 @@ type PluginListItem struct {
|
|||||||
Info *plugins.PluginInfo `json:"info"`
|
Info *plugins.PluginInfo `json:"info"`
|
||||||
LatestVersion string `json:"latestVersion"`
|
LatestVersion string `json:"latestVersion"`
|
||||||
HasUpdate bool `json:"hasUpdate"`
|
HasUpdate bool `json:"hasUpdate"`
|
||||||
|
DefaultNavUrl string `json:"defaultNavUrl"`
|
||||||
}
|
}
|
||||||
|
|
||||||
type PluginList []PluginListItem
|
type PluginList []PluginListItem
|
||||||
|
@ -8,6 +8,7 @@ import (
|
|||||||
"github.com/grafana/grafana/pkg/middleware"
|
"github.com/grafana/grafana/pkg/middleware"
|
||||||
m "github.com/grafana/grafana/pkg/models"
|
m "github.com/grafana/grafana/pkg/models"
|
||||||
"github.com/grafana/grafana/pkg/plugins"
|
"github.com/grafana/grafana/pkg/plugins"
|
||||||
|
"github.com/grafana/grafana/pkg/setting"
|
||||||
)
|
)
|
||||||
|
|
||||||
func GetPluginList(c *middleware.Context) Response {
|
func GetPluginList(c *middleware.Context) Response {
|
||||||
@ -46,6 +47,7 @@ func GetPluginList(c *middleware.Context) Response {
|
|||||||
Info: &pluginDef.Info,
|
Info: &pluginDef.Info,
|
||||||
LatestVersion: pluginDef.GrafanaNetVersion,
|
LatestVersion: pluginDef.GrafanaNetVersion,
|
||||||
HasUpdate: pluginDef.GrafanaNetHasUpdate,
|
HasUpdate: pluginDef.GrafanaNetHasUpdate,
|
||||||
|
DefaultNavUrl: pluginDef.DefaultNavUrl,
|
||||||
}
|
}
|
||||||
|
|
||||||
if pluginSetting, exists := pluginSettingsMap[pluginDef.Id]; exists {
|
if pluginSetting, exists := pluginSettingsMap[pluginDef.Id]; exists {
|
||||||
@ -53,6 +55,10 @@ func GetPluginList(c *middleware.Context) Response {
|
|||||||
listItem.Pinned = pluginSetting.Pinned
|
listItem.Pinned = pluginSetting.Pinned
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if listItem.DefaultNavUrl == "" || !listItem.Enabled {
|
||||||
|
listItem.DefaultNavUrl = setting.AppSubUrl + "/plugins/" + listItem.Id + "/edit"
|
||||||
|
}
|
||||||
|
|
||||||
// filter out disabled
|
// filter out disabled
|
||||||
if enabledFilter == "1" && !listItem.Enabled {
|
if enabledFilter == "1" && !listItem.Enabled {
|
||||||
continue
|
continue
|
||||||
|
@ -76,8 +76,6 @@ func (app *AppPlugin) initApp() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
app.DefaultNavUrl = setting.AppSubUrl + "/plugins/" + app.Id + "/edit"
|
|
||||||
|
|
||||||
// slugify pages
|
// slugify pages
|
||||||
for _, include := range app.Includes {
|
for _, include := range app.Includes {
|
||||||
if include.Slug == "" {
|
if include.Slug == "" {
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
{{category.header}}
|
{{category.header}}
|
||||||
</h6>
|
</h6>
|
||||||
<div class="pluginlist-item" ng-repeat="plugin in category.list">
|
<div class="pluginlist-item" ng-repeat="plugin in category.list">
|
||||||
<a class="pluginlist-link pluginlist-link-{{plugin.state}} pointer" href="plugins/{{plugin.id}}/edit">
|
<a class="pluginlist-link pluginlist-link-{{plugin.state}} pointer" href="{{plugin.defaultNavUrl}}">
|
||||||
<span>
|
<span>
|
||||||
<img ng-src="{{plugin.info.logos.small}}" class="pluginlist-image">
|
<img ng-src="{{plugin.info.logos.small}}" class="pluginlist-image">
|
||||||
<span class="pluginlist-title">{{plugin.name}}</span>
|
<span class="pluginlist-title">{{plugin.name}}</span>
|
||||||
|
Loading…
Reference in New Issue
Block a user