Skip to content

Commit

Permalink
Removed unwanted api, moved logic into backend
Browse files Browse the repository at this point in the history
  • Loading branch information
utkarshcmu committed Mar 17, 2016
1 parent 4fbe954 commit cb42cfc
Show file tree
Hide file tree
Showing 3 changed files with 30 additions and 29 deletions.
1 change: 0 additions & 1 deletion pkg/api/api.go
Original file line number Diff line number Diff line change
Expand Up @@ -200,7 +200,6 @@ func Register(r *macaron.Macaron) {
r.Get("/home", GetHomeDashboard)
r.Get("/tags", GetDashboardTags)
r.Post("/import", bind(dtos.ImportDashboardCommand{}), wrap(ImportDashboard))
r.Get("/id/:id", GetDashboardSlugById)
})

// Dashboard snapshots
Expand Down
36 changes: 22 additions & 14 deletions pkg/api/dashboard.go
Original file line number Diff line number Diff line change
Expand Up @@ -159,6 +159,28 @@ func canEditDashboard(role m.RoleType) bool {
}

func GetHomeDashboard(c *middleware.Context) {

// Checking if there is any preference set for home dashboard
query := m.GetPreferencesQuery{UserId: c.UserId, OrgId: c.OrgId}

if err := bus.Dispatch(&query); err != nil {
c.JsonApiErr(500, "Failed to get preferences", err)
}

if query.Result.HomeDashboardId != 0 {
query := m.GetDashboardSlugByIdQuery{Id: query.Result.HomeDashboardId}
err := bus.Dispatch(&query)
if err != nil {
c.JsonApiErr(500, "Failed to get slug from database", err)
return
}

slug := dtos.DashboardSlug{Slug: query.Result}

c.JSON(200, &slug)
return
}

filePath := path.Join(setting.StaticRootPath, "dashboards/home.json")
file, err := os.Open(filePath)
if err != nil {
Expand Down Expand Up @@ -204,17 +226,3 @@ func GetDashboardTags(c *middleware.Context) {

c.JSON(200, query.Result)
}

func GetDashboardSlugById(c *middleware.Context) {
dashId := c.ParamsInt64(":id")
query := m.GetDashboardSlugByIdQuery{Id: dashId}
err := bus.Dispatch(&query)
if err != nil {
c.JsonApiErr(500, "Failed to get slug from database", err)
return
}

slug := dtos.DashboardSlug{Slug: query.Result}

c.JSON(200, &slug)
}
22 changes: 8 additions & 14 deletions public/app/core/routes/dashboard_loaders.js
Original file line number Diff line number Diff line change
Expand Up @@ -7,25 +7,19 @@ function (coreModule) {
coreModule.default.controller('LoadDashboardCtrl', function($scope, $routeParams, dashboardLoaderSrv, backendSrv) {

if (!$routeParams.slug) {

backendSrv.get('/api/preferences').then(function(preferences) {
if (preferences !== null && preferences.homeDashboardId !== 0) {
backendSrv.get('/api/dashboards/id/' + preferences.homeDashboardId).then(function(dashSlug) {
$routeParams.type = 'db';
$routeParams.slug = dashSlug.slug;
dashboardLoaderSrv.loadDashboard($routeParams.type, $routeParams.slug).then(function(result) {
$scope.initDashboard(result, $scope);
});
});
backendSrv.get('/api/dashboards/home').then(function(result) {
if (result.slug == null) {
var meta = result.meta;
meta.canSave = meta.canShare = meta.canStar = false;
$scope.initDashboard(result, $scope);
} else {
backendSrv.get('/api/dashboards/home').then(function(result) {
var meta = result.meta;
meta.canSave = meta.canShare = meta.canStar = false;
$routeParams.type = 'db';
$routeParams.slug = result.slug;
dashboardLoaderSrv.loadDashboard($routeParams.type, $routeParams.slug).then(function(result) {
$scope.initDashboard(result, $scope);
});
}
});

return;
}

Expand Down

0 comments on commit cb42cfc

Please sign in to comment.