private int SaveGiftCertificate() { if (Page.IsValid) { // VALIDATE IF A PROPER EXPIRE DATE IS SELECTED if (ExpireDate.SelectedEndDate != DateTime.MinValue && DateTime.Compare(ExpireDate.SelectedEndDate, LocaleHelper.LocalNow) < 0) { CustomValidator dateValidator = new CustomValidator(); dateValidator.ControlToValidate = "Name"; // THIS SHOULD BE "ExpireDate" CONTROL, BUT THAT CANNOT BE VALIDATED dateValidator.Text = "*"; dateValidator.ErrorMessage = "Expiration date cannot be in the past."; dateValidator.IsValid = false; phExpirationValidator.Controls.Add(dateValidator); return(0); } GiftCertificate _GiftCertificate = new GiftCertificate(); _GiftCertificate.Name = Name.Text; _GiftCertificate.Store = AbleContext.Current.Store; _GiftCertificate.CreatedBy = AbleContext.Current.UserId; _GiftCertificate.Balance = AlwaysConvert.ToDecimal(Balance.Text); _GiftCertificate.ExpirationDate = ExpireDate.NullableSelectedEndDate; _GiftCertificate.CreateDate = LocaleHelper.LocalNow; _GiftCertificate.AddCreatedManuallyTransaction(); if (Activated.Checked) { IGiftCertKeyProvider gckProvider = AbleContext.Container.Resolve <IGiftCertKeyProvider>(); _GiftCertificate.SerialNumber = gckProvider.GenerateGiftCertificateKey(); _GiftCertificate.AddActivatedTransaction(); } else { _GiftCertificate.SerialNumber = ""; } _GiftCertificate.Save(); return(_GiftCertificate.Id); } return(0); }