PublicDashboards: use share type (#63059)

This commit is contained in:
Ezequiel Victorero
2023-02-09 15:44:09 -03:00
committed by GitHub
parent 0018c8e9c1
commit c19f156a96
8 changed files with 130 additions and 29 deletions

View File

@@ -13,6 +13,11 @@ func ValidatePublicDashboard(dto *SavePublicDashboardDTO, dashboard *dashboards.
return ErrPublicDashboardHasTemplateVariables.Errorf("ValidateSavePublicDashboard: public dashboard has template variables")
}
// if it is empty we override it in the service with public for retro compatibility
if dto.PublicDashboard.Share != "" && !IsValidShareType(dto.PublicDashboard.Share) {
return ErrInvalidShareType.Errorf("ValidateSavePublicDashboard: invalid share type")
}
return nil
}
@@ -58,3 +63,12 @@ func IsValidAccessToken(token string) bool {
func IsValidShortUID(uid string) bool {
return uid != "" && util.IsValidShortUID(uid)
}
func IsValidShareType(shareType ShareType) bool {
for _, t := range ValidShareTypes {
if t == shareType {
return true
}
}
return false
}