Git Product home page Git Product logo

edu-hospice's People

Contributors

adrian-moldovan avatar ancutadaniel avatar daniel-3ss avatar dannerghes avatar fnitu avatar gb96 avatar nicogit-code avatar radums avatar razvantudorache avatar tudorpetrutoma avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

edu-hospice's Issues

HTML e-mails

Decide on a template for HTML e-mails and apply it:

  1. Header
  2. Footer
  3. Content

Integrate user details API

A request must be done to: /api/users/currentUser

The response details should be shown in: user/dashboard

TEST user details button should be removed.

The details about the user should be removed from sessionStorage. Only the token needs to stored in session token.

Create loading mask

Create a loading mask / progress bar for http requests. Loading mask prevents user to execute the same action multiple times while the request is in pending.

Style top toolbar + admin tabs

To decide with design if additional styling is needed for the top toolbar (is the home link needed?) and admin user tabs.

Create general component for course card

A card component with all the needed input params should be created instead of using directly the mat-card component.

The styles related to mat-card from src/styles.scss should be moved to the component scss file

Handle deep links from e-mails

If you try to access a secured link and you are not logged in, it should redirect you to the login page.

After entering the credentials, you should be redirected to the page requested initially.

If you are already logged in, you should access the requested page directly.

Failed login

Receive generic error from server (user or password are not recognized).
Display error using form errors mechanism.

Admin course list

Implementation of ag-grid with:
pagination (infinite scroll)
search
sorting

Admin dashboard

Create new page with placeholders for needed shortcuts (cards - title + icon):
Courses
Users

Navigate to specific user tab from admin dashboard

Admin must be able to directly navigate using the shortcuts from dashboard to a specific user tab:

  1. pending registrations
  2. pending payment
  3. all users

Most likely, an URL param must be sent and the tab component to take it into account.

Add pdf viewer for PDF content

To investigate what pdf viewer can be added to our application to allow for:

  1. page forward and back navigation
  2. page numbers
  3. insertion on the last page of a "finalize content"

Integrate logout API

Integrate logout API when clicking the logout button.

A request must be done to: /api/auth/logout

The session storage containing the token should be cleared.

Recover password - enter e-mail

Enter e-mail page

Verify e-mail is valid, then show the message in an Angular material dialog:
If the user exists in our database, an e-mail link will be sent to the provided address.

Create and use color variables

In order to reuse the defined colors, they should be extracted to a common location and reused in multiple places.

To be confirmed with UX.

Recover password - Change password

Provide two inputs, check if passwords match.

If match, show message with Angular Material dialog: "Password changed successfully", then redirect to login page.

Freeze dependencies in package.json

In order to have a consistent build, we should freeze all the dependencies in package.json.

Angular/Angular material should be updated to latest versions.

Integration of user details on dashboard

Integration of a new URL that will contain more user details + statistics.

To be decided with design what other information needs to be displayed.

Update translations.

Admin course create

A new page containing the necessary course details:

  1. name
  2. short description
  3. description
  4. author(s): text
  5. image: text: URL (upload to be later added)
  6. price: number
  7. currency (EUR/RON) - dropdown (enum)
  8. role (medical personnel/multi-disciplinary personnel) - dropdown (enum)
  9. course type (always on/with live sessions) - dropdown (enum)
  10. course start date - calendar (date)
  11. course end date - calendar (date)
  12. status: unpublished/published/closed- dropdown (enum)
  13. hours: number (in hours)
  14. access days: number (in days)
  15. credits: number

Prerequisite: A "Create course" button(on a toolbar) in the course list page: https://edu-hospice.herokuapp.com/#/admin/course-list

The toolbar is created in #58

Related issue: https://github.com/danutchindris/edu-hospice-api/issues/125

Admin quiz create question

In the "New quiz page" we should have a section that allow the creation of multiple questions:
Fields:

  1. question - input / name in model
  2. question type: single choice (radio/select), multiple choice(checkbox group) - 3 types, enum: radio/select/checkbox
  3. Define possible options (list of option names + Boolean attribute to mark the correct ones):
[
 {
  name: "question text"
  type: "radio/select/checkboxes"
  options: 
   [ { option: "first option", valid: true},  { option: "second option", valid: false } ]
 }
]

The order of the questions and question options will be given by the order of the array.

A validation (BE/FE) should be done when selecting the question type to have at least one option.

Drag and drop - to be handled in a separate ticket

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.