community-app/app/scripts/controllers/organization/EditUserController.js
2014-03-02 04:09:27 -08:00

43 lines
1.8 KiB
JavaScript

(function (module) {
mifosX.controllers = _.extend(module, {
EditUserController: function (scope, routeParams, resourceFactory, location) {
scope.offices = [];
scope.availableRoles = [];
scope.user = [];
scope.selectedRoles = [];
resourceFactory.userListResource.get({userId: routeParams.id, template: 'true'}, function (data) {
scope.formData = data;
scope.userId = data.id;
scope.offices = data.allowedOffices;
scope.availableRoles = data.availableRoles.concat(data.selectedRoles);
});
scope.submit = function () {
delete this.formData.allowedOffices; // removing allowed office list
delete this.formData.availableRoles; // removing allowed roles list
delete this.formData.officeName; //
// reformatting selected roles
var userId = this.formData.id;
delete this.formData.id;
var roles = [];
for (var i = 0; i < scope.formData.selectedRoles.length; i++) {
roles.push(scope.formData.selectedRoles[i].id);
}
this.formData.roles = roles;
delete this.formData.selectedRoles;
resourceFactory.userListResource.update({'userId': userId}, this.formData, function (data) {
location.path('/viewuser/' + data.resourceId);
});
};
}
});
mifosX.ng.application.controller('EditUserController', ['$scope', '$routeParams', 'ResourceFactory', '$location', mifosX.controllers.EditUserController]).run(function ($log) {
$log.info("EditUserController initialized");
});
}(mifosX.controllers || {}));