Example #1
0
        private Int64 LoginUser()
        {
            string strUserName = txtUserName.Text;
            string strPassword = txtPassword.Text;

            if (strUserName == string.Empty)
            {
                txtUserName.Focus(); return(0);
            }
            else if (strPassword == string.Empty && !strUserName.Contains("|"))
            {
                txtPassword.Focus(); return(0);
            }

            string     strName       = string.Empty;
            AccessUser clsAccessUser = new AccessUser();

            if (strPassword == string.Empty)
            {
                if (strUserName.Contains("|"))
                {
                    string[] strSplit = strUserName.Split('|');
                    strPassword = strSplit[1].ToString();
                    strUserName = strSplit[0].ToString();
                }
            }

            Int64 iUID = clsAccessUser.Login(strUserName, strPassword, mAccessType, out strName);

            AuditTrail clsAuditTrail = new AuditTrail(clsAccessUser.Connection, clsAccessUser.Transaction);

            AuditTrailDetails[] clsAuditTrailDetails = clsAuditTrail.DetailedList(DateTime.Today, DateTime.MinValue, strName, AccessTypes.None, "FE:%", 1, "ActivityDate", SortOption.Desscending);
            clsAccessUser.CommitAndDispose();

            if (mintUserID != 0)
            {
                if (iUID != mintUserID)
                {
                    switch (iUID)
                    {
                    case 0:
                        iUID = 0; txtUserName.Text = string.Empty; txtPassword.Text = string.Empty;
                        MessageBox.Show("Invalid user name and/or password.", "RetailPlus", MessageBoxButtons.OK);
                        break;

                    default:
                        iUID = 0; txtUserName.Text = string.Empty; txtPassword.Text = string.Empty;
                        MessageBox.Show("Invalid user name and/or password.", "RetailPlus", MessageBoxButtons.OK);
                        break;
                    }
                }
            }
            else
            {
                if (iUID == 0)
                {
                    iUID = 0; txtUserName.Text = string.Empty; txtPassword.Text = string.Empty; txtUserName.Focus();
                    MessageBox.Show("Invalid user name and/or password.", "RetailPlus", MessageBoxButtons.OK);
                }
            }

            if (iUID != 0 && mintUserID == 0 && clsAuditTrailDetails.Length > 0 && mAccessType == AccessTypes.LoginFE)
            {
                if (clsAuditTrailDetails[0].Activity != AccessTypes.LogoutFE.ToString("G") && clsAuditTrailDetails[0].Activity != "Close Terminal")
                {
                    if (clsAuditTrailDetails[0].IPAddress != System.Net.Dns.GetHostName())
                    {
                        if (clsAuditTrailDetails[0].ActivityDate >= DateTime.Now.AddMinutes(-10))
                        {
                            iUID = 0; txtUserName.Text = string.Empty; txtPassword.Text = string.Empty; txtUserName.Focus();
                            MessageBox.Show("You are still doing transaction at " + clsAuditTrailDetails[0].IPAddress + "." + Environment.NewLine +
                                            "Please logout from that terminal first or wait for 1 hour(s) for automatic logout.", "RetailPlus", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                        }
                    }
                }
            }
            return(iUID);
        }
Example #2
0
        private Int64 LoginUser()
        {
            string strUserName = txtUserName.Text;
            string strPassword = txtPassword.Text;

            if (strUserName == string.Empty)
            {
                txtUserName.Focus(); return(0);
            }
            else if (strPassword == string.Empty && strUserName.Length == 13 && strUserName.Contains("800000"))
            {
            }
            else if (strPassword == string.Empty && strUserName.Length >= 16)
            {
            }
            else if (strPassword == string.Empty && !strUserName.Contains("|"))
            {
                txtPassword.Focus(); return(0);
            }

            string     strName       = string.Empty;
            AccessUser clsAccessUser = new AccessUser();

            if (strPassword == string.Empty)
            {
                if (strUserName.Contains("|"))
                {
                    string[] strSplit = strUserName.Split('|');
                    strPassword = strSplit[1].ToString();
                    strUserName = strSplit[0].ToString();
                }
                else if (strUserName.Length == 13 & strUserName.Contains("800000")) // this is the defined no of burnt card no
                {
                    //strUserName = strUserName.Replace("800000", "");
                    strUserName = strUserName.Remove(0, 6);
                    strPassword = strUserName;
                }
                else if (strUserName.Length >= 16) // this is the defined no of burnt card no
                {
                    strUserName = strUserName.Replace("%", "").Replace("?", "");

                    strPassword = strUserName.Remove(0, 10);
                    strUserName = strUserName.Remove(10, strUserName.Length - 10);
                }
            }

            Int64 iUID = clsAccessUser.Login(strUserName, strPassword, mAccessType, out strName);

            AuditTrail clsAuditTrail = new AuditTrail(clsAccessUser.Connection, clsAccessUser.Transaction);

            AuditTrailDetails[] clsAuditTrailDetails = clsAuditTrail.DetailedList(DateTime.Today, DateTime.MinValue, strName, AccessTypes.None, "FE:", 1, "ActivityDate", SortOption.Desscending);
            clsAccessUser.CommitAndDispose();

            if (mintUserID != 0)
            {
                if (iUID != mintUserID)
                {
                    switch (iUID)
                    {
                    case 0:
                        iUID = 0; txtUserName.Text = string.Empty; txtPassword.Text = string.Empty;
                        MessageBox.Show("Sorry you are not allowed to access this transaction or you entered an Invalid user name and/or password.", "RetailPlus", MessageBoxButtons.OK);
                        break;

                    default:
                        iUID = 0; txtUserName.Text = string.Empty; txtPassword.Text = string.Empty;
                        MessageBox.Show("Sorry you are not allowed to access this transaction or you entered an Invalid user name and/or password.", "RetailPlus", MessageBoxButtons.OK);
                        break;
                    }
                }
            }
            else
            {
                if (iUID == 0)
                {
                    iUID = 0; txtUserName.Text = string.Empty; txtPassword.Text = string.Empty; txtUserName.Focus();
                    MessageBox.Show("Sorry you are not allowed to access this transaction or you entered an Invalid user name and/or password.", "RetailPlus", MessageBoxButtons.OK);
                }
            }

            if (iUID != 0 && mintUserID == 0 && clsAuditTrailDetails.Length > 0 && mAccessType == AccessTypes.LoginFE)
            {
                if (clsAuditTrailDetails[0].Activity != AccessTypes.LogoutFE.ToString("G"))
                {
                    if (clsAuditTrailDetails[0].IPAddress != System.Net.Dns.GetHostName())
                    {
                        if (clsAuditTrailDetails[0].ActivityDate >= DateTime.Now.AddMinutes(-10))
                        {
                            iUID = 0; txtUserName.Text = string.Empty; txtPassword.Text = string.Empty; txtUserName.Focus();
                            MessageBox.Show("You are still doing transaction at " + clsAuditTrailDetails[0].IPAddress + "." + Environment.NewLine +
                                            "Please logout from that terminal first or wait for 1 hour(s) for automatic logout.", "RetailPlus", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                        }
                    }
                }
            }

            txtUserName.PasswordChar = '\0';
            txtUserName.Font         = new Font("Tahoma", 12, FontStyle.Bold);

            return(iUID);
        }