public async Task <ActionResult> CriaBeaconAsync(CityList model) { string men = model.CreateBeacon.Mesage; string username = User.Identity.GetUserName(); DataService dataService = new DataService(); Admin ad = new Admin(); ad = await dataService.GetAdminByIdAsync(username); string admin = ""; int flag = 0; if (ad == null) { SuperAdmin superadmin = new SuperAdmin(); superadmin = await dataService.GetSuperAdminByIdAsync(username); admin = superadmin.email; flag = 1; } else { admin = ad.email; flag = 0; } Beacon beacon = new Beacon(); beacon.beaconID = model.CreateBeacon.BeaconId; beacon.majorvalue = model.CreateBeacon.MajorValue; beacon.minorvalue = model.CreateBeacon.MinorValue; beacon.model = model.CreateBeacon.Model; if (model.CreateBeacon.Nome.Contains("-") || model.CreateBeacon.Mesage.Contains("-")) { ModelState.AddModelError("", "Beacon should not contain - in the name and in the message."); return(View(model)); } if (model.CreateBeacon.ActiveBeacon == true) { beacon.name = "active-" + model.CreateBeacon.Nome + "-0"; } else { beacon.name = "inactive-" + model.CreateBeacon.Nome + "-0"; } List <ListaAdminB> lista = new List <ListaAdminB>(); List <BA> baaa = new List <BA>(); baaa = dataService.GetBAAsync(); int max = 0; int i = 0; for (i = 0; i < baaa.Count(); i++) { if (max < baaa[i].baID) { max = baaa[i].baID; } } //lista = (List<ListaAdminB>)model2; bool a = await dataService.AddBeaconAsync(beacon, admin, men, flag); for (i = 0; i < model.list.Count(); i++) { if (model.list[i].addAdmin == true) { max = max + 1; BA ba = new BA(); ba.baID = max; ba.adminemail = model.list[i].Email; ba.beaconID = model.CreateBeacon.BeaconId; bool verdade = dataService.AddBaAsync(ba); } } if (a == true) { Success(string.Format("<b>{0}</b> created with success!", beacon.beaconID), true); return(RedirectToAction("Index", "Home")); } ModelState.AddModelError("", "Beacon already registered."); return(View(model)); }
public async Task <ActionResult> EditaAdmin(AdminListDetailsBeacon model) { DataService dataService = new DataService(); if (ModelState.IsValid) { Admin novoAdmin = new Admin(); if (User.Identity.Name == "toze") { novoAdmin.name = model.EditaAdminViewModel.Nome; novoAdmin.username = model.EditaAdminViewModel.Username; novoAdmin.email = model.EditaAdminViewModel.Email; novoAdmin.password = model.EditaAdminViewModel.Password; } else { string pass = sha256_hash(model.EditaAdminViewModel.Password); novoAdmin.name = model.EditaAdminViewModel.Nome; novoAdmin.username = model.EditaAdminViewModel.Username; novoAdmin.email = model.EditaAdminViewModel.Email; novoAdmin.password = pass; } if (User.Identity.Name == "toze") { List <BA> baaa = new List <BA>(); baaa = dataService.GetBAAsync(); int max = 0; int i = 0; for (i = 0; i < baaa.Count(); i++) { if (max < baaa[i].baID) { max = baaa[i].baID; } } for (i = 0; i < model.listaDetailsBeacon.Count(); i++) { if (model.listaDetailsBeacon[i].addAdmin == true && baaa.FirstOrDefault(x => x.beaconID == model.listaDetailsBeacon[i].beaconID && x.adminemail == model.EditaAdminViewModel.Email) == null) { max = max + 1; BA ba = new BA(); ba.baID = max; ba.adminemail = model.EditaAdminViewModel.Email; ba.beaconID = model.listaDetailsBeacon[i].beaconID; bool verdade = dataService.AddBaAsync(ba); } else if (baaa.FirstOrDefault(x => model.listaDetailsBeacon[i].addAdmin == true && x.beaconID == model.listaDetailsBeacon[i].beaconID && x.adminemail == model.EditaAdminViewModel.Email) != null) { continue; } else { for (int j = 0; j < baaa.Count(); j++) { if (baaa[j].adminemail == model.EditaAdminViewModel.Email && baaa[j].beaconID == model.listaDetailsBeacon[i].beaconID) { dataService.DeletaBAAsync(baaa[j].baID); break; } } } } } bool a = await dataService.UpdateAdmin(novoAdmin); if (a == true) { Success(string.Format("'<b>{0}</b>' edited with success!", model.EditaAdminViewModel.Nome), true); return(RedirectToAction("Index", "Home")); } ModelState.AddModelError("", "User already registered"); } return(View(model)); }
public async Task <ActionResult> EditBeacon(CityListEdit model) { Uri aaaa = Request.UrlReferrer; DataService dataService = new DataService(); if (!ModelState.IsValid) { return(Redirect(aaaa.ToString())); } string uri = aaaa.ToString(); string param = string.Join(string.Empty, uri.Split('/').Skip(5)); List <Content> con = new List <Content>(); con = await dataService.GetContentAsync(); Content cont = new Content(); Beacon alterabeacon = new Beacon(); cont = con.FirstOrDefault(x => x.beaconID == model.EditBeaconViewModel.BeaconID); alterabeacon.beaconID = param; alterabeacon.majorvalue = model.EditBeaconViewModel.MajorValue; alterabeacon.minorvalue = model.EditBeaconViewModel.MinorValue; alterabeacon.model = model.EditBeaconViewModel.Name; if (model.EditBeaconViewModel.ActiveBeacon == true) { alterabeacon.name = "active-" + model.EditBeaconViewModel.Nome + "-" + model.EditBeaconViewModel.Hide; } else { alterabeacon.name = "inactive-" + model.EditBeaconViewModel.Nome + "-" + model.EditBeaconViewModel.Hide; } cont.contentmsg = model.EditBeaconViewModel.Mensagem; string username = User.Identity.GetUserName(); Admin admin = new Admin(); admin = await dataService.GetAdminByIdAsync(username); bool a = false; if (admin == null) { SuperAdmin superadmin = new SuperAdmin(); superadmin = await dataService.GetSuperAdminByIdAsync(username); a = await dataService.UpdateBeacoon(alterabeacon, superadmin.email); } else { a = await dataService.UpdateBeacoon(alterabeacon, admin.email); } bool b = await dataService.UpdateContent(cont); List <BA> baaa = new List <BA>(); baaa = dataService.GetBAAsync(); int max = 0; int i = 0; for (i = 0; i < baaa.Count(); i++) { if (max < baaa[i].baID) { max = baaa[i].baID; } } for (i = 0; i < model.listaa.Count(); i++) { if (model.listaa[i].addAdmin == true && baaa.FirstOrDefault(x => x.beaconID == model.EditBeaconViewModel.BeaconID && x.adminemail == model.listaa[i].Email) == null) { max = max + 1; BA ba = new BA(); ba.baID = max; ba.adminemail = model.listaa[i].Email; ba.beaconID = model.EditBeaconViewModel.BeaconID; bool verdade = dataService.AddBaAsync(ba); } else if (baaa.FirstOrDefault(x => model.listaa[i].addAdmin == true && x.beaconID == model.EditBeaconViewModel.BeaconID && x.adminemail == model.listaa[i].Email) != null) { continue; } else { for (int j = 0; j < baaa.Count(); j++) { if (baaa[j].adminemail == model.listaa[i].Email && baaa[j].beaconID == model.EditBeaconViewModel.BeaconID) { dataService.DeletaBAAsync(baaa[j].baID); break; } } } } if (a == true && b == true) { Success(string.Format("<b>{0}</b> was successfully edited", alterabeacon.beaconID), true); return(RedirectToAction("Index", "Home")); } ModelState.AddModelError("", "A problem occurred while saving beacon. Please try again later."); Danger(string.Format("<b>{0}</b> could not be edited", alterabeacon.beaconID), true); return(View(aaaa)); }