public async Task <IActionResult> Post([FromBody] CreateUserViewModel createUserViewModel)
        {
            string userName = createUserViewModel.Name;
            string gameCode = createUserViewModel.GameCode.ToUpper();
            SqlConnectionString sqlConnectionString = new SqlConnectionString();
            string connectionString = sqlConnectionString.GetSqlConnectionString();

            Game gameHelper = new Game()
            {
                SqlConnectionString = connectionString
            };

            User userHelper = new User()
            {
                SqlConnectionString = connectionString
            };

            JWT jwtHelper = new JWT();

            int game = await gameHelper.GetGameFromCodeAsync(gameCode);

            string jwt = await jwtHelper.GenerateJwtAsync(await userHelper.CreateUserAsync(userName, game, false),
                                                          game,
                                                          userName,
                                                          gameCode,
                                                          false,
                                                          Environment.GetEnvironmentVariable("JWT_KEY"));

            var returnObject = new { JWT = jwt };

            return((ActionResult) new OkObjectResult(JsonConvert.SerializeObject(returnObject)));
        }
Exemple #2
0
        public static async Task <IActionResult> Run(
            [HttpTrigger(AuthorizationLevel.Anonymous, "post", Route = null)] HttpRequest req,
            ILogger log)
        {
            string  requestBody = await new StreamReader(req.Body).ReadToEndAsync();
            dynamic data        = JsonConvert.DeserializeObject(requestBody);

            Game gameHelper = new Game()
            {
                SqlConnectionString = Environment.GetEnvironmentVariable("SQL_CONNECTION_STRING")
            };

            User userHelper = new User()
            {
                SqlConnectionString = Environment.GetEnvironmentVariable("SQL_CONNECTION_STRING")
            };

            Database database = new Database()
            {
                SqlConnectionString = Environment.GetEnvironmentVariable("SQL_CONNECTION_STRING")
            };

            JWT jwtHelper = new JWT();

            string userName = data.Name;

            await database.CreateSchemaAsync();

            string gameCode = gameHelper.GenerateGameCode(5);
            int    game     = await gameHelper.CreateGameAsync(gameCode);

            int user = await userHelper.CreateUserAsync(userName, game, true);

            string jwt = await jwtHelper.GenerateJwtAsync(user,
                                                          game,
                                                          userName,
                                                          gameCode,
                                                          true,
                                                          Environment.GetEnvironmentVariable("JWT_KEY"));

            var returnObject = new { JWT = jwt };

            return(new OkObjectResult(JsonConvert.SerializeObject(returnObject)));
        }
Exemple #3
0
        public static async Task <IActionResult> Run(
            [HttpTrigger(AuthorizationLevel.Anonymous, "post", Route = null)] HttpRequest req,
            ILogger log)
        {
            log.LogInformation("C# HTTP trigger function processed a request.");

            string  requestBody = await new StreamReader(req.Body).ReadToEndAsync();
            dynamic data        = JsonConvert.DeserializeObject(requestBody);

            string userName = data.Name;
            string gameCode = data.GameCode;

            gameCode = gameCode.ToUpper();

            Game gameHelper = new Game()
            {
                SqlConnectionString = Environment.GetEnvironmentVariable("SQL_CONNECTION_STRING")
            };

            User userHelper = new User()
            {
                SqlConnectionString = Environment.GetEnvironmentVariable("SQL_CONNECTION_STRING")
            };

            JWT jwtHelper = new JWT();

            int game = await gameHelper.GetGameFromCodeAsync(gameCode);

            string jwt = await jwtHelper.GenerateJwtAsync(await userHelper.CreateUserAsync(userName, game, false),
                                                          game,
                                                          userName,
                                                          gameCode,
                                                          false,
                                                          Environment.GetEnvironmentVariable("JWT_KEY"));

            var returnObject = new { JWT = jwt };

            return((ActionResult) new OkObjectResult(JsonConvert.SerializeObject(returnObject)));
/*                : new BadRequestObjectResult("Please pass a name on the query string or in the request body");*/
        }
        public async Task <IActionResult> Post([FromBody] CreateGameViewModel createGameViewModel)
        {
            SqlConnectionString sqlConnectionString = new SqlConnectionString();
            string connectionString = sqlConnectionString.GetSqlConnectionString();
            Game   gameHelper       = new Game()
            {
                SqlConnectionString = connectionString
            };

            User userHelper = new User()
            {
                SqlConnectionString = connectionString
            };

            Database database = new Database()
            {
                SqlConnectionString = connectionString
            };

            JWT jwtHelper = new JWT();

            string userName = createGameViewModel.Name;

            await database.CreateSchemaAsync();

            string gameCode = gameHelper.GenerateGameCode(5);
            int    game     = await gameHelper.CreateGameAsync(gameCode);


            string jwt = await jwtHelper.GenerateJwtAsync(
                await userHelper.CreateUserAsync(userName, game, true),
                game,
                userName,
                gameCode,
                true,
                Environment.GetEnvironmentVariable("JWT_KEY"));

            return(new OkObjectResult(JsonConvert.SerializeObject(new { JWT = jwt })));
        }