user-profile-view.js
48 lines
| 1.7 KiB
| application/javascript
|
JavascriptLexer
r112 | // 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. | ||||
r0 | ||||
r79 | angular.module('appenlight.components.userProfileView', []) | |||
.component('userProfileView', { | ||||
templateUrl: 'components/views/user-profile-view/user-profile-view.html', | ||||
controller: UserProfileViewController | ||||
}); | ||||
r0 | ||||
r82 | UserProfileViewController.$inject = ['$state', 'userSelfResource']; | |||
r0 | ||||
r82 | function UserProfileViewController($state, userSelfResource) { | |||
r79 | console.debug('UserProfileViewController'); | |||
r0 | var vm = this; | |||
r82 | vm.$state = $state; | |||
r0 | vm.loading = {profile: true}; | |||
vm.user = userSelfResource.get(null, function (data) { | ||||
vm.loading.profile = false; | ||||
console.log('loaded profile'); | ||||
}); | ||||
vm.updateProfile = function () { | ||||
vm.loading.profile = true; | ||||
console.log('updateProfile'); | ||||
vm.user.$update(null, function () { | ||||
vm.loading.profile = false; | ||||
setServerValidation(vm.profileForm); | ||||
}, function (response) { | ||||
if (response.status == 422) { | ||||
setServerValidation(vm.profileForm, response.data); | ||||
} | ||||
vm.loading.profile = false; | ||||
}); | ||||
} | ||||
} | ||||