Merge remote-tracking branch 'origin/master'
All checks were successful
Jenkins Production Deployment
All checks were successful
Jenkins Production Deployment
# Conflicts: # index.html
This commit is contained in:
commit
c631eb74cd
26
index.html
26
index.html
|
@ -8,6 +8,7 @@
|
||||||
<link rel="stylesheet" type="text/css" href="styles.css">
|
<link rel="stylesheet" type="text/css" href="styles.css">
|
||||||
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css" rel="stylesheet"
|
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css" rel="stylesheet"
|
||||||
integrity="sha384-EVSTQN3/azprG1Anm3QDgpJLIm9Nao0Yz1ztcQTwFspd3yD65VohhpuuCOmLASjC" crossorigin="anonymous">
|
integrity="sha384-EVSTQN3/azprG1Anm3QDgpJLIm9Nao0Yz1ztcQTwFspd3yD65VohhpuuCOmLASjC" crossorigin="anonymous">
|
||||||
|
<link rel="stylesheet" href="https://use.typekit.net/eun8zle.css">
|
||||||
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/js/bootstrap.bundle.min.js"
|
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/js/bootstrap.bundle.min.js"
|
||||||
integrity="sha384-MrcW6ZMFYlzcLA8Nl+NtUVF0sA7MsXsP1UyJoMp4YLEuNSfAP+JcXn/tWtIaxVXM"
|
integrity="sha384-MrcW6ZMFYlzcLA8Nl+NtUVF0sA7MsXsP1UyJoMp4YLEuNSfAP+JcXn/tWtIaxVXM"
|
||||||
crossorigin="anonymous"></script>
|
crossorigin="anonymous"></script>
|
||||||
|
@ -15,7 +16,6 @@
|
||||||
<script src="https://kit.fontawesome.com/f2c150d561.js"
|
<script src="https://kit.fontawesome.com/f2c150d561.js"
|
||||||
crossorigin="anonymous">
|
crossorigin="anonymous">
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<script src="https://cdn.jsdelivr.net/npm/jquery@3.6.0/dist/jquery.min.js"></script>
|
<script src="https://cdn.jsdelivr.net/npm/jquery@3.6.0/dist/jquery.min.js"></script>
|
||||||
<script src="scripts.js"></script>
|
<script src="scripts.js"></script>
|
||||||
</head>
|
</head>
|
||||||
|
@ -103,10 +103,11 @@
|
||||||
<option value="4">Kryptographische Verfahren</option>
|
<option value="4">Kryptographische Verfahren</option>
|
||||||
<option value="5">Robotik</option>
|
<option value="5">Robotik</option>
|
||||||
<option value="6">Web-Services</option>
|
<option value="6">Web-Services</option>
|
||||||
<option value="7">Digitale Audiosignalverarbeitung</option>
|
<option value="7">High Performance Computing</option>
|
||||||
<option value="8">Psychologische Grundlagen für Informatiker</option>
|
<option value="8">Digitale Audiosignalverarbeitung</option>
|
||||||
<option value="9">Erklärbare Künstliche Intelligenz</option>
|
<option value="9">Psychologische Grundlagen für Informatiker</option>
|
||||||
<option value="10">Innovation Management</option>
|
<option value="10">Erklärbare Künstliche Intelligenz</option>
|
||||||
|
<option value="11">Innovation Management</option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<!-- // WAHLMODUL -->
|
<!-- // WAHLMODUL -->
|
||||||
|
@ -131,23 +132,30 @@
|
||||||
<!-- // GENERATE LINK BUTTON -->
|
<!-- // GENERATE LINK BUTTON -->
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
<div class="raplalinkcontainer--nav__subtext">Made with <img height="10" src="https://emojipedia-us.s3.dualstack.us-west-1.amazonaws.com/thumbs/240/microsoft/309/red-heart_2764-fe0f.png"/> by <a href="https://www.p4ddy.com">Paddy</a> & <a href="https://www.li54.dev">Lisa</a></div>
|
<div class="raplalinkcontainer--nav__subtext">
|
||||||
|
Made with <img height="10" src="https://emojipedia-us.s3.dualstack.us-west-1.amazonaws.com/thumbs/240/microsoft/309/red-heart_2764-fe0f.png" alt="heart"/> by
|
||||||
|
<a href="https://www.p4ddy.com">Paddy</a>,
|
||||||
|
<a href="https://www.li54.dev">Lisa</a> &
|
||||||
|
<a href="https://www.davidhuh.de">Dave</a>.<br>
|
||||||
|
The Source Code for this page is available <a href="https://git.plutodev.de/Paddy/RaPla-Middleware-LinkGen">here</a>,
|
||||||
|
the code for the middleware is available <a href="https://git.plutodev.de/PlutoDev/plutoapi-v2/src/branch/master/src/models/rapla-middleware">here</a>.
|
||||||
|
</div>
|
||||||
|
|
||||||
<!-- Modal -->
|
<!-- Modal -->
|
||||||
<div class="modal fade" id="linkModal" tabindex="-1" aria-labelledby="linkModalSuccess" aria-hidden="true">
|
<div class="modal fade" id="linkModal" tabindex="-1" aria-labelledby="linkModalSuccess" aria-hidden="true">
|
||||||
<div class="modal-dialog modal-dialog-centered">
|
<div class="modal-dialog modal-dialog-centered">
|
||||||
<div class="modal-content">
|
<div class="modal-content">
|
||||||
<div class="modal-header">
|
<div class="modal-header modal-toggle">
|
||||||
<h5 class="modal-title" id="linkModalTitle"></h5>
|
<h5 class="modal-title" id="linkModalTitle"></h5>
|
||||||
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
|
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
|
||||||
</div>
|
</div>
|
||||||
<div class="modal-body">
|
<div class="modal-body modal-toggle">
|
||||||
<div class="raplalinkcontainer--link">
|
<div class="raplalinkcontainer--link">
|
||||||
<p id="raplalinkcontainer--link"></p>
|
<p id="raplalinkcontainer--link"></p>
|
||||||
</div>
|
</div>
|
||||||
<p id="full-link"></p>
|
<p id="full-link"></p>
|
||||||
</div>
|
</div>
|
||||||
<div class="modal-footer">
|
<div class="modal-footer modal-toggle">
|
||||||
<button type="button" class="btn btn-secondary" id="raplalinkcontainer--closeButton" data-bs-dismiss="modal"></button>
|
<button type="button" class="btn btn-secondary" id="raplalinkcontainer--closeButton" data-bs-dismiss="modal"></button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
30
scripts.js
30
scripts.js
|
@ -83,6 +83,29 @@ let courseLinks = {
|
||||||
'TINF20B5': {user: 'strand', file: 'TINF20B5'}
|
'TINF20B5': {user: 'strand', file: 'TINF20B5'}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Calculates, in which semester the given course currently is
|
||||||
|
* @param course The course to calculate the semester for
|
||||||
|
* @returns {number} The number of the semester they are in
|
||||||
|
*/
|
||||||
|
function calculateSemester(course) {
|
||||||
|
let yearRegex = new RegExp('[a-zA-Z]*([0-9]{2})B[0-9]');
|
||||||
|
|
||||||
|
let match = yearRegex.exec(course);
|
||||||
|
let startYear = '20';
|
||||||
|
if (match !== null) {
|
||||||
|
startYear += match[1];
|
||||||
|
}
|
||||||
|
|
||||||
|
let currentYear = new Date().getFullYear();
|
||||||
|
|
||||||
|
let yearDifference = currentYear - startYear;
|
||||||
|
|
||||||
|
let semesters = yearDifference * 2 + 1;
|
||||||
|
|
||||||
|
return semesters;
|
||||||
|
}
|
||||||
|
|
||||||
/* Toggle Dark-Mode */
|
/* Toggle Dark-Mode */
|
||||||
|
|
||||||
const toggleDarkMode = () => {
|
const toggleDarkMode = () => {
|
||||||
|
@ -95,6 +118,13 @@ const toggleDarkMode = () => {
|
||||||
navElement.classList.toggle("nav--dark-mode");
|
navElement.classList.toggle("nav--dark-mode");
|
||||||
submitButton.classList.toggle("submitButton--dark-mode");
|
submitButton.classList.toggle("submitButton--dark-mode");
|
||||||
|
|
||||||
|
/* Dialog */
|
||||||
|
let modalContents = document.getElementsByClassName('modal-toggle')
|
||||||
|
|
||||||
|
for (let content of modalContents) {
|
||||||
|
content.classList.toggle("modal--dark-mode")
|
||||||
|
}
|
||||||
|
|
||||||
if (colorModeToggleIcon.classList.contains("fa-moon")) {
|
if (colorModeToggleIcon.classList.contains("fa-moon")) {
|
||||||
colorModeToggleIcon.classList.remove("fa-moon");
|
colorModeToggleIcon.classList.remove("fa-moon");
|
||||||
colorModeToggleIcon.classList.add("fa-sun");
|
colorModeToggleIcon.classList.add("fa-sun");
|
||||||
|
|
|
@ -8,6 +8,10 @@ body {
|
||||||
color: white;
|
color: white;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.modal--dark-mode {
|
||||||
|
background-color: #222222;
|
||||||
|
color: white;
|
||||||
|
}
|
||||||
|
|
||||||
#raplalinkcontainer {
|
#raplalinkcontainer {
|
||||||
height: 100vh;
|
height: 100vh;
|
||||||
|
|
Loading…
Reference in New Issue
Block a user