Compare commits
	
		
			2 Commits
		
	
	
		
			e78858b7b4
			...
			d555fcaf17
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| d555fcaf17 | |||
| 2fdefae718 | 
| @@ -240,7 +240,14 @@ public class PublisherController( | |||||||
|  |  | ||||||
|     public class PublisherRequest |     public class PublisherRequest | ||||||
|     { |     { | ||||||
|         [MaxLength(256)] public string? Name { get; set; } |         [RegularExpression( | ||||||
|  |             @"^[a-zA-Z0-9](?:[a-zA-Z0-9\-_\.]*[a-zA-Z0-9])?$", | ||||||
|  |             ErrorMessage = | ||||||
|  |                 "Name must be URL-safe (alphanumeric, hyphens, underscores, or periods) and cannot start/end with special characters." | ||||||
|  |         )] | ||||||
|  |         [MaxLength(256)] | ||||||
|  |         public string? Name { get; set; } | ||||||
|  |  | ||||||
|         [MaxLength(256)] public string? Nick { get; set; } |         [MaxLength(256)] public string? Nick { get; set; } | ||||||
|         [MaxLength(4096)] public string? Bio { get; set; } |         [MaxLength(4096)] public string? Bio { get; set; } | ||||||
|  |  | ||||||
| @@ -253,6 +260,8 @@ public class PublisherController( | |||||||
|     [RequiredPermission("global", "publishers.create")] |     [RequiredPermission("global", "publishers.create")] | ||||||
|     public async Task<ActionResult<Publisher>> CreatePublisherIndividual([FromBody] PublisherRequest request) |     public async Task<ActionResult<Publisher>> CreatePublisherIndividual([FromBody] PublisherRequest request) | ||||||
|     { |     { | ||||||
|  |         if (string.IsNullOrEmpty(request.Name) || string.IsNullOrEmpty(request.Nick)) | ||||||
|  |             return BadRequest("Name and Nick are required."); | ||||||
|         if (HttpContext.Items["CurrentUser"] is not Account currentUser) return Unauthorized(); |         if (HttpContext.Items["CurrentUser"] is not Account currentUser) return Unauthorized(); | ||||||
|  |  | ||||||
|         var takenName = request.Name ?? currentUser.Name; |         var takenName = request.Name ?? currentUser.Name; | ||||||
| @@ -320,6 +329,8 @@ public class PublisherController( | |||||||
|     public async Task<ActionResult<Publisher>> CreatePublisherOrganization(string realmSlug, |     public async Task<ActionResult<Publisher>> CreatePublisherOrganization(string realmSlug, | ||||||
|         [FromBody] PublisherRequest request) |         [FromBody] PublisherRequest request) | ||||||
|     { |     { | ||||||
|  |         if (string.IsNullOrEmpty(request.Name) || string.IsNullOrEmpty(request.Nick)) | ||||||
|  |             return BadRequest("Name and Nick are required."); | ||||||
|         if (HttpContext.Items["CurrentUser"] is not Account currentUser) return Unauthorized(); |         if (HttpContext.Items["CurrentUser"] is not Account currentUser) return Unauthorized(); | ||||||
|  |  | ||||||
|         var realm = await db.Realms.FirstOrDefaultAsync(r => r.Slug == realmSlug); |         var realm = await db.Realms.FirstOrDefaultAsync(r => r.Slug == realmSlug); | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user