Example #1
0
        public ActionResult NewUser(Users model)
        {
            try
            {
                Accountservice         User     = new Accountservice();
                Tuple <byte[], byte[]> password = User.Generatepass(model.Password);
                postgres sql = new postgres();
                // Behöver skrivas om
                sql.SqlNonQuery("INSERT INTO login (salt, key ,username,roles_id,email,acc_active,last_login) VALUES (@par2,@par3,@par1,'2',@email,@active,@last_login)", postgres.list = new List <NpgsqlParameter>()
                {
                    new NpgsqlParameter("@par1", model.User),
                    new NpgsqlParameter("@par2", password.Item1),
                    new NpgsqlParameter("@email", model.email),
                    new NpgsqlParameter("@active", model.active),
                    new NpgsqlParameter("@last_login", DateTime.Now),
                    new NpgsqlParameter("@par3", password.Item2)
                });

                return(RedirectToAction("index", "admin"));
            }
            catch
            {
                return(View());
            }
        }
Example #2
0
        public List <Receptmodels> Oldslumps(int user_id, DateTime date, DateTime dateto)
        {
            slump               Slump = new slump();
            postgres            m     = new postgres();
            List <Receptmodels> mt    = new List <Receptmodels>();
            DataTable           dt    = new DataTable();

            dt = m.SqlQuery("SELECT foodlist.date_now,foodlist.recept_id,recept.name FROM public.foodlist join public.recept on foodlist.recept_id = recept.id_recept Where foodlist.user_id = @id_user AND date_now BETWEEN @datefrom AND @dateto ORDER BY date_now DESC; ", postgres.list = new List <NpgsqlParameter>()
            {
                new NpgsqlParameter("@id_user", user_id),
                new NpgsqlParameter("@dateto", dateto),
                new NpgsqlParameter("@datefrom", date)
            });
            foreach (DataRow dr in dt.Rows)
            {
                Receptmodels r = new Receptmodels();
                r.Id          = (int)dr["recept_id"];
                r.Name        = dr["name"].ToString();
                r.Date        = (DateTime)dr["date_now"];
                r.Weeknumbers = GetIso8601WeekOfYear(r.Date).ToString();


                mt.Add(r);
            }



            return(mt);
        }
Example #3
0
        public ActionResult Register(CreateAccountViewmodel model)
        {
            if (!ModelState.IsValid)
            {
                // om inte rätt format
                return(View(model));
            }

            postgres sql   = new postgres();
            bool     check = sql.SqlQueryExist("Select exists(SELECT users.username FROM public.users WHERE users.username = @par1);", postgres.list = new List <NpgsqlParameter>()
            {
                new NpgsqlParameter("@par1", model.User)
            });

            if (!check)
            {
                _accountService.RegisterNewUser(model.User, model.email, model.First_name, model.Last_name);
                return(RedirectToAction("Index", "Account"));
            }
            else
            {
                ModelState.AddModelError("", "Användarnamnet finns redan, Välj ett annat");
                return(View(model));
            }
        }
Example #4
0
        public void CreateUser(string user, string email, bool active, string Password, string fname, string last_name)
        {
            Accountservice         User     = new Accountservice();
            Tuple <byte[], byte[]> password = User.Generatepass(Password);
            postgres sql = new postgres();
            // Behöver skrivas om! klart!
            postgres sql2 = new postgres();

            int id = sql2.SqlQueryString("INSERT INTO login (salt, hash, reset_time, reset_hash) VALUES (@salt ,@hash, @time, 1) RETURNING login_id;", postgres.list = new List <NpgsqlParameter>()
            {
                new NpgsqlParameter("@salt", password.Item1),
                new NpgsqlParameter("@hash", password.Item2),
                new NpgsqlParameter("@time", Convert.ToDateTime("1970-01-01 00:00:00"))
            });
            postgres sql3       = new postgres();
            int      id_setting = sql3.SqlQueryString("INSERT INTO usersettings (day_of_slumpcron) VALUES (6) RETURNING setting_id;", postgres.list = new List <NpgsqlParameter>()
            {
            });

            sql.SqlNonQuery("INSERT INTO users (username,roles_id,email,acc_active,last_login,login_id,settings_id,fname,last_name) VALUES (@par1,'2',@email,@active,@last_login,@login_id,@settings_id,@fname,@last_name)", postgres.list = new List <NpgsqlParameter>()
            {
                new NpgsqlParameter("@par1", user),
                new NpgsqlParameter("@email", email),
                new NpgsqlParameter("@active", active),
                new NpgsqlParameter("@login_id", id),
                new NpgsqlParameter("@settings_id", id_setting),
                new NpgsqlParameter("@last_login", DateTime.Now),
                new NpgsqlParameter("@fname", fname),
                new NpgsqlParameter("@last_name", last_name)
            });
        }
Example #5
0
        public List <UsersEditViewmodel> Getuser(int id, string sql)
        {
            postgres  m  = new postgres();
            DataTable dt = new DataTable();
            List <UsersEditViewmodel> mt = new List <UsersEditViewmodel>();

            dt = m.SqlQuery(sql, postgres.list = new List <NpgsqlParameter>()
            {
                new NpgsqlParameter("@id", id)
            });
            foreach (DataRow dr in dt.Rows)
            {
                UsersEditViewmodel r = new UsersEditViewmodel();
                r.User_id    = (int)dr["user_id"];
                r.User       = dr["username"].ToString();
                r.email      = (string)dr["email"];
                r.First_name = (string)dr["fname"];
                r.Last_name  = (string)dr["last_name"];
                r.CronoDay   = (int)dr["day_of_slumpcron"];



                mt.Add(r);
            }

            return(mt);
        }
Example #6
0
        public List <Users> GetuserAsAdmin(int id, string sql)
        {
            postgres     m  = new postgres();
            DataTable    dt = new DataTable();
            List <Users> mt = new List <Users>();

            dt = m.SqlQuery(sql, postgres.list = new List <NpgsqlParameter>()
            {
                new NpgsqlParameter("@id", id)
            });
            foreach (DataRow dr in dt.Rows)
            {
                Users r = new Users();
                r.User_id     = (int)dr["user_id"];
                r.User        = dr["username"].ToString();
                r.email       = (string)dr["email"];
                r.active      = (bool)dr["acc_active"];
                r.Roles_id    = (int)dr["roles_id"];
                r.Last_login  = (DateTime)dr["last_login"];
                r.Last_name   = (string)dr["last_name"];
                r.First_name  = (string)dr["fname"];
                r.Settings_id = (int)dr["settings_id"];


                mt.Add(r);
            }

            return(mt);
        }
Example #7
0
        public void Newpassword(int login_id, string newpassword)
        {
            Accountservice         User1    = new Accountservice();
            Tuple <byte[], byte[]> password = User1.Generatepass(newpassword);
            postgres sql = new postgres();

            // behöver skrivas om! klart
            sql.SqlNonQuery("UPDATE login set salt= @par2, hash =@par3 WHERE login_id =@par1", postgres.list = new List <NpgsqlParameter>()
            {
                new NpgsqlParameter("@par1", login_id),
                new NpgsqlParameter("@par2", password.Item1),
                new NpgsqlParameter("@par3", password.Item2)
            });
        }
Example #8
0
        public void UpdateUser(int User_id, string username, string email, string first_name, string last_name, int Slumpday)
        {
            postgres sql = new postgres();

            //Behöver skrivas OM! klar
            sql.SqlNonQuery("Select update_user(@username,@email,@first_name,@lastname,@cronoday,@user_id)", postgres.list = new List <NpgsqlParameter>()
            {
                new NpgsqlParameter("@username", username),
                new NpgsqlParameter("@email", email),
                new NpgsqlParameter("@first_name", first_name),
                new NpgsqlParameter("@lastname", last_name),
                new NpgsqlParameter("@cronoday", Slumpday),
                new NpgsqlParameter("@user_id", User_id)
            });
        }
Example #9
0
        public bool Checkslump(DateTime date, int user_id)
        {
            postgres  m     = new postgres();
            bool      check = false;
            DataTable dt    = new DataTable();

            dt = m.SqlQuery("SELECT EXISTS(SELECT foodlist.date_now,foodlist.recept_id FROM public.foodlist Where foodlist.user_id = @user_id AND date_now = @date_now)", postgres.list = new List <NpgsqlParameter>()
            {
                new NpgsqlParameter("@date_now", date),
                new NpgsqlParameter("@user_id", user_id)
            });
            foreach (DataRow dr in dt.Rows)
            {
                check = (bool)dr["exists"];
            }
            return(check);
        }
Example #10
0
        public void SaveSlump(int recept_id, int user_id, DateTime date, bool check)
        {
            string sql = "INSERT INTO foodlist (user_id,recept_id,date_now) values(@user_id,@recept_id,@date_now)";

            if (check)
            {
                sql = "UPDATE foodlist SET recept_id = @recept_id WHERE date_now=@date_now AND user_id = @user_id";
            }
            postgres m = new postgres();

            m.SqlNonQuery(sql, postgres.list = new List <NpgsqlParameter>()
            {
                new NpgsqlParameter("@recept_id", recept_id),
                new NpgsqlParameter("@date_now", date),
                new NpgsqlParameter("@user_id", user_id)
            });
        }
Example #11
0
        public ActionResult Newpassword(UserService model)
        {
            try
            {
                postgres sql = new postgres();
                int      id  = sql.SqlQueryString("SELECT login_id FROM users WHERE user_id = @id", postgres.list = new List <NpgsqlParameter>()
                {
                    new NpgsqlParameter("@id", Convert.ToInt16(User.Identity.Name))
                });

                _accountService.Newpassword(id, model.Password);

                return(RedirectToAction("index", "users"));
            }
            catch
            {
                return(View());
            }
        }
Example #12
0
        public List <keyword> getMatTyp(string psql)
        {
            postgres       m  = new postgres();
            DataTable      dt = new DataTable();
            List <keyword> mt = new List <keyword>();

            dt = m.SqlQuery(psql, postgres.list = new List <NpgsqlParameter>()
            {
                new NpgsqlParameter("@idag", DateTime.Now)
            });
            foreach (DataRow dr in dt.Rows)
            {
                keyword t = new keyword();
                t.id   = Convert.ToInt16(dr["pk_id"].ToString());
                t.name = dr["name"].ToString();
                mt.Add(t);
            }
            return(mt);
        }