update from RIFT as of 696b75d2fe9fb046261b08c616f1bcf6c0b54a9b third try
[osm/UI.git] / skyquake / framework / core / modules / routes / userManagement.js
1
2 /*
3 *
4 * Copyright 2016 RIFT.IO Inc
5 *
6 * Licensed under the Apache License, Version 2.0 (the "License");
7 * you may not use this file except in compliance with the License.
8 * You may obtain a copy of the License at
9 *
10 * http://www.apache.org/licenses/LICENSE-2.0
11 *
12 * Unless required by applicable law or agreed to in writing, software
13 * distributed under the License is distributed on an "AS IS" BASIS,
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing permissions and
16 * limitations under the License.
17 *
18 */
19
20 /**
21 * inactivity routes module. Provides a RESTful API for this
22 * skyquake instance's inactivity state.
23 * @module framework/core/modules/routes/inactivity
24 * @author Laurence Maultsby <laurence.maultsby@riftio.com>
25 */
26
27 var cors = require('cors');
28 var bodyParser = require('body-parser');
29 var Router = require('express').Router();
30 var utils = require('../../api_utils/utils');
31 var UserManagementAPI = require('../api/userManagementAPI.js');
32
33 Router.use(bodyParser.json());
34 Router.use(cors());
35 Router.use(bodyParser.urlencoded({
36 extended: true
37 }));
38
39 Router.get('/user', cors(), function(req, res) {
40 UserManagementAPI.get(req).then(function(response) {
41 utils.sendSuccessResponse(response, res);
42 }, function(error) {
43 utils.sendErrorResponse(error, res);
44 });
45 });
46 Router.get('/user-profile', cors(), function(req, res) {
47 UserManagementAPI.getProfile(req).then(function(response) {
48 utils.sendSuccessResponse(response, res);
49 }, function(error) {
50 utils.sendErrorResponse(error, res);
51 });
52 });
53 Router.get('/user-data/:userId/:domain?', cors(), function(req, res) {
54 UserManagementAPI.getUserInfo(req).then(function(response) {
55 utils.sendSuccessResponse(response, res);
56 }, function(error) {
57 utils.sendErrorResponse(error, res);
58 });
59 });
60 Router.post('/user', cors(), function(req, res) {
61 UserManagementAPI.create(req).then(function(response) {
62 utils.sendSuccessResponse(response, res);
63 }, function(error) {
64 utils.sendErrorResponse(error, res);
65 });
66 });
67 Router.put('/user', cors(), function(req, res) {
68 UserManagementAPI.update(req).then(function(response) {
69 utils.sendSuccessResponse(response, res);
70 }, function(error) {
71 utils.sendErrorResponse(error, res);
72 });
73 });
74 Router.delete('/user/:username/:domain', cors(), function(req, res) {
75 UserManagementAPI.delete(req).then(function(response) {
76 utils.sendSuccessResponse(response, res);
77 }, function(error) {
78 utils.sendErrorResponse(error, res);
79 });
80 });
81
82 module.exports = Router;
83
84
85