diff options
| author | Danail Dimitrov <danaildimitrov321@gmail.com> | 2021-01-26 15:50:16 +0200 |
|---|---|---|
| committer | Danail Dimitrov <danaildimitrov321@gmail.com> | 2021-01-26 15:50:16 +0200 |
| commit | acf0e2f3908ba45dca1ff04cc1e5a892cc2cdbf0 (patch) | |
| tree | 38c290bd7bad75edfdeb9631948ef654c3a282f0 /src/DevHive.Web/Controllers/LanguageController.cs | |
| parent | f61da9c07ff37cb350528e255539b4ec11181bde (diff) | |
| parent | bddc0b0566bc19e936ccae9d3aa16b6e0116b186 (diff) | |
| download | DevHive-acf0e2f3908ba45dca1ff04cc1e5a892cc2cdbf0.tar DevHive-acf0e2f3908ba45dca1ff04cc1e5a892cc2cdbf0.tar.gz DevHive-acf0e2f3908ba45dca1ff04cc1e5a892cc2cdbf0.zip | |
Merge branch 'dev' of https://github.com/Team-Kaleidoscope/DevHive into dev
Diffstat (limited to 'src/DevHive.Web/Controllers/LanguageController.cs')
| -rw-r--r-- | src/DevHive.Web/Controllers/LanguageController.cs | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/src/DevHive.Web/Controllers/LanguageController.cs b/src/DevHive.Web/Controllers/LanguageController.cs index c0c5fd1..85ec1e1 100644 --- a/src/DevHive.Web/Controllers/LanguageController.cs +++ b/src/DevHive.Web/Controllers/LanguageController.cs @@ -1,4 +1,5 @@ using System; +using System.Collections.Generic; using System.Threading.Tasks; using AutoMapper; using DevHive.Services.Interfaces; @@ -11,7 +12,6 @@ namespace DevHive.Web.Controllers { [ApiController] [Route("/api/[controller]")] - [Authorize(Policy = "Administrator")] public class LanguageController { private readonly ILanguageService _languageService; @@ -24,6 +24,7 @@ namespace DevHive.Web.Controllers } [HttpPost] + [Authorize(Roles = "Admin")] public async Task<IActionResult> Create([FromBody] CreateLanguageWebModel createLanguageWebModel) { CreateLanguageServiceModel languageServiceModel = this._languageMapper.Map<CreateLanguageServiceModel>(createLanguageWebModel); @@ -36,7 +37,7 @@ namespace DevHive.Web.Controllers } [HttpGet] - [Authorize(Policy = "User")] + [Authorize(Roles = "User,Admin")] public async Task<IActionResult> GetById(Guid id) { ReadLanguageServiceModel languageServiceModel = await this._languageService.GetLanguageById(id); @@ -45,7 +46,19 @@ namespace DevHive.Web.Controllers return new OkObjectResult(languageWebModel); } + [HttpGet] + [Route("GetLanguages")] + [Authorize(Roles = "User,Admin")] + public IActionResult GetAllExistingLanguages() + { + HashSet<ReadLanguageServiceModel> languageServiceModels = this._languageService.GetLanguages(); + HashSet<ReadLanguageWebModel> languageWebModels = this._languageMapper.Map<HashSet<ReadLanguageWebModel>>(languageServiceModels); + + return new OkObjectResult(languageWebModels); + } + [HttpPut] + [Authorize(Roles = "Admin")] public async Task<IActionResult> Update(Guid id, [FromBody] UpdateLanguageWebModel updateModel) { UpdateLanguageServiceModel updatelanguageServiceModel = this._languageMapper.Map<UpdateLanguageServiceModel>(updateModel); @@ -60,6 +73,7 @@ namespace DevHive.Web.Controllers } [HttpDelete] + [Authorize(Roles = "Admin")] public async Task<IActionResult> Delete(Guid id) { bool result = await this._languageService.DeleteLanguage(id); |
