TEAMMATES / teammates

This is the project website for the TEAMMATES feedback management tool for education
https://teammatesv4.appspot.com/
GNU General Public License v2.0
1.66k stars 3.28k forks source link

[#13144] Copy students from existing students table to new students table #13146

Open NeoHW opened 2 months ago

NeoHW commented 2 months ago

Fixes #13144

Outline of Solution

Motivation and Context

For instructors who want to batch edit many students, they would have to copy and paste the whole sheet from existing students manually. The slightly clunky cell selection in the sheet would make it sometimes hard to select all students, especially if there are many students. Therefore, I would suggest the addition of a button to auto-import existing students into the new students sheet below. This would be a QOL change and also helps when instructors want to mass-edit students.

Changes

Frontend:

  1. Added a copy students button on the enrol page and formatted it.

Backend:

  1. Created functionality to copy existing students' spreadsheets into new students' spreadsheet
    • Ran into the issue that Existing students' spreadsheet has to be expanded for logic to work
    • Another issue was the asynchronous nature of fetching data with API calls in toggleExistingStudentsPanel
  2. Modify toggleExistingStudentsPanel to take in an optional callback
    • This ensures that the data is only copied after it has been successfully loaded

Video Demo

Before:

https://github.com/user-attachments/assets/a5cbb0d2-bd77-4b21-b254-388f52fad915

After:

https://github.com/user-attachments/assets/e3b2a84c-10e3-4992-94c8-7a99269f92dc

github-actions[bot] commented 2 months ago

Hi @NeoHW, thank you for your interest in contributing to TEAMMATES! However, your PR does not appear to follow our contribution guidelines:

Please address the above before we proceed to review your PR.

nusoss-bot commented 2 months ago

Folks, This PR seems to be stalling (no activities for the past 7 days). :snail: :cry: Hope someone can get it to move forward again soon...