Skip to content

Refactor upcomingRoom-isTime-checker and upcomingRoom-Message-Notification functions #130

@hmshuv

Description

@hmshuv

title: "Refactor Cloud Functions: Improve Date Parsing and Remove Debug Logging"
labels: ["enhancement", "code-quality", "refactoring"]

Problem Description

I've noticed that some of the cloud functions, specifically upcomingRoom-isTime-checker and upcomingRoom-Message-Notification, contain fragile code patterns and excessive debug logging.

Issues Identified

  1. Fragile Date Parsing: upcomingRoom-isTime-checker manually splits date strings (e.g., splitting by 'T' and ':') to calculate time differences. This is error-prone and harder to read than using standard Date objects.

  2. Excessive Logging: Both functions contain many debug logs like log("here"), log("here also"), which clutter the output and are not useful for production monitoring.

  3. Code Quality: Usage of var instead of const/let, and lack of safety checks for array operations.

Proposed Solution

I propose refactoring these functions to:

  • Use new Date() for robust and readable date parsing
  • Remove all "here"-style debug logs and keep only meaningful logs
  • Modernize variable declarations to const and let
  • Add safety checks (e.g., ensuring registrationTokens exists before iterating) and token deduplication for notifications

Impact

This will make the codebase more robust, easier to maintain, and professional. It also reduces the risk of date-parsing bugs and improves log clarity.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions