Skip to content
This repository has been archived by the owner on May 16, 2023. It is now read-only.

Calendar Rewrite Plan #4

Open
80 of 81 tasks
ncovercash opened this issue Oct 28, 2021 · 6 comments
Open
80 of 81 tasks

Calendar Rewrite Plan #4

ncovercash opened this issue Oct 28, 2021 · 6 comments
Assignees

Comments

@ncovercash
Copy link
Member

ncovercash commented Oct 28, 2021

This is for both ui-calendar and mod-calendar; there is no built-in way to replicate this issue on both so it's going here.

These will probably be broken down into sub-issues so their progress can be tracked more easily and put onto the kanban

Requiring Investigation

Determining Specifications

New Backend

Backend Migration

Backend Tests

  • Ensure each API route works properly
  • Ensure that data conversion works correctly
  • Fully document all new APIs and schema model

Other

UI Rewrite

Admin Work

  • Create updated mockups based on meeting discussions and improved UX ideas (slideshow)
    • Separated service point and calendar listings separate on the first pane
    • Get approval (by SIGs/Cheryl?) before major development
  • Update user stories
  • Add typescript support for UI compilation #16
  • Potential additional feature ideas (talk to Steven):
    • Preview calendar

New Backend Infastructure

UI Features/Stories

  • As a user, I would like to easily view all currently assigned calendars and the current opening hours for each service point, with sorting of each column.
  • As a user, I would like to be able to create new calendars and apply them to multiple service points.
  • As a user, I would like to be able to create new calendars with opening hours that can span multiple days
  • As a user, I would like to be able to edit existing calendars
  • As a user, I would like to be able to add exceptions to calendars to override their openings for some certain day(s).
  • As a user, I would like to be able to add exceptions to calendars to close them when they would normally be open.
  • As a user, I would like to be able to view all of the information for an existing calendar, including hours, exceptions, and assignments.
  • As a user, I would like to be able to preview a monthly calendar of openings for a service point.
  • As a user, I would like to be able to delete existing calendars.
  • As a user, I would like to be able to duplicate an existing calendar to make a new one without manually copying the information over.
  • As a user, I would like to be able to view all calendars, not just those that are currently in effect, with sorting in each column.
  • As a user, I would like to be able to purge old calendars with a selectable date (3 months, 6 months, 1 year, 2 years, etc).
  • As a user, I would like to be able to purge calendars that are not assigned to any service points.
  • As a user, I would like to be able to create calendars that are 24/7 (never close).
  • As a user, I would like to be able to sort headings on MCL tables
  • As an administrator, I would like to be able to add and control permissions for viewing, editing, and deleting opening hour information.
  • As a user, I would like the preference of weekdays starting on anything but Sunday to be properly respected.
  • As a user, I would like to view the interface in any language of my choice.

UI Testing

  • Jest/RTL unit tests
  • Cypress?

Documentation

  • Add tutorials to https://docs.folio.com/ for:
    • Explaining new calendar/service point model
    • Creating a simple calendar
    • Creating complex calendars
    • Creating overnight, 24/5, and 24/7 calendars
    • Applying a calendar to service points
    • Adding exceptions
    • Editing/deleting calendars
    • Viewing previous/historic calendars
    • Importance of purging calendars
@ncovercash ncovercash self-assigned this Oct 28, 2021
@ncovercash
Copy link
Member Author

Information from today's meeting with Cheryl: https://github.com/ualibweb/ui-calendar/wiki/2021-10-21-Meeting-with-Cheryl

@ncovercash ncovercash pinned this issue Nov 2, 2021
@ualib-deploy ualib-deploy reopened this Dec 8, 2021
@ualib-deploy
Copy link

Boy, that translation of JSON to sql DB seems like it will be really difficult. We need to find out how standardized the JSON is (schema anywhere to look at?), and then find some code to take the component parts of the JSON file, and shove them in to the appropriate corresponding SQL DB fields / table cells. Right?

@ualib-deploy
Copy link

And then we will need to provide the same API output that is expected from any call. I am hoping that this will be relatively easy.

@ncovercash
Copy link
Member Author

It certainly does. I have not investigated that part too in-depth, however, there may be some special API endpoints we can hook to ensure this works properly.

@sjturner-ua
Copy link

Should we update these items?

@ncovercash
Copy link
Member Author

They're pretty up to date: currently working on the UI testing category

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants