aboutsummaryrefslogtreecommitdiff
path: root/BackEnd/Timeline/Models/Http/HttpUserPatchRequest.cs
blob: e7a3d8e35afcad1b58ca1bcb877f0475a2272110 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
using System.ComponentModel.DataAnnotations;
using Timeline.Controllers;
using Timeline.Models.Validation;

namespace Timeline.Models.Http
{
    /// <summary>
    /// Request model for <see cref="UserController.Patch(HttpUserPatchRequest, string)"/>.
    /// </summary>
    public class HttpUserPatchRequest
    {
        /// <summary>
        /// New username. Null if not change. Need to be administrator.
        /// </summary>
        [Username]
        public string? Username { get; set; }

        /// <summary>
        /// New password. Null if not change. Need to be administrator.
        /// </summary>
        [MinLength(1)]
        public string? Password { get; set; }

        /// <summary>
        /// New nickname. Null if not change. Need to be administrator to change other's.
        /// </summary>
        [Nickname]
        public string? Nickname { get; set; }
    }
}