Ejemplo n.º 1
0
        public ActionResult PassChanger(TempModel passedModel)
        {
            var saltAsByte     = GetSalt();
            var saltAsString   = Encoding.UTF8.GetString(saltAsByte, 0, saltAsByte.Length);
            var hashedPassword = HashPassword(saltAsByte, passedModel.userPass);

            string sqlProc = "exec dbo.ChangeUserPassword";
            Dictionary <string, object> queryParams = new Dictionary <string, object> {
                { "@NewPassword", hashedPassword },
                { "@Code", passedModel.code },
                { "@Salt", saltAsString }
            };
            DbHandler dbHandler = new DbHandler();

            sqlProc = dbHandler.AddParamsToQuery(sqlProc, queryParams);
            try
            {
                UserModel userModel = new UserModel();
                DataSet   dataSet   = dbHandler.GetSetFromDb(sqlProc, queryParams);
                foreach (DataRow row in dataSet.Tables["tab"].Rows)
                {
                    userModel.UserMail  = row["UserMail"].ToString();
                    userModel.UserLogin = row["UserLogin"].ToString();

                    MailOperator(userModel, MailType.changePassConfirmation);
                }

                return(Ok());
            }
            catch (Exception e)
            {
                return(Conflict(e.Message));
            }
        }
Ejemplo n.º 2
0
        public ActionResult RemindPassword(UserModel userModel)
        {
            string code    = "";
            string sqlProc = "exec dbo.StartRecoverPass";
            Dictionary <string, object> queryParams = new Dictionary <string, object> {
                { "@UserMail", userModel.UserMail }
            };
            DbHandler dbHandler = new DbHandler();

            sqlProc = dbHandler.AddParamsToQuery(sqlProc, queryParams);
            try
            {
                DataSet dataSet = dbHandler.GetSetFromDb(sqlProc, queryParams);
                foreach (DataRow row in dataSet.Tables["tab"].Rows)
                {
                    code = row["Code"].ToString();
                    MailOperator(userModel, MailType.recovery, code);
                }
            }
            catch (Exception e)
            {
            }



            return(Ok());
        }
Ejemplo n.º 3
0
        private void UpdateUserDataInDB(UserModel newUserModel)
        {
            string sqlProc = "exec UpdateUserData";
            Dictionary <string, object> queryParams = new Dictionary <string, object> {
                { "@Id", newUserModel.Id },
                { "@UserType", newUserModel.UserType },
                { "@UserLogin", newUserModel.UserLogin },
                { "@UserPass", newUserModel.UserPass },
                { "@UserName", newUserModel.UserName },
                { "@UserSureName", newUserModel.UserSureName },
                { "@UserTaxNumber", newUserModel.UserTaxNumber },
                { "@UserAddress", newUserModel.UserAddress },
                { "@UserCity", newUserModel.UserCity },
                { "@UserZipCode", newUserModel.UserZipCode },
                { "@UserMail", newUserModel.UserMail },
                { "@UserPhoneNumber", newUserModel.UserPhoneNumber },
                { "@UserPhoneNumber2", newUserModel.UserPhoneNumber2 },
                { "@UserSalt", newUserModel.UserSalt },
                { "@UserRole", newUserModel.UserRole },
                { "@Confirmed", newUserModel.Confirmed }
            };
            DbHandler dbHandler = new DbHandler();

            dbHandler.GenerateProcedure(sqlProc, queryParams);
            sqlProc = dbHandler.AddParamsToQuery(sqlProc, queryParams);
            DataSet dataSet = dbHandler.GetSetFromDb(sqlProc, queryParams);
        }
Ejemplo n.º 4
0
        private RunModel[] GetRunsByCompIdAndUserID(string compId, string userId)
        {
            string sqlProc = "SELECT * FROM run WHERE competitionId = @competitionId AND ownerId = @ownerId";
            Dictionary <string, object> queryParams = new Dictionary <string, object> {
                { "@competitionId", compId },
                { "@ownerId", userId }
            };
            DbHandler dbHandler = new DbHandler();
            DataSet   dataSet   = dbHandler.GetSetFromDb(sqlProc, queryParams);
            var       x         = dataSet.Tables["tab"].Rows.Count;

            RunModel[] runs = new RunModel[x];
            var        i    = 0;

            foreach (DataRow row in dataSet.Tables["tab"].Rows)
            {
                RunModel run = new RunModel();
                run.Id            = row["Id"].ToString();
                run.competitionId = row["competitionId"].ToString();
                run.ownerId       = row["ownerId"].ToString();
                run.description   = row["description"].ToString();
                run.target        = row["target"].ToString();
                run.noOfShots     = int.Parse(row["noOfShots"].ToString());
                runs[i]           = run;
                i++;
            }
            return(runs);
        }
Ejemplo n.º 5
0
        public ActionResult AddCompetition(CompetitionModel competition)
        {
            UserModel owner = UserHandler.GetUserDataByToken(Request.Headers["authorization"]);

            owner = UserHandler.GetUserDataFromDbByLogin(owner.UserLogin);
            competition.ownerId   = owner.Id;
            competition.ownerName = owner.UserName;
            #region dbAccess
            string sqlProc = "exec dbo.AddCompetition";
            Dictionary <string, object> queryParams = new Dictionary <string, object> {
                { "@description", competition.description },
                { "@startTime", competition.startTime.ToString("yyyy-MM-dd HH:mm") },
                { "@endTime", competition.endTime.ToString("yyyy-MM-dd HH:mm") },
                { "@placeOf", competition.placeOf },
                { "@ownerId", competition.ownerId }
            };
            DbHandler dbHandler = new DbHandler();
            sqlProc = dbHandler.AddParamsToQuery(sqlProc, queryParams);
            try
            {
                UserModel userModel = new UserModel();
                DataSet   dataSet   = dbHandler.GetSetFromDb(sqlProc, queryParams);
                return(Ok(competition));
            }
            catch (Exception e)
            {
                return(Conflict(e.Message));
            }

            #endregion

            return(Ok());
        }
Ejemplo n.º 6
0
        public ActionResult <UserModel> RegisterNewUser(UserDto userDto)
        {
            var    saltAsByte     = GetSalt();
            var    saltAsString   = Encoding.UTF8.GetString(saltAsByte, 0, saltAsByte.Length);
            var    hashedPassword = HashPassword(saltAsByte, userDto.UserPass);
            string code           = "";

            string sqlProc = "exec dbo.RegisterUser";
            Dictionary <string, object> queryParams = new Dictionary <string, object> {
                { "@UserType", userDto.UserType },
                { "@UserLogin", userDto.UserLogin },
                { "@UserPass", hashedPassword },
                { "@UserName", userDto.UserName },
                { "@UserSureName", userDto.UserSureName },
                { "@UserTaxNumber", userDto.UserTaxNumber },
                { "@UserAddress", userDto.UserAddress },
                { "@UserCity", userDto.UserCity },
                { "@UserZipCode", userDto.UserZipCode },
                { "@UserMail", userDto.UserMail },
                { "@UserPhoneNumber", userDto.UserPhoneNumber },
                { "@UserPhoneNumber2", userDto.UserPhoneNumber2 },
                { "@UserSalt", saltAsString },
                { "@UserRole", "user" },
                { "@Confirmed", false.ToString() }
            };
            UserModel userModel = new UserModel();
            DbHandler dbHandler = new DbHandler();

            sqlProc = dbHandler.AddParamsToQuery(sqlProc, queryParams);
            try
            {
                DataSet dataSet   = dbHandler.GetSetFromDb(sqlProc, queryParams);
                string  JSONModel = string.Empty;
                foreach (DataRow row in dataSet.Tables["tab"].Rows)
                {
                    JSONModel = JsonConvert.SerializeObject(row.Table);
                    userModel = JsonConvert.DeserializeObject <UserModel[]>(JSONModel).FirstOrDefault();
                }
                foreach (DataRow row in dataSet.Tables["tab1"].Rows)
                {
                    code = row["Code"].ToString();
                    string typeOfCode = row["TypeOfCode"].ToString();
                }
            }catch (Exception e)
            {
                return(Conflict(e.Message));
            }
            MailOperator(userModel, MailType.varyfication, code);

            return(Ok(userModel));
        }
Ejemplo n.º 7
0
        private List <TargetModel> ReadTargetFromDB(string targetID = null, string creator = null)
        {
            string sqlProc = "exec ReadTargetFromDB";
            Dictionary <string, object> queryParams = new Dictionary <string, object> {
                { "@targetID", targetID ?? "" },
                { "@creator", creator ?? "" }
            };
            DbHandler dbHandler = new DbHandler();

            sqlProc = dbHandler.AddParamsToQuery(sqlProc, queryParams);
            DataSet dataSet = dbHandler.GetSetFromDb(sqlProc, queryParams);

            var x = dataSet.Tables["tab"].Rows;
            List <TargetModel> targets = new List <TargetModel>();

            string JSONModel = string.Empty;

            foreach (DataRow row in dataSet.Tables["tab"].Rows)
            {
                TargetModel target = new TargetModel();
                target.Id            = row["Id"].ToString();
                target.targetName    = row["targetName"].ToString();
                target.sizeX         = int.Parse(row["sizeX"].ToString());
                target.sizeY         = int.Parse(row["sizeX"].ToString());
                target.noOfFields    = int.Parse(row["noOfFields"].ToString());
                target.pointsPerShot = row["pointsPerShot"].ToString();
                target.url           = row["url"].ToString();
                target.creator       = row["creator"].ToString();
                List <PointPerShot> pointsPerShot = new List <PointPerShot>();

                foreach (DataRow rowField in dataSet.Tables["tab1"].Rows)
                {
                    if (rowField["targetID"].ToString() == target.Id)
                    {
                        PointPerShot pointPerShot = new PointPerShot();
                        pointPerShot.fieldId      = rowField["ID"].ToString();
                        pointPerShot.pointPerShot = int.Parse(rowField["pointPerShot"].ToString());
                        pointPerShot.specialPoint = Boolean.Parse(rowField["specialShot"].ToString());
                        pointPerShot.creatorID    = rowField["creatorID"].ToString();
                        pointsPerShot.Add(pointPerShot);
                    }
                }
                PointPerShot[] pointsPerShotOBJ = pointsPerShot.ToArray();
                target.pointPerShotOBJ = pointsPerShotOBJ;
                targets.Add(target);
            }
            return(targets);
        }
Ejemplo n.º 8
0
        private void SaveTargetInDB(TargetModel target)
        {
            //var fieldsAsJSON = JsonConvert.SerializeObject(target.pointsPerShot);

            string sqlProc = "exec SaveTargetInDB";
            Dictionary <string, object> queryParams = new Dictionary <string, object> {
                { "@targetName", target.targetName },
                { "@sizeX", target.sizeX },
                { "@sizeY", target.sizeY },
                { "@noOfFields", target.noOfFields },
                { "@pointsPerShot", target.pointsPerShot },
                { "@url", target.url },
                { "@creator", target.creator },
            };
            DbHandler dbHandler = new DbHandler();

            sqlProc = dbHandler.AddParamsToQuery(sqlProc, queryParams);
            DataSet dataSet = dbHandler.GetSetFromDb(sqlProc, queryParams);
        }
Ejemplo n.º 9
0
        public ActionResult AddCompetition(CompetitionModel competition)
        {
            UserModel owner = UserHandler.GetUserDataByToken(Request.Headers["authorization"]);

            owner = UserHandler.GetUserDataFromDbByLogin(owner.UserLogin);

            #region dbAccess
            string sqlProc = "exec dbo.AddCompetition";
            Dictionary <string, object> queryParams = new Dictionary <string, object> {
                { "@description", competition.description },
                { "@startTime", competition.startTime.ToString("yyyy-MM-dd HH:mm:ss.fff") },
                { "@endTime", competition.endTime.ToString("yyyy-MM-dd HH:mm:ss.fff") },
                { "@placeOf", competition.placeOf },
                { "@ownerId", competition.ownerId }
            };
            DbHandler dbHandler = new DbHandler();
            dbHandler.GenerateProcedure(sqlProc, queryParams);
            dbHandler.GenerateQuerryValues(sqlProc, queryParams);
            sqlProc = dbHandler.AddParamsToQuery(sqlProc, queryParams);
            try
            {
                UserModel userModel = new UserModel();
                DataSet   dataSet   = dbHandler.GetSetFromDb(sqlProc, queryParams);
                foreach (DataRow row in dataSet.Tables["tab"].Rows)
                {
                    userModel.UserMail  = row["UserMail"].ToString();
                    userModel.UserLogin = row["UserLogin"].ToString();
                }
                return(Ok());
            }
            catch (Exception e)
            {
                return(Conflict(e.Message));
            }

            #endregion

            return(Ok());
        }
Ejemplo n.º 10
0
        public ActionResult ValidateUser(string code)
        {
            string sqlProc = "exec dbo.ValidateUser";
            Dictionary <string, object> queryParams = new Dictionary <string, object> {
                { "@Code", code }
            };
            DbHandler dbHandler = new DbHandler();

            sqlProc = dbHandler.AddParamsToQuery(sqlProc, queryParams);
            try
            {
                DataSet dataSet = dbHandler.GetSetFromDb(sqlProc, queryParams);
                return(Ok(new { Result = "Confirmation ok" }));
            }
            catch (Exception e)
            {
                return(Conflict(new { Result = "Code is not good" }));
            }



            //CodeModel codeModel = _repositoryCodes.GetCodeModelByCode(code);
            //bool codeIsValid = CodeHandler.IsCodeValid(codeModel, MailType.varyfication);
            //if (codeIsValid)
            //{
            //    UserModel userModel = _repositoryUsers.GetUserById(codeModel.UserId);
            //    UserModel userModelToSave = new UserModel();
            //    userModel.Confirmed = true;
            //    userModelToSave = userModel;
            //    ChangeUserData(userModelToSave, userModel);

            //    CodeModel usedCode = _repositoryCodes.GetCodeModelByCode(code);
            //    CodeModel CodeModelToSave = CodeHandler.DeactivateCode(usedCode, userModel);

            //    ChangeCodeData(CodeModelToSave, usedCode);
            //}
        }
Ejemplo n.º 11
0
        static public UserModel GetUserDataFromDbByLogin(string login)
        {
            UserModel userModel = new UserModel();
            string    sqlProc   = "SELECT * FROM Users WHERE UserLogin = @UserLogin";
            Dictionary <string, object> queryParams = new Dictionary <string, object> {
                { "@UserLogin", login }
            };
            DbHandler dbHandler = new DbHandler();

            try
            {
                DataSet dataSet = dbHandler.GetSetFromDb(sqlProc, queryParams);
                foreach (DataRow row in dataSet.Tables["tab"].Rows)
                {
                    userModel.Id               = row["Id"].ToString();
                    userModel.UserType         = row["UserType"].ToString();
                    userModel.UserLogin        = row["UserLogin"].ToString();
                    userModel.UserPass         = row["UserPass"].ToString();
                    userModel.UserName         = row["UserName"].ToString();
                    userModel.UserSureName     = row["UserSureName"].ToString();
                    userModel.UserTaxNumber    = row["UserTaxNumber"].ToString();
                    userModel.UserAddress      = row["UserAddress"].ToString();
                    userModel.UserCity         = row["UserCity"].ToString();
                    userModel.UserZipCode      = row["UserZipCode"].ToString();
                    userModel.UserMail         = row["UserMail"].ToString();
                    userModel.UserPhoneNumber  = row["UserPhoneNumber"].ToString();
                    userModel.UserPhoneNumber2 = row["UserPhoneNumber2"].ToString();
                    userModel.UserSalt         = row["UserSalt"].ToString();
                    userModel.UserRole         = row["UserRole"].ToString();
                    userModel.Confirmed        = Convert.ToBoolean(row["Confirmed"]);
                }
            }
            catch (Exception e)
            {
            }
            return(userModel);
        }
Ejemplo n.º 12
0
        public ActionResult <IEnumerable <RunDto> > GetRunByCompetitionId(string Id)
        {
            UserModel user    = UserHandler.GetUserDataByToken(Request.Headers["authorization"], true);
            string    sqlProc = "SELECT * FROM run (NOLOCK) WHERE competitionId = @competitionId";
            Dictionary <string, object> queryParams = new Dictionary <string, object> {
                { "@competitionId", Id }
            };
            DbHandler dbHandler = new DbHandler();
            DataSet   dataSet   = dbHandler.GetSetFromDb(sqlProc, queryParams);

            int numberOfRuns = dataSet.Tables["tab"].Rows.Count;

            RunModel[] runModels   = new RunModel[numberOfRuns];
            int        runIterator = 0;

            foreach (DataRow row in dataSet.Tables["tab"].Rows)
            {
                RunModel runModel = new RunModel();
                runModel.competitionId = row["competitionId"].ToString();
                runModel.Id            = row["Id"].ToString();
                runModel.ownerId       = row["ownerId"].ToString();
                runModel.description   = row["description"].ToString();
                runModel.target        = row["target"].ToString();
                runModel.noOfShots     = int.Parse(row["noOfShots"].ToString());

                runModels[runIterator] = runModel;
                runIterator++;
            }
            //RunModel[] runModels = GetRunsByCompIdAndUserID(Id, user.Id);

            return(Ok(runModels));

            //user = _repositoryUsers.GetUserByLogin(user.UserLogin);
            //var run = _repositoryRun.GetRunByCompetitionId(id);
            //return Ok(_mapper.Map<IEnumerable<RunDto>>(run));
        }