Exemplo n.º 1
0
 /// <summary>
 /// HasRegistration method implementation
 /// </summary>
 public override bool HasRegistration(string upn)
 {
     return(SQLUtils.HasRegistration(_host, upn));
 }
Exemplo n.º 2
0
        /// <summary>
        /// SetUserRegistration method implementation
        /// </summary>
        public override Registration SetUserRegistration(Registration reg, bool resetkey = false, bool caninsert = true, bool disableoninsert = false)
        {
            if (!SQLUtils.HasRegistration(_host, reg.UPN))
            {
                if (caninsert)
                {
                    return(AddUserRegistration(reg, resetkey, false));
                }
                else
                {
                    return(GetUserRegistration(reg.UPN));
                }
            }
            string request;

            if (disableoninsert)
            {
                request = "UPDATE REGISTRATIONS SET MAILADDRESS = @MAILADDRESS, PHONENUMBER = @PHONENUMBER, PIN=@PIN, METHOD=@METHOD, OVERRIDE=@OVERRIDE, WHERE UPN=@UPN";
            }
            else
            {
                request = "UPDATE REGISTRATIONS SET MAILADDRESS = @MAILADDRESS, PHONENUMBER = @PHONENUMBER, PIN=@PIN, METHOD=@METHOD, OVERRIDE=@OVERRIDE, ENABLED=@ENABLED WHERE UPN=@UPN";
            }

            SqlConnection con = new SqlConnection(_connectionstring);
            SqlCommand    sql = new SqlCommand(request, con);

            SqlParameter prm1 = new SqlParameter("@MAILADDRESS", SqlDbType.VarChar);

            sql.Parameters.Add(prm1);
            if (string.IsNullOrEmpty(reg.MailAddress))
            {
                prm1.Value = DBNull.Value;
            }
            else
            {
                prm1.Value = reg.MailAddress;
            }

            SqlParameter prm2 = new SqlParameter("@PHONENUMBER", SqlDbType.VarChar);

            sql.Parameters.Add(prm2);
            if (string.IsNullOrEmpty(reg.PhoneNumber))
            {
                prm2.Value = DBNull.Value;
            }
            else
            {
                prm2.Value = reg.PhoneNumber;
            }

            SqlParameter prm3 = new SqlParameter("@PIN", SqlDbType.Int);

            sql.Parameters.Add(prm3);
            prm3.Value = reg.PIN;

            SqlParameter prm4 = new SqlParameter("@METHOD", SqlDbType.Int);

            sql.Parameters.Add(prm4);
            prm4.Value = reg.PreferredMethod;

            SqlParameter prm5 = new SqlParameter("@OVERRIDE", SqlDbType.VarChar);

            sql.Parameters.Add(prm5);
            if (reg.OverrideMethod == null)
            {
                prm5.Value = string.Empty;
            }
            else
            {
                prm5.Value = reg.OverrideMethod;
            }

            if (!disableoninsert)
            {
                SqlParameter prm6 = new SqlParameter("@ENABLED", SqlDbType.Bit);
                sql.Parameters.Add(prm6);
                prm6.Value = reg.Enabled;
            }

            SqlParameter prm7 = new SqlParameter("@UPN", SqlDbType.VarChar);

            sql.Parameters.Add(prm7);
            prm7.Value = reg.UPN;
            con.Open();
            try
            {
                int res = sql.ExecuteNonQuery();
                if (resetkey)
                {
                    this.OnKeyDataEvent(reg.UPN, KeysDataManagerEventKind.add);
                }
            }
            catch (Exception ex)
            {
                DataLog.WriteEntry(ex.Message, System.Diagnostics.EventLogEntryType.Error, 5000);
                throw new Exception(ex.Message);
            }
            finally
            {
                con.Close();
            }
            return(GetUserRegistration(reg.UPN));
        }
Exemplo n.º 3
0
        /// <summary>
        /// AddUserRegistration method implementation
        /// </summary>
        public override Registration AddUserRegistration(Registration reg, bool resetkey = true, bool canupdate = true, bool disableoninsert = false)
        {
            if (SQLUtils.HasRegistration(_host, reg.UPN))
            {
                if (canupdate)
                {
                    return(SetUserRegistration(reg, resetkey, false));
                }
                else
                {
                    return(GetUserRegistration(reg.UPN));
                }
            }
            string request = "INSERT INTO REGISTRATIONS (UPN, SECRETKEY, MAILADDRESS, PHONENUMBER, PIN, ENABLED, METHOD, OVERRIDE) VALUES (@UPN, @SECRETKEY, @MAILADDRESS, @PHONENUMBER, @PIN, @ENABLED, @METHOD, @OVERRIDE)";

            SqlConnection con = new SqlConnection(_connectionstring);
            SqlCommand    sql = new SqlCommand(request, con);

            SqlParameter prm1 = new SqlParameter("@UPN", SqlDbType.VarChar);

            sql.Parameters.Add(prm1);
            prm1.Value = reg.UPN;

            SqlParameter prm1a = new SqlParameter("@SECRETKEY", SqlDbType.VarChar);

            sql.Parameters.Add(prm1a);
            prm1a.Value = Guid.NewGuid().ToString().ToUpper();

            SqlParameter prm2 = new SqlParameter("@MAILADDRESS", SqlDbType.VarChar);

            sql.Parameters.Add(prm2);
            if (string.IsNullOrEmpty(reg.MailAddress))
            {
                prm2.Value = DBNull.Value;
            }
            else
            {
                prm2.Value = reg.MailAddress;
            }

            SqlParameter prm3 = new SqlParameter("@PHONENUMBER", SqlDbType.VarChar);

            sql.Parameters.Add(prm3);
            if (string.IsNullOrEmpty(reg.PhoneNumber))
            {
                prm3.Value = DBNull.Value;
            }
            else
            {
                prm3.Value = reg.PhoneNumber;
            }

            SqlParameter prm4 = new SqlParameter("@PIN", SqlDbType.Int);

            sql.Parameters.Add(prm4);
            prm4.Value = reg.PIN;

            SqlParameter prm5 = new SqlParameter("@ENABLED", SqlDbType.Bit);

            sql.Parameters.Add(prm5);
            if (disableoninsert)
            {
                prm5.Value = false;
            }
            else
            {
                prm5.Value = reg.Enabled;
            }

            SqlParameter prm6 = new SqlParameter("@METHOD", SqlDbType.Int);

            sql.Parameters.Add(prm6);
            prm6.Value = reg.PreferredMethod;

            SqlParameter prm7 = new SqlParameter("@OVERRIDE", SqlDbType.VarChar);

            sql.Parameters.Add(prm7);
            if (reg.OverrideMethod == null)
            {
                prm7.Value = string.Empty;
            }
            else
            {
                prm7.Value = reg.OverrideMethod;
            }
            con.Open();
            try
            {
                int res = sql.ExecuteNonQuery();
                if (resetkey)
                {
                    this.OnKeyDataEvent(reg.UPN, KeysDataManagerEventKind.add);
                }
            }
            catch (Exception ex)
            {
                DataLog.WriteEntry(ex.Message, System.Diagnostics.EventLogEntryType.Error, 5000);
                throw new Exception(ex.Message);
            }
            finally
            {
                con.Close();
            }
            return(GetUserRegistration(reg.UPN));
        }
        /// <summary>
        /// AddUserRegistration method implementation
        /// </summary>
        public override Registration AddUserRegistration(Registration reg, bool newkey = true)
        {
            if (SQLUtils.HasRegistration(_host, reg.UPN))
            {
                return(SetUserRegistration(reg, newkey));
            }

            string request = "INSERT INTO REGISTRATIONS (UPN, MAILADDRESS, PHONENUMBER, ENABLED, METHOD) VALUES (@UPN, @MAILADDRESS, @PHONENUMBER, @ENABLED, @METHOD)";

            SqlConnection con = new SqlConnection(_connectionstring);
            SqlCommand    sql = new SqlCommand(request, con);

            SqlParameter prm2 = new SqlParameter("@MAILADDRESS", SqlDbType.VarChar);

            sql.Parameters.Add(prm2);
            if (string.IsNullOrEmpty(reg.MailAddress))
            {
                prm2.Value = DBNull.Value;
            }
            else
            {
                prm2.Value = reg.MailAddress;
            }

            SqlParameter prm3 = new SqlParameter("@PHONENUMBER", SqlDbType.VarChar);

            sql.Parameters.Add(prm3);
            if (string.IsNullOrEmpty(reg.PhoneNumber))
            {
                prm3.Value = DBNull.Value;
            }
            else
            {
                prm3.Value = reg.PhoneNumber;
            }

            SqlParameter prmb = new SqlParameter("@ENABLED", SqlDbType.Bit);

            sql.Parameters.Add(prmb);
            prmb.Value = reg.Enabled;

            SqlParameter prm4 = new SqlParameter("@METHOD", SqlDbType.Int);

            sql.Parameters.Add(prm4);
            prm4.Value = reg.PreferredMethod;

            SqlParameter prm5 = new SqlParameter("@UPN", SqlDbType.VarChar);

            sql.Parameters.Add(prm5);
            prm5.Value = reg.UPN;
            con.Open();
            try
            {
                int res = sql.ExecuteNonQuery();
                if (newkey)
                {
                    this.OnKeyDataEvent(reg.UPN, KeysDataManagerEventKind.add);
                }
            }
            catch (Exception ex)
            {
                DataLog.WriteEntry(ex.Message, System.Diagnostics.EventLogEntryType.Error, 5000);
                throw new Exception(ex.Message);
            }
            finally
            {
                con.Close();
            }
            return(GetUserRegistration(reg.UPN));
        }