message: API: Fix MediaController
  Using '@UseBefore(passportJwtMiddleware)' is now functionally required
  due to the changes in CurrentUserDecorator and RoleAuthorization since
  the 'jwtData' must be set. (Although this probably should have been
  added to MediaController.ts regardless.)
diff: import {
  - Authorized, Body, Delete, Get, JsonController, NotFoundError, Param, Post, Put,
  + Authorized, UseBefore, Body, Delete, Get, JsonController, NotFoundError, Param, Post, Put,
  UploadedFile
  } from 'routing-controllers';
  +import passportJwtMiddleware from '../security/passportJwtMiddleware';
  import {Directory} from '../models/mediaManager/Directory';
  import {File} from '../models/mediaManager/File';
  import {IDirectory} from '../../../shared/models/mediaManager/IDirectory';
  @@ -27,14 +28,16 @@ const uploadOptions = {
  };
  @JsonController('/media')
  -@Authorized()
  +@UseBefore(passportJwtMiddleware)
  export class MediaController {
  + @Authorized(['student', 'teacher', 'admin'])
  @Get('/directory/:id')
  async getDirectory(@Param('id') directoryId: string) {
  const directory = await Directory.findById(directoryId);
  return directory.toObject();
  }
  + @Authorized(['student', 'teacher', 'admin'])
  @Get('/directory/:id/lazy')
  async getDirectoryLazy(@Param('id') directoryId: string) {
  const directory = await Directory.findById(directoryId)
  @@ -43,6 +46,7 @@ export class MediaController {
  return directory.toObject();
  }
  + @Authorized(['student', 'teacher', 'admin'])
  @Get('/file/:id')
  async getFile(@Param('id') fileId: string) {
  const file = await File.findById(fileId);
  