// Copyright 2010 - 2017 RhodeCode GmbH and the AppEnlight project authors // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. angular.module('appenlight.components.userAuthTokensView', []) .component('userAuthTokensView', { templateUrl: 'components/views/user-auth-tokens-view/user-auth-tokens-view.html', controller: userAuthTokensViewController }); userAuthTokensViewController.$inject = ['$state', 'userSelfPropertyResource', 'AeConfig']; function userAuthTokensViewController($state, userSelfPropertyResource, AeConfig) { console.debug('userAuthTokensViewController'); var vm = this; vm.$state = $state; vm.loading = {tokens: true}; vm.expireOptions = AeConfig.timeOptions; vm.tokens = userSelfPropertyResource.query({key: 'auth_tokens'}, function (data) { vm.loading.tokens = false; }); vm.addToken = function () { vm.loading.tokens = true; userSelfPropertyResource.save({key: 'auth_tokens'}, vm.form, function (data) { vm.loading.tokens = false; setServerValidation(vm.TokenForm); vm.form = {}; vm.tokens.push(data); }, function (response) { vm.loading.tokens = false; if (response.status == 422) { setServerValidation(vm.TokenForm, response.data); } }) }; vm.removeToken = function (token) { userSelfPropertyResource.delete({ key: 'auth_tokens', token: token.token }, function () { var index = vm.tokens.indexOf(token); if (index !== -1) { vm.tokens.splice(index, 1); } }) } }