예제 #1
0
        public ActionResult Login(LoginModel user)
        {
            if (!ModelState.IsValid)
            {
                return(View());
            }

            var hashedPass = EncodingHelper.Encode(user.Password);

            user.Password = hashedPass;
            var entityData = ModelToEntityMapper.ConvertToEntity <TblAccount, LoginModel>(user);
            var repo       = new Repository <TblAccount>(new DatabaseEntities());
            var existUser  = repo.SingleOrDefault(q => (q.Username == entityData.Username) && (q.Password == entityData.Password));

            repo.Dispose();

            if (existUser == null)
            {
                return(View());
            }

            CookieHepler.SetUidCookie(existUser.Id);
            FormsAuthentication.SetAuthCookie(existUser.Username, false);

            return(RedirectToAction("Index", "PrivateArea"));
        }
예제 #2
0
        public ActionResult Languages(int id)
        {
            var repo      = new Repository <TblLanguages>(new DatabaseEntities());
            var modelData = ModelToEntityMapper.ConvertToEntity <LanguagesModel, TblLanguages>(repo.Get(id));

            repo.Dispose();
            return(View(modelData));
        }
예제 #3
0
        public ActionResult Experience(int id)
        {
            var repo      = new Repository <TblExperience>(new DatabaseEntities());
            var modelData = ModelToEntityMapper.ConvertToEntity <ExperienceModel, TblExperience>(repo.Get(id));

            repo.Dispose();
            return(View(modelData));
        }
예제 #4
0
        public ActionResult MainData()
        {
            var repo      = new Repository <TblUser>(new DatabaseEntities());
            var modelData = ModelToEntityMapper.ConvertToEntity <UserModel, TblUser>(repo.SingleOrDefault(x => x.UserId == _userId));

            repo.Dispose();
            return(View(modelData));
        }
예제 #5
0
        // GET: api/WebApi/5
        public UserModel Get(int id)
        {
            var repo = new Repository <TblUser>(new DatabaseEntities());
            var user = repo.SingleOrDefault(x => x.UserId == id);

            try
            {
                return(ModelToEntityMapper.ConvertToEntity <UserModel, TblUser>(user));
            }
            finally
            {
                repo.Dispose();
            }
        }
예제 #6
0
        public ActionResult Experience(ExperienceModel modelData)
        {
            if (!ModelState.IsValid)
            {
                return(View());
            }

            modelData.UserId = _userId;
            var entityData = ModelToEntityMapper.ConvertToEntity <TblExperience, ExperienceModel>(modelData);
            var repo       = new Repository <TblExperience>(new DatabaseEntities());

            repo.Update(entityData);
            return(RedirectToAction("Index", "PrivateArea"));
        }
예제 #7
0
        public ActionResult Skills(SkillsModel modelData)
        {
            if (!ModelState.IsValid)
            {
                return(View());
            }

            modelData.UserId = _userId;
            var entityData = ModelToEntityMapper.ConvertToEntity <TblSkills, SkillsModel>(modelData);
            var repo       = new Repository <TblSkills>(new DatabaseEntities());

            repo.Add(entityData);

            return(RedirectToAction("Index", "PrivateArea"));
        }
예제 #8
0
        public ActionResult Register(RegisterModel newUser)
        {
            if (!ModelState.IsValid || !VerificationHelper.IsUsernameAvailable(newUser.Username))
            {
                ViewBag.UsedName = "Korisničko ime se već koristi";
                return(View());
            }
            var hashedPass = EncodingHelper.Encode(newUser.Password);

            newUser.Password = hashedPass;

            // Add new user account to tblAccount
            var entityData = ModelToEntityMapper.ConvertToEntity <TblAccount, RegisterModel>(newUser);
            var repo       = new Repository <TblAccount>(new DatabaseEntities());

            repo.Add(entityData);

            // Get new user ID from TblAccount and....
            var getNewAccRepo = new Repository <TblAccount>(new DatabaseEntities());
            var newId         = getNewAccRepo.SingleOrDefault(q => q.Username == newUser.Username).Id;

            // ...add it initially into TblUser
            var insertNewUidUserRepo = new Repository <TblUser>(new DatabaseEntities());

            insertNewUidUserRepo.Add(new TblUser {
                UserId = newId
            });

            // ...add it initially into TblExtras
            var insertNewUidExpRepo = new Repository <TblExtras>(new DatabaseEntities());

            insertNewUidExpRepo.Add(new TblExtras {
                UserId = newId
            });

            // Create session and auth cookie
            CookieHepler.SetUidCookie(newId);
            FormsAuthentication.SetAuthCookie(newUser.Username, false);
            repo.Dispose();

            return(RedirectToAction("Index", "Home"));
        }