CSCB07_venuebookingapp_Android

android-venue-booker

An Android, Java, and Firebase application that allows for the creation and booking of sports events and venues. Various CRUD functions are split among customers and administrators. Data storage and authentication is done through Google Firebase.

Table of contents

Application Overview

For testing out the application with some test data, you can log in as p@p.com with password pppppp to see customer screens, or admin@gmail.com with password admin123 to see admin screens.

Upon entering the application, users are greeted with a login screen. The application has two types of users: customers and administrators, both of which use one login screen. Authentication is done through the Firebase Authentication API. Once a user is authenticated, they are compared to entries in a Firebase Realtime DB to determine whether they are an admin or customer, and are authorized to access the rest of the application.

image

New customers can also sign up here and their data will automatically be created in both the Firebase Authentication API and Firebase Realtime DB.

image

Customers

Once logged in, customers are able to join Events under the Events screen. All events are added to the application by other customers under existing venues. Only upcoming events are displayed.

image

Joined events are then visible in the customer’s home screen.

image

The customer is able to see a list of available venues in the Venues menu. At any of the available venues, a customer is able to see a list of all existing events and create upcoming events. Each venue has a limited number of sports/activities that can be chosen for event creation. This list is determined upon venue creation.

image image image

In the account screen, users are also able to log out, destroying the current user object and hence the session, and also edit their full names.

image

Administrators

Once logged in, admins are able to view all events scheduled at the venues that they created and manage, and are able to filter this list by venue.

image

They can then edit the detais of any existing event.

image

They can also create new venues and provide the event/sport types that are available at this venue image

UML Diagrams

User UML Diagram

image

Customer UML Diagram

image

Admin UML Diagram

image

Venue UML Diagram

image

Event UML Diagram

image