public async Task <IActionResult> CreatePluginAsync(CreatePluginRequest request) { if (await _srv.GetPluginByGuidAsync(request.Guid) != null) { return(BadRequest(new GenericResponse { Success = false, Message = "Bad Guid to create a new plugin." })); } var userId = HttpContext.User.FindFirstValue(ClaimTypes.Sid); var pluginEntity = await _srv.CreatePluginAsync(request, userId); return(Ok(new GenericResponse <PluginEntity> { Success = true, Message = "Created plugin.", Data = pluginEntity })); }
public async Task <PluginEntity> CreatePluginAsync(CreatePluginRequest request, int userId) { var pluginEntity = new PluginEntity { Guid = request.Guid, Name = request.Name, Description = request.Description, MarkdownDescription = request.MarkdownDescription, StarCount = 0, CreatorUserId = userId, ServerDistroId = request.ServerDistroId, ImageUrl = request.ImageUrl, CreatedAt = DateTimeOffset.UtcNow, UpdatedAt = DateTimeOffset.UtcNow }; await _database.Plugins.AddAsync(pluginEntity); await _database.SaveChangesAsync(); return(pluginEntity); }
public async Task <PluginEntity> CreatePluginAsync(CreatePluginRequest request, string userId) { return(await CreatePluginAsync(request, int.Parse(userId))); }