-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathindex.html
127 lines (119 loc) · 10.9 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="./static/styles.css">
<script src="./static/index.js"></script>
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/css/bootstrap.min.css" rel="stylesheet"
integrity="sha384-T3c6CoIi6uLrA9TneNEoa7RxnatzjcDSCmG1MXxSR1GAsXEV/Dwwykc2MPK8M2HN" crossorigin="anonymous">
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/js/bootstrap.bundle.min.js"
integrity="sha384-C6RzsynM9kWDrMNeT87bh95OGNyZPhcTNXj1NW7RuBCsyN/o0jlpcV8Qyq46cDfL"
crossorigin="anonymous"></script>
<script src="https://cdn.tailwindcss.com"></script>
<link rel="icon" type="image/png" href="./static/icon.png">
<title>Course Planner</title>
</head>
<!-- <body class="bg-[#a2e6f1]"> -->
<body class="bg-slate-200">
<div class="mr-5">
<div>
<div class="flex">
<div class="flex flex-col p-3 bg-[#003049] border border-black shadow-lg mr-4 w-[20%] h-[100vh]">
<div class="mx-auto w-100 d-flex flex-column">
<h3
class="drop-shadow-[0_1.2px_1.2px_rgba(0,0,0,0.9)] font-mono text-2xl font-semibold text-white text-center underline underline-offset-4">
Trajectory Planner</h3>
<br>
<button onclick="showAlert((message=`1. Drag a course to a relevant semester to add it. You'll see the credits update for that semester or get an alert if it is not offered in that semester/pre-requisites are not satisfied for that course/course cap is exceeded. To remove a course, drop it back to the container where it was displayed initially. \n2. Click on Elective or Entrepreneurship from a course block to edit the name of the course. \n3. Trajectory recommendation: Courses are placed as advised by the departmental handbooks. If courses have already been placed among the semesters then they will all be cleared before a trajectory is recommended. \n4. You can drag-drop courses as you wish after clicking on the recommend trajectory button as well. \n5. You can click on 'View Prerequisites' to check the course pre-requisites, other details are available in the course block. \n6. (FC) means Foundation Course and (e) means Elective. \n\nAlso note the following: \n1. For Economics & Finance at least 4 of the 8 electives should be chosen from finance. \n2. Lookout for any updates on semesters for the courses - Cryptography, Advanced Microeconomics, Advanced Macroeconomics, Advanced Econometrics. Their semesters are not fixed yet. \n3. Electives can be dropped into any box; this may not be the case in reality. Please make sure you are aware of elective pre-requisites, and plan out your trajectories accordingly. \n4. If you face any unexpected errors in the display kindly zoom out(cmd +), the website is currently not dimension responsive. \n5. All trajectory recommendations and course lists are as per the 4 year without research trajectories. For research trajectories kindly consult your department and representatives. \n6. All listed courses are as per the 2023 NEP handbooks only, for future use refer to the updated handbooks and AMS. \n7. Non-open credits means academic credits that are not directed to open credits. Refer to the relevant department handbook for the same. \n8. And, please only use this for visualisation to help you plan out your trajectory, make sure you validate the same using the handbook and reach out to your department reps in case of any confusion!
`),(title=`Usage Instructions:`))"
class="font-mono mt-2 text-sm mb-4 px-1 py-2 bg-emerald-600 text-white rounded-md shadow flex items-center justify-center">
<?xml version="1.0" encoding="utf-8"?>
<svg width="18" height="18" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M21 12C21 16.9706 16.9706 21 12 21C7.02944 21 3 16.9706 3 12C3 7.02944 7.02944 3 12 3C16.9706 3 21 7.02944 21 12Z" stroke="#fff" stroke-width="2"/>
<path d="M10.5 8.67709C10.8665 8.26188 11.4027 8 12 8C13.1046 8 14 8.89543 14 10C14 10.9337 13.3601 11.718 12.4949 11.9383C12.2273 12.0064 12 12.2239 12 12.5V12.5V13" stroke="#fff" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M12 16H12.01" stroke="#fff" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
</svg>
<span class="ml-2">Usage Instructions</span>
</button>
<label for="major" class="font-mono text-white text-sm mt-1">Select your major:</label>
<select class="rounded border border-slate-500 w-full mt-2 mb-3 py-1 font-mono text-sm" name="major"
id="major" onchange="updateCourses()">
<option value="default" selected>All Courses</option>
<option value="./courses/cs_maj.json">Computer Science</option>
<option value="./courses/cs_major_math_crypt.json">Computer Science & Math - Cryptography
</option>
<option value="./courses/cs_major_math_ml.json">Computer Science & Math - Machine Learning
</option>
<option value="./courses/cs_ent.json">Computer Science & Entrepreneurship</option>
<option value="./courses/economics.json">Economics</option>
<option value="./courses/econ_fin.json">Economics & Finance</option>
<!-- <option value="./courses/psych.json">Psychology</option> -->
</select>
<label for="courseQuery" class="font-mono text-white text-sm mt-1">Search Course
Name/Code:</label>
<input type="text" class="border-[1px] py-1 px-2 w-full mt-3 mb-3" onkeyup="updateCourses()"
id="courseQuery" />
<button onclick="rec_courses(1)"
class="font-mono mt-2 text-sm mb-2 px-1 py-2 bg-cyan-500 rounded-md shadow flex items-center justify-center">
<?xml version="1.0" encoding="utf-8"?>
<svg width="16" height="16" viewBox="0 0 24 24" fill="none"
xmlns="http://www.w3.org/2000/svg">
<path
d="M12 6H12.01M9 20L3 17V4L5 5M9 20L15 17M9 20V14M15 17L21 20V7L19 6M15 17V14M15 6.2C15 7.96731 13.5 9.4 12 11C10.5 9.4 9 7.96731 9 6.2C9 4.43269 10.3431 3 12 3C13.6569 3 15 4.43269 15 6.2Z"
stroke="#000000" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" />
</svg>
<span class="ml-2">Recommend Trajectory</span>
</button>
<button onclick="rec_courses()"
class="font-mono mt-2 text-sm mb-4 px-1 py-2 bg-cyan-500 rounded-md shadow flex items-center justify-center">
<?xml version="1.0" encoding="utf-8"?>
<svg version="1.1" id="Uploaded to svgrepo.com" xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink" width="16" height="16" viewBox="0 0 32 32"
xml:space="preserve">
<style type="text/css">
.blueprint_een {
fill: #111918;
}
.st0 {
fill: #0B1719;
}
</style>
<path class="blueprint_een" d="M31.293,13.293l-9-9C22.105,4.105,21.851,4,21.586,4h-3.172c-0.265,0-0.52,0.105-0.707,0.293
l-17,17c-0.391,0.391-0.391,1.024,0,1.414L8,30h8l15.293-15.293C31.683,14.317,31.683,13.683,31.293,13.293z M15.172,28H8.828l-6-6
l6.998-6.998h2.465l-6.494,6.494c-0.195,0.195-0.195,0.512,0,0.707l4,4c0.098,0.098,0.226,0.146,0.354,0.146
s0.256-0.049,0.354-0.146c0.195-0.195,0.195-0.512,0-0.707L6.857,21.85l6.643-6.643l7.232,7.232L15.172,28z M21.439,21.732
L14.207,14.5l6.146-6.146c0.195-0.195,0.195-0.512,0-0.707s-0.512-0.195-0.707,0l-6.355,6.355h-2.465L18.828,6h2.343l8,8
L21.439,21.732z" />
</svg>
<span class="ml-2">Clear Courses</span>
</button>
<button
class="font-mono text-sm px-4 py-2 mb-4 bg-emerald-600 text-white rounded-md flex items-center justify-center"
onclick="downloadCSV()">
<?xml version="1.0" encoding="utf-8"?>
<svg width="16" height="16" viewBox="0 0 24 24" fill="none"
xmlns="http://www.w3.org/2000/svg">
<path
d="M8 22.0002H16C18.8284 22.0002 20.2426 22.0002 21.1213 21.1215C22 20.2429 22 18.8286 22 16.0002V15.0002C22 12.1718 22 10.7576 21.1213 9.8789C20.3529 9.11051 19.175 9.01406 17 9.00195M7 9.00195C4.82497 9.01406 3.64706 9.11051 2.87868 9.87889C2 10.7576 2 12.1718 2 15.0002L2 16.0002C2 18.8286 2 20.2429 2.87868 21.1215C3.17848 21.4213 3.54062 21.6188 4 21.749"
stroke="#fff" stroke-width="1.5" stroke-linecap="round" />
<path d="M12 2L12 15M12 15L9 11.5M12 15L15 11.5" stroke="#fff" stroke-width="1.5"
stroke-linecap="round" stroke-linejoin="round" />
</svg>
<span class="ml-2">Download CSV & Excel</span>
</button>
</div>
<div id="courseContainer" class="overflow-y-scroll h-full bg-cyan-900" ondrop="drop(event)"
ondragover="allowDrop(event)" droppable="true">
</div>
</div>
<div class="p-0 w-10/12">
<div id="totalCredits" class="font-mono text-sm mt-1 text-center font-bold"></div>
<div id="majorCredits" class="font-mono text-sm mt-1 text-center font-bold"></div>
<div id="semContainer" class="grid grid-cols-4 gap-3 mt-2 mb-1 mx-auto overflow-hidden h-[95vh]">
</div>
</div>
</div>
</div>
</body>
</html>