using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class GroupingValidators : System.Web.UI.Page
{
   /// <summary>
   /// Procedura obsługi przycisku wyszukiwania
   /// </summary>
   protected void btnSearch_Click(object sender, EventArgs e)
   {
      // Przekierowanie jest wykonywane tylko gdy udało się sprawdzenie grupy poprawności
      if (IsValid)
      {
         Response.Redirect("Search.aspx?search=" + txtSearch.Text);
      }
   }
   /// <summary>
   /// Procedura obsługi przycisku recenzji książki
   /// </summary>
   protected void btnSubmit_Click(object sender, EventArgs e)
   {
     // wykonanie przekierowania, jeżeli udało się sprawdzenie grupy poprawności
      if (IsValid)
      {
         Response.Redirect("ProcessForm.aspx");
      }
   }
   /// <summary>
   /// Obsługa własnej kontrolki sprawdzającej poprawność
   /// </summary>
   protected void custDate_ServerValidate(object source, ServerValidateEventArgs args)
   {
      // próba konwersji danych użytkownika na datę
      string sEnteredDate = args.Value;
      DateTime dt;
      bool convertSuccessful = DateTime.TryParse(sEnteredDate, out dt);
      // jeżeli konwersja udała się, sprawdzenie, czy data jest z przyszłości
      if (convertSuccessful && dt >= DateTime.Today)
         args.IsValid = true;
      else
         args.IsValid = false;
   }
}
