mirror of
				https://github.com/Unleash/unleash.git
				synced 2025-10-27 11:02:16 +01:00 
			
		
		
		
	This sets up the typescript compiler. Allowing gradual migration to typescript. Co-authored-by: Christopher Kolstad <chriswk@getunleash.ai> Co-authored-by: Ivar Conradi Østhus <ivarconr@gmail.com> Co-authored-by: Fredrik Oseberg <fredrik.oseberg@getunleash.ai> Co-authored-by: Clint Checkett <clintchecketts@churchofjesuschrist.org> fixes: #676
		
			
				
	
	
		
			41 lines
		
	
	
		
			1018 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			41 lines
		
	
	
		
			1018 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| 'use strict';
 | |
| 
 | |
| const Controller = require('../controller');
 | |
| 
 | |
| class UserController extends Controller {
 | |
|     constructor(config) {
 | |
|         super(config);
 | |
|         this.get('/', this.getUser);
 | |
|         this.get('/logout', this.logout);
 | |
|     }
 | |
| 
 | |
|     getUser(req, res) {
 | |
|         if (req.user) {
 | |
|             const user = { ...req.user };
 | |
|             if (!this.config.extendedPermissions) {
 | |
|                 delete user.permissions;
 | |
|             } else if (!Array.isArray(user.permissions)) {
 | |
|                 user.permissions = [];
 | |
|             }
 | |
|             return res
 | |
|                 .status(200)
 | |
|                 .json(user)
 | |
|                 .end();
 | |
|         }
 | |
|         return res.status(404).end();
 | |
|     }
 | |
| 
 | |
|     // Depcreated, use "/logout" instead.  Will be removed in later release.
 | |
|     logout(req, res) {
 | |
|         if (req.session) {
 | |
|             req.session = null;
 | |
|         }
 | |
|         if (req.logout) {
 | |
|             req.logout();
 | |
|         }
 | |
|         res.redirect(`${this.config.baseUriPath}/`);
 | |
|     }
 | |
| }
 | |
| 
 | |
| module.exports = UserController;
 |