|
@@ -22,6 +22,7 @@ export class DashboardImportCtrl {
|
|
|
autoGenerateUid: boolean;
|
|
autoGenerateUid: boolean;
|
|
|
autoGenerateUidValue: string;
|
|
autoGenerateUidValue: string;
|
|
|
folderId: number;
|
|
folderId: number;
|
|
|
|
|
+ initialFolderTitle: string;
|
|
|
isValidFolderSelection: boolean;
|
|
isValidFolderSelection: boolean;
|
|
|
|
|
|
|
|
/** @ngInject */
|
|
/** @ngInject */
|
|
@@ -33,7 +34,8 @@ export class DashboardImportCtrl {
|
|
|
this.uidExists = false;
|
|
this.uidExists = false;
|
|
|
this.autoGenerateUid = true;
|
|
this.autoGenerateUid = true;
|
|
|
this.autoGenerateUidValue = 'auto-generated';
|
|
this.autoGenerateUidValue = 'auto-generated';
|
|
|
- this.folderId = Number($routeParams.folderId) || 0;
|
|
|
|
|
|
|
+ this.folderId = $routeParams.folderId ? Number($routeParams.folderId) || 0 : null;
|
|
|
|
|
+ this.initialFolderTitle = 'Select a folder';
|
|
|
|
|
|
|
|
// check gnetId in url
|
|
// check gnetId in url
|
|
|
if ($routeParams.gnetId) {
|
|
if ($routeParams.gnetId) {
|
|
@@ -107,6 +109,7 @@ export class DashboardImportCtrl {
|
|
|
this.validationSrv
|
|
this.validationSrv
|
|
|
.validateNewDashboardName(this.folderId, this.dash.title)
|
|
.validateNewDashboardName(this.folderId, this.dash.title)
|
|
|
.then(() => {
|
|
.then(() => {
|
|
|
|
|
+ this.nameExists = false;
|
|
|
this.hasNameValidationError = false;
|
|
this.hasNameValidationError = false;
|
|
|
})
|
|
})
|
|
|
.catch(err => {
|
|
.catch(err => {
|
|
@@ -154,6 +157,10 @@ export class DashboardImportCtrl {
|
|
|
this.inputsValid = true;
|
|
this.inputsValid = true;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ isValid() {
|
|
|
|
|
+ return this.inputsValid && !this.hasNameValidationError && this.folderId !== null;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
saveDashboard() {
|
|
saveDashboard() {
|
|
|
var inputs = this.inputs.map(input => {
|
|
var inputs = this.inputs.map(input => {
|
|
|
return {
|
|
return {
|