Giter Club home page Giter Club logo

swap's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

swap's Issues

feat: allow administrators to manage students

Expected Behavior

Administrators should have permissions to edit and delete students.

Current Behavior

Administrators does not have a way to edit and delete students. Current UI does not show any page where they can perform such operations.

Possible Solution

  • Implement full students resource routes and views for achieve these operations.

Context

Administrator tried to delete a specific student account.

feat: allow independent management accounts with courses

Expected Behavior

A single Swap instance should allow multiple management accounts and different academic "studies". "Studies" is a collection of courses under the same context. For instance, "Mestrado em Engenharia Informática" and "Mestrado Integrado em Ciências da Computação" have distinct courses.
Therefore, a management account would be allowed to create distinct fields of studies and have their own list of courses.

Current Behavior

Currently, a Swap instance only supports one administrator account and one set of courses.
That means that a new Swap instance is necessary if we want to apply to another context.

Possible Solution

It is possible to implement this by adding a new concept of "Studies". Within a "Studies" instance, there are multiple instances of Course concept that we already support. A management account should be able to create/modify/delete Studies and consequently their Courses.

feat: allow pending requests for shift exchanges

Expected Behavior

Students should be allowed to register an intention of exchange from their current shift they're are enrolled in to a set of possible destination shifts. These intentions, as soon as a match occurs, are resolved and students move their enrollments to a new shift.

This should work not only for direct exchanges but also for cyclic exchanges. For instance, let's consider three students: A, B and C. A is enrolled in S1 and wants to move to S2. B is enrolled in S2 and wants to move to S3. C is enrolled in S3 and wants do move to S1. Therefore, we have something like this:

Graph:
     A
   /   \
  C --- B

Directions:
 A -> B -> C -> A

This is an example of what could happen and it should be resolved to meet these intentions.

Current Behavior

Currently, the only way of a student A to exchange from a shift S1 to a new shift S2 is by meeting a student B that is enrolled on shift S2 that wants to move to the shift S1. It is very limited, since such student should be found outside the platform.

Possible Solution

Integrate with the current existing module, developed by students of MEI, that accepts the current state of enrollments and exchange intentions and outputs the current possible enrollments that should be updated to meet such intentions.

More details will be available for the developer of this issue.

Can't change name associated with account

Expected Behavior

When a student changes their name on the university records, the name associated with their swap account should also automatically change, or there should be a way to manually change it.

Current Behavior

It seems like there's no way of changing a name associated with an account, either manually or automatically.

Possible Solution

If syncing the swap account with the university records to check for any name changes is not possible or very difficult, it should at least be possible to manually change the name of an account on the website.

Context

This issue doesn't affect most students, but it affects students who legally changed their name, students who got married and changed their last name, and especially transgender students who changed their name and gender on their records, and don't want to have to use their old name when using swap.

Unable to login due to e-mails case sensitivity

Expected Behavior

Users should be able to login with their e-mails even when case mismatch the original one.

Current Behavior

Considering that the User A is registered with the e-mail "[email protected]".
When User A tries to login with "[email protected]", an invalid authentication error is returned.

Possible Solution

Convert e-mails to a consistent case for further comparison.

Steps to Reproduce (for bugs)

  1. Register a new user with e-mail '[email protected]'
  2. Login with '[email protected]'
  3. See the Invalid credentials flash message

Context

Users are unable to login with e-mails they used to register in Swap.

Your Environment

Chrome 61.0.3163.100
MacOS 10.12.6

feat: assign two or more shifts of different kinds

This feature consists of assigning two shifts of different kinds to a student.

That is, consider the following categories of shifts:
T and TP.

A student may enroll T1 and TP2 shifts of the same course.

feat: manager should be aware of new enrollments after last export

Expected Behavior

The admin dashboard should have a section warning the admin about new, unprocessed registrations, allowing him to attend to those cases.

Current Behavior

Currently the admin has no way to know if any new registrations happened in the platform.

Possible Solution

My suggestion would be a visible warning in the main screen of the admin dashboard, perhaps with a section in the dashboard that allowed exporting and importing the necessary files with the required information to fix the issue.

Context

With this feature, a simpler and direct way of dealing with new registrations would be available, preventing misunderstandings and delays in the whole process for which the platform was made. Also, this follows the line of thought of #2, since after removing the overlap restriction, the admin will be needing to constantly check for new registrations and treat them, which right now has to be done by waiting for students to contact him about the situation.

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.