1 define([], function () {
4 angular.module('app.yangman').controller('ModulesListCtrl', ModulesListCtrl);
6 ModulesListCtrl.$inject = ['$scope', '$mdToast', 'YangUtilsService', '$filter'];
8 function ModulesListCtrl($scope, $mdToast, YangUtilsService, $filter) {
9 var modulesList = this;
11 modulesList.treeApis = [];
12 modulesList.showLoadingBox = true;
15 modulesList.setDataStore = setDataStore;
16 modulesList.setModule = setModule;
28 * Load apis and modules
31 modulesList.allNodes = [];
32 modulesList.treeApis = [];
34 modulesList.showLoadingBox = true;
36 YangUtilsService.generateNodesToApis(function (apis, allNodes, augGroups) {
37 $scope.setGlobalParams(apis, augGroups);
38 modulesList.allNodes = allNodes;
39 // console.info('INFO :: got data', apis, modulesList.allNodes, modulesList.augmentations);
40 modulesList.treeApis = YangUtilsService.generateApiTreeData(apis);
41 //console.info('INFO :: tree api', modulesList.treeApis);
42 // $scope.processingModulesSuccessCallback();
43 modulesList.showLoadingBox = false;
44 showToastInfoBox('YANGMAN_LOADED_MODULES');
46 // $scope.$broadcast('LOAD_REQ_DATA');
48 showToastInfoBox('YANGMAN_LOADED_MODULES_ERROR');
49 modulesList.showLoadingBox = false;
54 * Set and expand module in tree
56 function setModule(module, e){
57 if ( $(e.target).hasClass('top-element') ) {
58 module.expanded = !module.expanded;
59 $scope.setModule(module);
64 * Set data store || rpc
68 function setDataStore(dataStore, module){
69 $scope.setModule(module);
70 $scope.setDataStore(dataStore, true);
74 * Method for showing toast box
77 function showToastInfoBox(text){
80 .textContent($filter('translate')(text))
81 .position('bottom left')
88 $scope.$on('YANGMAN_GET_API_TREE_DATA', function (event, args) {
89 (args.cbk || angular.noop)(modulesList.treeApis);