Ejemplo n.º 1
0
 public void Setup()
 {
     GlobalContext.FeatureContext = new FeatureContext();
     _annotate = new StepAnnotation <AddFeature>(this);
     _step     = new BookingSteps(GlobalContext);
     _assert   = new AssertSteps(GlobalContext.FeatureContext);
 }
Ejemplo n.º 2
0
 public void TearDown()
 {
     _annotate = null;
     _step     = null;
     _assert   = null;
 }
    protected void Page_PreRenderComplete(object sender, EventArgs e)
    {
        this.IsParentPreRender = true;

          if (Step == BookingSteps.Confirmed)
         bIsConfirmed = true;

          ConfiguresControls();
          RenderControls();

          bShowRoomTypePhoto = false;

          ////Reset data from session incase confirmation code has been returned
          if (Step == BookingSteps.Confirmed)
         Step = BookingSteps.ViewConfirmation;

          this.PageComplete();

          RegisterClientVariables();
          return;
    }
    private void BookHotelComplete(IAsyncResult ar)
    {
        if (this.WbsApiRouterHelper.ProcessBookHotelRS(ref wbsAPIRouterData))
          {
         bAsyncBookHotel = false;
         Step = BookingSteps.Confirmed;
         LoadControls();
         this.BeginResumeAsyncDataCapture();
          }
          else
          {
         // End async page operation
         if (!wbsIISAsyncResult.IsCompleted)
            wbsIISAsyncResult.SetComplete();
          }

          return;
    }
 void ucRoomQuantitySelectorControl_EditModeSelected(object sender, EventArgs e)
 {
     Step = BookingSteps.SelectRoomQuantity;
       LoadControls();
 }
    void ucTotalCostControl_Completed(bool isHold)
    {
        Step = BookingSteps.GuestInfo;

          Session["HotelPaymentRQ"] = null;
          Session["HotelPaymentRS"] = null;

          LoadControls();
    }
    void ucRoomDetailSelectorControl_ChildrenQuantityCompleted(string roomRefID, int quantity)
    {
        foreach (var item in StayCriteriaSelection.RoomOccupantSelections)
          {
         if (item.RoomRefID == roomRefID)
            item.NumberChildren = quantity;
          }

          Step = BookingSteps.SelectRoomDetail;
          CurrentRoomDetailStep = RoomDetailSelectionStep.SelectRoomType;
          CurrentRoomRefID = roomRefID;
          ClearSelectedAddONByRoomRef(roomRefID);
          ClearSelectedRoomRate(roomRefID);
          bAsyncGetHotelAvailInfo = true;
          LoadControls();
    }
    void ucRoomDetailSelectorControl_EditModeSelected(string roomRefID, RoomDetailSelectionStep step)
    {
        Step = BookingSteps.SelectRoomDetail;
          CurrentRoomRefID = roomRefID;
          CurrentRoomDetailStep = step;

          if (CurrentRoomDetailStep == RoomDetailSelectionStep.SelectAdultQuantity || CurrentRoomDetailStep == RoomDetailSelectionStep.SelectChildrenQuantity
          || CurrentRoomDetailStep == RoomDetailSelectionStep.SelectRoomType)
          {
         ClearSelectedAddONByRoomRef(roomRefID);
         ClearSelectedRoomRate(roomRefID);
          }

          bAsyncGetHotelDescriptiveInfo = false;
          bAsyncGetHotelAvailInfo = false;
          LoadControls();
    }
    void ucGuestDetailsEntryControl_GuestDetailsCompleted(object sender, EventArgs e)
    {
        PaymentGatewayInfo[] objPaymentGatewayInfos = (PaymentGatewayInfo[])Session[Constants.Sessions.PaymentGatewayInfos];
          HotelBookingPaymentAllocation[] objHotelBookingPaymentAllocations = (HotelBookingPaymentAllocation[])Session[Constants.Sessions.HotelBookingPaymentAllocations];

          this.ValidateGuestDetails(ucGuestDetailsEntryControl.GuestDetailsEntryInfo, ucGuestDetailsEntryControl.TermsConditionsAccepted);

          Session["GuestDetailsEntryInfo"] = ucGuestDetailsEntryControl.GuestDetailsEntryInfo;
          Session["BookingTermsConditionsAccepted"] = ucGuestDetailsEntryControl.TermsConditionsAccepted;
          Session[Constants.Sessions.PaymentGatewayInfo] = ucGuestDetailsEntryControl.SelectedPaymentGateway;

          if (!this.IsPageError)
          {
         if (WBSPGHelper.IsOnlinePayment(PaymentGatewayInfos, HotelBookingPaymentAllocations, ucGuestDetailsEntryControl.GuestDetailsEntryInfo.PaymentCardType))
         {
            Step = BookingSteps.ProcessPayment;
            Server.Transfer("~/Pages/SendPaymentRQ.aspx");
         }

         else
            BookRoom();
          }

          return;
    }
    void ucAvailCalSelectorControl_AvailCalRequested(object sender, bool bViewCalendar)
    {
        Step = BookingSteps.SelectStayDate;

          // Reset StayCriteriaSelection to default
          var selectedHotelCode = string.Copy(StayCriteriaSelection.HotelCode);
          WbsUiHelper.InitStayCriteriaSelection();
          StayCriteriaSelection.HotelCode = selectedHotelCode;

          bAsyncGetHotelAvailCalendarInfo = true;
          RemoveAllControls();
          LoadControls();
    }
    private string TrackingCodeByStep(BookingSteps step, RoomDetailSelectionStep detailStep)
    {
        string currentLanguageCode = WbsUiHelper.SelectedUICulture;
          string trackingCode = "/" + currentLanguageCode;

          if (step.Equals(BookingSteps.SelectHotel))
         return trackingCode + "/book/SelectHotel";

          if (step.Equals(BookingSteps.SelectStayDate))
         return trackingCode + "/book/SelectCheckinDate";

          if (step.Equals(BookingSteps.SelectRoomQuantity))
         return trackingCode + "/book/SelectRoomQuantity";

          if (step.Equals(BookingSteps.SelectRoomDetail) && detailStep.Equals(RoomDetailSelectionStep.SelectRoomType))
         return trackingCode + "/book/SelectRoom";

          if (step.Equals(BookingSteps.SelectRoomDetail) && detailStep.Equals(RoomDetailSelectionStep.SelectExtra))
         return trackingCode + "/book/SelectExtras";

          if (step.Equals(BookingSteps.GuestInfo))
         return trackingCode + "/book/EnterDetails";

          if (step == BookingSteps.Confirmed)
         return trackingCode + "/book/Confirmation";

          return "";
    }
 private void StartOver()
 {
     Step = BookingSteps.SelectHotel;
       CurrentRoomDetailStep = RoomDetailSelectionStep.SelectAdultQuantity;
       CurrentRoomRefID = string.Empty;
       Session[Constants.Sessions.HotelDescriptiveInfoRS] = null;
       Session[Constants.Sessions.HotelAvailabilityRS] = null;
       WbsUiHelper.InitStayCriteriaSelection();
       WbsUiHelper.InitRoomRateSelections();
       WbsUiHelper.InitAddOnPackageSelections();
       WbsUiHelper.InitGuestDetailsEntryInfo();
       Session[Constants.Sessions.HotelAvailabilityCalendarRS] = null;
 }
    private void NextStep()
    {
        if (Step == BookingSteps.SelectHotel)
          {
         Step = BookingSteps.SelectStayDate;
         StayCriteriaSelection.PromotionCode = string.Empty;
          }
          else if (Step == BookingSteps.SelectStayDate)
         Step = BookingSteps.SelectRoomQuantity;
          else if (Step == BookingSteps.SelectRoomQuantity)
          {
         Step = BookingSteps.SelectRoomDetail;
         CurrentRoomDetailStep = RoomDetailSelectionStep.SelectAdultQuantity;
         CurrentRoomRefID = RoomRateSelections[0].RoomRefID;
         AddOnPackageSelections = new AddOnPackageSelection[0];
          }
          else if (Step == BookingSteps.SelectRoomDetail)
         Step = BookingSteps.BookingSummary;
          else if (Step == BookingSteps.BookingSummary)
         Step = BookingSteps.GuestInfo;
          else if (Step == BookingSteps.GuestInfo)
         Step = BookingSteps.ProcessPayment;
          else if (Step == BookingSteps.ProcessPayment)
         Step = BookingSteps.Confirmed;
          else if (Step == BookingSteps.Confirmed)
         Step = BookingSteps.ViewConfirmation;
          else if (Step == BookingSteps.ViewConfirmation)
         Step = BookingSteps.SelectHotel;

          LoadControls();
    }