UNPKG

anthtrigger

Version:

Trigger events via http service

89 lines (76 loc) 1.96 kB
angular.module('anthTrigger') .controller 'userController', ($scope, $http, $modal, $q, notify)-> $scope.st = _st = {} $scope.list = [] loadList = -> _st.list = 'loading' $http .get '/user/list' .success (data)-> $scope.list = data.list or [] if not data.success _st.list = 'error' else _st.list = 'done' loadList() # Convert tags data format between object[] and string # eg: [{ text: 'aaa' }, {text: 'bbb' }] => ['aaa', 'bbb'] convertTags = (data)-> return data?.map? (v)-> if v.text then v.text else { text: v } editModal = (opt)-> $modal.open { backdrop: 'static' keyboard: false templateUrl: "/page/users/edit_user.html" controller: ['$scope', (scope)-> scope.options = opt scope.user = angular.copy opt.user scope.user.tags = convertTags opt.user.tags scope.loadTags = $scope.loadTags ] } .result $scope.addUser = -> editModal { mode: 'add' user: { role: 'tester' } } .then (user)-> # to string user.tags = convertTags(user.tags) $http .post "/user/add", user .success (data)-> loadList() notify "添加用户 #{user.name} 成功!" .error -> notify "添加用户失败!" $scope.editUser = (preUser)-> editModal { mode: 'edit' user: preUser } .then (user)-> # to string user.tags = convertTags(user.tags) $http .post "/user/edit", user .success (data)-> loadList() notify "编辑用户 #{user.name} 成功!" .error -> notify "编辑用户出错!" $scope.loadTags = (query)-> deferred = $q.defer() $http .get '/scripts/tags?q=' + query .success (data)-> deferred.resolve(data.map (v)-> { text: v }) return deferred.promise $scope.frozeUser = (user)-> $http .put '/user/frozen?uid=' + user._id .success (result)-> loadList() .error -> notify "禁用用户失败!"