public BasketViewController(Order order)
 {
     this.Title = "Your Basket";
     //This hides the back button text when you leave this View Controller
     this.NavigationItem.BackBarButtonItem = new UIBarButtonItem("", UIBarButtonItemStyle.Plain, handler: null);
     TableView.Source = new TableViewSource(this.order = order)
     {
         RowDeleted = CheckEmpty,
     };
     TableView.SeparatorStyle = UITableViewCellSeparatorStyle.None;
     TableView.RowHeight = 75;
     TableView.TableFooterView = new UIView(new RectangleF(0, 0, 0, BottomButtonView.Height));
     this.View.AddSubview(BottomView = new BottomButtonView()
     {
         ButtonText = "Checkout",
         ButtonTapped = () =>
         {
             if (Checkout != null)
                 Checkout(this, EventArgs.Empty);
         }
     });
     CheckEmpty(false);
     totalAmount = new UILabel()
     {
         Text = "$1,000",
         TextColor = UIColor.White,
         TextAlignment = UITextAlignment.Center,
         Font = UIFont.BoldSystemFontOfSize(17),
     };
     totalAmount.SizeToFit();
     this.NavigationItem.RightBarButtonItem = new UIBarButtonItem(totalAmount);
     UpdateTotals();
 }
            public TableViewSource(Order order)
            {
                this.order = order;

            }
		public Task<OrderResult> PlaceOrder(User user, bool verify = false)
		{
			return Task.Factory.StartNew(() =>
			{
				try
				{
					var content = Encoding.UTF8.GetBytes(CurrentOrder.GetJson(user));

					var request = CreateRequest("order" + (verify ? "?verify=1" : ""));
					request.Method = "POST";
					request.ContentLength = content.Length;

					using (Stream s = request.GetRequestStream())
					{
						s.Write(content, 0, content.Length);
					}
					string response = ReadResponseText(request);
					var result = Newtonsoft.Json.JsonConvert.DeserializeObject<OrderResult>(response);
					if (!verify && result.Success)
						CurrentOrder = new Order();
					return result;
				}
				catch (Exception ex)
				{
					return new OrderResult
					{
						Success = false,
						Message = ex.Message,
					};
				}
			});
		}
		public WebService()
		{
			CurrentOrder = new Order();
		}
 public BasketFragment(Order order)
 {
     _order = order;
 }