예제 #1
0
 protected void AddAffiliateButton_Click(object sender, EventArgs e)
 {
     if (Page.IsValid)
     {
         Affiliate affiliate = new Affiliate();
         affiliate.Name           = AddAffiliateName.Text;
         affiliate.ReferralPeriod = AffiliateReferralPeriod.Persistent;
         affiliate.Save();
         Response.Redirect("EditAffiliate.aspx?AffiliateId=" + affiliate.Id.ToString());
     }
 }
예제 #2
0
        protected void SaveButton_Click(object sender, System.EventArgs e)
        {
            if (Page.IsValid)
            {
                _Affiliate.Name                = Name.Text;
                _Affiliate.ReferralDays        = AlwaysConvert.ToInt16(ReferralDays.Text);
                _Affiliate.CommissionRate      = AlwaysConvert.ToDecimal(CommissionRate.Text);
                _Affiliate.CommissionIsPercent = (CommissionType.SelectedIndex > 0);
                _Affiliate.CommissionOnTotal   = (CommissionType.SelectedIndex == 2);
                _Affiliate.WebsiteUrl          = WebsiteUrl.Text;
                _Affiliate.Email               = Email.Text;
                _Affiliate.Group               = GroupDataSource.Load(AlwaysConvert.ToInt(AffiliateGroup.SelectedValue));

                AffiliateReferralPeriod referralPeriod = (AffiliateReferralPeriod)AlwaysConvert.ToByte(ReferralPeriod.SelectedValue);
                _Affiliate.ReferralPeriodId = (byte)referralPeriod;
                _Affiliate.ReferralPeriod   = referralPeriod;

                if (referralPeriod != AffiliateReferralPeriod.Persistent && referralPeriod != AffiliateReferralPeriod.FirstOrder)
                {
                    _Affiliate.ReferralDays = AlwaysConvert.ToInt16(ReferralDays.Text);
                }
                else
                {
                    _Affiliate.ReferralDays = 0;
                }

                //ADDRESS INFORMATION
                _Affiliate.FirstName    = FirstName.Text;
                _Affiliate.LastName     = LastName.Text;
                _Affiliate.Company      = Company.Text;
                _Affiliate.Address1     = Address1.Text;
                _Affiliate.Address2     = Address2.Text;
                _Affiliate.City         = City.Text;
                _Affiliate.Province     = Province.Text;
                _Affiliate.PostalCode   = PostalCode.Text;
                _Affiliate.CountryCode  = CountryCode.SelectedValue;
                _Affiliate.PhoneNumber  = PhoneNumber.Text;
                _Affiliate.FaxNumber    = FaxNumber.Text;
                _Affiliate.MobileNumber = MobileNumber.Text;
                _Affiliate.Save();

                // SAVE TAX ID
                User user = _Affiliate.Group != null && _Affiliate.Group.Users.Count > 0 ? _Affiliate.Group.Users[0] : null;
                if (user != null)
                {
                    user.TaxExemptionReference = TaxId.Text;
                    user.Save();
                }

                SavedMessage.Visible = true;
                SavedMessage.Text    = string.Format(SavedMessage.Text, LocaleHelper.LocalNow);
            }
        }
예제 #3
0
        protected void btnRegister_Click(object sender, EventArgs e)
        {
            #region Validate username

            if (txtUsername.Text.Trim().Length == 0)
            {
                MessageBox.Show(Lang.Trans("Please specify username!"), Misc.MessageType.Error);
                return;
            }

            if (Affiliate.IsUsernameTaken(txtUsername.Text))
            {
                MessageBox.Show(Lang.Trans("Username is already taken!"), Misc.MessageType.Error);
                return;
            }

            foreach (string reservedUsername in Config.Users.ReservedUsernames)
            {
                if (reservedUsername == txtUsername.Text.ToLower())
                {
                    MessageBox.Show(Lang.Trans("Username is reserved!"), Misc.MessageType.Error);
                    return;
                }
            }

            try
            {
                Affiliate.ValidateUsername(txtUsername.Text);
            }
            catch (ArgumentException ex)
            {
                MessageBox.Show(ex.Message, Misc.MessageType.Error);
                return;
            }

            #endregion

            #region Validate passwords

            if (txtPassword.Text.Trim().Length == 0)
            {
                MessageBox.Show(Lang.Trans("Please specify password!"), Misc.MessageType.Error);
                return;
            }
            if (txtPasswordConfirm.Text.Trim().Length == 0)
            {
                MessageBox.Show(Lang.Trans("Please verify password!"), Misc.MessageType.Error);
                return;
            }
            if (txtPassword.Text != txtPasswordConfirm.Text)
            {
                MessageBox.Show(Lang.Trans("Passwords do not match!"), Misc.MessageType.Error);
                return;
            }

            try
            {
                Affiliate.ValidatePassword(txtPassword.Text);
            }
            catch (ArgumentException ex)
            {
                MessageBox.Show(ex.Message, Misc.MessageType.Error);
                return;
            }

            #endregion

            #region Validate name

            if (txtName.Text.Trim().Length == 0)
            {
                MessageBox.Show(Lang.Trans("Please enter your name!"), Misc.MessageType.Error);
                return;
            }

            #endregion

            #region Validate e-mail address

            try
            {
                if (txtEmail.Text.Trim().Length == 0)
                {
                    MessageBox.Show(Lang.Trans("Please specify e-mail address!"), Misc.MessageType.Error);
                    return;
                }
            }
            catch (ArgumentException err) // Invalid e-mail address
            {
                MessageBox.Show(err.Message, Misc.MessageType.Error);
                return;
            }

            #endregion

            #region Validate site URL

            if (txtSiteUrl.Text.Trim().Length == 0)
            {
                MessageBox.Show(Lang.Trans("Please enter your site URL!"), Misc.MessageType.Error);
                return;
            }

            #endregion

            #region Validate payment details

            if (txtPaymentDetails.Text.Trim().Length == 0)
            {
                MessageBox.Show(Lang.Trans("Please enter your payment details!"), Misc.MessageType.Error);
                return;
            }

            #endregion

            Affiliate affiliate = new Affiliate(txtUsername.Text.Trim());

            affiliate.Password = txtPassword.Text;
            affiliate.Name = txtName.Text.Trim();
            affiliate.Email = txtEmail.Text.Trim();
            affiliate.SiteURL = txtSiteUrl.Text.Trim();
            affiliate.PaymentDetails = txtPaymentDetails.Text.Trim();

            affiliate.Save();

            AffiliateSession affiliateSession = null;

            try
            {
                affiliateSession = new AffiliateSession(txtUsername.Text.Trim());
                affiliateSession.Authorize(txtPassword.Text.Trim());
            }
            catch (NotFoundException err)
            {
                MessageBox.Show(err.Message, Misc.MessageType.Error);
                return;
            }
            catch (AccessDeniedException err)
            {
                MessageBox.Show(err.Message, Misc.MessageType.Error);
                return;
            }
            catch (Exception err)
            {
                IPLogger.Log(txtUsername.Text, Request.UserHostAddress, IPLogger.ActionType.AffiliateLoginFailed);

                MessageBox.Show(err.Message, Misc.MessageType.Error);
                return;
            }

            CurrentAffiliateSession = affiliateSession;

            Response.Redirect("~/Affiliates/Home.aspx");
        }