Beispiel #1
0
        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));
        }
Beispiel #2
0
        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));
        }
Beispiel #3
0
        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));
        }