|
|
@ -10,7 +10,6 @@ using System; |
|
|
using System.Collections.Generic; |
|
|
using System.Collections.Generic; |
|
|
using System.Linq; |
|
|
using System.Linq; |
|
|
using System.Threading.Tasks; |
|
|
using System.Threading.Tasks; |
|
|
using Microsoft.AspNetCore.Authorization; |
|
|
|
|
|
using Microsoft.AspNetCore.Mvc; |
|
|
using Microsoft.AspNetCore.Mvc; |
|
|
using Microsoft.Extensions.Primitives; |
|
|
using Microsoft.Extensions.Primitives; |
|
|
using NSwag.Annotations; |
|
|
using NSwag.Annotations; |
|
|
@ -18,7 +17,6 @@ using Squidex.Infrastructure.CQRS.Commands; |
|
|
using Squidex.Infrastructure.Reflection; |
|
|
using Squidex.Infrastructure.Reflection; |
|
|
using Squidex.Controllers.Api.Apps.Models; |
|
|
using Squidex.Controllers.Api.Apps.Models; |
|
|
using Squidex.Core; |
|
|
using Squidex.Core; |
|
|
using Squidex.Core.Identity; |
|
|
|
|
|
using Squidex.Infrastructure; |
|
|
using Squidex.Infrastructure; |
|
|
using Squidex.Pipeline; |
|
|
using Squidex.Pipeline; |
|
|
using Squidex.Read.Apps.Services; |
|
|
using Squidex.Read.Apps.Services; |
|
|
@ -30,7 +28,7 @@ namespace Squidex.Controllers.Api.Apps |
|
|
/// Manages and configures apps.
|
|
|
/// Manages and configures apps.
|
|
|
/// </summary>
|
|
|
/// </summary>
|
|
|
[ApiExceptionFilter] |
|
|
[ApiExceptionFilter] |
|
|
[ServiceFilter(typeof(AppFilterAttribute))] |
|
|
[AppApi] |
|
|
[SwaggerTag("Apps")] |
|
|
[SwaggerTag("Apps")] |
|
|
public class AppLanguagesController : ControllerBase |
|
|
public class AppLanguagesController : ControllerBase |
|
|
{ |
|
|
{ |
|
|
@ -50,7 +48,7 @@ namespace Squidex.Controllers.Api.Apps |
|
|
/// 200 => Language configuration returned.
|
|
|
/// 200 => Language configuration returned.
|
|
|
/// 404 => App not found.
|
|
|
/// 404 => App not found.
|
|
|
/// </returns>
|
|
|
/// </returns>
|
|
|
[Authorize(Roles = SquidexRoles.AppEditor)] |
|
|
[MustBeAppEditor] |
|
|
[HttpGet] |
|
|
[HttpGet] |
|
|
[Route("apps/{app}/languages/")] |
|
|
[Route("apps/{app}/languages/")] |
|
|
[ProducesResponseType(typeof(LanguageDto[]), 200)] |
|
|
[ProducesResponseType(typeof(LanguageDto[]), 200)] |
|
|
@ -87,7 +85,7 @@ namespace Squidex.Controllers.Api.Apps |
|
|
/// 400 => Language is an invalid language.
|
|
|
/// 400 => Language is an invalid language.
|
|
|
/// 404 => App not found.
|
|
|
/// 404 => App not found.
|
|
|
/// </returns>
|
|
|
/// </returns>
|
|
|
[Authorize(Roles = SquidexRoles.AppOwner)] |
|
|
[MustBeAppOwner] |
|
|
[HttpPost] |
|
|
[HttpPost] |
|
|
[Route("apps/{app}/languages/")] |
|
|
[Route("apps/{app}/languages/")] |
|
|
[ProducesResponseType(typeof(AppLanguageDto), 201)] |
|
|
[ProducesResponseType(typeof(AppLanguageDto), 201)] |
|
|
@ -113,7 +111,7 @@ namespace Squidex.Controllers.Api.Apps |
|
|
/// 400 => Language is an invalid language.
|
|
|
/// 400 => Language is an invalid language.
|
|
|
/// 404 => App not found.
|
|
|
/// 404 => App not found.
|
|
|
/// </returns>
|
|
|
/// </returns>
|
|
|
[Authorize(Roles = SquidexRoles.AppOwner)] |
|
|
[MustBeAppOwner] |
|
|
[HttpPut] |
|
|
[HttpPut] |
|
|
[Route("apps/{app}/languages/{language}")] |
|
|
[Route("apps/{app}/languages/{language}")] |
|
|
[ApiCosts(1)] |
|
|
[ApiCosts(1)] |
|
|
@ -134,7 +132,7 @@ namespace Squidex.Controllers.Api.Apps |
|
|
/// 400 => Language is an invalid language.
|
|
|
/// 400 => Language is an invalid language.
|
|
|
/// 404 => App not found.
|
|
|
/// 404 => App not found.
|
|
|
/// </returns>
|
|
|
/// </returns>
|
|
|
[Authorize(Roles = SquidexRoles.AppOwner)] |
|
|
[MustBeAppOwner] |
|
|
[HttpDelete] |
|
|
[HttpDelete] |
|
|
[Route("apps/{app}/languages/{language}")] |
|
|
[Route("apps/{app}/languages/{language}")] |
|
|
[ApiCosts(1)] |
|
|
[ApiCosts(1)] |
|
|
|