protected void Page_Load(object sender, EventArgs e) { //displays all available slips onto grid view. List <Slip> availSlip = SlipManager.FindAvailableSlip(); uxAvailableSlips.DataSource = availSlip; uxAvailableSlips.DataBind(); }
// User Picked A Dock: SelectedValue is DockID, use it to retrive slips protected void drpDockPicker_SelectedIndexChanged(object sender, EventArgs e) { if (drpDockPicker.SelectedValue == "0") { return; } var availableSlips = SlipManager.GetAvailableSlipsFromDock(Convert.ToInt32(drpDockPicker.SelectedValue)); grdAvailableSlips.DataSource = availableSlips; DataBind(); Session.Add("availableSlips", availableSlips); }
/// <summary> /// Custom made event handler for dock selector /// </summary> /// <param name="sender">reference to the control/object that raisesthe event</param> /// <param name="e">event data</param> private void DockSelector_DockSelect(object sender, DockEventArgs e) { var dockID = e.ID; //found all available slips associated by ID var availableSlips = SlipManager.FindAvailableSlipByDock(dockID); //databound the available slip from the database uxAvailSlipSortedByDock1.DataSource = availableSlips; uxAvailSlipSortedByDock1.DataBind(); //autogenerated select button, has 'Select' as default //changing default to "Lease" foreach (GridViewRow row in uxAvailSlipSortedByDock1.Rows) { LinkButton lb = (LinkButton)row.Cells[0].Controls[0]; lb.Text = "Lease"; } }
// User Clicked On Lease Button: insert a new record into Lease table, give feedback message protected void grdAvailableSlips_RowCommand(object sender, GridViewCommandEventArgs e) { if (e.CommandName == "lease") { var index = Convert.ToInt32(e.CommandArgument); var selectedSlip = ((List <Slip>)Session["availableSlips"])[index]; var currentCustomer = (Customer)Session["customer"]; if (SlipManager.LeaseSelectedSlip(selectedSlip, currentCustomer)) { // refresh lease history and available slips drpDockPicker_SelectedIndexChanged(sender, e); Page_Load(sender, e); Response.Write($"<h2 class='alert alert-success'>The slip (id: {selectedSlip.SlipID}) is holded for you, please pay within 24 hours.</h2>"); } } }
public Slip[] GetAvailableSlipsByDockId(int id) { return(SlipManager.GetAvailableSlipsByDockId(id).ToArray()); }
public Slip[] GetAllSlips() { return(SlipManager.GetAllSlips().ToArray()); }