65 lines
3.2 KiB
JavaScript
65 lines
3.2 KiB
JavaScript
(function() {
|
|
'use strict';
|
|
|
|
angular.module('horizon.dashboard.project.heat_dashboard.template_generator')
|
|
.controller('horizon.dashboard.project.heat_dashboard.template_generator.DraftModalController', ['$scope',
|
|
'$mdDialog', 'hotgenNotify', 'hotgenMessage', 'hotgenStates', 'hotgenGlobals',
|
|
'horizon.dashboard.project.heat_dashboard.template_generator.basePath',
|
|
function($scope, $mdDialog, hotgenNotify, hotgenMessage, hotgenStates, hotgenGlobals, basePath){
|
|
$scope.draftDialogController = function ($scope, $mdDialog, hotgenStates) {
|
|
$scope.draft_list = [];
|
|
$scope.latest_draft = JSON.parse(localStorage.getItem('draft_'+localStorage.saved_counter));
|
|
for (var i = 0 ; i < 10; i++){
|
|
if (localStorage.getItem('draft_'+i)){
|
|
var saved_drafts = JSON.parse(localStorage.getItem('draft_'+i));
|
|
$scope.draft_list.push(saved_drafts);
|
|
}
|
|
}
|
|
$scope.data = {
|
|
nodes: hotgenStates.get_nodes(),
|
|
edges: hotgenStates.get_edges(),
|
|
}
|
|
$scope.load = function(draft) {
|
|
$mdDialog.hide();
|
|
$scope.data.nodes.clear();
|
|
for (var id in draft.nodes){
|
|
$scope.data.nodes.add(draft.nodes[id]);
|
|
}
|
|
$scope.data.edges.clear();
|
|
for (var id in draft.edges){
|
|
$scope.data.edges.add(draft.edges[id]);
|
|
}
|
|
hotgenStates.set_saved_resources(draft.saved_resources);
|
|
hotgenStates.set_saved_dependsons(draft.saved_depends_ons);
|
|
hotgenStates.set_saved_flags(draft.is_saved);
|
|
hotgenStates.set_counters(draft.counter);
|
|
hotgenStates.set_incremented_labels(draft.incremented_labels);
|
|
hotgenGlobals.set_template_version(draft.template_version);
|
|
hotgenMessage.broadcast_update_template_version();
|
|
|
|
};
|
|
$scope.cancel = function() {
|
|
$mdDialog.cancel();
|
|
};
|
|
};
|
|
$scope.showDialog = function(){
|
|
$scope.draftDialogController.$inject = ['$scope', '$mdDialog', 'hotgenStates'];
|
|
|
|
$mdDialog.show({
|
|
controller: $scope.draftDialogController,
|
|
templateUrl: basePath + 'templates/modal_draft.html',
|
|
parent: angular.element(document.body),
|
|
clickOutsideToClose:true
|
|
}).then(function(){
|
|
hotgenNotify.show_success('The draft is loaded successfully.');
|
|
}, function(){
|
|
// hotgenNotify.show_error('dismiss a modal');
|
|
});
|
|
}
|
|
$scope.handle_load_draft = function(event, args){
|
|
$scope.showDialog();
|
|
}
|
|
$scope.$on('handle_load_draft', $scope.handle_load_draft);
|
|
}]);
|
|
})();
|