-
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 |