// GET: Poduzeće/Create
        public ActionResult CreatePoduzeće()
        {
            IEnumerable <string> listaGradova     = GetAllTowns();
            IEnumerable <string> listaŽupanije    = GetAllŽupanije();
            IEnumerable <string> listaDjelatnosti = GetAllDjelatnosti();

            AdminCreatePoduzeće modelPoduzeća = new AdminCreatePoduzeće();

            modelPoduzeća.Gradovi             = GetSelectListItems(listaGradova);
            modelPoduzeća.Županije            = GetSelectListItems(listaŽupanije);
            modelPoduzeća.PrimarneDjelatnosti = GetSelectListItems(listaDjelatnosti);

            return(View("~/Views/Admin/Poduzeće/CreatePoduzeće.cshtml", modelPoduzeća));
        }
        public async Task <ActionResult> CreatePoduzeće([Bind(Include = "username,lozinka,imePoduzeće,opisPoduzeće,kontaktTelefon,kontaktEmail,primarnaDjelatnostPoduzeće,gradPoduzeće,županijaPoduzeće,ulicaPoduzeće")] AdminCreatePoduzeće AdminCreatePoduzeće)
        {
            var salt = "";

            salt = Crypto.GenerateSalt();
            var hashedEmail = Crypto.HashPassword(salt + AdminCreatePoduzeće.username);

            if (ModelState.IsValid)
            {
                var user = new ApplicationUser {
                    UserName = AdminCreatePoduzeće.username, Email = hashedEmail + "@mail.com"
                };
                var result = await UserManager.CreateAsync(user, AdminCreatePoduzeće.lozinka);

                if (result.Succeeded)
                {
                    var roleStore   = new RoleStore <IdentityRole>(new ApplicationDbContext());
                    var roleManager = new RoleManager <IdentityRole>(roleStore);
                    await roleManager.CreateAsync(new IdentityRole("Poduzeće"));

                    await UserManager.AddToRoleAsync(user.Id, "Poduzeće");

                    poduzeće poduzeće = new poduzeće
                    {
                        idPoduzeće                 = user.Id,
                        gradPoduzeće               = AdminCreatePoduzeće.gradPoduzeće,
                        imePoduzeće                = AdminCreatePoduzeće.imePoduzeće,
                        kontaktEmail               = AdminCreatePoduzeće.kontaktEmail,
                        kontaktTelefon             = AdminCreatePoduzeće.kontaktTelefon,
                        opisPoduzeće               = AdminCreatePoduzeće.opisPoduzeće,
                        primarnaDjelatnostPoduzeće = AdminCreatePoduzeće.primarnaDjelatnostPoduzeće,
                        županijaPoduzeće           = AdminCreatePoduzeće.županijaPoduzeće,
                        ulicaPoduzeće              = AdminCreatePoduzeće.ulicaPoduzeće,
                        korisničkoImePoduzeće      = user.UserName
                    };
                    db.poduzeće.Add(poduzeće);
                    db.SaveChanges();

                    return(RedirectToAction("PoduzećeManageList"));
                }
                else
                {
                    var listaErrora = new List <string>();
                    foreach (var error in result.Errors)
                    {
                        if (error == ("Name " + AdminCreatePoduzeće.username + " is already taken."))
                        {
                            listaErrora.Add("Ime " + AdminCreatePoduzeće.username + " je već zauzeto.");
                        }
                        //if (error.Substring(0, error.IndexOf(" ")) == "Email")
                        //{
                        //    listaErrora.Add("E-mail " + AdminCreatePoduzeće.registracijskiEmailKorisnik + " je već zauzet.");
                        //}
                    }
                    var rez = new IdentityResult(listaErrora);
                    AddErrors(rez);
                    return(RedirectToAction("PoduzećeManageList"));
                }
            }
            return(RedirectToAction("CreatePoduzeće"));
        }