LoginChoice.aspx
<%@ Page Language="VB" AutoEventWireup="true" CodeFile="LoginChoice.aspx.vb" Inherits="LoginChoice" %>
<!DOCTYPE html>
<html>
<head runat="server">
<title>Login Choice</title>
<link rel="stylesheet" href="style.css" />
</head>
<body>
<form id="form1" runat="server">
<div class="container">
<h2>Login As</h2>
<asp:Button ID="btnEmployee" runat="server" Text="Employee" CssClass="btn" OnClick="btnEmployee_Click" />
<br /><br />
<asp:Button ID="btnCustomer" runat="server" Text="Customer" CssClass="btn" OnClick="btnCustomer_Click" />
</div>
</form>
</body>
</html>
LoginChoice.aspx.vb
Partial Class LoginChoice
Inherits System.Web.UI.Page
Protected Sub btnEmployee_Click(sender As Object, e As EventArgs)
Response.Redirect("EmployeeLogin.aspx")
End Sub
Protected Sub btnCustomer_Click(sender As Object, e As EventArgs)
Response.Redirect("main.aspx")
End Sub
End Class
EmployeeLogin.aspx
<%@ Page Language="VB" AutoEventWireup="true" CodeFile="EmployeeLogin.aspx.vb" Inherits="EmployeeLogin" %>
<!DOCTYPE html>
<html>
<head runat="server">
<title>Employee Login</title>
<link rel="stylesheet" href="style.css" />
</head>
<body>
<form id="form1" runat="server">
<div class="auth-box">
<h2>Employee Login</h2>
<asp:TextBox ID="txtEmail" runat="server" Placeholder="Email"></asp:TextBox>
<asp:TextBox ID="txtPassword" runat="server" TextMode="Password" Placeholder="Password"></asp:TextBox>
<asp:Button ID="btnLogin" runat="server" Text="Login" CssClass="btn" OnClick="btnLogin_Click" />
<asp:Label ID="lblMsg" runat="server" ForeColor="Red"></asp:Label>
</div>
</form>
</body>
</html>
EmployeeLogin.aspx.vb
Partial Class EmployeeLogin
Inherits System.Web.UI.Page
Protected Sub btnLogin_Click(sender As Object, e As EventArgs)
If txtEmail.Text = "admin" And txtPassword.Text = "1234" Then
Session("Employee") = txtEmail.Text
Response.Redirect("employee_dashboard.aspx")
Else
lblMsg.Text = "Invalid Email or Password"
End If
End Sub
End Class
EmployeeDashboard.aspx
<%@ Page Language="VB" AutoEventWireup="true" CodeFile="employee_dashboard.aspx.vb" Inherits="employee_dashboard" %>
<!DOCTYPE html>
<html>
<head runat="server">
<title>Employee Dashboard</title>
<link rel="stylesheet" href="style.css" />
</head>
<body>
<form id="form1" runat="server">
<header>
<h1>Employee Dashboard</h1>
</header>
<nav>
<ul>
<li>
<asp:HyperLink ID="hlUpdateCatalog" runat="server" NavigateUrl="update_catalog.aspx" Text="Update Product Catalog" />
</li>
<li>
<asp:HyperLink ID="btnLogout" runat="server" NavigateUrl="LoginChoice.aspx" Text="Logout" />
</li>
</ul>
</nav>
<div class="container">
<h2>Welcome, Employee!</h2>
<p>Select an option from the menu above to proceed.</p>
</div>
</form>
</body>
</html>
EmployeeDashboard.aspx.vb
Partial Class employee_dashboard
Inherits System.Web.UI.Page
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
If Session("Employee") Is Nothing Then
Response.Redirect("EmployeeLogin.aspx")
End If
End Sub
Protected Sub btnLogout_Click(sender As Object, e As EventArgs)
Session.Clear()
Response.Redirect("LoginChoice.aspx")
End Sub
End Class
update_catalog.aspx
<%@ Page Language="VB" AutoEventWireup="true" CodeFile="update_catalog.aspx.vb" Inherits="_update_catalog" %>
<!DOCTYPE html>
<html>
<head runat="server">
<title>Update Product - Pine Valley Furniture</title>
<link rel="stylesheet" href="style.css" />
</head>
<body>
<form id="form1" runat="server">
<header>
<h1>Update Product</h1>
</header>
<div class="container">
<div class="auth-box">
Product ID:
<asp:TextBox ID="txtProductId" runat="server" />
<asp:Button ID="btnSearch" runat="server"
Text="Search Product"
CssClass="btn"
OnClick="btnSearch_Click" />
Finish (Name):
<asp:TextBox ID="txtName" runat="server" />
Description:
<asp:TextBox ID="txtDesc" runat="server" TextMode="SingleLine" />
Price:
<asp:TextBox ID="txtPrice" runat="server" />
<asp:Button ID="btnConfirm" runat="server"
Text="Update Product"
CssClass="btn"
OnClick="btnConfirm_Click" />
<asp:Label ID="lblMessage" runat="server"
style="display:block; margin-top:10px; color:red;"></asp:Label>
<br />
<asp:HyperLink ID="hlBack" runat="server"
NavigateUrl="employee_dashboard.aspx"
CssClass="btn"
style="text-decoration:none; display:inline-block; margin-top:10px;">
Back
</asp:HyperLink>
</div>
</div>
</form>
</body>
</html>
update_catalog.aspx.vb
Imports System.Data.SqlClient
Imports System.Configuration
Partial Class _update_catalog
Inherits System.Web.UI.Page
Dim connStr As String = ConfigurationManager.ConnectionStrings("PVFC").ConnectionString
Protected Sub btnSearch_Click(sender As Object, e As EventArgs)
If txtProductId.Text = "" Then
lblMessage.Text = "Enter Product ID."
Exit Sub
End If
Dim conn As New SqlConnection(connStr)
Dim query As String = "SELECT Product_Finish, Product_Description, Standard_Price " &
"FROM PRODUCT_t WHERE Product_Id = '" & txtProductId.Text & "'"
Dim cmd As New SqlCommand(query, conn)
conn.Open()
Dim reader As SqlDataReader = cmd.ExecuteReader()
If reader.Read() Then
txtName.Text = reader("Product_Finish").ToString()
txtDesc.Text = reader("Product_Description").ToString()
txtPrice.Text = reader("Standard_Price").ToString()
lblMessage.Text = "Product found."
Else
lblMessage.Text = "Product not found."
txtName.Text = ""
txtDesc.Text = ""
txtPrice.Text = ""
End If
reader.Close()
conn.Close()
End Sub
Protected Sub btnConfirm_Click(sender As Object, e As EventArgs)
If txtProductId.Text = "" Or txtName.Text = "" Or txtDesc.Text = "" Or txtPrice.Text = "" Then
lblMessage.Text = "Please fill all fields."
Exit Sub
End If
Dim conn As New SqlConnection(connStr)
Dim query As String = "UPDATE PRODUCT_t SET " &
"Product_Finish = '" & txtName.Text & "', " &
"Product_Description = '" & txtDesc.Text & "', " &
"Standard_Price = '" & txtPrice.Text & "' " &
"WHERE Product_Id = '" & txtProductId.Text & "'"
Dim cmd As New SqlCommand(query, conn)
conn.Open()
Dim rowsAffected As Integer = cmd.ExecuteNonQuery()
conn.Close()
If rowsAffected > 0 Then
lblMessage.Text = "Product updated successfully!"
Else
lblMessage.Text = "Update failed or Product not found."
End If
End Sub
End Class
main.aspx
<%@ Page Language="VB" AutoEventWireup="true" CodeFile="main.aspx.vb" Inherits="_main" %>
<!DOCTYPE html>
<html>
<head runat="server">
<title>Pine Valley Furniture</title>
<link rel="stylesheet" href="style.css" />
</head>
<body>
<form id="form1" runat="server">
<header>
<h1>Pine Valley Furniture</h1>
</header>
<nav>
<ul>
<li><a href="register.aspx">Customer Registration</a></li>
<li><a href="search.aspx">Search Products</a></li>
<li><a href="Cart.aspx">Cart</a></li>
<li><a href="help.aspx">Help</a></li>
</ul>
</nav>
<div class="container">
<h2>Welcome to Pine Valley Furniture</h2>
<asp:HyperLink ID="ShopNowLink" runat="server" NavigateUrl="search.aspx">
<asp:Button ID="btnShopNow" runat="server" Text="Shop Now" CssClass="btn" />
</asp:HyperLink>
</div>
<footer>
Contact us: 0309-5878126 | Email: hhm@gmail.com
</footer>
</form>
</body>
</html>
main.aspx.vb
Partial Class _main
Inherits System.Web.UI.Page
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
End Sub
End Class
Register.aspx
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Register.aspx.vb" Inherits="Register" %>
<!DOCTYPE html>
<html>
<head runat="server">
<title>Customer Registration</title>
<link href="style.css" rel="stylesheet" />
</head>
<body>
<form id="form1" runat="server">
<header>
<h1>Pine Valley Furniture - Customer Registration</h1>
</header>
<nav>
<ul>
<li><a href="Main.aspx">Home</a></li>
<li><a href="Register.aspx">Register</a></li>
<li><a href="Cart.aspx">Cart</a></li>
</ul>
</nav>
<div class="container">
<div class="auth-box">
<h2>New Customer</h2>
<asp:TextBox ID="txtCustomerId" runat="server"
CssClass="input-field" placeholder="Customer ID" />
<br /><br />
<asp:TextBox ID="txtName" runat="server"
CssClass="input-field" placeholder="Customer Name" />
<br /><br />
<asp:TextBox ID="txtAddress" runat="server"
CssClass="input-field" placeholder="Address" />
<br /><br />
<asp:TextBox ID="txtCity" runat="server"
CssClass="input-field" placeholder="City" />
<br /><br />
<asp:TextBox ID="txtState" runat="server"
CssClass="input-field" placeholder="State (2 letters)" />
<br /><br />
<asp:TextBox ID="txtPostal" runat="server"
CssClass="input-field" placeholder="Postal Code" />
<br /><br />
<asp:Button ID="btnSubmit" runat="server"
Text="Register"
CssClass="btn"
OnClick="btnSubmit_Click" />
<br /><br />
<asp:Label ID="lblMessage" runat="server" />
</div>
<p>Already Registered? Click below to update info</p>
<a href="update_customer.aspx">Update Customer Information</a>
</div>
</form>
</body>
</html>
Register.aspx.vb
Imports System.Data.SqlClient
Imports System.Configuration
Partial Class Register
Inherits System.Web.UI.Page
Dim connStr As String = ConfigurationManager.ConnectionStrings("PVFC").ConnectionString
Protected Sub btnSubmit_Click(sender As Object, e As EventArgs)
Dim conn As New SqlConnection(connStr)
Dim query As String = "INSERT INTO CUSTOMER_t " &
"(Customer_Id, Customer_Name, Customer_Address, Customer_City, Customer_State, Postal_Code) VALUES (" &
txtCustomerId.Text & ", '" &
txtName.Text & "', '" &
txtAddress.Text & "', '" &
txtCity.Text & "', '" &
txtState.Text & "', '" &
txtPostal.Text & "')"
Dim cmd As New SqlCommand(query, conn)
Try
conn.Open()
cmd.ExecuteNonQuery()
lblMessage.ForeColor = Drawing.Color.Green
lblMessage.Text = "Customer Registered Successfully!"
conn.Close()
Catch ex As Exception
lblMessage.ForeColor = Drawing.Color.Red
lblMessage.Text = "Error: " & ex.Message
End Try
End Sub
End Class
update_customer.aspx
<%@ Page Language="VB" AutoEventWireup="true" CodeFile="update_customer.aspx.vb" Inherits="update_customer" %>
<!DOCTYPE html>
<html>
<head runat="server">
<title>Update Customer</title>
<link href="style.css" rel="stylesheet" />
</head>
<body>
<form id="form1" runat="server">
<header>
<h1>Update Customer</h1>
</header>
<div class="container">
<div class="auth-box">
<asp:Label Text="Customer ID:" runat="server"></asp:Label>
<asp:TextBox ID="txtCustomerId" runat="server"></asp:TextBox>
<asp:Button ID="btnSearch" runat="server" Text="Search" CssClass="btn" OnClick="btnSearch_Click" />
<br /><br />
<asp:Label Text="Name:" runat="server"></asp:Label>
<asp:TextBox ID="txtName" runat="server"></asp:TextBox>
<br /><br />
<asp:Label Text="Address:" runat="server"></asp:Label>
<asp:TextBox ID="txtAddress" runat="server"></asp:TextBox>
<br /><br />
<asp:Label Text="City:" runat="server"></asp:Label>
<asp:TextBox ID="txtCity" runat="server"></asp:TextBox>
<br /><br />
<asp:Label Text="State:" runat="server"></asp:Label>
<asp:TextBox ID="txtState" runat="server"></asp:TextBox>
<br /><br />
<asp:Label Text="Postal Code:" runat="server"></asp:Label>
<asp:TextBox ID="txtPostal" runat="server"></asp:TextBox>
<br /><br />
<asp:Button ID="btnUpdate" runat="server" Text="Update"
CssClass="btn" OnClick="btnUpdate_Click" Enabled="False" />
<asp:Label ID="lblMessage" runat="server"
style="display:block; margin-top:10px; color:green;"></asp:Label>
</div>
</div>
</form>
</body>
</html>
update_customer.aspx.vb
Imports System.Configuration
Imports System.Data.SqlClient
Imports System.Net.NetworkInformation
Partial Class update_customer
Inherits System.Web.UI.Page
Dim connStr As String = ConfigurationManager.ConnectionStrings("PVFC").ConnectionString
Protected Sub btnSearch_Click(sender As Object, e As EventArgs)
If txtCustomerId.Text = "" Then
lblMessage.Text = "Please enter Customer ID"
Exit Sub
End If
Dim conn As New SqlConnection(connStr)
Dim query As String = "SELECT * FROM CUSTOMER_t WHERE Customer_Id = " & txtCustomerId.Text
Dim cmd As New SqlCommand(query, conn)
Try
conn.Open()
Dim reader As SqlDataReader = cmd.ExecuteReader()
If reader.Read() Then
txtName.Text = reader("Customer_Name").ToString()
txtAddress.Text = reader("Customer_Address").ToString()
txtCity.Text = reader("Customer_City").ToString()
txtState.Text = reader("Customer_State").ToString()
txtPostal.Text = reader("Postal_Code").ToString()
lblMessage.Text = "Customer Found!"
btnUpdate.Enabled = True
Else
lblMessage.Text = "Customer ID does not exist!"
btnUpdate.Enabled = False
End If
conn.Close()
Catch ex As Exception
lblMessage.Text = "Error: " & ex.Message
End Try
End Sub
Protected Sub btnUpdate_Click(sender As Object, e As EventArgs)
Dim conn As New SqlConnection(connStr)
Dim query As String = "UPDATE CUSTOMER_t SET " &
"Customer_Name = '" & txtName.Text & "', " &
"Customer_Address = '" & txtAddress.Text & "', " &
"Customer_City = '" & txtCity.Text & "', " &
"Customer_State = '" & txtState.Text & "', " &
"Postal_Code = '" & txtPostal.Text & "' " &
"WHERE Customer_Id = " & txtCustomerId.Text
Dim cmd As New SqlCommand(query, conn)
Try
conn.Open()
cmd.ExecuteNonQuery()
lblMessage.Text = "Customer Updated Successfully!"
conn.Close()
Catch ex As Exception
lblMessage.Text = "Error: " & ex.Message
End Try
End Sub
End Class
search.aspx
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="search.aspx.vb" Inherits="search" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Search Products - Pine Valley Furniture</title>
<link rel="stylesheet" href="style.css" />
</head>
<body>
<form id="form1" runat="server">
<header>
<h1>Search Products</h1>
</header>
<nav>
<ul>
<li><a href="main.aspx">Home</a></li>
<li><a href="Cart.aspx">Cart</a></li>
</ul>
</nav>
<div class="container">
<div style="margin-bottom:20px;">
<asp:Label Text="Search Product:" runat="server" />
<asp:TextBox
ID="txtSearch"
runat="server"
style="padding:8px; border-radius:6px; border:1px solid #ccc;">
</asp:TextBox>
<asp:Button
ID="btnSearch"
runat="server"
Text="Search"
CssClass="btn"
OnClick="btnSearch_Click" />
<asp:Button
ID="btnShowAll"
runat="server"
Text="Show All"
CssClass="btn"
OnClick="btnShowAll_Click" />
</div>
<asp:Label ID="lblMessage" runat="server"></asp:Label>
<br /><br />
<div class="product-grid">
<asp:Repeater ID="rptProducts" runat="server" OnItemCommand="rptProducts_ItemCommand">
<ItemTemplate>
<div class="product-card">
<div class="image-box"></div>
<h3><%# Eval("Product_Description") %></h3>
<p>Finish: <%# Eval("Product_Finish") %></p>
<p><strong>$ <%# Eval("Standard_Price") %></strong></p>
<div style="margin-top:10px;">
Quantity:
<asp:TextBox
ID="txtQty"
runat="server"
Width="50px"
style="padding:5px; border-radius:6px; border:1px solid #ccc;">
</asp:TextBox>
</div>
<asp:Button
ID="btnAdd"
runat="server"
Text="Add To Cart"
CssClass="btn"
style="margin-top:10px; width:100%;"
CommandName="AddToCart"
CommandArgument='<%# Eval("Product_Id") %>' />
</div>
</ItemTemplate>
</asp:Repeater>
</div>
</div>
</form>
</body>
</html>
search.aspx.vb
Imports System.Data.SqlClient
Imports System.Configuration
Partial Class search
Inherits System.Web.UI.Page
Dim connStr As String = ConfigurationManager.ConnectionStrings("PVFC").ConnectionString
Protected Sub btnSearch_Click(sender As Object, e As EventArgs)
Dim con As New SqlConnection(connStr)
Dim query As String = "SELECT Product_Id, Product_Description, Product_Finish, Standard_Price " &
"FROM PRODUCT_t WHERE Product_Description LIKE '%" & txtSearch.Text & "%'"
Dim cmd As New SqlCommand(query, con)
con.Open()
Dim dr As SqlDataReader = cmd.ExecuteReader()
rptProducts.DataSource = dr
rptProducts.DataBind()
con.Close()
End Sub
Protected Sub btnShowAll_Click(sender As Object, e As EventArgs)
Dim con As New SqlConnection(connStr)
Dim query As String = "SELECT Product_Id, Product_Description, Product_Finish, Standard_Price FROM PRODUCT_t"
Dim cmd As New SqlCommand(query, con)
con.Open()
Dim dr As SqlDataReader = cmd.ExecuteReader()
rptProducts.DataSource = dr
rptProducts.DataBind()
con.Close()
End Sub
Protected Sub rptProducts_ItemCommand(source As Object, e As RepeaterCommandEventArgs)
If e.CommandName = "AddToCart" Then
Dim productId As Integer = Convert.ToInt32(e.CommandArgument)
Dim txtQty As TextBox = CType(e.Item.FindControl("txtQty"), TextBox)
If txtQty.Text = "" Then
lblMessage.Text = "Enter quantity."
Exit Sub
End If
Dim quantity As Integer = Convert.ToInt32(txtQty.Text)
Dim con As New SqlConnection(connStr)
con.Open()
Dim orderId As Integer = 0
Dim checkOrderQuery As String = "SELECT TOP 1 Order_Id FROM ORDER_t WHERE Customer_Id = 1 AND Order_Date = CAST(GETDATE() AS DATE)"
Dim cmdCheckOrder As New SqlCommand(checkOrderQuery, con)
Dim result = cmdCheckOrder.ExecuteScalar()
If result Is Nothing Then
Dim newIdQuery As String = "SELECT ISNULL(MAX(Order_Id),1000)+1 FROM ORDER_t"
Dim cmdNewId As New SqlCommand(newIdQuery, con)
orderId = Convert.ToInt32(cmdNewId.ExecuteScalar())
Dim insertOrderQuery As String = "INSERT INTO ORDER_t VALUES (" & orderId & ",1,CAST(GETDATE() AS DATE))"
Dim cmdInsertOrder As New SqlCommand(insertOrderQuery, con)
cmdInsertOrder.ExecuteNonQuery()
Else
orderId = Convert.ToInt32(result)
End If
Dim checkLineQuery As String = "SELECT Ordered_Quantity FROM Order_line_t WHERE Order_Id = " & orderId &
" AND Product_Id = " & productId
Dim cmdCheckLine As New SqlCommand(checkLineQuery, con)
Dim existingQty = cmdCheckLine.ExecuteScalar()
If existingQty IsNot Nothing Then
Dim newQty As Integer = Convert.ToInt32(existingQty) + quantity
Dim updateQuery As String = "UPDATE Order_line_t SET Ordered_Quantity = " & newQty &
" WHERE Order_Id = " & orderId &
" AND Product_Id = " & productId
Dim cmdUpdate As New SqlCommand(updateQuery, con)
cmdUpdate.ExecuteNonQuery()
Else
Dim insertLineQuery As String = "INSERT INTO Order_line_t VALUES (" & orderId & "," & productId & "," & quantity & ")"
Dim cmdInsertLine As New SqlCommand(insertLineQuery, con)
cmdInsertLine.ExecuteNonQuery()
End If
con.Close()
lblMessage.Text = "Product added successfully!"
End If
End Sub
End Class
cart.aspx
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Cart.aspx.vb" Inherits="Cart" %>
<!DOCTYPE html>
<html>
<head runat="server">
<title>Shopping Cart</title>
<link rel="stylesheet" href="style.css" />
</head>
<body>
<form id="form1" runat="server">
<header>
<h1>Shopping Cart</h1>
</header>
<nav>
<ul>
<li><a href="main.aspx">Home</a></li>
<li><a href="search.aspx">Shop</a></li>
</ul>
</nav>
<div class="container">
<div class="product-grid">
<asp:Repeater ID="rptCart" runat="server">
<ItemTemplate>
<div class="product-card">
<div class="image-box"></div>
<h3><%# Eval("Product_Description") %></h3>
<p>Finish: <%# Eval("Product_Finish") %></p>
<p>Price: $<%# Eval("Standard_Price") %></p>
<p>Quantity: <%# Eval("Ordered_Quantity") %></p>
</div>
</ItemTemplate>
</asp:Repeater>
</div>
<br />
<asp:Label ID="lblMessage" runat="server"
style="display:block; color:green; margin-bottom:10px;"></asp:Label>
<asp:Button ID="paymentbtn" runat="server"
Text="Proceed to Pay"
CssClass="btn"
PostBackUrl="payment.aspx" />
<asp:Button ID="btnBack" runat="server"
Text="Continue Shopping"
CssClass="btn"
PostBackUrl="search.aspx" />
</div>
</form>
</body>
</html>
cart.aspx.vb
Imports System.Data.SqlClient
Imports System.Configuration
Partial Class Cart
Inherits System.Web.UI.Page
Dim connStr As String = ConfigurationManager.ConnectionStrings("PVFC").ConnectionString
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
If Not IsPostBack Then
BindCart()
End If
End Sub
Private Sub BindCart()
Dim con As New SqlConnection(connStr)
Dim query As String = "SELECT o.Order_Id, " &
"p.Product_Description, " &
"p.Product_Finish, " &
"p.Standard_Price, " &
"ol.Ordered_Quantity " &
"FROM ORDER_t o " &
"INNER JOIN Order_line_t ol ON o.Order_Id = ol.Order_Id " &
"INNER JOIN PRODUCT_t p ON ol.Product_Id = p.Product_Id " &
"WHERE o.Customer_Id = 1 " &
"ORDER BY o.Order_Id"
Dim cmd As New SqlCommand(query, con)
con.Open()
Dim dr As SqlDataReader = cmd.ExecuteReader()
rptCart.DataSource = dr
rptCart.DataBind()
con.Close()
End Sub
End Class
Help.aspx
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Help.aspx.vb" Inherits="Help" %>
<!DOCTYPE html>
<html>
<head runat="server">
<title>Help</title>
<link rel="stylesheet" href="style.css" />
</head>
<body>
<form id="form1" runat="server">
<header>
<h1>Help & User Guide</h1>
</header>
<nav>
<ul>
<li><a href="main.aspx">Home</a></li>
<li><a href="Register.aspx">Register</a></li>
<li><a href="Search.aspx">Search</a></li>
<li><a href="Cart.aspx">Order</a></li>
</ul>
</nav>
<div class="container">
<h3>New Customer Registration</h3>
<p>Customers can register by filling their name, address, city, state and postal code.</p>
<p><a href="Register.aspx">Go to Registration Page</a></p>
<hr />
<h3>Search Products</h3>
<p>Users can search products by description and product line.</p>
<p><a href="Search.aspx">Go to Search Page</a></p>
<hr />
<h3>Product Selection & Order Placement</h3>
<p>Customers can select products, enter quantity and place orders.</p>
<p><a href="Cart.aspx">Go to Order Page</a></p>
<hr />
<h3>Product Catalog Update</h3>
<p>Only employees can update product description, finish and price.</p>
<p><a href="Employee_Login.aspx">Employee Login</a></p>
<hr />
<h3>Payment Provision</h3>
<p>Customers can select payment method after placing order.</p>
<p><a href="Payment.aspx">Go to Payment Page</a></p>
</div>
<footer>
Contact us: 0309-5878126 | Email: hhm@gmail.com
</footer>
</form>
</body>
</html>
Help.aspx.vb
Partial Class Help
Inherits System.Web.UI.Page
End Class
Payment.aspx
<%@ Page Language="VB" AutoEventWireup="true" CodeFile="payment.aspx.vb" Inherits="_payment" %>
<!DOCTYPE html>
<html>
<head runat="server">
<title>Payment</title>
<link rel="stylesheet" href="style.css" />
</head>
<body>
<form id="form1" runat="server">
<header>
<h1>Payment Options</h1>
</header>
<div class="container">
<asp:RadioButton ID="rbCash" runat="server" GroupName="Payment" Text="Cash on Delivery" /><br />
<asp:RadioButton ID="rbCard" runat="server" GroupName="Payment" Text="Credit/Debit Card" /><br />
<asp:RadioButton ID="rbWallet" runat="server" GroupName="Payment" Text="Other Wallet" /><br /><br />
<asp:Button ID="btnConfirm"
runat="server"
Text="Confirm Payment"
CssClass="btn"
OnClick="btnConfirm_Click" /><br /><br />
<asp:HyperLink ID="hlBack" runat="server" NavigateUrl="main.aspx">Back</asp:HyperLink>
</div>
</form>
</body>
</html>
payment.aspx.vb
Partial Class _payment
Inherits System.Web.UI.Page
Protected Sub btnConfirm_Click(sender As Object, e As EventArgs)
If rbCash.Checked Then
Response.Write("<script>alert('Cash on Delivery Selected');</script>")
ElseIf rbCard.Checked Then
Response.Write("<script>alert('Card Payment Selected');</script>")
ElseIf rbWallet.Checked Then
Response.Write("<script>alert('Wallet Selected');</script>")
Else
Response.Write("<script>alert('Please select payment method');</script>")
End If
End Sub
End Class
style.css
html, body {
height: 100%;
margin: 0;
}
body {
font-family: Arial, sans-serif;
display: flex;
flex-direction: column;
background-color: #FFF2E0;
color: #2d2d2d;
}
form {
flex: 1;
display: flex;
flex-direction: column;
}
header {
background: #898AC4;
color: white;
padding: 15px;
text-align: center;
}
nav ul {
list-style-type: none;
background-color: #A2AADB;
padding: 0;
margin: 0;
overflow: hidden;
}
nav ul li {
float: left;
}
nav ul li a {
display: block;
color: #FFF2E0;
padding: 12px 18px;
text-decoration: none;
}
nav ul li a:hover {
background-color: #C0C9EE;
color: #FFF2E0;
}
.container {
flex: 1;
padding: 25px;
}
button, .btn {
padding: 10px 18px;
background: #A2AADB;
color: white;
border: none;
border-radius: 8px;
cursor: pointer;
}
button:hover, .btn:hover {
background: #898AC4;
}
footer {
background-color: #C0C9EE;
text-align: center;
padding: 12px;
width: 100%;
}
.product-grid {
display: flex;
flex-wrap: wrap;
gap: 20px;
}
.product-card {
background: #C0C9EE;
padding: 15px;
border-radius: 10px;
width: 200px;
text-align: center;
}
.image-box {
width: 100%;
height: 120px;
background-color: #A2AADB;
border-radius: 8px;
margin-bottom: 10px;
}
.auth-box {
width: 350px;
background: white;
padding: 25px;
border-radius: 12px;
box-shadow: 0px 0px 15px rgba(0,0,0,0.2);
margin: auto;
margin-top: 120px;
text-align: center;
}
.auth-box input, .auth-box .btn {
width: 100%;
padding: 10px;
margin-top: 10px;
}