Various dashboard folders improvements (#10309)

* dashfolders: fix url for create dashboard from manage dashboards

Don't include folderId querystring if you don't manage a folder and
creating a new dashboard from there.

* dashfolders: don't store folderId in dashboard model

Use folderId from meta instead
#10307

* dashfolders: minor ux fix

* dashfolders: minor fix for edit folder title
This commit is contained in:
Marcus Efraimsson
2017-12-20 21:17:55 +01:00
committed by Torkel Ödegaard
parent 61b4e5ab2d
commit d41ce4f9ca
10 changed files with 49 additions and 19 deletions

View File

@@ -242,7 +242,7 @@ export class BackendSrv {
return this.post('/api/dashboards/db/', {
dashboard: dash,
folderId: dash.folderId,
folderId: options.folderId,
overwrite: options.overwrite === true,
message: options.message || '',
});
@@ -324,20 +324,22 @@ export class BackendSrv {
return;
}
model.folderId = toFolder.id;
model.meta.folderId = toFolder.id;
model.meta.folderTitle = toFolder.title;
const clone = model.getSaveModelClone();
let options = {
folderId: toFolder.id,
overwrite: false,
};
this.saveDashboard(clone, {})
this.saveDashboard(clone, options)
.then(() => {
deferred.resolve({ succeeded: true });
})
.catch(err => {
if (err.data && err.data.status === 'plugin-dashboard') {
err.isHandled = true;
options.overwrite = true;
this.saveDashboard(clone, { overwrite: true })
this.saveDashboard(clone, options)
.then(() => {
deferred.resolve({ succeeded: true });
})