summaryrefslogtreecommitdiff
path: root/Project-Unite/Models/Download.cs
blob: 545e4ff4d1196313a3500de90b47fa914a70f71b (plain) (blame)
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Web;
using System.Web.Mvc;

namespace Project_Unite.Models
{
    public class Download
    {
        [Required]
        public string Id { get; set; }

        public Bug[] OpenBugs
        {
            get
            {
                return new ApplicationDbContext().Bugs.Where(x => x.ReleaseId == this.Id && x.Open == true).ToArray();
            }
        }


        [Required]
        public string Name { get; set; }

        [Required]
        [AllowHtml]
        public string Changelog { get; set; }

        [Required]
        public string DownloadUrl { get; set; }

        [Required]
        public bool Obsolete { get; set; }

        [Required]
        public DateTime PostDate { get; set; }

        [Required]
        public string ReleasedBy { get; set; }

        public string DevUpdateId { get; set; }


        public string ScreenshotUrl { get; set; }

        [Required]
        public bool IsStable { get; set; }
    }

    public class PostDownloadViewModel
    {
        [Required(ErrorMessage = "You must name your build!")]
        public string Name { get; set; }

        [DataType(DataType.Upload)]
        public HttpPostedFileBase Screenshot { get; set; }

        public string DevUpdateId { get; set; }

        [Required(ErrorMessage ="Well, is it a beta or not?")]
        public bool IsStable { get; set; }

        [Required(ErrorMessage ="Can you...describe the build?")]
        [AllowHtml]
        public string Changelog { get; set; }

        [Required(ErrorMessage ="We can't just pull a download out of thin air! Please, upload a release.")]
        [DataType(DataType.Upload)]
        public HttpPostedFileBase Download { get; set; }
        
    }
}