Skip to content

Latest commit

 

History

History
77 lines (57 loc) · 1.83 KB

README.md

File metadata and controls

77 lines (57 loc) · 1.83 KB

Examschedule

Look up your test schedules without pain

Usage

Deployed on Netlify: https://exam.plushugh.com/

Building from source

Prerequisites

  • Node.js & npm >= 18
  • Deno >= 1.34.0

Delete header rows in excel

Spread merged cells using VBA script

  1. Alt + F11
  2. Insert > Module
  3. Add this script
Sub UnMergeSameCell()
Dim Rng As Range, xCell As Range
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Application.ScreenUpdating = False
Application.DisplayAlerts = False
For Each Rng In WorkRng
    If Rng.MergeCells Then
        With Rng.MergeArea
            .UnMerge
            .Formula = Rng.Formula
        End With
    End If
Next
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub
  1. Select all cells in sheet
  2. Use F5 to run the script (or run and choose all cells in VBA editor)
  3. Export csv as test.csv

Open csv and add column names

  1. Open csv in textedit
  2. add this to an extra top line:
examDate,examTime,grade,subject,classNum,minutes,location,numOfStudents,proctor1,proctor2,s1,s2,s3,s4,s5,s6,s7,s8,s9,s10,s11,s12,s13,s14,s15,s16,s17,s18,s19,s20,s21,s22,s23,s24,s25,s26,s27,s28,s29,s30,s31,s32,s33,s34,s35,s36,s37,s38,s39,s40,s41,s42,s43,s44,s45,s46,s47,s48,s49,s50,s51,s52,s53
  1. rename csv as source.csv and copy to this folder

Strip BOM from csv file

npm install
npm run strip-bom

this npm script generates a new file input.csv

Generate preindexed json

npm run generate-json

this npm script reads input.csv and generates a new file in public/ as testSessionsByStudent.json

Deploy webapp from public/ directory

Use netlify, since this app uses netlify forms for form collection.