Skip to content

Volunteer Logging Tool#9

Merged
AlphaGameDeveloper merged 9 commits intomasterfrom
feature/volunteer-logging-tool-demoready
Aug 6, 2025
Merged

Volunteer Logging Tool#9
AlphaGameDeveloper merged 9 commits intomasterfrom
feature/volunteer-logging-tool-demoready

Conversation

@AlphaGameDeveloper
Copy link
Member

This pull request introduces a new Volunteer Hour Tracking tool to the project, including a dedicated page, UI components, and supporting styles for logging, viewing, and managing volunteer hours. It also adds a temporary backend configuration for local testing and improves layout consistency. The main changes are grouped below:

Volunteer Hour Tracking Feature:

  • Added a new page hourTool.html with a tabbed interface for logging hours, registering volunteers, viewing logs, and displaying user stats. Each tab uses modular includes for forms and tables.
  • Created new UI components in _includes/volunteer-hours/ for logging hours (log-hours-form.html), registering volunteers (create-user-form.html), viewing logs (view-hours-table.html), user stats (user-stats.html), navigation tabs (tabs-nav.html), tab card layout (tab-card.html), and card footer (card-footer.html). [1] [2] [3] [4] [5] [6] [7]
  • Added comprehensive custom styles for the volunteer hours tool in _sass/_volunteer-hours.scss and imported them in assets/css/main.scss. These styles cover tab transitions, responsive layouts, modal dialogs, tables, cards, and mobile optimizations. [1] [2]

Backend Configuration and Environment Support:

  • Added a force_backend_url option to _config.yml for overriding the backend API URL, useful for local testing. Updated _layouts/default.html to support this override in frontend scripts. [1] [2]

Layout and Style Improvements:

  • Improved base layout styles in _sass/_base.scss to prevent horizontal scrolling and ensure full-width content.
  • Updated footer styles in _sass/_footer.scss for consistent width and box-sizing.

Other Configuration Updates:

  • Added necessary plugins to _config.yml for feed and sitemap support, ensuring proper site functionality.

Copilot AI review requested due to automatic review settings August 6, 2025 06:57
@AlphaGameDeveloper AlphaGameDeveloper merged commit b179071 into master Aug 6, 2025
1 check failed
@AlphaGameDeveloper AlphaGameDeveloper deleted the feature/volunteer-logging-tool-demoready branch August 6, 2025 06:58
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This pull request introduces a comprehensive Volunteer Hour Tracking tool to the project, featuring a modern tabbed interface for logging volunteer hours, registering new volunteers, viewing logged entries, and displaying volunteer statistics. The implementation includes both frontend components and backend integration capabilities.

  • New volunteer hours tracking page with tabbed navigation and responsive design
  • Comprehensive JavaScript API integration with error handling and request tracking
  • Custom SCSS styling with smooth animations and mobile optimization

Reviewed Changes

Copilot reviewed 15 out of 15 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
pages/hourTool.html Main page with tabbed interface for volunteer hours functionality
assets/js/volunteer-hours.js Core JavaScript logic for API interactions and UI management
_sass/_volunteer-hours.scss Custom styles for volunteer hours components and animations
assets/css/main.scss Imports volunteer hours styles
_layouts/default.html Adds backend URL override support for testing
_config.yml Configuration updates with commented testing override
_sass/_base.scss Base layout improvements to prevent horizontal scrolling
_sass/_footer.scss Footer width consistency improvements
_includes/volunteer-hours/* Modular UI components for forms, tables, and navigation

document.addEventListener('DOMContentLoaded', function() {
const backendURL = window.backendBaseURL + '/volunteer_hours';

wrappedwindow.backendBaseURL + "/healthcheck?src=VolunteerHoursTool&c=1")
Copy link

Copilot AI Aug 6, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There's a syntax error in the function call - 'wrappedFetch(' is missing. The line should be 'wrappedFetch(window.backendBaseURL + "/healthcheck?src=VolunteerHoursTool&c=1")'

Suggested change
wrappedwindow.backendBaseURL + "/healthcheck?src=VolunteerHoursTool&c=1")
wrappedFetch(window.backendBaseURL + "/healthcheck?src=VolunteerHoursTool&c=1")

Copilot uses AI. Check for mistakes.
# TODO: Add this at launch.
# tracking_id:

# force_backend_url: "http://192.168.0.167:8000/api" # Temporary for local testing FIXME: Remove this line
Copy link

Copilot AI Aug 6, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The commented configuration contains a hardcoded IP address for local testing. This should be removed before merging to production as it could expose internal network information.

Suggested change
# force_backend_url: "http://192.168.0.167:8000/api" # Temporary for local testing FIXME: Remove this line

Copilot uses AI. Check for mistakes.
}
}

// Footer styles (only show on computer horizontal screen)
Copy link

Copilot AI Aug 6, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[nitpick] The comment contains unclear grammar. Consider changing 'only show on computer horizontal screen' to 'only show on desktop/landscape screens' or similar for clarity.

Suggested change
// Footer styles (only show on computer horizontal screen)
// Footer styles (only show on desktop/landscape screens)

Copilot uses AI. Check for mistakes.
function showMessage(elementId, message) {
const element = document.getElementById(elementId);

if (!element) {
Copy link

Copilot AI Aug 6, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The function logs an error but continues execution when the element is not found. Consider adding a return statement after the console.error to prevent further execution when the element doesn't exist.

Copilot uses AI. Check for mistakes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants