1
0
Fork 0
mirror of https://github.com/mmumshad/ansible-playable.git synced 2025-02-13 11:21:53 +00:00
ansible-playable/client/app/directives/complexVar/complexVar.controller.js
Mumshad Mannambeth c92f737237 Initial Commit
2017-06-07 13:36:45 -04:00

60 lines
1.7 KiB
JavaScript

'use strict';
const angular = require('angular');
/*@ngInject*/
export function complexVarController($scope,$filter) {
'ngInject';
var loadMembers = function(){
$scope.membersCopy = angular.copy($scope.members);
//var membersArray = $filter('addDotInKey')($filter('dictToKeyValueArray')($scope.membersCopy));
var membersArray = ($filter('dictToKeyValueArraySimple')($scope.membersCopy));
$scope.tabgroup = $scope.tabgroup || 0;
if(membersArray.length)
$scope.membersCopy = membersArray;
else
$scope.membersCopy = [{key:"",value:""}];
$scope.path = $scope.path || "";
angular.forEach($scope.membersCopy,function(member){
if(Object.prototype.toString.call(member.value) === '[object Object]'){
member.type = 'object';
}else if(Object.prototype.toString.call(member.value) === '[object Array]'){
member.type = 'array';
}
})
};
loadMembers();
$scope.setMemberType = function(member,type){
if(type === 'object'){
member.value = {};
member.type = 'object';
}else if(type === 'array'){
member.value = {};
member.type = 'array';
}
};
$scope.$on('membersUpdated',function(){
console.log('On Members Updated');
console.log($scope.members);
loadMembers();
});
$scope.$watch('membersCopy',function(){
if($scope.type === 'object')
$scope.members = $filter('removeDotInKey')($filter('keyValueArrayToDict')($scope.membersCopy));
else if($scope.type === 'array')
$scope.members = $filter('keyValueArrayToArray')($scope.membersCopy);
},true)
}
export default angular.module('webAppApp.complexVarCtrl', [])
.controller('ComplexVarController', complexVarController)
.name;