VRMS icon indicating copy to clipboard operation
VRMS copied to clipboard

Bug: Users Cannot Check In

Open JackHaeg opened this issue 1 year ago • 19 comments

Overview

Currently, users cannot check in to VRMS when visiting www.vrms.io. There is no check in button available for a user to select and check in to VRMS.

Desired behavior for the meeting check-in is to allow people to check in to a meeting 30 min before starts and 30 min after the meeting ends

Action Items

  • [x] Check to see what the current behavior is. Look into events created
  • [x] Move the following issue from Icebox to In Progress and self assign. Use it to check if Guides team check in is working properly and communicate with stakeholder after fix: https://github.com/hackforla/VRMS/issues/1530

Resources/Instructions

See attached screenshot of existing VRMS landing page.

Screenshot from www.vrms.io

Screenshot 2023-07-03 at 10 18 29 PM

Screenshot from dev.vrms.io

Screenshot 2023-07-03 at 10 28 24 PM

JackHaeg avatar Jul 04 '23 03:07 JackHaeg

Bonnie tried to have people check in during onboarding today and there were no events that were "Check-in ready" that showed up

jbubar avatar Jul 11 '23 01:07 jbubar

Trillium and I are doing a bug fix on sat july 15 at 2:15

jbubar avatar Jul 11 '23 05:07 jbubar

Dev lead steps for proceeding

  • Create an outline on how the events are opened and closed.
  • Write unit test for each function to confirm they are operating properly.

vaidyarohan avatar Aug 22 '23 02:08 vaidyarohan

@Spiteless Please provide update

  1. Progress: "What is the current status of your project? What have you completed and what is left to do?"
  2. Blockers: "Difficulties or errors encountered."
  3. Availability: "How much time will you have this week to work on this issue?"
  4. ETA: "When do you expect this issue to be completed?"
  5. Pictures or links* (if necessary): "Add any pictures or links that will help illustrate what you are working on."
  • remember to add links to the top of the issue if they are going to be needed again.

JackHaeg avatar Oct 12 '23 23:10 JackHaeg

@Spiteless @JackHaeg this issue needs an update every week (as do other issues). But this one will get more scrutiny because the stakeholder (guides team) is looking at it. Please update us with the following

  1. Progress: "What is the current status of your project? What have you completed and what is left to do?"
  2. Blockers: "Difficulties or errors encountered."
  3. Availability: "How much time will you have this week to work on this issue?"
  4. ETA: "When do you expect this issue to be completed?"
  5. Pictures or links* (if necessary): "Add any pictures or links that will help illustrate what you are working on."
  • remember to add links to the top of the issue if they are going to be needed again.

bonniewolfe avatar Oct 30 '23 20:10 bonniewolfe

Progress

  • In active exploration of how recurring events are created, opened, closed within the system
  • In progress on refactor of functions within createRecurringEvents.js to make them testable

Blockers

  • Original code feels difficult to understand, needs to be refactored to allow for proper testing.
  • Also don't know how cron jobs work for this project, I am concerned that refactoring things will result in the cron job breaking somehow

Availability

  • 6 hours

ETA

  • Draft PR by next week, resolved by following week

Pictures or links

  • None at this time

trillium avatar Oct 31 '23 00:10 trillium

  • See duplicate issue for additional info on past work related to this bug: https://github.com/hackforla/VRMS/issues/1376

JackHaeg avatar Oct 31 '23 02:10 JackHaeg

Issue has been re-opened after QA test on dev website. Currently, the event times listed under “Recurring Events” do not appear to match up to the “Manually Edit Events Checkin” times.

See screenshot below (note that the time for GMX Thursday 2pm should be 2-3:30pm, however under "Manual Edit Events Checkin", the times listed are 1-2pm): image (1)

JackHaeg avatar Nov 13 '23 21:11 JackHaeg

Clarifications from @bonniewolfe

It's okay to assume all events are on Los Angeles timezone Right now events are appearing off by one hour due to Daylight Savings Time, will be fixed in a later bug fix

trillium avatar Nov 21 '23 03:11 trillium

@Spiteless is still working on it, is confident that he can solve it without much more work. - discussed during all team meeting 11/27/23

jbubar avatar Nov 28 '23 03:11 jbubar

Re-opening issue due to the fact that event check-ins are still displaying at the incorrect times. Recommend investigating database entries for events and exploring next steps.

  • Notably, today (Monday Feb 12, 2024) a number of events are listed as available for check in that are scheduled to take place on Tuesday. Further, a number of events scheduled for today (Monday) have not been displayed correctly (see screenshot for more info)
Check In Screenshot Monday 2/12/2024
Check in Bug
Screenshot from database for Home Unite US ALL
B74C3E9C-235E-4AE0-86DB-5C12243F6BB4

Note that Josh updated the database for Home Unite US ALL

JackHaeg avatar Feb 13 '24 04:02 JackHaeg

image

Checkin displays wrong time

trillium avatar Feb 16 '24 01:02 trillium

Also, note that Check In time discrepancies have been observed to be larger than a 1 hour discrepancy as shown in the comment above. In certain cases, the checkin times are shown as more than 1 day early.

For example, the "Onboarding" project shows check in times 25 hours early. (expected = Monday at 6-9pm PST | Actual = Sunday 5-8pm PST)

Onboarding Project Screenshot - 2024-02-20 5:38pm PST
Screenshot 2024-02-20 at 5 38 58 PM

JackHaeg avatar Feb 21 '24 01:02 JackHaeg

Sorry this is taking so long. I think I finally found the true culprit of the issue:

// client/src/components/manageProjects/utilities/findNextDayOccuranceOfDay.js
export const findNextOccuranceOfDay = (dayOfTheWeek) => {
/***  
 This takes the number of the day of the week - with Sunday
 being day 0 - and returns a Data object with the next 
 occurance of that day
 ***/

 let day = parseInt(dayOfTheWeek);
 const date = new Date(); // < --------------- This line
 date.setDate(date.getDate() + ((7 - date.getDay()) % 7 + day) % 7);

 return date;
}

Stemming from

// client/src/components/manageProjects/editMeetingTimes.js
      if (values.day) {
        const date = findNextOccuranceOfDay(values.day);
        const dateGMT = new Date(date).toISOString();

        theUpdatedEvent = {
          ...theUpdatedEvent,
          date: dateGMT,
        };
      }

What's supposed to happen:

  • Form checks to see if the .day value has changed
  • Triggers a day update
  • Day updates to next occurance of that week day (numbers 0 - 6)
  • Recurring event is built from updated .date info

What's happening:

  • Form checks to see if the .day value has changed
  • Triggers a day update
  • Util function creates a new date from current time
  • Day updates to next occurance of that week day (numbers 0 - 6)
  • Date is never filled in with previous event date information, overwrites all previous info
  • Recurring event is built from updated .date info

How to fix it

We need to bring in the functions that are used to make createMeetingTimes to resolve this frontend issue

trillium avatar Feb 25 '24 19:02 trillium

As of 2024-04-08:

  • Onboarding Event was not generated on time, was only generated as of 7pm Pacific time (At the time of the event). Also, the event was not automatically available for check in to the users, had to be enabled manually.
  • All events have been manually "updated"

- Current Issues:

  • Daylight savings time causing events to be out of schedule by an hour (need backend fix to generate correct event times from previous timezone data).
  • Inconsistent auto-enabled check ins for recurring events (sometimes enabled for check in, sometimes not).
  • Event not generating on time

JackHaeg avatar Apr 09 '24 02:04 JackHaeg

@Spiteless Please add next steps re: fiddling with service workers / writing & running tests

JackHaeg avatar May 07 '24 02:05 JackHaeg

@Spiteless Please add next steps re: fiddling with service workers / writing & running tests

JackHaeg avatar Jun 04 '24 01:06 JackHaeg