Code Monkey home page Code Monkey logo

tutorbase's People

Contributors

0notapplicable0 avatar adamc321 avatar choi0612 avatar chris7faxon avatar cjreed121 avatar dangitjason avatar dependabot[bot] avatar dfamilia33 avatar faxonchris avatar jakezam avatar jweiss0 avatar kevtlw avatar oddballjen avatar privatepanda avatar tamckinney avatar team95account01 avatar unitedbagels avatar varunnair22 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

tutorbase's Issues

Fix how the calendar resizes

We want the calendar to resize correctly, for browser and mobile. This take some CSS magic most likely.

  • While on mobile we want only a daily view NOT WEEKLY
  • On browser we want the weekly view

Empty space at the bottom:
emptySpace

Poor mobile formatting:
mobile

Gather tutor schedules and show on calendar

Use the created backend express routes (see below image), format data into the ToastUI format and then add the data to the calSchedules array. The data should then auto display.

routeImage

You can put the get code in here (or elsewhere if you want, make it look nice). See below image.

getCode

Implement routes for accept/reject marks

Per title ... Inside the meetings tab, the accept and reject marks needs to be implemented. This would either move the appointment to an "Upcoming" or "Denied" color.

image

Schedule Availability in Tutor Operations

When a tutor goes to edit or see their availability, I'm not sure exactly what format that should be. I know it was proposed of just doing text for those but a more of a graphical UI like the one used for scheduling the meeting could look nice there.

Switch to Server Side Rendering

Server side rendering is necessary to log into CAS. Rather than go form client server -> node server - > CAS we can simplify to node server -> CAS to remove any CORS issues that have been pooping up.

Sidebar tabs move user to home page

None of the sidebar tabs move the user the appropriate page.

For example, the settings tab will not move the user to the settings page BUT instead the home page.

Enable each button to move the user to the appropriate page.

Implement Redux on Upcoming Meetings tab

Create an upcoming meetings state that will hold all meeting data for that user. This will be used in the upcoming meetings tab to generate meeting cards to display.

Add a UI Library

Currently default HTML button and select are used within the scheduler component:

image

Adding a UI library would make this look better.

Block off tutor times based on their selected available times

Given something like [ [(1015, 1215), (0014, 0120) ], [], [], [], [], [], [] ] via an express route block off times on the schedule with the name "Tutor Unavailable"

It will be an array of 7 arrays and each inner array contains tuples of the times the tutor is available for that day in four digit 24 hour time.

Starts on Sunday and goes to Saturday.

Example:
Sunday Monday Tuesday Wednesday....
[ [(1015, 1215), (0014, 0120)], [(1200, 1300)], [ ], [ ], [], [], [] ]

The tutor is available on Sunday from 10:15AM to 12:15PM and 12:14AM to 1:20AM. On Monday they are around from 12:00PM to 1:00PM and they are unavailable the rest of the week.

Missing images, extra tabs, and unfinished text on landing page

Some fixes are needed to make the landing page more presentable:

  • If there's no images to place in the spots with missing images, just remove them or comment them out for now
  • There's also some extra tabs and/or they don't match up properly with the sections of the landing page that are currently there
  • When a new tab is selected, the "Home" tab still stays highlighted

And maybe some more small things that I haven't noticed.
Low priority issue but definitely a good first issue to work on for newer team members.

Upcoming Meetings (Client & Tutor)

As a Client/Tutor, I would like to see my upcoming and unconfirmed meetings.

Requirements/Acceptance Criteria

  • Client is able to see upcoming meetings
  • Client is able to see unconfirmed meetings

Build a Card component to represent Previous/Upcoming/Completed meetings

Build a component that will display information for a particular meeting, categorized by color as:

  • Pending(Orange)
  • Upcoming(Blue)
  • Completed(Green)
  • Denied(Red)

The card will expand on click to reveal more information

The Pending card will show a check/x mark to either accept or deny the meeting

Time scheduling allows for multiple selections

Currently the time scheduling allows a user to make multiple selection blocks. A future feature could be to support this functionality, but for now it should be disabled. If a user would like to schedule multiple sessions with the same tutor, for now the user will have to manually go back through the scheduling process and book another appointment.

Finishing the Schedule Meeting page

Here’s kinda the outline of things I saw that we most likely need to do to get the page functioning:

  • Modify the Calendar scheduling to make the scheduling step (Step 4) a little more user-friendly (Nick)
    * Possibly fix the calendar to only show either monthly or weekly
  • In order to keep track of what user we are submitting the meeting for we should set up a global redux state holding some sort of User ID or separation
    * This will go hand and hand with the authentication that Sunny is working on
  • We may have to modify the route for submitting the meeting to make it work
    * It’s unlikely that we’ll have to modify any schema but it is possibly

Expanded vs Normal card Pixel

Compared to the normal card, the elements in the expanded card starting from the location are shifted left by a couple pixles. Not sure why but this will use some css fixes.

image
image

Implement Upcoming Meetings express routes

Build the express routes that will return all meeting data for a specific user to be used to display by the soon to be implemented Upcoming Meetings tab in the frontend.

Create "development" mode to bypass SSO

Requirement:

  • After clicking login from the home page, instead of moving the user to the SSO, move the user straight to the home page.
  • Make sure user still has correct credentials to access all available routes.

Main Login Screen

Main Login Screen - Elements are overlapping over each other.

  1. Arrange elements so they do not over lap.
    or
  2. Create own design.

image

Implement data visualization feature

Per title.

Requirements:

  • Tutor must be able to see total revenue
  • Tutor must be able to see total hours tutored
  • Tutor must be able to see tutoring frequency
  • Tutor must be able to subjugate by class and subjects

Fix schedule box

When trying to create a new schedule the box get bugged not, I'm not sure why. There is some strange looking boxes and the calendar boxes don't work.

Looks like this:
wack

Should look like this:
lookLikeThis

Invalid appointments property

image

When rendering /home/meetings from the tutor-operations branch, the page is unable to be loaded because of an invalid property. I think this has to something to do w/ redux.

Refactor Application To Include Redux!

We want to refactor the entire application to include redux, this is a big task but we should be able to make this work!

More issues may be posted but this issue thread will be the main location to talk about the refactor. Documentation is linked above.

Upload newly scheduled meeting to the database

When the user creates a new schedule with the TOAST UI Schedule then upload that schedule to the database.

Probably you will use this function:
image

Ensure that if the user removes or edits the schedule this is also reflected in the database.

Move dev mode capability to .env file

Currently, the ability to enable "dev mode" which allows you to bypass the CAS system lives inside here.

Move this capability to an .env file such that a developer is able to turn on/off through this file.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.