This commit is contained in:
sageTheDM 2025-01-13 15:02:20 +01:00
parent cccf7de2d5
commit b6c8c6f5d6
12 changed files with 369 additions and 362 deletions

View file

@ -1,5 +1,7 @@
package com.example; package com.example;
import javafx.collections.FXCollections;
import javafx.collections.ObservableList;
import javafx.event.ActionEvent; import javafx.event.ActionEvent;
import javafx.fxml.FXML; import javafx.fxml.FXML;
import javafx.scene.control.Button; import javafx.scene.control.Button;
@ -42,25 +44,29 @@ public class CartController {
@FXML @FXML
private Label mainTitle; private Label mainTitle;
// Observable list to hold cart items
private final ObservableList<Item> cartItems = FXCollections.observableArrayList();
// Initialize method to set up the TableView // Initialize method to set up the TableView
@FXML @FXML
public void initialize() { public void initialize() {
// Set up columns to match Item properties
nameColumn.setCellValueFactory(new PropertyValueFactory<>("name")); nameColumn.setCellValueFactory(new PropertyValueFactory<>("name"));
descriptionColumn.setCellValueFactory(new PropertyValueFactory<>("description")); descriptionColumn.setCellValueFactory(new PropertyValueFactory<>("description"));
quantityColumn.setCellValueFactory(new PropertyValueFactory<>("quantity")); quantityColumn.setCellValueFactory(new PropertyValueFactory<>("quantity"));
priceColumn.setCellValueFactory(new PropertyValueFactory<>("price")); priceColumn.setCellValueFactory(new PropertyValueFactory<>("price"));
// Populate the table with some sample data (replace with actual logic later) // Populate the cart table with sample data for demonstration
cartContent.getItems().addAll( cartItems.addAll(
new Item("Book A", "A fascinating fantasy novel.", 1, 12.99), new Item("Book A", "A fascinating fantasy novel.", 1, 12.99),
new Item("Book B", "A thrilling sequel.", 2, 10.50)); new Item("Book B", "A thrilling sequel.", 2, 10.50));
cartContent.setItems(cartItems);
} }
@FXML @FXML
private void handleCartButton(ActionEvent event) { private void handleCartButton(ActionEvent event) {
System.out.println("Cart button clicked!"); System.out.println("Cart button clicked!");
try { try {
// Navigate to the cart page (using the setRoot method from App)
App.setRoot("cart"); App.setRoot("cart");
} catch (IOException e) { } catch (IOException e) {
e.printStackTrace(); e.printStackTrace();
@ -71,7 +77,6 @@ public class CartController {
private void handleLoginButton(ActionEvent event) { private void handleLoginButton(ActionEvent event) {
System.out.println("Login button clicked!"); System.out.println("Login button clicked!");
try { try {
// Navigate to the login page
App.setRoot("login"); App.setRoot("login");
} catch (IOException e) { } catch (IOException e) {
e.printStackTrace(); e.printStackTrace();
@ -80,10 +85,13 @@ public class CartController {
@FXML @FXML
private void handleCheckOutButton(ActionEvent event) { private void handleCheckOutButton(ActionEvent event) {
System.out.println("Checkout button clicked!"); if (cartItems.isEmpty()) {
// Add logic to proceed to checkout System.out.println("Cart is empty. Cannot proceed to checkout.");
return;
}
System.out.println("Proceeding to checkout...");
try { try {
// Navigate to the checkout page
App.setRoot("checkout"); App.setRoot("checkout");
} catch (IOException e) { } catch (IOException e) {
e.printStackTrace(); e.printStackTrace();

View file

@ -78,9 +78,8 @@ public class ShopController {
} }
@FXML @FXML
private void handleLoginButton() { private void handleLoginButton() throws IOException {
System.out.println("Login button clicked!"); App.setRoot("login");
// Logic for handling login.
} }
@FXML @FXML

View file

@ -15,17 +15,17 @@
<fx:root maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="800.0" prefWidth="1200.0" type="BorderPane" xmlns="http://javafx.com/javafx/23.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.CartController"> <fx:root maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="800.0" prefWidth="1200.0" type="BorderPane" xmlns="http://javafx.com/javafx/23.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.CartController">
<top> <top>
<HBox id="header" alignment="CENTER" prefHeight="60.0" prefWidth="631.0" spacing="20.0" styleClass="header" BorderPane.alignment="CENTER"> <HBox fx:id="header" alignment="CENTER" prefHeight="60.0" prefWidth="631.0" spacing="20.0" styleClass="header" BorderPane.alignment="CENTER">
<children> <children>
<!-- Main Title --> <!-- Main Title -->
<Label id="mainTitle" styleClass="mainTitle" text="Bookshop - Fantasy Brigade" /> <Label fx:id="mainTitle" styleClass="mainTitle" text="Bookshop - Fantasy Brigade" />
<!-- Spacer for alignment --> <!-- Spacer for alignment -->
<Pane HBox.hgrow="ALWAYS" /> <Pane HBox.hgrow="ALWAYS" />
<!-- Buttons --> <!-- Buttons -->
<Button id="cartBtn" mnemonicParsing="false" styleClass="cartBtn" text="Cart" /> <Button fx:id="cartBtn" mnemonicParsing="false" styleClass="cartBtn" text="Cart" />
<Button id="loginBtn" mnemonicParsing="false" styleClass="loginBtn" text="Login" /> <Button fx:id="loginBtn" mnemonicParsing="false" styleClass="loginBtn" text="Login" />
</children> </children>
<padding> <padding>
<Insets bottom="10.0" left="20.0" right="20.0" top="10.0" /> <Insets bottom="10.0" left="20.0" right="20.0" top="10.0" />
@ -33,7 +33,7 @@
</HBox> </HBox>
</top> </top>
<center> <center>
<GridPane id="main" styleClass="main" BorderPane.alignment="CENTER"> <GridPane fx:id="main" styleClass="main" BorderPane.alignment="CENTER">
<columnConstraints> <columnConstraints>
<ColumnConstraints hgrow="SOMETIMES" minWidth="100.0" prefWidth="100.0" /> <ColumnConstraints hgrow="SOMETIMES" minWidth="100.0" prefWidth="100.0" />
</columnConstraints> </columnConstraints>
@ -46,52 +46,52 @@
<Insets /> <Insets />
</BorderPane.margin> </BorderPane.margin>
<children> <children>
<Button id="btnCheckOut" mnemonicParsing="false" styleClass="btnCheckOut" text="Check out" GridPane.rowIndex="2" /> <Button fx:id="btnCheckOut" mnemonicParsing="false" styleClass="btnCheckOut" text="Check out" GridPane.rowIndex="2" />
<Label id="cartTitle" styleClass="cartTitle" text="Your cart" /> <Label fx:id="cartTitle" styleClass="cartTitle" text="Your cart" />
<TableView id="cartContent" prefHeight="0.0" prefWidth="364.0" GridPane.rowIndex="1"> <TableView fx:id="cartContent" prefHeight="0.0" prefWidth="364.0" GridPane.rowIndex="1">
<columns> <columns>
<TableColumn id="nameColumn" prefWidth="243.0" text="Name" /> <TableColumn fx:id="nameColumn" prefWidth="243.0" text="Name" />
<TableColumn id="descriptionColumn" prefWidth="615.0" text="Description" /> <TableColumn fx:id="descriptionColumn" prefWidth="615.0" text="Description" />
<TableColumn id="quantityColumn" minWidth="0.0" prefWidth="154.0" text="Quantity" /> <TableColumn fx:id="quantityColumn" minWidth="0.0" prefWidth="154.0" text="Quantity" />
<TableColumn id="priceColumn" minWidth="0.0" prefWidth="147.0" text="Price" /> <TableColumn fx:id="priceColumn" minWidth="0.0" prefWidth="147.0" text="Price" />
</columns> </columns>
</TableView> </TableView>
</children> </children>
</GridPane> </GridPane>
</center> </center>
<bottom> <bottom>
<VBox id="footer" prefHeight="188.0" prefWidth="1200.0" styleClass="footer" BorderPane.alignment="CENTER"> <VBox fx:id="footer" prefHeight="188.0" prefWidth="1200.0" styleClass="footer" BorderPane.alignment="CENTER">
<children> <children>
<HBox id="footerLinks" alignment="TOP_CENTER" prefHeight="100.0" prefWidth="200.0"> <HBox fx:id="footerLinks" alignment="TOP_CENTER" prefHeight="100.0" prefWidth="200.0">
<children> <children>
<VBox id="quickLinks" alignment="TOP_LEFT" prefHeight="145.0" prefWidth="470.0" spacing="10.0"> <VBox fx:id="quickLinks" alignment="TOP_LEFT" prefHeight="145.0" prefWidth="470.0" spacing="10.0">
<children> <children>
<Label id="footerText" prefHeight="25.0" prefWidth="226.0" styleClass="footerHeading" text="Quick Links" /> <Label fx:id="footerText" prefHeight="25.0" prefWidth="226.0" styleClass="footerHeading" text="Quick Links" />
<Label id="footerHome" styleClass="footerText" text="Home" /> <Label fx:id="footerHome" styleClass="footerText" text="Home" />
<Label id="footerAbout" styleClass="footerText" text="About Us" /> <Label fx:id="footerAbout" styleClass="footerText" text="About Us" />
<Label id="footerContact" styleClass="footerText" text="Contact" /> <Label fx:id="footerContact" styleClass="footerText" text="Contact" />
</children> </children>
</VBox> </VBox>
<VBox id="contactUs" prefHeight="145.0" prefWidth="583.0" spacing="10.0"> <VBox fx:id="contactUs" prefHeight="145.0" prefWidth="583.0" spacing="10.0">
<children> <children>
<Label id="footerHeading2" prefWidth="534.0" styleClass="footerHeading" text="Contact Us" /> <Label fx:id="footerHeading2" prefWidth="534.0" styleClass="footerHeading" text="Contact Us" />
<Label id="footerEmail" styleClass="footerText" text="Email: info@example.com" /> <Label fx:id="footerEmail" styleClass="footerText" text="Email: info@example.com" />
<Label id="footerPhone" styleClass="footerText" text="Phone: +1 123 456 7890" /> <Label fx:id="footerPhone" styleClass="footerText" text="Phone: +1 123 456 7890" />
</children> </children>
</VBox> </VBox>
<VBox id="followUs" alignment="TOP_RIGHT" spacing="10.0"> <VBox fx:id="followUs" alignment="TOP_RIGHT" spacing="10.0">
<children> <children>
<Label id="footerHeading3" styleClass="footerHeading" text="Follow Us" /> <Label fx:id="footerHeading3" styleClass="footerHeading" text="Follow Us" />
<Label id="footerFacebook" styleClass="footerLink" text="Facebook" /> <Label fx:id="footerFacebook" styleClass="footerLink" text="Facebook" />
<Label id="footerBluesky" styleClass="footerLink" text="Bluesky" /> <Label fx:id="footerBluesky" styleClass="footerLink" text="Bluesky" />
<Label id="footerInstagram" styleClass="footerLink" text="Instagram" /> <Label fx:id="footerInstagram" styleClass="footerLink" text="Instagram" />
</children> </children>
</VBox> </VBox>
</children> </children>
</HBox> </HBox>
<VBox id="footerCopy" alignment="BOTTOM_CENTER" prefHeight="68.0" prefWidth="1170.0" spacing="10.0"> <VBox fx:id="footerCopy" alignment="BOTTOM_CENTER" prefHeight="68.0" prefWidth="1170.0" spacing="10.0">
<children> <children>
<Label id="footerCopyText" alignment="CENTER" contentDisplay="CENTER" styleClass="footerCopy" text="© 2024 My Website. All rights reserved." /> <Label fx:id="footerCopyText" alignment="CENTER" contentDisplay="CENTER" styleClass="footerCopy" text="© 2024 My Website. All rights reserved." />
</children> </children>
</VBox> </VBox>
</children> </children>

View file

@ -16,12 +16,12 @@
<BorderPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="800.0" prefWidth="1200.0" xmlns="http://javafx.com/javafx/23.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.CheckOutController"> <BorderPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="800.0" prefWidth="1200.0" xmlns="http://javafx.com/javafx/23.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.CheckOutController">
<top> <top>
<HBox id="header" alignment="CENTER" prefHeight="60.0" prefWidth="631.0" spacing="20.0" styleClass="header" BorderPane.alignment="CENTER"> <HBox fx:id="header" alignment="CENTER" prefHeight="60.0" prefWidth="631.0" spacing="20.0" styleClass="header" BorderPane.alignment="CENTER">
<children> <children>
<Label id="mainTitle" styleClass="mainTitle" text="Bookshop - Fantasy Brigade" /> <Label fx:id="mainTitle" styleClass="mainTitle" text="Bookshop - Fantasy Brigade" />
<Pane id="headerSpacer" HBox.hgrow="ALWAYS" /> <Pane fx:id="headerSpacer" HBox.hgrow="ALWAYS" />
<Button id="cartBtn" mnemonicParsing="false" styleClass="cartBtn" text="Cart" /> <Button fx:id="cartBtn" mnemonicParsing="false" styleClass="cartBtn" text="Cart" />
<Button id="loginBtn" mnemonicParsing="false" styleClass="loginBtn" text="Login" /> <Button fx:id="loginBtn" mnemonicParsing="false" styleClass="loginBtn" text="Login" />
</children> </children>
<padding> <padding>
<Insets bottom="10.0" left="20.0" right="20.0" top="10.0" /> <Insets bottom="10.0" left="20.0" right="20.0" top="10.0" />
@ -29,91 +29,91 @@
</HBox> </HBox>
</top> </top>
<bottom> <bottom>
<VBox id="footer" prefHeight="188.0" prefWidth="1200.0" styleClass="footer" BorderPane.alignment="CENTER"> <VBox fx:id="footer" prefHeight="188.0" prefWidth="1200.0" styleClass="footer" BorderPane.alignment="CENTER">
<children> <children>
<HBox id="footerLinks" alignment="TOP_CENTER" prefHeight="100.0" prefWidth="200.0"> <HBox fx:id="footerLinks" alignment="TOP_CENTER" prefHeight="100.0" prefWidth="200.0">
<children> <children>
<VBox id="quickLinks" alignment="TOP_LEFT" prefHeight="145.0" prefWidth="470.0" spacing="10.0"> <VBox fx:id="quickLinks" alignment="TOP_LEFT" prefHeight="145.0" prefWidth="470.0" spacing="10.0">
<children> <children>
<Label id="footerText" prefHeight="25.0" prefWidth="226.0" styleClass="footerHeading" text="Quick Links" /> <Label fx:id="footerText" prefHeight="25.0" prefWidth="226.0" styleClass="footerHeading" text="Quick Links" />
<Label id="footerHome" styleClass="footerText" text="Home" /> <Label fx:id="footerHome" styleClass="footerText" text="Home" />
<Label id="footerAbout" styleClass="footerText" text="About Us" /> <Label fx:id="footerAbout" styleClass="footerText" text="About Us" />
<Label id="footerContact" styleClass="footerText" text="Contact" /> <Label fx:id="footerContact" styleClass="footerText" text="Contact" />
</children> </children>
</VBox> </VBox>
<VBox id="contactUs" prefHeight="145.0" prefWidth="583.0" spacing="10.0"> <VBox fx:id="contactUs" prefHeight="145.0" prefWidth="583.0" spacing="10.0">
<children> <children>
<Label id="footerHeading2" prefWidth="534.0" styleClass="footerHeading" text="Contact Us" /> <Label fx:id="footerHeading2" prefWidth="534.0" styleClass="footerHeading" text="Contact Us" />
<Label id="footerEmail" styleClass="footerText" text="Email: info@example.com" /> <Label fx:id="footerEmail" styleClass="footerText" text="Email: info@example.com" />
<Label id="footerPhone" styleClass="footerText" text="Phone: +1 123 456 7890" /> <Label fx:id="footerPhone" styleClass="footerText" text="Phone: +1 123 456 7890" />
</children> </children>
</VBox> </VBox>
<VBox id="followUs" alignment="TOP_RIGHT" spacing="10.0"> <VBox fx:id="followUs" alignment="TOP_RIGHT" spacing="10.0">
<children> <children>
<Label id="footerHeading3" styleClass="footerHeading" text="Follow Us" /> <Label fx:id="footerHeading3" styleClass="footerHeading" text="Follow Us" />
<Label id="footerFacebook" styleClass="footerLink" text="Facebook" /> <Label fx:id="footerFacebook" styleClass="footerLink" text="Facebook" />
<Label id="footerBluesky" styleClass="footerLink" text="Bluesky" /> <Label fx:id="footerBluesky" styleClass="footerLink" text="Bluesky" />
<Label id="footerInstagram" styleClass="footerLink" text="Instagram" /> <Label fx:id="footerInstagram" styleClass="footerLink" text="Instagram" />
</children> </children>
</VBox> </VBox>
</children> </children>
</HBox> </HBox>
<VBox id="footerCopy" alignment="BOTTOM_CENTER" prefHeight="68.0" prefWidth="1170.0" spacing="10.0"> <VBox fx:id="footerCopy" alignment="BOTTOM_CENTER" prefHeight="68.0" prefWidth="1170.0" spacing="10.0">
<children> <children>
<Label id="footerCopyText" alignment="CENTER" contentDisplay="CENTER" styleClass="footerCopy" text="© 2024 My Website. All rights reserved." /> <Label fx:id="footerCopyText" alignment="CENTER" contentDisplay="CENTER" styleClass="footerCopy" text="© 2024 My Website. All rights reserved." />
</children> </children>
</VBox> </VBox>
</children> </children>
</VBox> </VBox>
</bottom> </bottom>
<center> <center>
<GridPane id="main" alignment="TOP_CENTER" styleClass="main" BorderPane.alignment="CENTER"> <GridPane fx:id="main" alignment="TOP_CENTER" styleClass="main" BorderPane.alignment="CENTER">
<children> <children>
<GridPane id="billingForm" alignment="TOP_CENTER" hgap="10" prefHeight="600.0" prefWidth="800.0" style="-fx-background-color: rgba(238, 130, 238, 0.8);" vgap="20"> <GridPane fx:id="billingForm" alignment="TOP_CENTER" hgap="10" prefHeight="600.0" prefWidth="800.0" style="-fx-background-color: rgba(238, 130, 238, 0.8);" vgap="20">
<children> <children>
<Label id="checkoutHeader" style="-fx-font-size: 24px; -fx-font-weight: bold;" text="Check out" textFill="WHITE" GridPane.columnSpan="2" GridPane.rowIndex="0" /> <Label fx:id="checkoutHeader" style="-fx-font-size: 24px; -fx-font-weight: bold;" text="Check out" textFill="WHITE" GridPane.columnSpan="2" GridPane.rowIndex="0" />
<Label id="paymentTitle" style="-fx-font-size: 30px; -fx-font-weight: bold;" text="Payment" textFill="WHITE" GridPane.columnSpan="2" GridPane.rowIndex="1" /> <Label fx:id="paymentTitle" style="-fx-font-size: 30px; -fx-font-weight: bold;" text="Payment" textFill="WHITE" GridPane.columnSpan="2" GridPane.rowIndex="1" />
<Label id="paymentSubtitle" style="-fx-font-size: 14px;" text="Choose payment method below" textFill="WHITE" GridPane.columnSpan="2" GridPane.rowIndex="2" /> <Label fx:id="paymentSubtitle" style="-fx-font-size: 14px;" text="Choose payment method below" textFill="WHITE" GridPane.columnSpan="2" GridPane.rowIndex="2" />
<HBox id="paymentMethods" alignment="CENTER" spacing="20" GridPane.columnSpan="2" GridPane.rowIndex="3"> <HBox fx:id="paymentMethods" alignment="CENTER" spacing="20" GridPane.columnSpan="2" GridPane.rowIndex="3">
<Button id="creditCard" mnemonicParsing="false" styleClass="creditCard" /> <Button fx:id="creditCard" mnemonicParsing="false" styleClass="creditCard" />
<Button id="bill" mnemonicParsing="false" styleClass="bill" /> <Button fx:id="bill" mnemonicParsing="false" styleClass="bill" />
<Button id="paypal" mnemonicParsing="false" styleClass="paypal" /> <Button fx:id="paypal" mnemonicParsing="false" styleClass="paypal" />
</HBox> </HBox>
<Label id="billingInfoTitle" style="-fx-font-size: 18px; -fx-font-weight: bold;" text="Billing Info" textFill="WHITE" GridPane.columnIndex="0" GridPane.rowIndex="4" /> <Label fx:id="billingInfoTitle" style="-fx-font-size: 18px; -fx-font-weight: bold;" text="Billing Info" textFill="WHITE" GridPane.columnIndex="0" GridPane.rowIndex="4" />
<HBox id="billingName" spacing="10" GridPane.columnIndex="0" GridPane.rowIndex="5"> <HBox fx:id="billingName" spacing="10" GridPane.columnIndex="0" GridPane.rowIndex="5">
<Label id="fullNameLabel" text="Full Name:" textFill="WHITE" /> <Label fx:id="fullNameLabel" text="Full Name:" textFill="WHITE" />
<TextField id="fullNameField" fx:id="addressField1" prefWidth="200" promptText="Jon Doe" /> <TextField fx:id="fullNameField" prefWidth="200" promptText="Jon Doe" />
</HBox> </HBox>
<HBox id="billingAddress" spacing="10" GridPane.columnIndex="0" GridPane.rowIndex="6"> <HBox fx:id="billingAddress" spacing="10" GridPane.columnIndex="0" GridPane.rowIndex="6">
<Label id="addressLabel" text="Address:" textFill="WHITE" /> <Label fx:id="addressLabel" text="Address:" textFill="WHITE" />
<TextField id="addressField" fx:id="addressField" prefWidth="200" promptText="497 Evergreen Rd." /> <TextField fx:id="addressField" prefWidth="200" promptText="497 Evergreen Rd." />
</HBox> </HBox>
<HBox id="billingCityZip" spacing="10" GridPane.columnIndex="0" GridPane.rowIndex="7"> <HBox fx:id="billingCityZip" spacing="10" GridPane.columnIndex="0" GridPane.rowIndex="7">
<Label id="cityLabel" text="City:" textFill="WHITE" /> <Label fx:id="cityLabel" text="City:" textFill="WHITE" />
<TextField id="cityField" fx:id="cityField" prefWidth="100" promptText="Roseville" /> <TextField fx:id="cityField" prefWidth="100" promptText="Roseville" />
<Label id="zipLabel" text="ZIP Code:" textFill="WHITE" /> <Label fx:id="zipLabel" text="ZIP Code:" textFill="WHITE" />
<TextField id="zipField" fx:id="zipField" prefWidth="80" promptText="95673" /> <TextField fx:id="zipField" prefWidth="80" promptText="95673" />
</HBox> </HBox>
<HBox id="billingCountry" spacing="10" GridPane.columnIndex="0" GridPane.rowIndex="8"> <HBox fx:id="billingCountry" spacing="10" GridPane.columnIndex="0" GridPane.rowIndex="8">
<Label id="countryLabel" text="Country:" textFill="WHITE" /> <Label fx:id="countryLabel" text="Country:" textFill="WHITE" />
<ComboBox id="countryComboBox" fx:id="countryComboBox" prefWidth="150.0" /> <ComboBox fx:id="countryComboBox" prefWidth="150.0" />
</HBox> </HBox>
<Label id="creditCardInfoTitle" style="-fx-font-size: 18px; -fx-font-weight: bold;" text="Credit Card Info" textFill="WHITE" GridPane.columnIndex="1" GridPane.rowIndex="4" /> <Label fx:id="creditCardInfoTitle" style="-fx-font-size: 18px; -fx-font-weight: bold;" text="Credit Card Info" textFill="WHITE" GridPane.columnIndex="1" GridPane.rowIndex="4" />
<HBox id="creditCardNumber" spacing="10" GridPane.columnIndex="1" GridPane.rowIndex="5"> <HBox fx:id="creditCardNumber" spacing="10" GridPane.columnIndex="1" GridPane.rowIndex="5">
<Label id="cardNumberLabel" text="Card Number:" textFill="WHITE" /> <Label fx:id="cardNumberLabel" text="Card Number:" textFill="WHITE" />
<TextField id="cardNumberField" fx:id="cardNumberField" prefWidth="200" promptText="1234 5678 3456 2456" /> <TextField fx:id="cardNumberField" prefWidth="200" promptText="1234 5678 3456 2456" />
</HBox> </HBox>
<HBox id="creditCardHolder" spacing="10" GridPane.columnIndex="1" GridPane.rowIndex="6"> <HBox fx:id="creditCardHolder" spacing="10" GridPane.columnIndex="1" GridPane.rowIndex="6">
<Label id="cardHolderNameLabel" text="Cardholder Name:" textFill="WHITE" /> <Label fx:id="cardHolderNameLabel" text="Cardholder Name:" textFill="WHITE" />
<TextField id="cardHolderNameField" fx:id="cardHolderNameField" prefWidth="200" promptText="John Doe" /> <TextField fx:id="cardHolderNameField" prefWidth="200" promptText="John Doe" />
</HBox> </HBox>
<HBox id="creditCardExpiry" spacing="10" GridPane.columnIndex="1" GridPane.rowIndex="7"> <HBox fx:id="creditCardExpiry" spacing="10" GridPane.columnIndex="1" GridPane.rowIndex="7">
<Label id="expiryDateLabel" text="Expire Date:" textFill="WHITE" /> <Label fx:id="expiryDateLabel" text="Expire Date:" textFill="WHITE" />
<TextField id="expiryDateField" fx:id="expiryDateField" prefWidth="80" promptText="MM / YY" /> <TextField fx:id="expiryDateField" prefWidth="80" promptText="MM / YY" />
<Label id="cvvLabel" text="CVV:" textFill="WHITE" /> <Label fx:id="cvvLabel" text="CVV:" textFill="WHITE" />
<PasswordField id="cvvField" fx:id="cvvField" /> <PasswordField fx:id="cvvField" />
</HBox> </HBox>
<Button id="submitBtn" fx:id="submitButton" alignment="CENTER" contentDisplay="CENTER" prefWidth="150" style="-fx-alignment: #4CAF50; -fx-text-fill: white; -fx-font-size: 16px; -fx-font-weight: bold;" styleClass="cartBtn" text="Submit" GridPane.columnSpan="2" GridPane.rowIndex="9" /> <Button fx:id="submitButton" alignment="CENTER" contentDisplay="CENTER" prefWidth="150" style="-fx-alignment: #4CAF50; -fx-text-fill: white; -fx-font-size: 16px; -fx-font-weight: bold;" styleClass="cartBtn" text="Submit" GridPane.columnSpan="2" GridPane.rowIndex="9" />
</children> </children>
<columnConstraints> <columnConstraints>
<ColumnConstraints /> <ColumnConstraints />

View file

@ -14,88 +14,88 @@
<?import javafx.scene.layout.VBox?> <?import javafx.scene.layout.VBox?>
<BorderPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="800.0" prefWidth="1200.0" xmlns="http://javafx.com/javafx/23.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.LoginController"> <BorderPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="800.0" prefWidth="1200.0" xmlns="http://javafx.com/javafx/23.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.LoginController">
<!-- Header Section -->
<top> <top>
<HBox id="header" alignment="CENTER" prefHeight="60.0" prefWidth="631.0" spacing="20.0" styleClass="header" BorderPane.alignment="CENTER"> <HBox fx:id="header" alignment="CENTER" prefHeight="60.0" prefWidth="631.0" spacing="20.0" styleClass="header" BorderPane.alignment="CENTER">
<children> <children>
<!-- Main Title --> <Label fx:id="mainTitle" styleClass="mainTitle" text="Bookshop - Fantasy Brigade" />
<Label id="mainTitle" styleClass="mainTitle" text="Bookshop - Fantasy Brigade" />
<!-- Spacer for alignment -->
<Pane HBox.hgrow="ALWAYS" /> <Pane HBox.hgrow="ALWAYS" />
<Button fx:id="cartBtn" mnemonicParsing="false" styleClass="cartBtn" text="Cart" />
<!-- Buttons --> <Button fx:id="loginBtn" mnemonicParsing="false" styleClass="loginBtn" text="Login" />
<Button id="cartBtn" mnemonicParsing="false" styleClass="cartBtn" text="Cart" />
<Button id="loginBtn" mnemonicParsing="false" styleClass="loginBtn" text="Login" />
</children> </children>
<padding> <padding>
<Insets bottom="10.0" left="20.0" right="20.0" top="10.0" /> <Insets bottom="10.0" left="20.0" right="20.0" top="10.0" />
</padding> </padding>
</HBox> </HBox>
</top> </top>
<!-- Footer Section -->
<bottom> <bottom>
<VBox id="footer" prefHeight="188.0" prefWidth="1200.0" styleClass="footer" BorderPane.alignment="CENTER"> <VBox fx:id="footer" prefHeight="188.0" prefWidth="1200.0" styleClass="footer" BorderPane.alignment="CENTER">
<children> <children>
<HBox id="footerLinks" alignment="TOP_CENTER" prefHeight="100.0" prefWidth="200.0"> <HBox fx:id="footerLinks" alignment="TOP_CENTER" prefHeight="100.0" prefWidth="200.0">
<children> <children>
<VBox id="quickLinks" alignment="TOP_LEFT" prefHeight="145.0" prefWidth="470.0" spacing="10.0"> <VBox fx:id="quickLinks" alignment="TOP_LEFT" prefHeight="145.0" prefWidth="470.0" spacing="10.0">
<children> <children>
<Label id="footerText" prefHeight="25.0" prefWidth="226.0" styleClass="footerHeading" text="Quick Links" /> <Label fx:id="footerText" prefHeight="25.0" prefWidth="226.0" styleClass="footerHeading" text="Quick Links" />
<Label id="footerHome" styleClass="footerText" text="Home" /> <Label fx:id="footerHome" styleClass="footerText" text="Home" />
<Label id="footerAbout" styleClass="footerText" text="About Us" /> <Label fx:id="footerAbout" styleClass="footerText" text="About Us" />
<Label id="footerContact" styleClass="footerText" text="Contact" /> <Label fx:id="footerContact" styleClass="footerText" text="Contact" />
</children> </children>
</VBox> </VBox>
<VBox id="contactUs" prefHeight="145.0" prefWidth="583.0" spacing="10.0"> <VBox fx:id="contactUs" prefHeight="145.0" prefWidth="583.0" spacing="10.0">
<children> <children>
<Label id="footerHeading2" prefWidth="534.0" styleClass="footerHeading" text="Contact Us" /> <Label fx:id="footerHeading2" prefWidth="534.0" styleClass="footerHeading" text="Contact Us" />
<Label id="footerEmail" styleClass="footerText" text="Email: info@example.com" /> <Label fx:id="footerEmail" styleClass="footerText" text="Email: info@example.com" />
<Label id="footerPhone" styleClass="footerText" text="Phone: +1 123 456 7890" /> <Label fx:id="footerPhone" styleClass="footerText" text="Phone: +1 123 456 7890" />
</children> </children>
</VBox> </VBox>
<VBox id="followUs" alignment="TOP_RIGHT" spacing="10.0"> <VBox fx:id="followUs" alignment="TOP_RIGHT" spacing="10.0">
<children> <children>
<Label id="footerHeading3" styleClass="footerHeading" text="Follow Us" /> <Label fx:id="footerHeading3" styleClass="footerHeading" text="Follow Us" />
<Label id="footerFacebook" styleClass="footerLink" text="Facebook" /> <Label fx:id="footerFacebook" styleClass="footerLink" text="Facebook" />
<Label id="footerBluesky" styleClass="footerLink" text="Bluesky" /> <Label fx:id="footerBluesky" styleClass="footerLink" text="Bluesky" />
<Label id="footerInstagram" styleClass="footerLink" text="Instagram" /> <Label fx:id="footerInstagram" styleClass="footerLink" text="Instagram" />
</children> </children>
</VBox> </VBox>
</children> </children>
</HBox> </HBox>
<VBox id="footerCopy" alignment="BOTTOM_CENTER" prefHeight="68.0" prefWidth="1170.0" spacing="10.0"> <VBox fx:id="footerCopy" alignment="BOTTOM_CENTER" prefHeight="68.0" prefWidth="1170.0" spacing="10.0">
<children> <children>
<Label id="footerCopyText" alignment="CENTER" contentDisplay="CENTER" styleClass="footerCopy" text="© 2024 My Website. All rights reserved." /> <Label fx:id="footerCopyText" alignment="CENTER" contentDisplay="CENTER" styleClass="footerCopy" text="© 2024 My Website. All rights reserved." />
</children> </children>
</VBox> </VBox>
</children> </children>
</VBox> </VBox>
</bottom> </bottom>
<!-- Main Content Section -->
<center> <center>
<GridPane id="main" styleClass="main" BorderPane.alignment="CENTER"> <GridPane fx:id="main" styleClass="main" BorderPane.alignment="CENTER">
<columnConstraints> <columnConstraints>
<ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="100.0" /> <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="100.0" />
</columnConstraints> </columnConstraints>
<rowConstraints> <rowConstraints>
<RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" /> <RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" />
</rowConstraints> </rowConstraints>
<children> <children>
<VBox id="loginForm" alignment="CENTER" prefHeight="400.0" prefWidth="300.0" spacing="20.0"> <VBox fx:id="loginForm" alignment="CENTER" prefHeight="400.0" prefWidth="300.0" spacing="20.0">
<children> <children>
<Label id="formTitle" styleClass="formTitle" text="Login" /> <Label fx:id="formTitle" styleClass="formTitle" text="Login" />
<VBox id="formFields" spacing="15.0"> <VBox fx:id="formFields" spacing="15.0">
<!-- Username --> <!-- Username Field -->
<VBox spacing="5.0"> <VBox spacing="5.0">
<Label id="usernameLabel" styleClass="formLabel" text="Username" /> <Label fx:id="usernameLabel" styleClass="formLabel" text="Username" />
<TextField id="usernameInput" styleClass="formInput" /> <TextField fx:id="usernameInput" styleClass="formInput" />
</VBox> </VBox>
<!-- Password Field -->
<!-- Password -->
<VBox spacing="5.0"> <VBox spacing="5.0">
<Label id="passwordLabel" styleClass="formLabel" text="Password" /> <Label fx:id="passwordLabel" styleClass="formLabel" text="Password" />
<PasswordField id="passwordInput" styleClass="formInput" /> <PasswordField fx:id="passwordInput" styleClass="formInput" />
</VBox> </VBox>
</VBox> </VBox>
<Button id="loginButton" mnemonicParsing="false" styleClass="btnLogin" text="Login" /> <Button fx:id="loginButton" mnemonicParsing="false" styleClass="btnLogin" text="Login" />
</children> </children>
</VBox> </VBox>
</children> </children>

View file

@ -14,17 +14,17 @@
<BorderPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="800.0" prefWidth="1200.0" xmlns="http://javafx.com/javafx/23.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.RegisterController"> <BorderPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="800.0" prefWidth="1200.0" xmlns="http://javafx.com/javafx/23.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.RegisterController">
<top> <top>
<HBox id="header" alignment="CENTER" prefHeight="60.0" prefWidth="631.0" spacing="20.0" styleClass="header" BorderPane.alignment="CENTER"> <HBox id="header" fx:id="header" alignment="CENTER" prefHeight="60.0" prefWidth="631.0" spacing="20.0" styleClass="header" BorderPane.alignment="CENTER">
<children> <children>
<!-- Main Title --> <!-- Main Title -->
<Label id="mainTitle" styleClass="mainTitle" text="Bookshop - Fantasy Brigade" /> <Label id="mainTitle" fx:id="mainTitle" styleClass="mainTitle" text="Bookshop - Fantasy Brigade" />
<!-- Spacer for alignment --> <!-- Spacer for alignment -->
<Pane HBox.hgrow="ALWAYS" /> <Pane fx:id="spacerPane" HBox.hgrow="ALWAYS" />
<!-- Buttons --> <!-- Buttons -->
<Button id="cartBtn" mnemonicParsing="false" styleClass="cartBtn" text="Cart" /> <Button id="cartBtn" fx:id="cartBtn" mnemonicParsing="false" styleClass="cartBtn" text="Cart" />
<Button id="loginBtn" mnemonicParsing="false" styleClass="loginBtn" text="Login" /> <Button id="loginBtn" fx:id="loginBtn" mnemonicParsing="false" styleClass="loginBtn" text="Login" />
</children> </children>
<padding> <padding>
<Insets bottom="10.0" left="20.0" right="20.0" top="10.0" /> <Insets bottom="10.0" left="20.0" right="20.0" top="10.0" />
@ -32,7 +32,7 @@
</HBox> </HBox>
</top> </top>
<center> <center>
<GridPane id="main" styleClass="main" BorderPane.alignment="CENTER"> <GridPane id="main" fx:id="mainGrid" styleClass="main" BorderPane.alignment="CENTER">
<columnConstraints> <columnConstraints>
<ColumnConstraints hgrow="SOMETIMES" minWidth="100.0" prefWidth="100.0" /> <ColumnConstraints hgrow="SOMETIMES" minWidth="100.0" prefWidth="100.0" />
</columnConstraints> </columnConstraints>
@ -46,68 +46,68 @@
<Insets /> <Insets />
</BorderPane.margin> </BorderPane.margin>
<children> <children>
<Label id="formTitle" styleClass="formTitle" text="LOGIN" /> <Label id="formTitle" fx:id="formTitle" styleClass="formTitle" text="LOGIN" />
<VBox id="formFields" prefHeight="200.0" prefWidth="100.0" GridPane.rowIndex="1"> <VBox id="formFields" fx:id="formFields" prefHeight="200.0" prefWidth="100.0" GridPane.rowIndex="1">
<children> <children>
<Label id="nameLabel" styleClass="formLabel" text="Name" /> <Label id="nameLabel" fx:id="nameLabel" styleClass="formLabel" text="Name" />
<TextField id="nameInput" styleClass="formInput" /> <TextField id="nameInput" fx:id="nameInput" styleClass="formInput" />
<Label id="surnameLabel" styleClass="formLabel" text="Surname" /> <Label id="surnameLabel" fx:id="surnameLabel" styleClass="formLabel" text="Surname" />
<TextField id="surnameInput" styleClass="formInput" /> <TextField id="surnameInput" fx:id="surnameInput" styleClass="formInput" />
<Label id="emailLabel" styleClass="formLabel" text="Email address" /> <Label id="emailLabel" fx:id="emailLabel" styleClass="formLabel" text="Email address" />
<TextField id="emailInput" styleClass="formInput" /> <TextField id="emailInput" fx:id="emailInput" styleClass="formInput" />
<Label id="phoneLabel" styleClass="formLabel" text="Phone number" /> <Label id="phoneLabel" fx:id="phoneLabel" styleClass="formLabel" text="Phone number" />
<TextField id="phoneInput" styleClass="formInput" /> <TextField id="phoneInput" fx:id="phoneInput" styleClass="formInput" />
<Label id="streetLabel" styleClass="formLabel" text="Street &amp; Nr." /> <Label id="streetLabel" fx:id="streetLabel" styleClass="formLabel" text="Street &amp; Nr." />
<TextField id="streetInput" styleClass="formInput" /> <TextField id="streetInput" fx:id="streetInput" styleClass="formInput" />
<Label id="cityLabel" styleClass="formLabel" text="City" /> <Label id="cityLabel" fx:id="cityLabel" styleClass="formLabel" text="City" />
<TextField id="cityInput" styleClass="formInput" /> <TextField id="cityInput" fx:id="cityInput" styleClass="formInput" />
<Label id="cityCodeLabel" styleClass="formLabel" text="City code" /> <Label id="cityCodeLabel" fx:id="cityCodeLabel" styleClass="formLabel" text="City code" />
<TextField id="cityCodeInput" styleClass="formInput" /> <TextField id="cityCodeInput" fx:id="cityCodeInput" styleClass="formInput" />
</children> </children>
</VBox> </VBox>
<Button id="createAccountButton" mnemonicParsing="false" styleClass="btnCreateAccount" text="Create account" GridPane.rowIndex="3" /> <Button id="createAccountButton" fx:id="createAccountButton" mnemonicParsing="false" styleClass="btnCreateAccount" text="Create account" GridPane.rowIndex="3" />
</children> </children>
</GridPane> </GridPane>
</center> </center>
<bottom> <bottom>
<VBox id="footer" prefHeight="188.0" prefWidth="1200.0" styleClass="footer" BorderPane.alignment="CENTER"> <VBox id="footer" fx:id="footer" prefHeight="188.0" prefWidth="1200.0" styleClass="footer" BorderPane.alignment="CENTER">
<children> <children>
<HBox id="footerLinks" alignment="TOP_CENTER" prefHeight="100.0" prefWidth="200.0"> <HBox id="footerLinks" fx:id="footerLinks" alignment="TOP_CENTER" prefHeight="100.0" prefWidth="200.0">
<children> <children>
<VBox id="quickLinks" alignment="TOP_LEFT" prefHeight="145.0" prefWidth="470.0" spacing="10.0"> <VBox id="quickLinks" fx:id="quickLinks" alignment="TOP_LEFT" prefHeight="145.0" prefWidth="470.0" spacing="10.0">
<children> <children>
<Label id="footerText" prefHeight="25.0" prefWidth="226.0" styleClass="footerHeading" text="Quick Links" /> <Label id="footerText" fx:id="footerText" prefHeight="25.0" prefWidth="226.0" styleClass="footerHeading" text="Quick Links" />
<Label id="footerHome" styleClass="footerText" text="Home" /> <Label id="footerHome" fx:id="footerHome" styleClass="footerText" text="Home" />
<Label id="footerAbout" styleClass="footerText" text="About Us" /> <Label id="footerAbout" fx:id="footerAbout" styleClass="footerText" text="About Us" />
<Label id="footerContact" styleClass="footerText" text="Contact" /> <Label id="footerContact" fx:id="footerContact" styleClass="footerText" text="Contact" />
</children> </children>
</VBox> </VBox>
<VBox id="contactUs" prefHeight="145.0" prefWidth="583.0" spacing="10.0"> <VBox id="contactUs" fx:id="contactUs" prefHeight="145.0" prefWidth="583.0" spacing="10.0">
<children> <children>
<Label id="footerHeading2" prefWidth="534.0" styleClass="footerHeading" text="Contact Us" /> <Label id="footerHeading2" fx:id="footerHeading2" prefWidth="534.0" styleClass="footerHeading" text="Contact Us" />
<Label id="footerEmail" styleClass="footerText" text="Email: info@example.com" /> <Label id="footerEmail" fx:id="footerEmail" styleClass="footerText" text="Email: info@example.com" />
<Label id="footerPhone" styleClass="footerText" text="Phone: +1 123 456 7890" /> <Label id="footerPhone" fx:id="footerPhone" styleClass="footerText" text="Phone: +1 123 456 7890" />
</children> </children>
</VBox> </VBox>
<VBox id="followUs" alignment="TOP_RIGHT" spacing="10.0"> <VBox id="followUs" fx:id="followUs" alignment="TOP_RIGHT" spacing="10.0">
<children> <children>
<Label id="footerHeading3" styleClass="footerHeading" text="Follow Us" /> <Label id="footerHeading3" fx:id="footerHeading3" styleClass="footerHeading" text="Follow Us" />
<Label id="footerFacebook" styleClass="footerLink" text="Facebook" /> <Label id="footerFacebook" fx:id="footerFacebook" styleClass="footerLink" text="Facebook" />
<Label id="footerBluesky" styleClass="footerLink" text="Bluesky" /> <Label id="footerBluesky" fx:id="footerBluesky" styleClass="footerLink" text="Bluesky" />
<Label id="footerInstagram" styleClass="footerLink" text="Instagram" /> <Label id="footerInstagram" fx:id="footerInstagram" styleClass="footerLink" text="Instagram" />
</children> </children>
</VBox> </VBox>
</children> </children>
</HBox> </HBox>
<VBox id="footerCopy" alignment="BOTTOM_CENTER" prefHeight="68.0" prefWidth="1170.0" spacing="10.0"> <VBox id="footerCopy" fx:id="footerCopy" alignment="BOTTOM_CENTER" prefHeight="68.0" prefWidth="1170.0" spacing="10.0">
<children> <children>
<Label id="footerCopyText" alignment="CENTER" contentDisplay="CENTER" styleClass="footerCopy" text="© 2024 My Website. All rights reserved." /> <Label id="footerCopyText" fx:id="footerCopyText" alignment="CENTER" contentDisplay="CENTER" styleClass="footerCopy" text="© 2024 My Website. All rights reserved." />
</children> </children>
</VBox> </VBox>
</children> </children>

View file

@ -15,17 +15,17 @@
<fx:root maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="800.0" prefWidth="1200.0" type="BorderPane" xmlns="http://javafx.com/javafx/23.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.CartController"> <fx:root maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="800.0" prefWidth="1200.0" type="BorderPane" xmlns="http://javafx.com/javafx/23.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.CartController">
<top> <top>
<HBox id="header" alignment="CENTER" prefHeight="60.0" prefWidth="631.0" spacing="20.0" styleClass="header" BorderPane.alignment="CENTER"> <HBox fx:id="header" alignment="CENTER" prefHeight="60.0" prefWidth="631.0" spacing="20.0" styleClass="header" BorderPane.alignment="CENTER">
<children> <children>
<!-- Main Title --> <!-- Main Title -->
<Label id="mainTitle" styleClass="mainTitle" text="Bookshop - Fantasy Brigade" /> <Label fx:id="mainTitle" styleClass="mainTitle" text="Bookshop - Fantasy Brigade" />
<!-- Spacer for alignment --> <!-- Spacer for alignment -->
<Pane HBox.hgrow="ALWAYS" /> <Pane HBox.hgrow="ALWAYS" />
<!-- Buttons --> <!-- Buttons -->
<Button id="cartBtn" mnemonicParsing="false" styleClass="cartBtn" text="Cart" /> <Button fx:id="cartBtn" mnemonicParsing="false" styleClass="cartBtn" text="Cart" />
<Button id="loginBtn" mnemonicParsing="false" styleClass="loginBtn" text="Login" /> <Button fx:id="loginBtn" mnemonicParsing="false" styleClass="loginBtn" text="Login" />
</children> </children>
<padding> <padding>
<Insets bottom="10.0" left="20.0" right="20.0" top="10.0" /> <Insets bottom="10.0" left="20.0" right="20.0" top="10.0" />
@ -33,7 +33,7 @@
</HBox> </HBox>
</top> </top>
<center> <center>
<GridPane id="main" styleClass="main" BorderPane.alignment="CENTER"> <GridPane fx:id="main" styleClass="main" BorderPane.alignment="CENTER">
<columnConstraints> <columnConstraints>
<ColumnConstraints hgrow="SOMETIMES" minWidth="100.0" prefWidth="100.0" /> <ColumnConstraints hgrow="SOMETIMES" minWidth="100.0" prefWidth="100.0" />
</columnConstraints> </columnConstraints>
@ -46,52 +46,52 @@
<Insets /> <Insets />
</BorderPane.margin> </BorderPane.margin>
<children> <children>
<Button id="btnCheckOut" mnemonicParsing="false" styleClass="btnCheckOut" text="Check out" GridPane.rowIndex="2" /> <Button fx:id="btnCheckOut" mnemonicParsing="false" styleClass="btnCheckOut" text="Check out" GridPane.rowIndex="2" />
<Label id="cartTitle" styleClass="cartTitle" text="Your cart" /> <Label fx:id="cartTitle" styleClass="cartTitle" text="Your cart" />
<TableView id="cartContent" prefHeight="0.0" prefWidth="364.0" GridPane.rowIndex="1"> <TableView fx:id="cartContent" prefHeight="0.0" prefWidth="364.0" GridPane.rowIndex="1">
<columns> <columns>
<TableColumn id="nameColumn" prefWidth="243.0" text="Name" /> <TableColumn fx:id="nameColumn" prefWidth="243.0" text="Name" />
<TableColumn id="descriptionColumn" prefWidth="615.0" text="Description" /> <TableColumn fx:id="descriptionColumn" prefWidth="615.0" text="Description" />
<TableColumn id="quantityColumn" minWidth="0.0" prefWidth="154.0" text="Quantity" /> <TableColumn fx:id="quantityColumn" minWidth="0.0" prefWidth="154.0" text="Quantity" />
<TableColumn id="priceColumn" minWidth="0.0" prefWidth="147.0" text="Price" /> <TableColumn fx:id="priceColumn" minWidth="0.0" prefWidth="147.0" text="Price" />
</columns> </columns>
</TableView> </TableView>
</children> </children>
</GridPane> </GridPane>
</center> </center>
<bottom> <bottom>
<VBox id="footer" prefHeight="188.0" prefWidth="1200.0" styleClass="footer" BorderPane.alignment="CENTER"> <VBox fx:id="footer" prefHeight="188.0" prefWidth="1200.0" styleClass="footer" BorderPane.alignment="CENTER">
<children> <children>
<HBox id="footerLinks" alignment="TOP_CENTER" prefHeight="100.0" prefWidth="200.0"> <HBox fx:id="footerLinks" alignment="TOP_CENTER" prefHeight="100.0" prefWidth="200.0">
<children> <children>
<VBox id="quickLinks" alignment="TOP_LEFT" prefHeight="145.0" prefWidth="470.0" spacing="10.0"> <VBox fx:id="quickLinks" alignment="TOP_LEFT" prefHeight="145.0" prefWidth="470.0" spacing="10.0">
<children> <children>
<Label id="footerText" prefHeight="25.0" prefWidth="226.0" styleClass="footerHeading" text="Quick Links" /> <Label fx:id="footerText" prefHeight="25.0" prefWidth="226.0" styleClass="footerHeading" text="Quick Links" />
<Label id="footerHome" styleClass="footerText" text="Home" /> <Label fx:id="footerHome" styleClass="footerText" text="Home" />
<Label id="footerAbout" styleClass="footerText" text="About Us" /> <Label fx:id="footerAbout" styleClass="footerText" text="About Us" />
<Label id="footerContact" styleClass="footerText" text="Contact" /> <Label fx:id="footerContact" styleClass="footerText" text="Contact" />
</children> </children>
</VBox> </VBox>
<VBox id="contactUs" prefHeight="145.0" prefWidth="583.0" spacing="10.0"> <VBox fx:id="contactUs" prefHeight="145.0" prefWidth="583.0" spacing="10.0">
<children> <children>
<Label id="footerHeading2" prefWidth="534.0" styleClass="footerHeading" text="Contact Us" /> <Label fx:id="footerHeading2" prefWidth="534.0" styleClass="footerHeading" text="Contact Us" />
<Label id="footerEmail" styleClass="footerText" text="Email: info@example.com" /> <Label fx:id="footerEmail" styleClass="footerText" text="Email: info@example.com" />
<Label id="footerPhone" styleClass="footerText" text="Phone: +1 123 456 7890" /> <Label fx:id="footerPhone" styleClass="footerText" text="Phone: +1 123 456 7890" />
</children> </children>
</VBox> </VBox>
<VBox id="followUs" alignment="TOP_RIGHT" spacing="10.0"> <VBox fx:id="followUs" alignment="TOP_RIGHT" spacing="10.0">
<children> <children>
<Label id="footerHeading3" styleClass="footerHeading" text="Follow Us" /> <Label fx:id="footerHeading3" styleClass="footerHeading" text="Follow Us" />
<Label id="footerFacebook" styleClass="footerLink" text="Facebook" /> <Label fx:id="footerFacebook" styleClass="footerLink" text="Facebook" />
<Label id="footerBluesky" styleClass="footerLink" text="Bluesky" /> <Label fx:id="footerBluesky" styleClass="footerLink" text="Bluesky" />
<Label id="footerInstagram" styleClass="footerLink" text="Instagram" /> <Label fx:id="footerInstagram" styleClass="footerLink" text="Instagram" />
</children> </children>
</VBox> </VBox>
</children> </children>
</HBox> </HBox>
<VBox id="footerCopy" alignment="BOTTOM_CENTER" prefHeight="68.0" prefWidth="1170.0" spacing="10.0"> <VBox fx:id="footerCopy" alignment="BOTTOM_CENTER" prefHeight="68.0" prefWidth="1170.0" spacing="10.0">
<children> <children>
<Label id="footerCopyText" alignment="CENTER" contentDisplay="CENTER" styleClass="footerCopy" text="© 2024 My Website. All rights reserved." /> <Label fx:id="footerCopyText" alignment="CENTER" contentDisplay="CENTER" styleClass="footerCopy" text="© 2024 My Website. All rights reserved." />
</children> </children>
</VBox> </VBox>
</children> </children>

View file

@ -16,12 +16,12 @@
<BorderPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="800.0" prefWidth="1200.0" xmlns="http://javafx.com/javafx/23.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.CheckOutController"> <BorderPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="800.0" prefWidth="1200.0" xmlns="http://javafx.com/javafx/23.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.CheckOutController">
<top> <top>
<HBox id="header" alignment="CENTER" prefHeight="60.0" prefWidth="631.0" spacing="20.0" styleClass="header" BorderPane.alignment="CENTER"> <HBox fx:id="header" alignment="CENTER" prefHeight="60.0" prefWidth="631.0" spacing="20.0" styleClass="header" BorderPane.alignment="CENTER">
<children> <children>
<Label id="mainTitle" styleClass="mainTitle" text="Bookshop - Fantasy Brigade" /> <Label fx:id="mainTitle" styleClass="mainTitle" text="Bookshop - Fantasy Brigade" />
<Pane id="headerSpacer" HBox.hgrow="ALWAYS" /> <Pane fx:id="headerSpacer" HBox.hgrow="ALWAYS" />
<Button id="cartBtn" mnemonicParsing="false" styleClass="cartBtn" text="Cart" /> <Button fx:id="cartBtn" mnemonicParsing="false" styleClass="cartBtn" text="Cart" />
<Button id="loginBtn" mnemonicParsing="false" styleClass="loginBtn" text="Login" /> <Button fx:id="loginBtn" mnemonicParsing="false" styleClass="loginBtn" text="Login" />
</children> </children>
<padding> <padding>
<Insets bottom="10.0" left="20.0" right="20.0" top="10.0" /> <Insets bottom="10.0" left="20.0" right="20.0" top="10.0" />
@ -29,91 +29,91 @@
</HBox> </HBox>
</top> </top>
<bottom> <bottom>
<VBox id="footer" prefHeight="188.0" prefWidth="1200.0" styleClass="footer" BorderPane.alignment="CENTER"> <VBox fx:id="footer" prefHeight="188.0" prefWidth="1200.0" styleClass="footer" BorderPane.alignment="CENTER">
<children> <children>
<HBox id="footerLinks" alignment="TOP_CENTER" prefHeight="100.0" prefWidth="200.0"> <HBox fx:id="footerLinks" alignment="TOP_CENTER" prefHeight="100.0" prefWidth="200.0">
<children> <children>
<VBox id="quickLinks" alignment="TOP_LEFT" prefHeight="145.0" prefWidth="470.0" spacing="10.0"> <VBox fx:id="quickLinks" alignment="TOP_LEFT" prefHeight="145.0" prefWidth="470.0" spacing="10.0">
<children> <children>
<Label id="footerText" prefHeight="25.0" prefWidth="226.0" styleClass="footerHeading" text="Quick Links" /> <Label fx:id="footerText" prefHeight="25.0" prefWidth="226.0" styleClass="footerHeading" text="Quick Links" />
<Label id="footerHome" styleClass="footerText" text="Home" /> <Label fx:id="footerHome" styleClass="footerText" text="Home" />
<Label id="footerAbout" styleClass="footerText" text="About Us" /> <Label fx:id="footerAbout" styleClass="footerText" text="About Us" />
<Label id="footerContact" styleClass="footerText" text="Contact" /> <Label fx:id="footerContact" styleClass="footerText" text="Contact" />
</children> </children>
</VBox> </VBox>
<VBox id="contactUs" prefHeight="145.0" prefWidth="583.0" spacing="10.0"> <VBox fx:id="contactUs" prefHeight="145.0" prefWidth="583.0" spacing="10.0">
<children> <children>
<Label id="footerHeading2" prefWidth="534.0" styleClass="footerHeading" text="Contact Us" /> <Label fx:id="footerHeading2" prefWidth="534.0" styleClass="footerHeading" text="Contact Us" />
<Label id="footerEmail" styleClass="footerText" text="Email: info@example.com" /> <Label fx:id="footerEmail" styleClass="footerText" text="Email: info@example.com" />
<Label id="footerPhone" styleClass="footerText" text="Phone: +1 123 456 7890" /> <Label fx:id="footerPhone" styleClass="footerText" text="Phone: +1 123 456 7890" />
</children> </children>
</VBox> </VBox>
<VBox id="followUs" alignment="TOP_RIGHT" spacing="10.0"> <VBox fx:id="followUs" alignment="TOP_RIGHT" spacing="10.0">
<children> <children>
<Label id="footerHeading3" styleClass="footerHeading" text="Follow Us" /> <Label fx:id="footerHeading3" styleClass="footerHeading" text="Follow Us" />
<Label id="footerFacebook" styleClass="footerLink" text="Facebook" /> <Label fx:id="footerFacebook" styleClass="footerLink" text="Facebook" />
<Label id="footerBluesky" styleClass="footerLink" text="Bluesky" /> <Label fx:id="footerBluesky" styleClass="footerLink" text="Bluesky" />
<Label id="footerInstagram" styleClass="footerLink" text="Instagram" /> <Label fx:id="footerInstagram" styleClass="footerLink" text="Instagram" />
</children> </children>
</VBox> </VBox>
</children> </children>
</HBox> </HBox>
<VBox id="footerCopy" alignment="BOTTOM_CENTER" prefHeight="68.0" prefWidth="1170.0" spacing="10.0"> <VBox fx:id="footerCopy" alignment="BOTTOM_CENTER" prefHeight="68.0" prefWidth="1170.0" spacing="10.0">
<children> <children>
<Label id="footerCopyText" alignment="CENTER" contentDisplay="CENTER" styleClass="footerCopy" text="© 2024 My Website. All rights reserved." /> <Label fx:id="footerCopyText" alignment="CENTER" contentDisplay="CENTER" styleClass="footerCopy" text="© 2024 My Website. All rights reserved." />
</children> </children>
</VBox> </VBox>
</children> </children>
</VBox> </VBox>
</bottom> </bottom>
<center> <center>
<GridPane id="main" alignment="TOP_CENTER" styleClass="main" BorderPane.alignment="CENTER"> <GridPane fx:id="main" alignment="TOP_CENTER" styleClass="main" BorderPane.alignment="CENTER">
<children> <children>
<GridPane id="billingForm" alignment="TOP_CENTER" hgap="10" prefHeight="600.0" prefWidth="800.0" style="-fx-background-color: rgba(238, 130, 238, 0.8);" vgap="20"> <GridPane fx:id="billingForm" alignment="TOP_CENTER" hgap="10" prefHeight="600.0" prefWidth="800.0" style="-fx-background-color: rgba(238, 130, 238, 0.8);" vgap="20">
<children> <children>
<Label id="checkoutHeader" style="-fx-font-size: 24px; -fx-font-weight: bold;" text="Check out" textFill="WHITE" GridPane.columnSpan="2" GridPane.rowIndex="0" /> <Label fx:id="checkoutHeader" style="-fx-font-size: 24px; -fx-font-weight: bold;" text="Check out" textFill="WHITE" GridPane.columnSpan="2" GridPane.rowIndex="0" />
<Label id="paymentTitle" style="-fx-font-size: 30px; -fx-font-weight: bold;" text="Payment" textFill="WHITE" GridPane.columnSpan="2" GridPane.rowIndex="1" /> <Label fx:id="paymentTitle" style="-fx-font-size: 30px; -fx-font-weight: bold;" text="Payment" textFill="WHITE" GridPane.columnSpan="2" GridPane.rowIndex="1" />
<Label id="paymentSubtitle" style="-fx-font-size: 14px;" text="Choose payment method below" textFill="WHITE" GridPane.columnSpan="2" GridPane.rowIndex="2" /> <Label fx:id="paymentSubtitle" style="-fx-font-size: 14px;" text="Choose payment method below" textFill="WHITE" GridPane.columnSpan="2" GridPane.rowIndex="2" />
<HBox id="paymentMethods" alignment="CENTER" spacing="20" GridPane.columnSpan="2" GridPane.rowIndex="3"> <HBox fx:id="paymentMethods" alignment="CENTER" spacing="20" GridPane.columnSpan="2" GridPane.rowIndex="3">
<Button id="creditCard" mnemonicParsing="false" styleClass="creditCard" /> <Button fx:id="creditCard" mnemonicParsing="false" styleClass="creditCard" />
<Button id="bill" mnemonicParsing="false" styleClass="bill" /> <Button fx:id="bill" mnemonicParsing="false" styleClass="bill" />
<Button id="paypal" mnemonicParsing="false" styleClass="paypal" /> <Button fx:id="paypal" mnemonicParsing="false" styleClass="paypal" />
</HBox> </HBox>
<Label id="billingInfoTitle" style="-fx-font-size: 18px; -fx-font-weight: bold;" text="Billing Info" textFill="WHITE" GridPane.columnIndex="0" GridPane.rowIndex="4" /> <Label fx:id="billingInfoTitle" style="-fx-font-size: 18px; -fx-font-weight: bold;" text="Billing Info" textFill="WHITE" GridPane.columnIndex="0" GridPane.rowIndex="4" />
<HBox id="billingName" spacing="10" GridPane.columnIndex="0" GridPane.rowIndex="5"> <HBox fx:id="billingName" spacing="10" GridPane.columnIndex="0" GridPane.rowIndex="5">
<Label id="fullNameLabel" text="Full Name:" textFill="WHITE" /> <Label fx:id="fullNameLabel" text="Full Name:" textFill="WHITE" />
<TextField id="fullNameField" fx:id="addressField1" prefWidth="200" promptText="Jon Doe" /> <TextField fx:id="fullNameField" prefWidth="200" promptText="Jon Doe" />
</HBox> </HBox>
<HBox id="billingAddress" spacing="10" GridPane.columnIndex="0" GridPane.rowIndex="6"> <HBox fx:id="billingAddress" spacing="10" GridPane.columnIndex="0" GridPane.rowIndex="6">
<Label id="addressLabel" text="Address:" textFill="WHITE" /> <Label fx:id="addressLabel" text="Address:" textFill="WHITE" />
<TextField id="addressField" fx:id="addressField" prefWidth="200" promptText="497 Evergreen Rd." /> <TextField fx:id="addressField" prefWidth="200" promptText="497 Evergreen Rd." />
</HBox> </HBox>
<HBox id="billingCityZip" spacing="10" GridPane.columnIndex="0" GridPane.rowIndex="7"> <HBox fx:id="billingCityZip" spacing="10" GridPane.columnIndex="0" GridPane.rowIndex="7">
<Label id="cityLabel" text="City:" textFill="WHITE" /> <Label fx:id="cityLabel" text="City:" textFill="WHITE" />
<TextField id="cityField" fx:id="cityField" prefWidth="100" promptText="Roseville" /> <TextField fx:id="cityField" prefWidth="100" promptText="Roseville" />
<Label id="zipLabel" text="ZIP Code:" textFill="WHITE" /> <Label fx:id="zipLabel" text="ZIP Code:" textFill="WHITE" />
<TextField id="zipField" fx:id="zipField" prefWidth="80" promptText="95673" /> <TextField fx:id="zipField" prefWidth="80" promptText="95673" />
</HBox> </HBox>
<HBox id="billingCountry" spacing="10" GridPane.columnIndex="0" GridPane.rowIndex="8"> <HBox fx:id="billingCountry" spacing="10" GridPane.columnIndex="0" GridPane.rowIndex="8">
<Label id="countryLabel" text="Country:" textFill="WHITE" /> <Label fx:id="countryLabel" text="Country:" textFill="WHITE" />
<ComboBox id="countryComboBox" fx:id="countryComboBox" prefWidth="150.0" /> <ComboBox fx:id="countryComboBox" prefWidth="150.0" />
</HBox> </HBox>
<Label id="creditCardInfoTitle" style="-fx-font-size: 18px; -fx-font-weight: bold;" text="Credit Card Info" textFill="WHITE" GridPane.columnIndex="1" GridPane.rowIndex="4" /> <Label fx:id="creditCardInfoTitle" style="-fx-font-size: 18px; -fx-font-weight: bold;" text="Credit Card Info" textFill="WHITE" GridPane.columnIndex="1" GridPane.rowIndex="4" />
<HBox id="creditCardNumber" spacing="10" GridPane.columnIndex="1" GridPane.rowIndex="5"> <HBox fx:id="creditCardNumber" spacing="10" GridPane.columnIndex="1" GridPane.rowIndex="5">
<Label id="cardNumberLabel" text="Card Number:" textFill="WHITE" /> <Label fx:id="cardNumberLabel" text="Card Number:" textFill="WHITE" />
<TextField id="cardNumberField" fx:id="cardNumberField" prefWidth="200" promptText="1234 5678 3456 2456" /> <TextField fx:id="cardNumberField" prefWidth="200" promptText="1234 5678 3456 2456" />
</HBox> </HBox>
<HBox id="creditCardHolder" spacing="10" GridPane.columnIndex="1" GridPane.rowIndex="6"> <HBox fx:id="creditCardHolder" spacing="10" GridPane.columnIndex="1" GridPane.rowIndex="6">
<Label id="cardHolderNameLabel" text="Cardholder Name:" textFill="WHITE" /> <Label fx:id="cardHolderNameLabel" text="Cardholder Name:" textFill="WHITE" />
<TextField id="cardHolderNameField" fx:id="cardHolderNameField" prefWidth="200" promptText="John Doe" /> <TextField fx:id="cardHolderNameField" prefWidth="200" promptText="John Doe" />
</HBox> </HBox>
<HBox id="creditCardExpiry" spacing="10" GridPane.columnIndex="1" GridPane.rowIndex="7"> <HBox fx:id="creditCardExpiry" spacing="10" GridPane.columnIndex="1" GridPane.rowIndex="7">
<Label id="expiryDateLabel" text="Expire Date:" textFill="WHITE" /> <Label fx:id="expiryDateLabel" text="Expire Date:" textFill="WHITE" />
<TextField id="expiryDateField" fx:id="expiryDateField" prefWidth="80" promptText="MM / YY" /> <TextField fx:id="expiryDateField" prefWidth="80" promptText="MM / YY" />
<Label id="cvvLabel" text="CVV:" textFill="WHITE" /> <Label fx:id="cvvLabel" text="CVV:" textFill="WHITE" />
<PasswordField id="cvvField" fx:id="cvvField" /> <PasswordField fx:id="cvvField" />
</HBox> </HBox>
<Button id="submitBtn" fx:id="submitButton" alignment="CENTER" contentDisplay="CENTER" prefWidth="150" style="-fx-alignment: #4CAF50; -fx-text-fill: white; -fx-font-size: 16px; -fx-font-weight: bold;" styleClass="cartBtn" text="Submit" GridPane.columnSpan="2" GridPane.rowIndex="9" /> <Button fx:id="submitButton" alignment="CENTER" contentDisplay="CENTER" prefWidth="150" style="-fx-alignment: #4CAF50; -fx-text-fill: white; -fx-font-size: 16px; -fx-font-weight: bold;" styleClass="cartBtn" text="Submit" GridPane.columnSpan="2" GridPane.rowIndex="9" />
</children> </children>
<columnConstraints> <columnConstraints>
<ColumnConstraints /> <ColumnConstraints />

View file

@ -14,88 +14,88 @@
<?import javafx.scene.layout.VBox?> <?import javafx.scene.layout.VBox?>
<BorderPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="800.0" prefWidth="1200.0" xmlns="http://javafx.com/javafx/23.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.LoginController"> <BorderPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="800.0" prefWidth="1200.0" xmlns="http://javafx.com/javafx/23.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.LoginController">
<!-- Header Section -->
<top> <top>
<HBox id="header" alignment="CENTER" prefHeight="60.0" prefWidth="631.0" spacing="20.0" styleClass="header" BorderPane.alignment="CENTER"> <HBox fx:id="header" alignment="CENTER" prefHeight="60.0" prefWidth="631.0" spacing="20.0" styleClass="header" BorderPane.alignment="CENTER">
<children> <children>
<!-- Main Title --> <Label fx:id="mainTitle" styleClass="mainTitle" text="Bookshop - Fantasy Brigade" />
<Label id="mainTitle" styleClass="mainTitle" text="Bookshop - Fantasy Brigade" />
<!-- Spacer for alignment -->
<Pane HBox.hgrow="ALWAYS" /> <Pane HBox.hgrow="ALWAYS" />
<Button fx:id="cartBtn" mnemonicParsing="false" styleClass="cartBtn" text="Cart" />
<!-- Buttons --> <Button fx:id="loginBtn" mnemonicParsing="false" styleClass="loginBtn" text="Login" />
<Button id="cartBtn" mnemonicParsing="false" styleClass="cartBtn" text="Cart" />
<Button id="loginBtn" mnemonicParsing="false" styleClass="loginBtn" text="Login" />
</children> </children>
<padding> <padding>
<Insets bottom="10.0" left="20.0" right="20.0" top="10.0" /> <Insets bottom="10.0" left="20.0" right="20.0" top="10.0" />
</padding> </padding>
</HBox> </HBox>
</top> </top>
<!-- Footer Section -->
<bottom> <bottom>
<VBox id="footer" prefHeight="188.0" prefWidth="1200.0" styleClass="footer" BorderPane.alignment="CENTER"> <VBox fx:id="footer" prefHeight="188.0" prefWidth="1200.0" styleClass="footer" BorderPane.alignment="CENTER">
<children> <children>
<HBox id="footerLinks" alignment="TOP_CENTER" prefHeight="100.0" prefWidth="200.0"> <HBox fx:id="footerLinks" alignment="TOP_CENTER" prefHeight="100.0" prefWidth="200.0">
<children> <children>
<VBox id="quickLinks" alignment="TOP_LEFT" prefHeight="145.0" prefWidth="470.0" spacing="10.0"> <VBox fx:id="quickLinks" alignment="TOP_LEFT" prefHeight="145.0" prefWidth="470.0" spacing="10.0">
<children> <children>
<Label id="footerText" prefHeight="25.0" prefWidth="226.0" styleClass="footerHeading" text="Quick Links" /> <Label fx:id="footerText" prefHeight="25.0" prefWidth="226.0" styleClass="footerHeading" text="Quick Links" />
<Label id="footerHome" styleClass="footerText" text="Home" /> <Label fx:id="footerHome" styleClass="footerText" text="Home" />
<Label id="footerAbout" styleClass="footerText" text="About Us" /> <Label fx:id="footerAbout" styleClass="footerText" text="About Us" />
<Label id="footerContact" styleClass="footerText" text="Contact" /> <Label fx:id="footerContact" styleClass="footerText" text="Contact" />
</children> </children>
</VBox> </VBox>
<VBox id="contactUs" prefHeight="145.0" prefWidth="583.0" spacing="10.0"> <VBox fx:id="contactUs" prefHeight="145.0" prefWidth="583.0" spacing="10.0">
<children> <children>
<Label id="footerHeading2" prefWidth="534.0" styleClass="footerHeading" text="Contact Us" /> <Label fx:id="footerHeading2" prefWidth="534.0" styleClass="footerHeading" text="Contact Us" />
<Label id="footerEmail" styleClass="footerText" text="Email: info@example.com" /> <Label fx:id="footerEmail" styleClass="footerText" text="Email: info@example.com" />
<Label id="footerPhone" styleClass="footerText" text="Phone: +1 123 456 7890" /> <Label fx:id="footerPhone" styleClass="footerText" text="Phone: +1 123 456 7890" />
</children> </children>
</VBox> </VBox>
<VBox id="followUs" alignment="TOP_RIGHT" spacing="10.0"> <VBox fx:id="followUs" alignment="TOP_RIGHT" spacing="10.0">
<children> <children>
<Label id="footerHeading3" styleClass="footerHeading" text="Follow Us" /> <Label fx:id="footerHeading3" styleClass="footerHeading" text="Follow Us" />
<Label id="footerFacebook" styleClass="footerLink" text="Facebook" /> <Label fx:id="footerFacebook" styleClass="footerLink" text="Facebook" />
<Label id="footerBluesky" styleClass="footerLink" text="Bluesky" /> <Label fx:id="footerBluesky" styleClass="footerLink" text="Bluesky" />
<Label id="footerInstagram" styleClass="footerLink" text="Instagram" /> <Label fx:id="footerInstagram" styleClass="footerLink" text="Instagram" />
</children> </children>
</VBox> </VBox>
</children> </children>
</HBox> </HBox>
<VBox id="footerCopy" alignment="BOTTOM_CENTER" prefHeight="68.0" prefWidth="1170.0" spacing="10.0"> <VBox fx:id="footerCopy" alignment="BOTTOM_CENTER" prefHeight="68.0" prefWidth="1170.0" spacing="10.0">
<children> <children>
<Label id="footerCopyText" alignment="CENTER" contentDisplay="CENTER" styleClass="footerCopy" text="© 2024 My Website. All rights reserved." /> <Label fx:id="footerCopyText" alignment="CENTER" contentDisplay="CENTER" styleClass="footerCopy" text="© 2024 My Website. All rights reserved." />
</children> </children>
</VBox> </VBox>
</children> </children>
</VBox> </VBox>
</bottom> </bottom>
<!-- Main Content Section -->
<center> <center>
<GridPane id="main" styleClass="main" BorderPane.alignment="CENTER"> <GridPane fx:id="main" styleClass="main" BorderPane.alignment="CENTER">
<columnConstraints> <columnConstraints>
<ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="100.0" /> <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="100.0" />
</columnConstraints> </columnConstraints>
<rowConstraints> <rowConstraints>
<RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" /> <RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" />
</rowConstraints> </rowConstraints>
<children> <children>
<VBox id="loginForm" alignment="CENTER" prefHeight="400.0" prefWidth="300.0" spacing="20.0"> <VBox fx:id="loginForm" alignment="CENTER" prefHeight="400.0" prefWidth="300.0" spacing="20.0">
<children> <children>
<Label id="formTitle" styleClass="formTitle" text="Login" /> <Label fx:id="formTitle" styleClass="formTitle" text="Login" />
<VBox id="formFields" spacing="15.0"> <VBox fx:id="formFields" spacing="15.0">
<!-- Username --> <!-- Username Field -->
<VBox spacing="5.0"> <VBox spacing="5.0">
<Label id="usernameLabel" styleClass="formLabel" text="Username" /> <Label fx:id="usernameLabel" styleClass="formLabel" text="Username" />
<TextField id="usernameInput" styleClass="formInput" /> <TextField fx:id="usernameInput" styleClass="formInput" />
</VBox> </VBox>
<!-- Password Field -->
<!-- Password -->
<VBox spacing="5.0"> <VBox spacing="5.0">
<Label id="passwordLabel" styleClass="formLabel" text="Password" /> <Label fx:id="passwordLabel" styleClass="formLabel" text="Password" />
<PasswordField id="passwordInput" styleClass="formInput" /> <PasswordField fx:id="passwordInput" styleClass="formInput" />
</VBox> </VBox>
</VBox> </VBox>
<Button id="loginButton" mnemonicParsing="false" styleClass="btnLogin" text="Login" /> <Button fx:id="loginButton" mnemonicParsing="false" styleClass="btnLogin" text="Login" />
</children> </children>
</VBox> </VBox>
</children> </children>

View file

@ -14,17 +14,17 @@
<BorderPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="800.0" prefWidth="1200.0" xmlns="http://javafx.com/javafx/23.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.RegisterController"> <BorderPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="800.0" prefWidth="1200.0" xmlns="http://javafx.com/javafx/23.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.RegisterController">
<top> <top>
<HBox id="header" alignment="CENTER" prefHeight="60.0" prefWidth="631.0" spacing="20.0" styleClass="header" BorderPane.alignment="CENTER"> <HBox id="header" fx:id="header" alignment="CENTER" prefHeight="60.0" prefWidth="631.0" spacing="20.0" styleClass="header" BorderPane.alignment="CENTER">
<children> <children>
<!-- Main Title --> <!-- Main Title -->
<Label id="mainTitle" styleClass="mainTitle" text="Bookshop - Fantasy Brigade" /> <Label id="mainTitle" fx:id="mainTitle" styleClass="mainTitle" text="Bookshop - Fantasy Brigade" />
<!-- Spacer for alignment --> <!-- Spacer for alignment -->
<Pane HBox.hgrow="ALWAYS" /> <Pane fx:id="spacerPane" HBox.hgrow="ALWAYS" />
<!-- Buttons --> <!-- Buttons -->
<Button id="cartBtn" mnemonicParsing="false" styleClass="cartBtn" text="Cart" /> <Button id="cartBtn" fx:id="cartBtn" mnemonicParsing="false" styleClass="cartBtn" text="Cart" />
<Button id="loginBtn" mnemonicParsing="false" styleClass="loginBtn" text="Login" /> <Button id="loginBtn" fx:id="loginBtn" mnemonicParsing="false" styleClass="loginBtn" text="Login" />
</children> </children>
<padding> <padding>
<Insets bottom="10.0" left="20.0" right="20.0" top="10.0" /> <Insets bottom="10.0" left="20.0" right="20.0" top="10.0" />
@ -32,7 +32,7 @@
</HBox> </HBox>
</top> </top>
<center> <center>
<GridPane id="main" styleClass="main" BorderPane.alignment="CENTER"> <GridPane id="main" fx:id="mainGrid" styleClass="main" BorderPane.alignment="CENTER">
<columnConstraints> <columnConstraints>
<ColumnConstraints hgrow="SOMETIMES" minWidth="100.0" prefWidth="100.0" /> <ColumnConstraints hgrow="SOMETIMES" minWidth="100.0" prefWidth="100.0" />
</columnConstraints> </columnConstraints>
@ -46,68 +46,68 @@
<Insets /> <Insets />
</BorderPane.margin> </BorderPane.margin>
<children> <children>
<Label id="formTitle" styleClass="formTitle" text="LOGIN" /> <Label id="formTitle" fx:id="formTitle" styleClass="formTitle" text="LOGIN" />
<VBox id="formFields" prefHeight="200.0" prefWidth="100.0" GridPane.rowIndex="1"> <VBox id="formFields" fx:id="formFields" prefHeight="200.0" prefWidth="100.0" GridPane.rowIndex="1">
<children> <children>
<Label id="nameLabel" styleClass="formLabel" text="Name" /> <Label id="nameLabel" fx:id="nameLabel" styleClass="formLabel" text="Name" />
<TextField id="nameInput" styleClass="formInput" /> <TextField id="nameInput" fx:id="nameInput" styleClass="formInput" />
<Label id="surnameLabel" styleClass="formLabel" text="Surname" /> <Label id="surnameLabel" fx:id="surnameLabel" styleClass="formLabel" text="Surname" />
<TextField id="surnameInput" styleClass="formInput" /> <TextField id="surnameInput" fx:id="surnameInput" styleClass="formInput" />
<Label id="emailLabel" styleClass="formLabel" text="Email address" /> <Label id="emailLabel" fx:id="emailLabel" styleClass="formLabel" text="Email address" />
<TextField id="emailInput" styleClass="formInput" /> <TextField id="emailInput" fx:id="emailInput" styleClass="formInput" />
<Label id="phoneLabel" styleClass="formLabel" text="Phone number" /> <Label id="phoneLabel" fx:id="phoneLabel" styleClass="formLabel" text="Phone number" />
<TextField id="phoneInput" styleClass="formInput" /> <TextField id="phoneInput" fx:id="phoneInput" styleClass="formInput" />
<Label id="streetLabel" styleClass="formLabel" text="Street &amp; Nr." /> <Label id="streetLabel" fx:id="streetLabel" styleClass="formLabel" text="Street &amp; Nr." />
<TextField id="streetInput" styleClass="formInput" /> <TextField id="streetInput" fx:id="streetInput" styleClass="formInput" />
<Label id="cityLabel" styleClass="formLabel" text="City" /> <Label id="cityLabel" fx:id="cityLabel" styleClass="formLabel" text="City" />
<TextField id="cityInput" styleClass="formInput" /> <TextField id="cityInput" fx:id="cityInput" styleClass="formInput" />
<Label id="cityCodeLabel" styleClass="formLabel" text="City code" /> <Label id="cityCodeLabel" fx:id="cityCodeLabel" styleClass="formLabel" text="City code" />
<TextField id="cityCodeInput" styleClass="formInput" /> <TextField id="cityCodeInput" fx:id="cityCodeInput" styleClass="formInput" />
</children> </children>
</VBox> </VBox>
<Button id="createAccountButton" mnemonicParsing="false" styleClass="btnCreateAccount" text="Create account" GridPane.rowIndex="3" /> <Button id="createAccountButton" fx:id="createAccountButton" mnemonicParsing="false" styleClass="btnCreateAccount" text="Create account" GridPane.rowIndex="3" />
</children> </children>
</GridPane> </GridPane>
</center> </center>
<bottom> <bottom>
<VBox id="footer" prefHeight="188.0" prefWidth="1200.0" styleClass="footer" BorderPane.alignment="CENTER"> <VBox id="footer" fx:id="footer" prefHeight="188.0" prefWidth="1200.0" styleClass="footer" BorderPane.alignment="CENTER">
<children> <children>
<HBox id="footerLinks" alignment="TOP_CENTER" prefHeight="100.0" prefWidth="200.0"> <HBox id="footerLinks" fx:id="footerLinks" alignment="TOP_CENTER" prefHeight="100.0" prefWidth="200.0">
<children> <children>
<VBox id="quickLinks" alignment="TOP_LEFT" prefHeight="145.0" prefWidth="470.0" spacing="10.0"> <VBox id="quickLinks" fx:id="quickLinks" alignment="TOP_LEFT" prefHeight="145.0" prefWidth="470.0" spacing="10.0">
<children> <children>
<Label id="footerText" prefHeight="25.0" prefWidth="226.0" styleClass="footerHeading" text="Quick Links" /> <Label id="footerText" fx:id="footerText" prefHeight="25.0" prefWidth="226.0" styleClass="footerHeading" text="Quick Links" />
<Label id="footerHome" styleClass="footerText" text="Home" /> <Label id="footerHome" fx:id="footerHome" styleClass="footerText" text="Home" />
<Label id="footerAbout" styleClass="footerText" text="About Us" /> <Label id="footerAbout" fx:id="footerAbout" styleClass="footerText" text="About Us" />
<Label id="footerContact" styleClass="footerText" text="Contact" /> <Label id="footerContact" fx:id="footerContact" styleClass="footerText" text="Contact" />
</children> </children>
</VBox> </VBox>
<VBox id="contactUs" prefHeight="145.0" prefWidth="583.0" spacing="10.0"> <VBox id="contactUs" fx:id="contactUs" prefHeight="145.0" prefWidth="583.0" spacing="10.0">
<children> <children>
<Label id="footerHeading2" prefWidth="534.0" styleClass="footerHeading" text="Contact Us" /> <Label id="footerHeading2" fx:id="footerHeading2" prefWidth="534.0" styleClass="footerHeading" text="Contact Us" />
<Label id="footerEmail" styleClass="footerText" text="Email: info@example.com" /> <Label id="footerEmail" fx:id="footerEmail" styleClass="footerText" text="Email: info@example.com" />
<Label id="footerPhone" styleClass="footerText" text="Phone: +1 123 456 7890" /> <Label id="footerPhone" fx:id="footerPhone" styleClass="footerText" text="Phone: +1 123 456 7890" />
</children> </children>
</VBox> </VBox>
<VBox id="followUs" alignment="TOP_RIGHT" spacing="10.0"> <VBox id="followUs" fx:id="followUs" alignment="TOP_RIGHT" spacing="10.0">
<children> <children>
<Label id="footerHeading3" styleClass="footerHeading" text="Follow Us" /> <Label id="footerHeading3" fx:id="footerHeading3" styleClass="footerHeading" text="Follow Us" />
<Label id="footerFacebook" styleClass="footerLink" text="Facebook" /> <Label id="footerFacebook" fx:id="footerFacebook" styleClass="footerLink" text="Facebook" />
<Label id="footerBluesky" styleClass="footerLink" text="Bluesky" /> <Label id="footerBluesky" fx:id="footerBluesky" styleClass="footerLink" text="Bluesky" />
<Label id="footerInstagram" styleClass="footerLink" text="Instagram" /> <Label id="footerInstagram" fx:id="footerInstagram" styleClass="footerLink" text="Instagram" />
</children> </children>
</VBox> </VBox>
</children> </children>
</HBox> </HBox>
<VBox id="footerCopy" alignment="BOTTOM_CENTER" prefHeight="68.0" prefWidth="1170.0" spacing="10.0"> <VBox id="footerCopy" fx:id="footerCopy" alignment="BOTTOM_CENTER" prefHeight="68.0" prefWidth="1170.0" spacing="10.0">
<children> <children>
<Label id="footerCopyText" alignment="CENTER" contentDisplay="CENTER" styleClass="footerCopy" text="© 2024 My Website. All rights reserved." /> <Label id="footerCopyText" fx:id="footerCopyText" alignment="CENTER" contentDisplay="CENTER" styleClass="footerCopy" text="© 2024 My Website. All rights reserved." />
</children> </children>
</VBox> </VBox>
</children> </children>