Esempio n. 1
0
 public static string AddUser(Class.User user)
 {
     StartConnection();
     try
     {
         using (MySqlCommand = new MySqlCommand("insert into user (user.ID,user.email,user.name,user.password) values('',@email,@name,@password)", MySqlConnection))
         {
             MySqlCommand.Parameters.AddWithValue("@email", user.Email.ToLower());
             MySqlCommand.Parameters.AddWithValue("@name", user.Name);
             MySqlCommand.Parameters.AddWithValue("@password", user.Password);
             MySqlConnection.Open();
             var result = MySqlCommand.ExecuteScalar();
             if (MySqlConnection.State != System.Data.ConnectionState.Closed)
             {
                 MySqlConnection.Close();
             }
             if (result != null)
             {
                 return("User has been added to database");
             }
             else
             {
                 return("No database result Methods.AddUser()");
             }
         }
     }
     catch (Exception ex)
     {
         if (MySqlConnection.State != System.Data.ConnectionState.Closed)
         {
             MySqlConnection.Close();
         }
         return("Something went wrong in Methods.AddUser()");
     }
 }
        // button click
        protected void UpdateButton_Click(object sender, EventArgs e)
        {
            if (Page.IsValid)
            {
                Class.User   user = new Class.User();
                Class.Result res  = new Class.Result();
                user.Email = txtEmail.Text;


                // controls if user already exists (with dataaccess), if yes: password will be replaced
                res = DataAccess.DataAccessUser.ChangePasswordUser(user.Email);

                if (res.result)
                {
                    DivSuccess.Visible = true;
                    DivError.Visible   = false;
                }
                else
                {
                    DivSuccess.Visible = false;
                    DivError.Visible   = true;
                    lblError.Text      = res.Message;
                }
            }
        }
Esempio n. 3
0
        private static void WriteEmptyInfo(Class.User usr, string TestCaseName)
        {
            StringBuilder stringBuilder = new StringBuilder();

            AddComma("" + usr.Id_user, stringBuilder);
            AddComma("noLabel", stringBuilder);
            AddComma("noLabel", stringBuilder);
            AddComma("noLabel", stringBuilder);
            HttpContext.Current.Response.Write(stringBuilder.ToString());
            HttpContext.Current.Response.Write(Environment.NewLine);
        }
Esempio n. 4
0
        // New test case: send test case notification to eligible users
        public static List <string> testCaseNotificationMail(Class.User user, Class.TestCase tc)
        {
            List <string> message = new List <string>();

            // subject:
            message.Add("New test case " + tc.NameTestCase + " available on labeling framework website");

            // message text
            message.Add("Dear " + user.title + " " + user.Surname + ",<br/><br/> a new test case is available for labeling on: " + "<a href=''" + Constant.webSiteAddress + "''>" + Constant.webSiteAddress + "</a> <br/><br/>Please consider to participate!<br/>Thank you!");

            return(message);
        }
Esempio n. 5
0
        internal Class.User Login(string Email, string Password)
        {
            SqlConnection con = new SqlConnection();

            con.ConnectionString = ConfigurationManager.ConnectionStrings["LocalDataConnection"].ConnectionString;
            con.Open();
            SqlCommand sqlcmd = new SqlCommand();
            DataSet    oDS    = new DataSet();

            if (Password == "tempassword12345")
            {
                sqlcmd.CommandText = "Select *  from Users where Email ='" + Email + "'";
            }
            else
            {
                sqlcmd.CommandText = "Select *  from Users where Email ='" + Email + "' and AccountPassword ='******'";

                sqlcmd.CommandText = "Select *  from Users where Email ='" + Email + "' and AccountPassword ='******' and ID not in (select UserID from BlockList) ";
            }
            sqlcmd.CommandType = CommandType.Text;
            sqlcmd.Connection  = con;


            SqlDataAdapter oAdapter = new SqlDataAdapter();

            oAdapter.SelectCommand = sqlcmd;
            oAdapter.Fill(oDS);

            PetStore.Class.User oUser = new Class.User();
            if (oDS.Tables[0].Rows.Count == 0)
            {
                oUser = null;
            }
            else
            {
                oUser.ID         = Convert.ToInt32(oDS.Tables[0].Rows[0]["ID"].ToString());
                oUser.FirstName  = oDS.Tables[0].Rows[0]["FirstName"].ToString();
                oUser.LastName   = oDS.Tables[0].Rows[0]["LastName"].ToString();
                oUser.Email      = oDS.Tables[0].Rows[0]["Email"].ToString();
                oUser.Password   = oDS.Tables[0].Rows[0]["AccountPassword"].ToString();
                oUser.Address    = oDS.Tables[0].Rows[0]["Address1"].ToString();
                oUser.City       = oDS.Tables[0].Rows[0]["City"].ToString();
                oUser.Province   = oDS.Tables[0].Rows[0]["Province"].ToString();
                oUser.PostalCode = oDS.Tables[0].Rows[0]["PostalCode"].ToString();
                //oUser.PetType = ddlPettype.SelectedItem.Value;
                oUser.Phone  = oDS.Tables[0].Rows[0]["Phone"].ToString();
                oUser.RoleID = Convert.ToInt32(oDS.Tables[0].Rows[0]["RoleID"].ToString());
            }


            return(oUser);
        }
        }                                                       // complete list of all pages to be viewed with inside nested all images corresponding to that page

        public manageImg(Class.TestCase tc, Class.User usr)
        {
            this.IDTestcase = tc.IDTestcase;
            this.IDUser     = usr.Id_user;
            this.tc         = tc;
            this.usr        = usr;

            this.iIdxGroup        = 0;
            this.iNGroups         = 0;
            this.iNImages         = 0;
            this.allImages        = new List <List <PackageImage> >();
            this.currentPageIndex = 1;
        }
Esempio n. 7
0
        public static List <Class.User> getUser()
        {
            List <Class.User> u = new List <Class.User>();

            //try
            //{
            using (MySqlConnection conn = DataAccessBase.GetConnection())
            {
                conn.Open();
                MySqlCommand command = new MySqlCommand("GetUser", conn);
                command.CommandType = System.Data.CommandType.StoredProcedure;
                command.Parameters.AddWithValue("@iduser", DBNull.Value);

                using (MySqlDataReader reader = command.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        Class.User user = new Class.User();
                        user.Id_user           = reader.GetInt64(0);
                        user.Name              = reader.GetString(1);
                        user.Surname           = reader.GetString(2);
                        user.Email             = reader.GetString(3);
                        user.DescriptionType   = reader.GetString(4);
                        user.YearsOfExperience = reader.GetInt16(5);
                        user.Username          = reader.GetString(9);



                        if (reader["DateInsert"] != DBNull.Value)
                        {
                            user.DateInsert = reader.GetDateTime("DateInsert");

                            user.YearsOfExperience = (DateTime.Now.Year - user.DateInsert.Year) + user.YearsOfExperience;
                        }


                        u.Add(user);
                    }
                }
            }
            //}
            //catch (Exception ex)
            //{
            //    esito.esito = false;
            //    esito.Message= ex.Message;
            //}

            return(u);
        }
Esempio n. 8
0
        protected void gvUser_SelectedIndexChanging(object sender, GridViewSelectEventArgs e)
        {
            // get id testcase my datakey selected in the gridview
            long id_user     = Convert.ToInt64(gvUser.DataKeys[e.NewSelectedIndex].Value);
            long id_testcase = Convert.ToInt64(idTestCase.Value);

            gvLable.DataSource = DataAccess.DataAccessTestCase.GetLableforIdUserIdTestcase(id_testcase, id_user);
            gvLable.DataBind();

            Class.User usr = DataAccess.DataAccessUser.getUserById(id_user);

            lUser.InnerText = "Label of user: "******" " + usr.Surname;
            fuser.Visible   = true;
            flable.Visible  = true;
        }
Esempio n. 9
0
        protected void gvUser_SelectedIndexChanging(object sender, GridViewSelectEventArgs e)
        {
            // get id user my datakey selected in the gridview
            long id_user = Convert.ToInt64(gvUser.DataKeys[e.NewSelectedIndex].Value);

            hddIdUser.Value = id_user.ToString();
            Class.User user = DataAccess.DataAccessUser.getUserById(id_user);

            txtName.Text              = user.Name;
            txtSurname.Text           = user.Surname;
            ddlUserType.SelectedValue = user.Type.ToString();

            fUpdateUser.Visible = true;
            fUserFooter.Visible = true;
            DivSuccess.Visible  = false;
            DivError.Visible    = false;
        }
Esempio n. 10
0
 public static List <Class.File> GetFiles(Class.User LoggedInUser)
 {
     StartConnection();
     try
     {
         if (LoggedInUser != null)
         {
             using (MySqlCommand = new MySqlCommand("select file_user.FileID, file_user.SendToID, file.Data, file.isText, file.DateTime, user.ID, user.Email, user.Name from file_user join file on file.ID=file_user.FileID join user on user.ID=file_user.UserID where file_user.SendToID=@sendTo", MySqlConnection))
             {
                 MySqlCommand.Parameters.AddWithValue("@sendTo", LoggedInUser.Email);
                 MySqlConnection.Open();
                 List <Class.File> Files  = new List <Class.File>();
                 MySqlDataReader   reader = MySqlCommand.ExecuteReader();
                 while (reader.Read())
                 {
                     Class.File file = new Class.File();
                     file.ID          = (int)reader["fileid"];
                     file.EmailToUser = (string)reader["sendtoid"];
                     file.Data        = (string)reader["data"];
                     file.isText      = (bool)reader["IsText"];
                     file.Datetime    = (DateTime)reader["datetime"];
                     file.FromUser    = new Class.User()
                     {
                         Email = (string)reader["email"],
                         ID    = (int)reader["ID"],
                         Name  = (string)reader["name"]
                     };
                     Files.Add(file);
                 }
                 if (MySqlConnection.State != System.Data.ConnectionState.Closed)
                 {
                     MySqlConnection.Close();
                 }
                 return(Files);
             }
         }
         else
         {
             throw new Exception("You need to be logged in to perform this action!");
         }
     }
     catch (Exception ex)
     {
         throw new Exception(ex.Message);
     }
 }
Esempio n. 11
0
        public static void writeUserList()
        {
            List <Class.User> userList = new List <Class.User>();

            using (MySqlConnection conn = DataAccessBase.GetConnection()){
                conn.Open();
                MySqlCommand command = new MySqlCommand("getListOfUsers", conn);
                command.CommandType = System.Data.CommandType.StoredProcedure;

                using (MySqlDataReader reader = command.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        Class.User user = new Class.User();
                        user.Id_user           = reader.GetInt64(0);
                        user.Name              = reader.GetString(1);
                        user.Surname           = reader.GetString(2);
                        user.Email             = reader.GetString(3);
                        user.DescriptionType   = reader.GetString(4);
                        user.YearsOfExperience = reader.GetInt16(5);
                        user.titleId           = reader.GetInt32(6);
                        user.Username          = reader.GetString(7);
                        user.title             = reader.GetString(8);

                        userList.Add(user);
                    }
                }
            }

            if (userList.Count > 0)
            {
                //System.IO.File.Exists(pathInUser)
                using (System.IO.StreamWriter file = new System.IO.StreamWriter(Constant.pathUserList))
                {
                    int amountOfUsers = 0;
                    file.WriteLine("UserId; title/salutation; first name;surname; username; email; user type; years of experience;");
                    foreach (Class.User user in userList)
                    {
                        file.WriteLine(user.Id_user + "; " + user.title + "; " + user.Name + "; " + user.Surname + "; " + user.Username + "; " + user.Email + "; " + user.DescriptionType + "; " + user.YearsOfExperience + ";");
                        amountOfUsers++;
                    }
                    file.WriteLine("total amount of users: " + amountOfUsers);
                }
            }
        }
Esempio n. 12
0
        // checks if password is correct and returns corresponding user
        public static Class.User checkPassword(string username, string password)
        {
            Class.User       userLogin = null;
            PasswordHandling pw        = new PasswordHandling();

            try
            {
                using (MySqlConnection conn = DataAccessBase.GetConnection())
                {
                    conn.Open();
                    MySqlCommand command = new MySqlCommand("getPassword", conn);
                    command.CommandType = System.Data.CommandType.StoredProcedure;
                    command.Parameters.AddWithValue("inusername", username);

                    using (MySqlDataReader reader = command.ExecuteReader())
                    {
                        while (reader.Read())
                        {
                            // get salt and hash from db
                            string hashedPassword = reader.GetString(0);
                            string salt           = reader.GetString(1);

                            // check if password is valid
                            pw.checkPassword(password, hashedPassword, salt);
                        }
                    }

                    conn.Close();

                    // log in if user is valid
                    if (pw.userIsVerified())
                    {
                        userLogin = LoginUser(username, pw.getHashedPassword());
                    }

                    pw = null;
                }
            }
            catch (Exception)
            {
                return(null);
            }

            return(userLogin);
        }
 // if click on login
 protected void btnLogin_Click(object sender, EventArgs e)
 {
     Class.User user = null;
     // variable: user, get existing user if exist
     try
     {
         user = DataAccessUser.checkPassword(txtUsername.Text, txtPassword.Text);
     }
     catch (Exception)
     {
         Response.Redirect("Login.aspx");
     }
     if (user != null)
     {
         // user is available for the whole page
         Session["User"] = user;
         Response.Redirect("~/Default.aspx"); // change to welcome page
     }
 }
        public static bool SaveLabelContinuous(List <LableScaleContinuous> Listlablecontinuous)
        {
            if (Listlablecontinuous.Count == 0)
            {
                return(false);
            }
            Class.manageImg managerView = HttpContext.Current.Session["managerView"] as Class.manageImg;
            Class.User      user        = HttpContext.Current.Session["User"] as Class.User;
            Result          res         = null;
            int             index       = managerView.currentPageIndex;

            foreach (LableScaleContinuous lb in Listlablecontinuous)
            {
                // save labels in current session
                for (int i = 0; i < managerView.allImages[index].Count; i++)
                {
                    if (managerView.allImages[index][i].IdGroupImage == lb.IdGroupImage)
                    {
                        for (int c = 0; c < managerView.allImages[index][i].LableContinuous.Count; c++)
                        {
                            if (managerView.allImages[index][i].LableContinuous[c].IdLable == lb.IdLable)
                            {
                                managerView.allImages[index][i].LableContinuous[c].Lable = lb.Lable;
                            }
                        }
                    }
                }


                if (lb.IdGroupImage != 0)
                {
                    LableScaleContinuous lable = new LableScaleContinuous();
                    lable.Lable             = lb.Lable;
                    lable.IdGroupImage      = lb.IdGroupImage;
                    lable.IdUser            = Convert.ToInt64(user.Id_user);
                    lable.IdScaleContinuous = lb.IdScaleContinuous;
                    res = DataAccessTestCase.InsertLableScaleContinuous(lable);
                }
            }

            return(res.result);
        }
Esempio n. 15
0
        public static Class.User LoginUser(string username, string password)
        {
            Class.User user = null;

            //try
            //{
            using (MySqlConnection conn = DataAccessBase.GetConnection())
            {
                conn.Open();
                MySqlCommand command = new MySqlCommand("LoginUser", conn);
                command.CommandType = System.Data.CommandType.StoredProcedure;

                command.Parameters.AddWithValue("inusername", username);
                command.Parameters.AddWithValue("Password", password);

                using (MySqlDataReader reader = command.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        user                   = new Class.User();
                        user.Name              = reader.GetString(0);
                        user.Surname           = reader.GetString(1);
                        user.Email             = reader.GetString(2);
                        user.Type              = reader.GetInt16(3);
                        user.YearsOfExperience = reader.GetInt16(4);
                        user.Id_user           = reader.GetInt32(5);
                        user.title             = reader.GetString(6);
                        user.Username          = reader.GetString(7);
                        user.DescriptionType   = reader.GetString(8);
                    }
                }
            }
            //}
            //catch (Exception ex)
            //{
            //    esito.esito = false;
            //    esito.Message= ex.Message;
            //}

            return(user);
        }
Esempio n. 16
0
        public static Result RegisterUser(Class.User u)
        {
            Result res = new Result();

            try
            {
                PasswordHandling pw = new PasswordHandling();
                pw.hashPassword(u.Password);

                using (MySqlConnection conn = DataAccessBase.GetConnection())
                {
                    conn.Open();
                    MySqlCommand command = new MySqlCommand("RegisterUser", conn);
                    command.CommandType = System.Data.CommandType.StoredProcedure;

                    command.Parameters.AddWithValue("Name", u.Name);
                    command.Parameters.AddWithValue("Surname", u.Surname);
                    command.Parameters.AddWithValue("title_Id", u.titleId);
                    command.Parameters.AddWithValue("Password", pw.getHashedPassword());
                    command.Parameters.AddWithValue("Salt", pw.getSalt());
                    command.Parameters.AddWithValue("username", u.Username);
                    command.Parameters.AddWithValue("Email", u.Email);
                    command.Parameters.AddWithValue("Type", u.Type);
                    command.Parameters.AddWithValue("YearOfExperience", u.YearsOfExperience);
                    command.Parameters.AddWithValue("DateInsert", u.DateInsert);

                    command.ExecuteNonQuery();


                    res.result = true;
                }
            }
            catch (Exception ex)
            {
                res.result  = false;
                res.Message = ex.Message;
            }

            return(res);
        }
Esempio n. 17
0
        internal bool  UpdateUser(Class.User oUser)
        {
            SqlConnection con = new SqlConnection();

            con.ConnectionString = ConfigurationManager.ConnectionStrings["LocalDataConnection"].ConnectionString;
            con.Open();
            SqlCommand sqlcmd = new SqlCommand();
            DataSet    oDS    = new DataSet();

            sqlcmd.CommandText = "spUpdateUser";
            sqlcmd.CommandType = CommandType.StoredProcedure;
            sqlcmd.Connection  = con;

            sqlcmd.Parameters.AddWithValue("@ID", oUser.ID);
            sqlcmd.Parameters.AddWithValue("@First", oUser.FirstName);
            sqlcmd.Parameters.AddWithValue("@Last", oUser.LastName);
            sqlcmd.Parameters.AddWithValue("@Email", oUser.Email);
            sqlcmd.Parameters.AddWithValue("@Add", oUser.Address);
            sqlcmd.Parameters.AddWithValue("@City", oUser.City);
            sqlcmd.Parameters.AddWithValue("@Prov", oUser.Province);
            sqlcmd.Parameters.AddWithValue("@Postal", oUser.PostalCode);
            sqlcmd.Parameters.AddWithValue("@Phone", oUser.Phone);
            sqlcmd.Parameters.AddWithValue("@Password", oUser.Password);
            //sqlcmd.Parameters.AddWithValue("@Pet", oUser.PetType);


            int result = sqlcmd.ExecuteNonQuery();



            //SqlDataAdapter oAdapter = new SqlDataAdapter();
            //oAdapter.SelectCommand = sqlcmd;
            //oAdapter.Fill(oDS);



            con.Close();

            return(result > 0 ? true : false);
        }
Esempio n. 18
0
        public static Result UpdateProfileView(long iduser, Class.User user)
        {
            Result res = new Result();

            PasswordHandling newPassword = new PasswordHandling();

            newPassword.generateSalt();
            newPassword.hashPassword(user.Password);

            try
            {
                using (MySqlConnection conn = DataAccessBase.GetConnection())
                {
                    conn.Open();
                    MySqlCommand command = new MySqlCommand("UpdateProfileView", conn);
                    command.CommandType = System.Data.CommandType.StoredProcedure;

                    command.Parameters.AddWithValue("name", user.Name);
                    command.Parameters.AddWithValue("Surname", user.Surname);
                    command.Parameters.AddWithValue("PW", newPassword.getHashedPassword());
                    command.Parameters.AddWithValue("Salt", newPassword.getSalt());
                    command.Parameters.AddWithValue("username", user.Username);
                    command.Parameters.AddWithValue("Email", user.Email);
                    command.Parameters.AddWithValue("iduser", iduser);
                    command.ExecuteNonQuery();


                    res.result = true;
                }
            }
            catch (Exception ex)
            {
                res.result  = false;
                res.Message = ex.Message;
            }

            return(res);
        }
Esempio n. 19
0
        public static Class.User getUserById(long id_user)
        {
            Class.User user = new Class.User();

            //try
            //{
            using (MySqlConnection conn = DataAccessBase.GetConnection())
            {
                conn.Open();
                MySqlCommand command = new MySqlCommand("getUser", conn);
                command.CommandType = System.Data.CommandType.StoredProcedure;
                command.Parameters.AddWithValue("@iduser", id_user);

                using (MySqlDataReader reader = command.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        user.Id_user           = reader.GetInt64(0);
                        user.Name              = reader.GetString(1);
                        user.Surname           = reader.GetString(2);
                        user.Email             = reader.GetString(3);
                        user.DescriptionType   = reader.GetString(4);
                        user.YearsOfExperience = reader.GetInt16(5);
                        user.Type              = reader.GetInt16(6);
                        user.Password          = reader.GetString(8);
                        user.Username          = reader.GetString(9);
                    }
                }
            }
            //}
            //catch (Exception ex)
            //{
            //    esito.esito = false;
            //    esito.Message= ex.Message;
            //}

            return(user);
        }
Esempio n. 20
0
        internal bool IsUserExist(Class.User oUser)
        {
            SqlConnection con = new SqlConnection();

            con.ConnectionString = ConfigurationManager.ConnectionStrings["LocalDataConnection"].ConnectionString;
            con.Open();
            SqlCommand sqlcmd = new SqlCommand();
            DataSet    oDS    = new DataSet();

            sqlcmd.CommandText = "Select count(*) from Users where Email='" + oUser.Email + "'";
            sqlcmd.CommandType = CommandType.Text;
            sqlcmd.Connection  = con;


            SqlDataAdapter oAdapter = new SqlDataAdapter();

            oAdapter.SelectCommand = sqlcmd;
            oAdapter.Fill(oDS);

            con.Close();

            return(oDS.Tables[0].Rows[0][0].ToString() == "0" ? false : true);
        }
Esempio n. 21
0
        protected void btnLogin_Click(object sender, EventArgs e)
        {
            Class.User user = ConnectionClass.LoginUser(txtLogin.Text, txtPassword.Text);

            if (user != null)
            {
                //Store login variables in session
                Session["login"]      = user.Name;
                Session["type"]       = user.Type;
                Session["email"]      = user.Email;
                Session["buildingNo"] = user.BuildingNumber;
                Session["apt"]        = user.NumberApt;

                // Session["stan"] = user.stan;

                //       lblError.Text = (string)user.Name + " " + (string)user.Type + " " + (string)user.Email + " " + user.BuildingNumber;
                if (Session["type"].ToString() == "admin")
                {
                    // lblError.Text = "E admin";
                    Response.Redirect("~/Pages/Admin/DefaultAdmin.aspx");
                }
                else if (Session["type"].ToString() == "manager")
                {
                    //    lblError.Text = "E menadzer";
                    Response.Redirect("~/Pages/Manager/DefaultManager.aspx");
                }
                else if (Session["type"].ToString() == "user")
                {
                    //      lblError.Text = "E korisnik";
                    Response.Redirect("~/Pages/User/DefaultUser.aspx");
                }
            }
            else
            {
                lblError.Text = "Неуспешна најава";
            }
        }
        public static void SaveLabelDiscrete(List <LableScaleDiskrete> Listlablediscrete)
        {
            Class.manageImg managerView = HttpContext.Current.Session["managerView"] as Class.manageImg;


            if (Listlablediscrete.Count == 0)
            {
                return;
            }
            // discrete label wird hier gespeichert
            Class.User user  = HttpContext.Current.Session["User"] as Class.User;
            Result     res   = null;
            int        index = managerView.currentPageIndex;

            foreach (LableScaleDiskrete lb in Listlablediscrete)
            {
                // save labels in current session
                for (int i = 0; i < managerView.allImages[index].Count; i++)
                {
                    if (managerView.allImages[index][i].IdGroupImage == lb.IdGroupImage)
                    {
                        managerView.allImages[index][i].LableDiscrete = lb.Lable;
                    }
                }



                if (lb.IdGroupImage != 0)
                {
                    LableScaleDiskrete lable = new LableScaleDiskrete();
                    lable.Lable        = lb.Lable;
                    lable.IdGroupImage = lb.IdGroupImage;
                    lable.IdUser       = Convert.ToInt64(user.Id_user);
                    res = DataAccessTestCase.InsertLableScaleDiskrete(lable);
                }
            }
        }
Esempio n. 23
0
        public static Class.User SignInUser(Class.User user)
        {
            StartConnection();
            try
            {
                using (MySqlCommand = new MySqlCommand("select * from user where user.email=@email and user.password=@password", MySqlConnection))
                {
                    MySqlCommand.Parameters.AddWithValue("@email", user.Email.ToLower());
                    MySqlCommand.Parameters.AddWithValue("@password", user.Password);

                    MySqlConnection.Open();
                    MySqlDataReader reader          = MySqlCommand.ExecuteReader();
                    Class.User      userCredentials = new Class.User();
                    while (reader.Read())
                    {
                        userCredentials.ID    = (int)reader["ID"];
                        userCredentials.Name  = (string)reader["name"];
                        userCredentials.Email = (string)reader["email"];
                        userCredentials.AlreadyHashedPassword = (string)reader["password"];
                    }
                    if (MySqlConnection.State != System.Data.ConnectionState.Closed)
                    {
                        MySqlConnection.Close();
                    }
                    return(userCredentials);
                }
            }
            catch (Exception ex)
            {
                if (MySqlConnection.State != System.Data.ConnectionState.Closed)
                {
                    MySqlConnection.Close();
                }
                return(null);
            }
        }
Esempio n. 24
0
        // when click on button create user, eventArgs event of button
        protected void CreateUserButton_Click(object sender, EventArgs e)
        {
            Result result = new Result();

            result.result = false;
            Class.User user = null;

            // if every control is false -> alles ok
            if (Page.IsValid)
            {
                // populate object and insert in db new user
                user          = new Class.User();
                user.Name     = txtName.Text;
                user.Surname  = txtSurname.Text;
                user.Password = txtPassword.Text;
                user.Username = txtUserName.Text;
                user.Email    = txtEmail.Text;
                user.Type     = Convert.ToInt32(ddlUserType.SelectedValue);
                user.titleId  = Convert.ToInt32(ddlUserTitle.SelectedValue);

                user.YearsOfExperience = Convert.ToInt32(txtYearsExperience.Text);
                user.DateInsert        = DateTime.Now;
                result = DataAccessUser.RegisterUser(user);
                DataAccessUser.writeUserList();
            }
            else
            {
            }

            if (result.result)
            {
                DivSuccess.Visible = true;
                DivError.Visible   = false;

                List <string> message = Constant.registerMail(txtName.Text, txtSurname.Text, txtUserName.Text, txtPassword.Text);

                MyEmail mail = new MyEmail();
                mail.sendEmail(txtEmail.Text, message[0], message[1], Constant.includeAttachment);


                if (Constant.sendRegisteredAdmin)
                {
                    List <string> messageAdmin = Constant.registerNotificationAdminMail(txtName.Text, txtSurname.Text, txtUserName.Text);

                    mail.sendEmail(Constant.adminEmailAddress, messageAdmin[0], messageAdmin[1], false);
                }



                if (user != null)
                {
                    // user is available for the whole page
                    Session["User"] = user;
                    Response.Redirect("~/Default.aspx"); // change to welcome page
                }
            }
            else
            {
                DivSuccess.Visible = false;
                DivError.Visible   = true;
                lblError.Text      = result.Message;
            }
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                if (HttpContext.Current.Session["User"] == null)
                {
                    Response.Redirect("~/Account/Login.aspx");
                }
                else
                {
                    long idTestCase = 0;
                    if (HttpContext.Current.Session["IdTestCase"] != null)
                    {
                        idTestCase = Convert.ToInt64(HttpContext.Current.Session["IdTestCase"]);
                    }
                    // infos die immer da sind und sich während des Labelns nicht ändern
                    Class.TestCase tc = DataAccess.DataAccessTestCase.getTestCase().Where(p => p.IDTestcase == idTestCase).FirstOrDefault();
                    lblNameTestCase.Text = tc.NameTestCase;
                    lblTestQuestion.Text = tc.TestQuestion;
                    lblGeneralInfo.Text  = tc.GeneralInfo;


                    if (System.IO.File.Exists(Constant.pathTutorialPages + tc.IDTestcase + ".html"))
                    {
                        string html = System.IO.File.ReadAllText(Constant.pathTutorialPages + tc.IDTestcase + ".html");
                        hddTutorial.Value     = html;
                        disableTutorial.Value = Constant.pathTutorialPages + tc.IDTestcase + ".html";
                    }
                    else
                    {
                        hddTutorial.Value     = "";
                        disableTutorial.Value = "";
                    }



                    updateReference(0);

                    HttpContext.Current.Session["viewImage"] = this;

                    if (tc.ActiveLearning)
                    {
                        // check if there are files
                        Class.manageImg managerView = HttpContext.Current.Session["managerView"] as Class.manageImg;

                        //  0: no filesfound; 1: user file found; 2: initial file found
                        int statusFiles = 0;
                        if (System.IO.File.Exists(Constant.pathALuserInput + string.Format("{0:D4}", managerView.IDTestcase) + "_User" + string.Format("{0:D4}", managerView.IDUser) + ".csv"))
                        {
                            statusFiles += 2;
                            HttpContext.Current.Session["numberOfOptimizationsUser"] = int.Parse(System.IO.File.ReadLines(Constant.pathALuserInput + string.Format("{0:D4}", managerView.IDTestcase) + "_User" + string.Format("{0:D4}", managerView.IDUser) + ".csv").First());
                        }
                        else if (System.IO.File.Exists(Constant.pathALinitialInput + string.Format("{0:D4}", managerView.IDTestcase) + ".csv"))
                        {
                            statusFiles += 1;
                        }

                        HttpContext.Current.Session["statusFiles"] = statusFiles;
                    }
                }
            }
            else
            {
                if (HttpContext.Current.Session["User"] == null)
                {
                    Response.Redirect("~/Account/Login.aspx");
                }
                else
                {
                    try {
                        bool refresh = (bool)HttpContext.Current.Session["refresh"];

                        if (refresh)
                        {
                            long idTestCase = 0;
                            if (HttpContext.Current.Session["IdTestCase"] != null)
                            {
                                idTestCase = Convert.ToInt64(HttpContext.Current.Session["IdTestCase"]);
                            }
                            Class.TestCase  tc = DataAccess.DataAccessTestCase.getTestCase().Where(p => p.IDTestcase == idTestCase).FirstOrDefault();
                            Thread          task;
                            Class.manageImg managerView;
                            Class.User      user = Session["User"] as Class.User;
                            // initialize manage object with all needed content
                            managerView = new manageImg(tc, user);

                            // spawn a thread to create the image packages
                            ThreadStart thread = new ThreadStart(managerView.ThreadRun);
                            task = new Thread(thread);

                            task.Start();

                            if (task.IsAlive) // creation of everything finished => all necessary information are in Session["managerView"]
                            {
                                Session["managerView"] = managerView;
                                Response.Redirect("~/managementImage/ViewImage_.aspx");
                            }
                        }
                    }catch (Exception ex) {}
                }
            }
        }