-
Notifications
You must be signed in to change notification settings - Fork 0
CRC Cards (Part 3)
Sunday edited this page Mar 8, 2024
·
6 revisions
Responsibilities | Collaborators |
---|---|
Display UI for adding a new event to the database | EventController |
Handle user input for event details | UserController |
Validate user input and display appropriate error messages | NavController |
Communicate with EventController to add the new event | ImageController |
Retrieve current user's information to set as organizer | Uri |
Handle navigation between fragments using NavController | Intent |
Open device's gallery to allow user to pick an image | Toast |
Upload selected image to Firebase Storage | |
Handle success and failure callbacks for image upload | |
Set event's poster URI to the uploaded image URI | |
Implement onClick listeners for buttons |
Responsibilities | Collaborators |
---|---|
Initialize a user with administrative permissions | User |
Responsibilities | Collaborators |
---|---|
Initialize an attendee instance for a user joining an event | User |
Get and set the user associated with the attendee | Event |
Get and set the event associated with the attendee | |
Get and set the check-in status of the attendee | |
Get and set the location of the attendee's check-in | |
Get and set the ID of the attendee |
Responsibilities | Collaborators |
---|---|
Define a callback method for successful addition of an attendee | Attendee |
Define a callback method for handling errors during attendee addition | Exception |
Responsibilities | Collaborators |
---|---|
Manage operations related to attendee management in a Firestore database | FirebaseFirestore |
Get the instance of the Firestore database | Attendee |
Add a new attendee to the Firestore database |
Responsibilities | Collaborators |
---|---|
Define a callback method for successful fetching of an attendee | Attendee |
Define a callback method for handling errors during attendee fetching | Exception |
Responsibilities | Collaborators |
---|---|
Define a callback method for successful attendee update | |
Define a callback method for handling errors during attendee update | Exception |
Responsibilities | Collaborators |
---|---|
Extend CaptureActivity class for barcode scanning. |
CaptureActivity |
Responsibilities | Collaborators |
---|---|
Display UI for editing existing events in the database | EventController |
Prefill forms with existing event data | Glide |
Handle user input for editing event details | Activity, Intent, Uri |
Validate user input and display appropriate error messages | Toast |
Communicate with EventController to edit the event | NavController |
Get the instance of the current user | UserController |
Fetch event details by its ID | ImageController |
Upload selected image to Firebase Storage | FirebaseFirestore |
Handle success and failure callbacks for image upload | |
Implement onClick listeners for buttons |
Responsibilities | Collaborators |
---|---|
Display UI for editing and updating user profile information | ImageController, UserController, NavController, UserFetchCallback, UserUpdateCallback |
Handle user input for profile details | ActivityResultLauncher, Intent, Uri |
Open device's gallery to allow user to pick a new profile image | Toast |
Upload selected image to Firebase Storage and update user's profile image URL | ImageController |
Fetch current user details from Firestore/Internal storage and display them in UI components | UserController, UserFetchCallback |
Save updated user details to Firestore and update local user serialization | User, UserController, UserUpdateCallback |
Implement onClick listeners for buttons | NavController |
Responsibilities | Collaborators |
---|---|
Store event data including name, description, etc. | User |
Manage event organizer | Uri |
Manage event participants | Attendee |
Manage event location | Bitmap |
Manage maximum number of attendees | |
Manage event sign-up address | |
Manage event information address | |
Manage event QR code for event | |
Manage event QR code for attendee check-in | |
Manage event poster URI |
Responsibilities | Collaborators |
---|---|
Manage operations related to events in Firestore | Event, User, Attendee |
Add a new event to the Firestore database | FirebaseFirestore |
Get the Firestore database instance for events | FirebaseStorage |
Get events organized by a specific user | UserController |
Get an event by its ID | EventFetchCallback |
Edit an existing event in the database | View |
Fetch the organizer of an event by reference | DocumentReference, UserFetchCallback |
Responsibilities | Collaborators |
---|---|
Display details of an event | Event, User, UserController , Glide |
Navigate back to the events page | NavController |
Fetch event details from Firestore | EventController |
Fetch organizer details from Firestore | FirebaseFirestore |
Implement editing of event details | UserFetchCallback |
Responsibilities | Collaborators |
---|---|
Handle successful retrieval of event list | ArrayList, Event |
Handle errors occurring during retrieval process | Exception |
Responsibilities | Collaborators |
---|---|
Handle successful retrieval of an event | Event |
Handle errors occurring during retrieval process | Exception |
Responsibilities | Collaborators |
---|---|
Display list of events | ListView, ArrayAdapter |
Navigate to event details page when an event is selected | NavHostFragment |
Retrieve events from Firestore database | EventController |
Handle successful retrieval of events | ArrayList, EventFetchByUserCallback |
Handle errors occurring during retrieval process | Exception |
Navigate to add event page when addEventButton is clicked | NavController |
Responsibilities | Collaborators |
---|---|
Upload an image file to Firebase Storage | FirebaseStorage |
Fetch the download URL of an image from Firebase Storage | StorageReference |
Handle successful image upload operations | UploadTask |
Handle failed image upload operations | |
Handle successful image retrieval operations | |
Handle failed image retrieval operations |
Responsibilities | Collaborators |
---|---|
Set up navigation for the main activity | NavController |
Initialize the navigation controller | NavHostFragment |
Load the navigation host fragment layout | AppCompatActivity |
Create the main activity | SplashScreen |
Handling displaying the splash screen at start up |
Responsibilities | Collaborators |
---|---|
Display user profile information | FirebaseFirestore, Glide |
Navigate to other parts of the application | NavController, NavHostFragment |
Fetch user details from Firebase/Internal storage | UserController |
Initialize view components and set up button listeners | ImageView, FloatingActionButton, TextView |
Responsibilities | Collaborators |
---|---|
Generate QR code from event ID | QRCodeWriter, BitMatrix |
Convert Bitmap to byte array for storage or transmission | ByteArrayOutputStream, Bitmap |
Responsibilities | Collaborators |
---|---|
Handle QR code scanning | ScanOptions |
Add events using QR codes or perform check-ins |
Responsibilities | Collaborators |
---|---|
Control user role selection screen | FirebaseFirestore, NavController, Toast |
Add user to Firestore based on selected role | UserController, User, Administrator, UserAddCallback, NavHostFragment |
Responsibilities | Collaborators |
---|---|
Control user sign up screen | FirebaseFirestore, Toast |
Check if username is already taken | UserController, UsernameCheckCallback |
Navigate to the next action if username is not taken | NavController, NavHostFragment |
Responsibilities | Collaborators |
---|---|
Store user information including username, first name, last name, and profile photo URL | |
Determine user's administrator status | |
Generate a default profile photo URL based on the username using Gravatar's service |
Responsibilities | Collaborators |
---|---|
Handle successful user add operation | |
Handle error during user add operation |
Responsibilities | Collaborators |
---|---|
Manage user data interactions with Firestore database | User |
Add a new user to the Firestore database and store a local copy | FileOutputStream, DocumentReference |
Update an existing user's details in the Firestore database and update the local copy | ObjectOutputStream, Map |
Fetch a user's details from the Firestore database or retrieve a local copy if not found | Context, FileInputStream, DocumentSnapshot |
Check if a username already exists in the Firestore database | FirebaseFirestore, DocumentReference |
Retrieve the stored username from internal storage | ObjectInputStream, Context |
Responsibilities | Collaborators |
---|---|
Handle success callback for user fetch operations | User |
Handle error callback for user fetch operations | Exception |
Responsibilities | Collaborators |
---|---|
Handle username taken status callback | boolean |
Handle error callback for username check operations | Exception |
Responsibilities | Collaborators |
---|---|
Handle success callback for user updates | Exception |
Handle error callback for user updates |