public async Task <IActionResult> UploadZbor(RepozitorijZborViewModel model) { ApplicationUser user = await _userManager.GetUserAsync(HttpContext.User); var files = model.FormFiles; long size = files.Sum(f => f.Length); foreach (var formFile in files) { if (formFile.Length > 0) { DirectoryInfo di = Directory.CreateDirectory(LOCATION_CHOIR + model.IdZbor); var filePath = "Zbor/" + model.IdZbor + "/" + formFile.FileName; RepozitorijZbor dat = new RepozitorijZbor { Id = Guid.NewGuid(), DatumPostavljanja = DateTime.Now, IdKorisnik = user.Id, IdZbor = model.IdZbor, Url = filePath, Privatno = true, Naziv = formFile.FileName }; var fullPath = LOCATION + filePath; using (var stream = System.IO.File.Create(fullPath)) { await formFile.CopyToAsync(stream); } _ctx.Add(dat); } var pretplatnici = _ctx.PretplataNaZbor.Where(p => p.IdZbor == model.IdZbor).Select(p => p.IdKorisnik).ToHashSet(); foreach (var pret in pretplatnici) { OsobneObavijesti ob = new OsobneObavijesti { Id = Guid.NewGuid(), IdKorisnik = pret, Tekst = String.Format("Nove datoteke u zboru <b>{0}</b>.", _ctx.Zbor.Find(model.IdZbor).Naziv), Procitano = false, Poveznica = "/Repozitorij/Zbor/" + model.IdZbor }; _ctx.Add(ob); await _hubContext.Clients.User(pret.ToString()).SendAsync("NovaObavijest", new { id = ob.Id, poveznica = ob.Poveznica, procitano = ob.Procitano, datum = ob.Datum, tekst = ob.Tekst }); } _ctx.SaveChanges(); } return(RedirectToAction("Zbor", new { id = model.IdZbor })); }
public void Preuzmi(RepozitorijZbor dat) { _apiServices.PreuzmiZborAsync(dat); }
public async void Obrisi(RepozitorijZbor dat) { Datoteke.Remove(dat); await _apiServices.ObrisiRepozitorijZborAsync(dat.Id); }
public async void Vidljivost(RepozitorijZbor dat) { await _apiServices.VidljivostZborAsync(dat.Id, dat.Privatno? "privatizirajzbor" : "objavizbor"); }