Ejemplo n.º 1
0
 public static void Initialization()
 {
     mail       = new MailF();
     auth       = new Authorization();
     loaderFile = new LoaderFile();
     uploader   = new UploadApp();
     upload     = new UploadF();
 }
Ejemplo n.º 2
0
        public async Task <HttpResponseMessage> Upload()
        {
            UploadApp updApp = new UploadApp();

            if (!Request.Content.IsMimeMultipartContent())
            {
                return(Request.CreateResponse(HttpStatusCode.BadRequest, "Ошибка при загрузке файла"));
            }

            updApp.App = new Application();
            updApp.GetProvider();



            await Request.Content.ReadAsMultipartAsync(updApp.Provider);

            await updApp.ReadFileAsync();

            List <Error> errors = await updApp.ValidateAsync();

            //Валидация

            foreach (Error error in errors)
            {
                ModelState.AddModelError(error.Name, error.Text);
            }


            updApp.App.ApplicationUserId = IdentityExtensions.GetUserId(User.Identity);
            updApp.App.Date = DateTime.Now.ToString("dd MMMM yyyy | HH:mm:ss");
            //updApp.App.Id = Guid.NewGuid().ToString();


            ApplicationUserManager userManager = Request.GetOwinContext().GetUserManager <ApplicationUserManager>();

            // если не админ то подтверждение нужно
            if (!userManager.IsInRole(IdentityExtensions.GetUserId(User.Identity), "Admin"))
            {
                updApp.App.Hide = true;
            }
            updApp.App.Delete   = false;
            updApp.App.Path     = updApp.Path;
            updApp.App.PathIcon = updApp.PathIcon;



            if (!ModelState.IsValid) //валидация
            {
                return(Request.CreateResponse(HttpStatusCode.BadRequest, ModelState));
            }
            _db.Applications.Add(updApp.App);

            _db.SaveChanges();



            return(Request.CreateResponse(HttpStatusCode.Created, updApp.App));
        }