aboutsummaryrefslogtreecommitdiffstats
path: root/old/moon_gui/static/app/model/edit/metadata/metadata.list.dir.js
diff options
context:
space:
mode:
Diffstat (limited to 'old/moon_gui/static/app/model/edit/metadata/metadata.list.dir.js')
-rwxr-xr-xold/moon_gui/static/app/model/edit/metadata/metadata.list.dir.js374
1 files changed, 374 insertions, 0 deletions
diff --git a/old/moon_gui/static/app/model/edit/metadata/metadata.list.dir.js b/old/moon_gui/static/app/model/edit/metadata/metadata.list.dir.js
new file mode 100755
index 00000000..305192b6
--- /dev/null
+++ b/old/moon_gui/static/app/model/edit/metadata/metadata.list.dir.js
@@ -0,0 +1,374 @@
+(function() {
+
+ 'use strict';
+
+ angular
+ .module('moon')
+ .directive('moonMetaDataList', moonMetaDataList);
+
+ moonMetaDataList.$inject = [];
+
+ function moonMetaDataList() {
+
+ return {
+ templateUrl : 'html/model/edit/metadata/metadata-list.tpl.html',
+ bindToController : true,
+ controller : moonMetaDataListController,
+ controllerAs : 'list',
+ scope : {
+ metaRule: '=',
+ editMode: '=',
+ // shortDisplay : boolean value
+ //shortDisplay: '='
+ },
+ restrict : 'E',
+ replace : true
+ };
+ }
+
+ angular
+ .module('moon')
+ .controller('moonMetaDataListController', moonMetaDataListController);
+
+ moonMetaDataListController.$inject = ['$scope', '$rootScope', 'metaDataService', '$translate', 'alertService', 'metaRuleService', 'META_DATA_CST', 'utilService'];
+
+ function moonMetaDataListController($scope, $rootScope, metaDataService, $translate, alertService, metaRuleService, META_DATA_CST, utilService){
+
+ var list = this;
+
+ list.metaRule = $scope.list.metaRule;
+ list.editMode = $scope.list.editMode;
+ list.shortDisplay = $scope.list.shortDisplay;
+
+ list.typeOfSubject = META_DATA_CST.TYPE.SUBJECT;
+ list.typeOfObject = META_DATA_CST.TYPE.OBJECT;
+ list.typeOfAction = META_DATA_CST.TYPE.ACTION;
+
+ list.unMapSub = unMapSub;
+ list.unMapObj = unMapObj;
+ list.unMapAct = unMapAct;
+
+ // list.deleteSub = deleteSub;
+ // list.deleteObj = deleteObj;
+ // list.deleteAct = deleteAct;
+
+ list.getSubjectCategories = getSubjectCategories;
+ list.getObjectCategories = getObjectCategories;
+ list.getActionCategories = getActionCategories;
+
+ activate();
+
+ function activate(){
+
+ manageSubjectCategories();
+
+ manageObjectCategories();
+
+ manageActionCategories();
+
+ }
+
+ var rootListeners = {
+
+ 'event:updateMetaRuleFromMetaDataAddSuccess': $rootScope.$on('event:updateMetaRuleFromMetaDataAddSuccess', updateMetaRuleCategories),
+
+ 'event:deleteMetaDataFromMetaDataAddSuccess': $rootScope.$on('event:deleteMetaDataFromMetaDataAddSuccess', deleteMetaRuleCategories)
+
+ };
+
+ for (var unbind in rootListeners) {
+ $scope.$on('$destroy', rootListeners[unbind]);
+ }
+
+ function manageSubjectCategories(){
+
+ list.loadingCatSub = true;
+
+ metaDataService.subject.findSomeWithCallback(list.metaRule.subject_categories, function(categories){
+
+ list.catSub = categories;
+ list.loadingCatSub = false;
+
+ });
+ }
+
+ function manageObjectCategories(){
+
+ list.loadingCatObj = true;
+
+ metaDataService.object.findSomeWithCallback(list.metaRule.object_categories, function(categories){
+
+ list.catObj = categories;
+ list.loadingCatObj = false;
+
+ });
+
+ }
+
+ function manageActionCategories(){
+
+ list.loadingCatAct = true;
+
+ metaDataService.action.findSomeWithCallback(list.metaRule.action_categories, function(categories){
+
+ list.catAct = categories;
+ list.loadingCatAct = false;
+
+ });
+
+ }
+
+
+ /**
+ * UnMap
+ */
+
+ function unMapSub(subject){
+
+ subject.loader = true;
+
+ var metaRuleToSend = angular.copy(list.metaRule);
+
+ metaRuleToSend.subject_categories = _.without(metaRuleToSend.subject_categories, subject.id);
+
+ metaRuleService.update(metaRuleToSend, updateMetaRuleSuccess, updateMetaRuleError);
+
+ function updateMetaRuleSuccess(data){
+
+ $translate('moon.model.metarules.update.success', { metaRuleName: list.metaRule.name }).then( function(translatedValue) {
+ alertService.alertSuccess(translatedValue);
+ });
+
+ metaRuleToSend = metaRuleService.findMetaDataFromMetaRule(utilService.transformOne(data, 'meta_rules'));
+ angular.copy(metaRuleToSend, list.metaRule);
+
+ activate();
+
+ subject.loader = false;
+
+ }
+
+ function updateMetaRuleError(reason){
+
+ $translate('moon.model.metarules.update.error', { metaRuleName: list.metaRule.name, reason: reason.message}).then( function(translatedValue) {
+ alertService.alertError(translatedValue);
+ });
+
+ subject.loader = false;
+
+ }
+
+ }
+
+ function unMapObj(object){
+
+ object.loader = true;
+
+ var metaRuleToSend = angular.copy(list.metaRule);
+
+ metaRuleToSend.object_categories = _.without(metaRuleToSend.object_categories, object.id);
+
+ metaRuleService.update(metaRuleToSend, updateMetaRuleSuccess, updateMetaRuleError);
+
+ function updateMetaRuleSuccess(data){
+
+ $translate('moon.model.metarules.update.success', { metaRuleName: list.metaRule.name }).then( function(translatedValue) {
+ alertService.alertSuccess(translatedValue);
+ });
+
+ metaRuleToSend = metaRuleService.findMetaDataFromMetaRule(utilService.transformOne(data, 'meta_rules'));
+ angular.copy(metaRuleToSend, list.metaRule);
+
+ activate();
+
+ object.loader = false;
+
+ }
+
+ function updateMetaRuleError(reason){
+
+ $translate('moon.model.metarules.update.error', { metaRuleName: list.metaRule.name, reason: reason.message}).then( function(translatedValue) {
+ alertService.alertError(translatedValue);
+ });
+
+ object.loader = false;
+
+ }
+
+ }
+
+ function unMapAct(action){
+
+ action.loader = true;
+
+ var metaRuleToSend = angular.copy(list.metaRule);
+
+ metaRuleToSend.action_categories = _.without(metaRuleToSend.action_categories, action.id);
+
+ metaRuleService.update(metaRuleToSend, updateMetaRuleSuccess, updateMetaRuleError);
+
+ function updateMetaRuleSuccess(data){
+
+ $translate('moon.model.metarules.update.success', { metaRuleName: list.metaRule.name }).then( function(translatedValue) {
+ alertService.alertSuccess(translatedValue);
+ });
+
+ metaRuleToSend = metaRuleService.findMetaDataFromMetaRule(utilService.transformOne(data, 'meta_rules'));
+ angular.copy(metaRuleToSend, list.metaRule);
+
+ activate();
+
+ action.loader = false;
+
+ }
+
+ function updateMetaRuleError(reason){
+
+ $translate('moon.model.metarules.update.error', { metaRuleName: list.metaRule.name, reason: reason.message}).then( function(translatedValue) {
+ alertService.alertError(translatedValue);
+ });
+
+ action.loader = false;
+
+ }
+
+ }
+
+ // /**
+ // * Delete
+ // */
+ //
+ // function deleteSub(subject){
+ //
+ // subject.loader = true;
+ //
+ // metaDataService.subject.delete(subject, deleteSubSuccess, deleteSubError);
+ //
+ // function deleteSubSuccess(data){
+ //
+ // $translate('moon.model.metadata.subject.delete.success', { subjectName: subject.name }).then( function(translatedValue) {
+ // alertService.alertSuccess(translatedValue);
+ // });
+ //
+ // removeSubFromSubList(subject);
+ //
+ // subject.loader = false;
+ //
+ // }
+ //
+ // function deleteSubError(reason){
+ //
+ // $translate('moon.model.metadata.subject.delete.error',
+ // { subjectName: subject.name, reason: reason.message}).then( function(translatedValue) {
+ // alertService.alertError(translatedValue);
+ // });
+ //
+ // subject.loader = false;
+ //
+ // }
+ // }
+ //
+ // function deleteObj(object){
+ //
+ // object.loader = true;
+ //
+ // metaDataService.object.delete(object, deleteObjSuccess, deleteObjError);
+ //
+ // function deleteObjSuccess(data){
+ //
+ // $translate('moon.model.metadata.object.delete.success', { objectName: object.name }).then( function(translatedValue) {
+ // alertService.alertSuccess(translatedValue);
+ // });
+ //
+ // removeObjFromObjList(object);
+ // /*list.catSub = metaDataService.subject.findSome(list.metaRule.subject_categories);
+ // list.catObj = metaDataService.object.findSome(list.metaRule.object_categories);
+ // list.catAct = metaDataService.action.findSome(list.metaRule.action_categories);*/
+ //
+ // object.loader = false;
+ //
+ // }
+ //
+ // function deleteObjError(reason){
+ //
+ // $translate('moon.model.metadata.object.delete.error', { objectName: object.name, reason: reason.message}).then( function(translatedValue) {
+ // alertService.alertError(translatedValue);
+ // });
+ //
+ // object.loader = false;
+ // }
+ // }
+ //
+ // function deleteAct(action){
+ //
+ // action.loader = true;
+ //
+ // metaDataService.action.delete(action, deleteActSuccess, deleteActError);
+ //
+ // function deleteActSuccess(data){
+ //
+ // $translate('moon.model.metadata.action.delete.success', { actionName: action.name }).then( function(translatedValue) {
+ // alertService.alertSuccess(translatedValue);
+ // });
+ //
+ // removeActFromActList(action);
+ //
+ // action.loader = false;
+ //
+ // }
+ //
+ // function deleteActError(reason){
+ //
+ // $translate('moon.model.metadata.action.delete.error', { actionName: action.name, reason: reason.message}).then( function(translatedValue) {
+ // alertService.alertError(translatedValue);
+ // });
+ //
+ // action.loader = false;
+ //
+ // }
+ // }
+
+ function getSubjectCategories(){
+ return list.catSub ? list.catSub : [];
+ }
+
+ function getObjectCategories(){
+ return list.catObj ? list.catObj : [];
+ }
+
+ function getActionCategories(){
+ return list.catAct ? list.catAct : [];
+ }
+
+ // function removeSubFromSubList(subject){
+ // list.catSub = _.without(list.catSub, subject);
+ // }
+ //
+ // function removeObjFromObjList(object){
+ // list.catObj = _.without(list.catObj, object);
+ // }
+ //
+ // function removeActFromActList(action){
+ // list.catAct = _.without(list.catAct, action);
+ // }
+
+ function updateMetaRuleCategories( event, metaRule){
+
+ list.metaRule = metaRule;
+
+ activate();
+
+ }
+
+
+ function deleteMetaRuleCategories( event, metaRule){
+
+ list.metaRule = metaRule;
+
+ activate();
+
+ }
+
+ }
+
+})(); \ No newline at end of file