From 782844f82d9a9056d8f5da99baa499c7fa62b190 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Roland=20Schl=C3=A4fli?= Date: Sun, 24 Sep 2023 18:07:08 +0200 Subject: [PATCH] enhance: customize for UZH usage (#1) --- .env.template | 1 + app.js | 4 +- controllers/api_controller.js | 4 +- controllers/escapeRoom_controller.js | 15 +- db_migrate.js | 2 +- i18n/de.json | 1081 +++++++++++++++++ io.js | 6 +- models/escapeRoom.js | 2 +- models/user.js | 2 +- public/apps/digitalLock/dist/vendors/I18n.js | 2 +- .../apps/digitalLock/scorm12/vendors/I18n.js | 2 +- .../digitalLock/scorm2004/vendors/I18n.js | 2 +- public/images/uzh_logo_d_neg.png | Bin 0 -> 3079 bytes public/images/uzh_logo_e_neg.png | Bin 0 -> 3258 bytes public/images/uzh_logo_e_pos.png | Bin 0 -> 3627 bytes public/scorm/SCORM_Player.js | 3 +- public/stylesheets/style.css | 1 - public/stylesheets/style.css.map | 2 +- views/index.ejs | 3 +- views/partials/_footer.ejs | 23 +- views/partials/_form.ejs | 1 + views/partials/_header.ejs | 4 +- views/users/_form.ejs | 1 + 23 files changed, 1131 insertions(+), 30 deletions(-) create mode 100644 i18n/de.json create mode 100644 public/images/uzh_logo_d_neg.png create mode 100644 public/images/uzh_logo_e_neg.png create mode 100644 public/images/uzh_logo_e_pos.png diff --git a/.env.template b/.env.template index 06e137d2..a028982e 100644 --- a/.env.template +++ b/.env.template @@ -2,3 +2,4 @@ DATABASE_USER=escapp DATABASE_PASS=escapp DATABASE_NAME=escapp DATABASE_HOST=localhost +DATABASE_URL=postgres://escapp:escapp@localhost:5432/escapp diff --git a/app.js b/app.js index 291c39c0..6f205a62 100644 --- a/app.js +++ b/app.js @@ -49,8 +49,8 @@ app.use(express.static(path.join(__dirname, "public"))); app.use(i18n({ "translationsPath": path.join(__dirname, "i18n"), - "siteLangs": ["en", "es"], - "locales": ["en", "es"], + "siteLangs": ["en", "es", "de"], + "locales": ["en", "es", "de"], "cookieLangName": "locale", "defaultLang": "en", "textsVarName": "i18n" diff --git a/controllers/api_controller.js b/controllers/api_controller.js index be544146..6fe65a1d 100644 --- a/controllers/api_controller.js +++ b/controllers/api_controller.js @@ -42,9 +42,9 @@ exports.checkParticipantSafe = async (req, res, next) => { const user = await authenticate(email, password, token); if (user) { - if (!req.escapeRoom.forceLang && user.lang && i18n.lang !== user.lang && (user.lang === "es" || user.lang === "en")) { + if (!req.escapeRoom.forceLang && user.lang && i18n.lang !== user.lang && (user.lang === "es" || user.lang === "en" || user.lang === "de")) { // eslint-disable-next-line global-require - res.locals.i18n_lang = user.lang === "es" ? "es" : "en"; + res.locals.i18n_lang = ["en", "es", "de"].includes(user.lang) ? user.lang : "en"; // eslint-disable-next-line global-require res.locals.i18n_texts = require(`../i18n/${res.locals.i18n_lang}`); res.locals.i18n = res.locals.i18n_texts; diff --git a/controllers/escapeRoom_controller.js b/controllers/escapeRoom_controller.js index 74ce2c39..a29964c8 100644 --- a/controllers/escapeRoom_controller.js +++ b/controllers/escapeRoom_controller.js @@ -9,6 +9,13 @@ const {nextStep, prevStep} = require("../helpers/progress"); const {saveInterface, getERPuzzles, paginate, validationError} = require("../helpers/utils"); const es = require("../i18n/es"); const en = require("../i18n/en"); +const de = require("../i18n/de"); + +const LANGUAGE_FILES = { + en, + es, + de +}; // Autoload the escape room with id equals to :escapeRoomId exports.load = async (req, res, next, escapeRoomId) => { @@ -19,8 +26,8 @@ exports.load = async (req, res, next, escapeRoomId) => { if (res.locals) { if (!req.session || req.session && req.session.user && req.session.user.isStudent) { if (escapeRoom.forceLang && req.cookies && req.cookies.locale !== escapeRoom.forceLang) { - res.locals.i18n_texts = escapeRoom.forceLang === "es" ? es : en; - res.locals.i18n_lang = escapeRoom.forceLang === "es" ? "es" : "en"; + res.locals.i18n_texts = LANGUAGE_FILES[escapeRoom.forceLang] || en; + res.locals.i18n_lang = Object.keys(LANGUAGE_FILES).includes(escapeRoom.forceLang) ? escapeRoom.forceLang : "en"; res.locals.i18n = res.locals.i18n_texts; } } @@ -121,7 +128,7 @@ exports.create = async (req, res) => { const escapeRoom = models.escapeRoom.build({title, subject, duration, "forbiddenLateSubmissions": forbiddenLateSubmissions === "on", invitation, description, supportLink, "scope": scope === "private", "teamSize": teamSize || 0, authorId, forceLang}); // Saves only the fields question and answer into the DDBB const {i18n} = res.locals; - escapeRoom.forceLang = forceLang === "en" || forceLang === "es" ? forceLang : null; + escapeRoom.forceLang = Object.keys(LANGUAGE_FILES).includes(forceLang) ? forceLang : null; try { const er = await escapeRoom.save({"fields": ["title", "teacher", "subject", "duration", "description", "forbiddenLateSubmissions", "scope", "teamSize", "authorId", "supportLink", "invitation", "forceLang"]}); @@ -193,7 +200,7 @@ exports.update = async (req, res) => { escapeRoom.invitation = body.invitation !== undefined ? body.invitation.toString() : undefined; escapeRoom.scope = body.scope === "private"; escapeRoom.teamSize = body.teamSize || 0; - escapeRoom.forceLang = body.forceLang === "en" || body.forceLang === "es" ? body.forceLang : null; + escapeRoom.forceLang = Object.keys(LANGUAGE_FILES).includes(body.forceLang) ? body.forceLang : null; const progressBar = body.progress; try { diff --git a/db_migrate.js b/db_migrate.js index 920f9f51..d0b11243 100644 --- a/db_migrate.js +++ b/db_migrate.js @@ -14,7 +14,7 @@ function callback (err, stdout, stderr) { } if (process.env.DATABASE_URL) { - exec(`./node_modules/.bin/sequelize db:migrate --uri ${process.env.DATABASE_URL}`, callback); + exec(`./node_modules/.bin/sequelize db:migrate --url ${process.env.DATABASE_URL}`, callback); } else if (process.env.DATABASE_HOST && process.env.DATABASE_USER && process.env.DATABASE_PASS && process.env.DATABASE_NAME) { exec("./node_modules/.bin/sequelize db:migrate --config models/config.js", callback); } else { diff --git a/i18n/de.json b/i18n/de.json new file mode 100644 index 00000000..8d2896fc --- /dev/null +++ b/i18n/de.json @@ -0,0 +1,1081 @@ +{ + "lang": "en", + "locale": "en_US", + "description": "Plattform für die Verwaltung von Escape Rooms im Bildungsbereich", + "analytics": { + "charts": { + "titles": { + "retosSuperadosTeam": "Gelöste Rätsel", + "hintsByTeam": "Gewünschte Hinweise" + } + }, + "grading": { + "config": "Einstufungsschema bearbeiten", + "title": "Einstufung", + "attendance": "Erwartung", + "hintSuccess": "Erhaltene Hinweise", + "hintFailed": "Verpasste Hinweise" + }, + "hints": { + "customClue": "Hilfe durch den Lehrer", + "failed": "Hinweisanfragen fehlgeschlagen", + "failedClue": "Gescheiterter Hinweis", + "succeeded": "Erhaltene Hinweise", + "title": "Hinweise" + }, + "histogram": { + "title": "Histogramm", + "statsPuzzlesCumulative": "Puzzle-Statistik" + }, + "main": { + "download": "herunterladen", + "downloadRaw": "roh herunterladen", + "grading": "Einstufung", + "hints": "Hinweise", + "histogram": "Histogramm", + "progress": "Fortschritt", + "ranking": "Bestenliste", + "retosSuperados": "Gelöste Rätsel", + "puzzleStats": "Puzzle-Statistiken", + "puzzleTimes": "Rätselzeiten", + "summary": "Zusammenfassung", + "timeline": "Zeitleiste", + "title": "Lernende Analytik", + "chart": { + "svg": "SVG herunterladen", + "png": "PNG herunterladen" + }, + "dashboard": { + "nParticipants": "# Teilnehmer", + "sucessRate": "Erfolgsquote", + "bestTime": "Beste Zeit", + "avgTeamSize": "Durchschnittliche Teamgröße", + "avgReqHints": "Avg. erhaltene Hinweise", + "retosSuperadosTeam": "# Anzahl der Teams, die das Rätsel gelöst haben" + } + }, + "progress": { + "title": "Fortschritt" + }, + "ranking": { + "members": "Mitglieder", + "res": "Ergebnisse", + "team": "Team", + "user": "Teilnehmer", + "time": "Zeit", + "title": "Bestenliste", + "turno": "Schicht" + }, + "puzzleTimes": { + "title": "Rätselzeiten" + }, + "puzzleStats": { + "title": "Puzzle-Statistik", + "cumulative": "Kumulierte Zeiten", + "nonCumulative": "Nicht kumulative Zeiten" + }, + "summary": { + "title": "Zusammenfassung" + }, + "timeline": { + "customHint": "Hilfe durch den Lehrer", + "openDoor": "Das Team hat den Escape Room erfolgreich beendet", + "closedDoor": "Das Team hat den Escape Room gestartet", + "nTeamsPuzzle": "Anzahl der Teams, die jedes Rätsel gelöst haben", + "nTeamsPuzzleButton": "siehe nach Team", + "nPuzzlesTeam": "Anzahl der von jedem Team gelösten Rätsel", + "nPuzzlesTeamButton": "siehe unter Rätsel", + "failed": "Hinweisanforderung fehlgeschlagen", + "legendMsg": "Scrollen Sie nach rechts, um Ereignisse zu sehen, die nach dem offiziellen Ende des Countdowns stattgefunden haben. Bewegen Sie den Mauszeiger über die Rätsel oder Hinweise, um weitere Informationen dazu zu erhalten.", + "hint": "Hint", + "score": "Punktzahl", + "solved": "Gelöst", + "failedToSolve": "Gescheiterter Versuch, das Rätsel zu lösen", + "providedAnswer": "Bereitgestellte Antwort", + "title": "Zeitleiste", + "showLegend": "Legende anzeigen", + "time": "Zeit", + "puzzleExplanation": "Die Zeitleiste zeigt die Rätsel, an denen jedes Schülerteam zu jedem Zeitpunkt des Escape Rooms gearbeitet hat. Für jedes gelöste Rätsel wird die Anzahl der Minuten angezeigt, die jedes Team für die Lösung benötigt hat. Wenn bei einem Rätsel keine Zahl oben steht, bedeutet dies, dass die Schüler es nicht lösen konnten.", + "unsolved": "Nicht gelöst", + "now": "Aktueller Moment", + "end": "Ende des Escape Rooms", + "hintFailed": "Hinweis nicht erhalten", + "hintSucceeded": "Hinweis erhalten" + } + }, + "api": { + "unauthorized": "Nicht autorisiert", + "userNotFound": "Benutzer nicht gefunden", + "correct": "Richtige Antwort!", + "correctNotActive": "Die Antwort ist richtig, aber Sie werden nicht verfolgt, weil Ihr Zug nicht aktiv ist", + "correctNotParticipant": "Die Antwort ist richtig, aber Sie werden nicht verfolgt, weil Sie diesem Escape Room nicht beigetreten sind", + "correctTooLate": "Die Antwort ist richtig, aber die Zeit ist abgelaufen", + "message": "Nachricht", + "ok": "ok", + "forbidden": "Verbotene", + "notFound": "Nicht gefunden", + "error": "Fehler", + "wrong": "Falsche Antwort", + "isAuthor": "Sie sind der Autor dieses Escape Rooms", + "wrongCredentials": "Die Kombination aus E-Mail und Passwort ist falsch", + "wrongCredentialsToken": "Die Kombination aus E-Mail und Token ist falsch", + "notAParticipant": "Sie sind kein Teilnehmer dieses Escape Rooms", + "alreadyParticipating": "Sie haben bereits mit der Teilnahme an diesem Escape Room begonnen", + "participant": "Sie sind ein Teilnehmer dieses Escape Rooms", + "notActive": "Sie sind ein Teilnehmer dieses Escape Rooms, aber Ihre Schicht ist nicht aktiv", + "notStarted": "Sie sind ein Teilnehmer dieses Escape Rooms, haben aber nicht auf den Start-Button geklickt", + "tooLate": "Sie sind ein Teilnehmer dieses Escape Rooms, aber Ihre Zeit ist abgelaufen" + }, + "apps": { + "newApp": "Neue App", + "name": "Name", + "namePlaceHolder": "Name der Anwendung", + "description": "Beschreibung", + "descriptionPlaceHolder": "Kleine Beschreibung für Lehrer", + "key": "Name des Ordners", + "keyPlaceHolder": "Name des Ordners, in dem die Anwendung gespeichert werden soll" + }, + "common": { + "accept": "akzeptieren", + "author": "autor", + "back": "zurück", + "cancel": "kündigen", + "confirm": "bestätigen", + "completado": "abgeschlossen", + "continue": "nächste", + "delete": "löschen", + "download": "herunterladen", + "edit": "bearbeiten", + "my": "Meine Fluchträume", + "error": { + "whoops": "Hoppla!", + "notFound": "Es scheint, dass wir die gesuchte Seite nicht finden konnten", + "notEmpty": "kann nicht leer sein", + "len": "ist zu lang", + "min": "zu niedrig ist", + "max": "zu hoch ist" + }, + "exit": "ausgang", + "filter": "filter", + "finish": "fertigstellen", + "Finish": "Oberfläche", + "validationError": "Ungültige Eingabedaten", + "flash": { + "errors": "Fehler", + "interestingInfo": "Einschlägige Informationen", + "success": "Erfolgreich abgeschlossene Aufgaben", + "errorActivatingTurno": "Beim Aktivieren/Deaktivieren von Abbiegungen ist ein Fehler aufgetreten.", + "errorCreatingER": "Beim Einrichten des Escape Rooms ist ein Fehler aufgetreten.", + "errorCreatingHint": "Beim Erstellen des Hinweises ist ein Fehler aufgetreten.", + "errorCreatingPuzzle": "Beim Erstellen des Rätsels ist ein Fehler aufgetreten.", + "errorCreatingTeam": "Bei der Erstellung des Teams ist ein Fehler aufgetreten.", + "errorCreatingTeamAlreadyExists": "Ein Team mit diesem Namen existiert bereits in diesem Escape Room", + "errorCreatingTurno": "Beim Erstellen der Schicht ist ein Fehler aufgetreten", + "errorCreatingUser": "Beim Anlegen eines neuen Benutzers ist ein Fehler aufgetreten", + "errorDeletingER": "Beim Löschen des Escape Rooms ist ein Fehler aufgetreten", + "errorDeletingHint": "Beim Löschen des Hinweises ist ein Fehler aufgetreten", + "errorDeletingPuzzle": "Beim Löschen des Rätsels ist ein Fehler aufgetreten", + "errorDeletingTeam": "Beim Löschen des Teams ist ein Fehler aufgetreten", + "errorDeletingTurno": "Beim Löschen der Schicht ist ein Fehler aufgetreten", + "errorDeletingUser": "Beim Löschen des Benutzers ist ein Fehler aufgetreten", + "errorStudentLeave": "Beim Verlassen ist ein Fehler aufgetreten. Ihre Schicht ist beendet.", + "errorEditingER": "Bei der Bearbeitung des Escape Rooms ist ein Fehler aufgetreten", + "errorEditingHint": "Beim Bearbeiten des Hinweises ist ein Fehler aufgetreten", + "errorEditingPuzzle": "Beim Bearbeiten des Rätsels ist ein Fehler aufgetreten", + "errorEditingTeam": "Bei der Bearbeitung des Teams ist ein Fehler aufgetreten", + "errorEditingTurno": "Bei der Bearbeitung der Schicht ist ein Fehler aufgetreten", + "errorEditingUser": "Beim Bearbeiten des Benutzers ist ein Fehler aufgetreten", + "errorExistingUser": "Dieser Benutzer existiert bereits", + "errorFile": "Beim Hochladen der Datei ist ein Fehler aufgetreten", + "errorImage": "Beim Hochladen des Bildes ist ein Fehler aufgetreten", + "errorMandatoryPass": "Entschuldigung, für die Anmeldung ist ein Passwort erforderlich", + "mustBeUPMAccount": "Sie müssen sich mit Ihrer UPM-E-Mail-Adresse registrieren", + "passwordChangedSuccessfully": "Passwort erfolgreich geändert", + "passwordsDoNotMatch": "Passwörter stimmen nicht überein", + "problemSendingEmail": "Es gab ein Problem mit Ihrer Anfrage", + "resetPasswordSent": "Wir haben Ihnen eine E-Mail mit einem Link zum Zurücksetzen Ihres Passworts geschickt", + "resetPasswordUserNotFound": "Sie sind leider nicht in escapp registriert", + "successActivatingTurno": "Verschiebung erfolgreich aktiviert/deaktiviert", + "successCreatingER": "Escape Room erfolgreich eingerichtet", + "successCreatingHint": "Hinweis erfolgreich erstellt", + "successCreatingPuzzle": "Puzzle erfolgreich erstellt", + "successCreatingTeam": "Team erfolgreich erstellt", + "successCreatingTeamSingle": "Sie haben den Escape Room erfolgreich betreten", + "successCreatingTurno": "Verschiebung erfolgreich erstellt", + "successCreatingUser": "Benutzer erfolgreich angelegt", + "successDeletingER": "Escape Room erfolgreich gelöscht", + "successDeletingHint": "Hinweis erfolgreich gelöscht", + "successDeletingPuzzle": "Puzzle erfolgreich gelöscht", + "successDeletingTeam": "Team erfolgreich gelöscht", + "successDeletingTurno": "Verschiebung erfolgreich gelöscht", + "successResetingTurno": "Umschaltung erfolgreich zurückgesetzt", + "successDeletingUser": "Benutzer erfolgreich gelöscht", + "successEditingER": "Escape Room erfolgreich bearbeitet", + "successEditingHint": "Hinweis erfolgreich bearbeitet", + "successEditingHintApproach": "Hinweiskonfiguration erfolgreich bearbeitet", + "successEditingPuzzle": "Puzzle erfolgreich bearbeitet", + "successEditingTeam": "Team erfolgreich bearbeitet", + "successEditingTurno": "Verschiebung erfolgreich bearbeitet", + "successEditingUser": "Benutzer erfolgreich bearbeitet", + "successImage": "Bild erfolgreich hochgeladen", + "youMustAcceptTerms": "Um sich anzumelden, müssen Sie die Allgemeinen Geschäftsbedingungen akzeptieren" + }, + "guide": "Benutzerhandbuch", + "ideas": "Puzzle-Ideen", + "mainPage": "Main page", + "pagination": { + "first": "Erste Seite", + "last": "Letzte Seite", + "page": "Seite" + }, + "next": "nächste", + "save": "speichern", + "see": "siehe", + "orderBy": "Bestellen bei", + "previous": "zurück", + "profile": "Profil", + "total": "insgesamt", + "Total": "Insgesamt" + }, + "escapeRoom": { + "api": { + "id": "ID", + "name": "Name", + "endpoint": "Endpunkt", + "solution": "Lösung", + "sample": "Muster einer Fernabfrage", + "key": "Schlüssel", + "value": "Mögliche Werte", + "description": "Beschreibung", + "authentication": "Ob die Authentifizierungsparameter korrekt sind oder nicht", + "authenticationAPI": "Authentifizierung", + "authenticationAPIDesc": "Dieser Endpunkt ermöglicht es Ihnen, sich bei escapp zu authentifizieren und zu überprüfen, ob Sie zu einem bestimmten Zeitpunkt an einem Escape Room teilnehmen dürfen", + "method": "Methode", + "email": "Benutzer-E-Mail", + "password": "Benutzer-Passwort", + "tokenR": "Anstelle des Passworts können Sie auch das Benutzer-Token angeben", + "request": "Request", + "sampleRequest": "Musteranfrage", + "response": "Antwort", + "sampleResponse": "Beispielhafte Antwort", + "puzzleAPI": "Rätsel", + "puzzleAPIDesc": "Dieser Endpunkt ermöglicht es Ihnen, Rätsel aus der Ferne zu lösen, ohne dass Sie auf die Team-Schnittstelle von escapp zugreifen müssen", + "startAPI": "Teilnahme", + "startAPIDesc": "Dieser Endpunkt ermöglicht es Ihnen, an einem Escape Room teilzunehmen, ohne dass Sie den Startknopf in escapp drücken müssen", + "erState": "Objekt, das den aktuellen Zustand des Escape Rooms für das Team anzeigt. Es hat zwei Eigenschaften: puzzlesSolved, das ein Array enthält, das anzeigt, welche Rätsel das Team gelöst hat (einschließlich des Namens, der Nummer, der Lösung und der Erfolgsmeldung des Rätsels); hintsAllowed, ein Boolescher Wert, der anzeigt, ob das Team weitere Hinweise anfordern kann; progress, der Prozentsatz der gelösten Rätsel, und score, die Gesamtpunktzahl des Teilnehmers gemäß der vom Lehrer erstellten Bewertungsrubrik.", + "code": { + "OK": "Die Antwort auf das Rätsel ist richtig", + "NOK": "Die Antwort auf das Rätsel ist falsch" + }, + "correctAnswer": "Boolescher Wert, der wahr ist, wenn die Antwort auf das Rätsel richtig ist, und falsch, wenn nicht.", + "participation": { + "PARTICIPANT": "Sie sind ein Teilnehmer dieses Escape Rooms und die Schicht, für die Sie sich angemeldet haben, ist aktiv", + "TOO_LATE": "Sie sind Teilnehmer dieses Escape Rooms, aber die Schicht, für die Sie sich angemeldet haben, ist zu Ende oder Sie haben keine Zeit mehr", + "NOT_ACTIVE": "Sie sind ein Teilnehmer dieses Escape Rooms, aber die Schicht, für die Sie sich angemeldet haben, hat noch nicht begonnen", + "NOT_STARTED": "Sie sind Teilnehmer dieses Escape Rooms, aber Sie haben den Startknopf auf der escapp Plattform nicht gedrückt oder über API gestartet", + "NOT_A_PARTICIPANT": "Sie sind kein Teilnehmer dieses Escape Rooms", + "AUTHOR": "Sie sind der Autor dieses Escape Rooms" + }, + "participationStart": { + "PARTICIPANT": "Sie haben den Escape Room erfolgreich gestartet", + "TOO_LATE": "Die Schicht, für die Sie sich angemeldet haben, ist beendet oder die Zeit ist abgelaufen", + "NOT_ACTIVE": "Die Schicht, für die Sie sich angemeldet haben, hat noch nicht begonnen", + "NOT_STARTED": "Sie haben den Startknopf auf der escapp-Plattform nicht gedrückt", + "NOT_A_PARTICIPANT": "Sie sind kein Teilnehmer dieses Escape Rooms", + "AUTHOR": "Sie sind der Autor dieses Escape Rooms" + }, + "token": { + "String": "Das Authentifizierungs-Token, das Sie für die API verwenden können" + }, + "puzzlesSolved": "Array mit den vom Team bereits gelösten Rätseln", + "hintsAllowed": { + "true": "Das Team kann weitere Hinweise anfordern", + "false": "Das Team kann NICHT mehr Hinweise anfordern" + } + }, + "play": { + "correct": "Richtige Antwort!", + "check": "Siehe", + "msg": "Nachricht", + "sol": "Lösung", + "autoPlayText": "Klicken Sie auf die Schaltfläche, um das Video abzuspielen", + "autoPlayButton": "Spielen", + "writeSol": "Schreiben Sie hier die Lösung", + "currentPuzzle": "Aktuelles Rätsel", + "finish": "Herzlichen Glückwunsch! Du hast den Escape Room verlassen.", + "failed": "Schade! Bitte versuchen Sie es erneut", + "failMessage": "Schade! Bitte versuchen Sie es weiter", + "dontClose": "Es gibt keine Hinweise mehr. Du kannst jetzt deinen Lehrer um Hilfe bitten. Schließen Sie diese Nachricht nicht, bis sie kommen", + "noMoreLeft": "Es gibt keine Hinweise mehr. Du kannst jetzt deinen Lehrer um Hilfe bitten.", + "noMoreLeftTeam": "Jemand aus Ihrem Team hat um einen Hinweis gebeten, aber es gibt keine weiteren Hinweise für Ihre aktuelle Situation. Das Team kann den Lehrer um Hilfe bitten", + "chooseCat": "Womit brauchen Sie Hilfe?", + "cantRequestMore": "Sie können keine weiteren Hinweise anfordern", + "cantRequestMoreThis": "In Ihrer derzeitigen Situation können Sie keine weiteren Hinweise anfordern", + "canRequest": "Einen Hinweis anfordern", + "empty": "Hilfe durch den Lehrer", + "Info": "Informationen", + "newHint": "Neuer Hinweis", + "newRetoSuperado": "Neues Rätsel gelöst!", + "Hints": "Hinweise", + "noReqHints": "Sie haben keinen Hinweis für dieses Rätsel angefordert", + "other": "Andere Meldungen", + "instructionsQuiz1": "Um einen Hinweis zu erhalten, müssen Sie mindestens folgende Fragen richtig beantworten", + "instructionsQuiz2": "aus dem", + "instructionsQuiz3": "folgende Fragen", + "loading": "Laden", + "need": "Einen Hinweis anfordern", + "start": "Start", + "stop": "Stopp", + "requestedHints": "Erhaltene Hinweise", + "successMessage": "Herzlichen Glückwunsch! Sie haben einen neuen Hinweis erhalten", + "tooMany": "Sie haben die maximal zulässige Anzahl von Hinweisen erhalten", + "tooOften": "Sie können einen Hinweis nur erhalten, wenn Sie", + "notUntil": "Sie können keinen weiteren Hinweis für einen anderen Hinweis erhalten", + "timeUp": "Die Zeit ist um!", + "teamJoined": "Jemand aus Ihrem Team hat sich der Notaufnahme angeschlossen", + "disconnect": "Verbindung verloren", + "reconnect": "Ich versuche, die Verbindung wiederherzustellen...", + "connected": "Verbunden!", + "confirmSupport": "Sind Sie sicher, dass Sie technische Unterstützung benötigen?", + "Exit": "Ausfahrt" + }, + "fields": {}, + "invitation": { + "no": "keine", + "wannaJoin": "Möchtest du an diesem Escape Room teilnehmen?", + "typePasscode": "Geben Sie das Zugangskennwort für", + "yes": "ja", + "scopes": { + "public": "Sichtbar für alle Benutzer auf der Startseite", + "private": "Nur über einen direkten Link zugänglich" + } + }, + "main": { + "copyOf": "Kopie von", + "createER": "Neuen Escape-Raum erstellen", + "noERTeacher": "Du hast noch keine Escape Rooms erstellt. Verwalte sie von hier aus", + "noERStudent": "Du hast noch keine aktiven Escape Rooms, warte auf die Einladung deines Lehrers.", + "yesERStudent": "Das sind Ihre Escape Rooms", + "yesERTeacher": "Verwalten Sie Ihre Escape Rooms von hier aus", + "notAvailable": "Escape Room nicht verfügbar" + }, + "steps": { + "appearance": { + "title": "Erscheinungsbild" + }, + "assets": { + "title": "Hochladen von Vermögenswerten", + "dictDefaultMessage": "Legen Sie die Dateien ab, die Sie für die Durchführung des Escape Rooms benötigen", + "dictFallbackMessage": "Versuchen Sie, Google Chrome zu verwenden", + "dictFileTooBig": "Die Datei ist zu groß", + "dictInvalidFileTypedictResponseError": "Ungültiger Dateityp", + "dictCancelUpload": "Upload abbrechen", + "dictUploadCanceled": "Der Upload wurde abgebrochen", + "dictCancelUploadConfirmation": "Sind Sie sicher, dass Sie den Upload abbrechen wollen?", + "dictRemoveFile": "Datei löschen", + "dictRemoveFileConfirmation": "Sind Sie sicher, dass Sie diese Datei löschen wollen?", + "dictMaxFilesExceeded": "Zu viele Dateien" + }, + "edit": { + "New": "Neu", + "descriptionPlaceHolder": "Schreiben Sie hier die Beschreibung des Escape Rooms. Diese Informationen werden an Ihre Schüler weitergegeben", + "durationPlaceHolder": "¿Welche Zeit haben die Schüler für den Escape Room?", + "forbiddenLateSubmissionsPlaceHolder": "Erlaube nicht, Rätsel zu lösen, wenn die Zeit abgelaufen ist", + "passwordPlaceHolder": "Geben Sie ein Passwort ein, um den Zugang zum Escape Room zu beschränken", + "invitationPlaceHolder": "Geben Sie ein Passwort ein, um den Zugang zum Escape Room zu beschränken", + "noFileUploaded": "Es sind noch keine Dateien hochgeladen worden", + "noImageUploaded": "Es sind noch keine Bilder hochgeladen worden", + "subjectPlaceHolder": "Zu welchem Fach gehört diese Tätigkeit?", + "teamSizePlaceHolder": "Wie viele Teilnehmer wird jedes Team haben? Lassen Sie das Feld leer, wenn Sie es nicht begrenzen möchten", + "supportLinkPlaceHolder": "Wohin sollen sich Schüler wenden, wenn sie Probleme haben?", + "title": "Escape Room Grundausstattung", + "titlePlaceHolder": "Wie lautet der Name des Escape Rooms?", + "videoPlaceHolder": "Eine URL für das Einführungsvideo des Escape Rooms" + }, + "evaluation": { + "eachHint": "Vergeben Sie eine Strafe oder Belohnung für das Anfordern eines Hinweises", + "eachHintObtain": "Vergeben Sie eine Strafe oder Belohnung für jeden erhaltenen Hinweis", + "eachPuzzle": "Jedem Rätsel einen anderen Prozentsatz zuweisen", + "forSurveys": "umfragen und Quizze für Ihren Escape Room erstellen", + "hintSuccess": "Punkte für jede erfolgreiche Hinweisanfrage", + "hintFailed": "Punkte für jede fehlgeschlagene Hinweisanfrage", + "justParticipating": "Einen Prozentsatz der Note nur für die Teilnahme vergeben", + "gradingIntro": "Sie können ein Benotungsschema für die Bewertung der Aktivität festlegen", + "or": "oder", + "posttestField": "Post-Quiz", + "posttestPlaceHolder": "Schreiben Sie hier Ihren Post-Quiz-Link", + "pretestField": "Pre-Quiz", + "pretestPlaceHolder": "Schreiben Sie hier Ihren Pre-Quiz-Link", + "surveyField": "Umfrage", + "surveyPlaceHolder": "Schreiben Sie hier Ihren Umfragelink", + "title": "Bewertung", + "total": "Insgesamt", + "puzzle": "Puzzle", + "weight": "Gewicht", + "youCanUse": "Sie können verwenden", + "automaticAttendance": "Automatische Anwesenheitserfassung, wenn ein Schüler während seiner Schicht einen Escape Room betritt", + "automaticAttendanceNone": "Keine automatische Anwesenheitskontrolle", + "automaticAttendanceParticipant": "Automatische Anwesenheitserfassung nur für diesen Schüler", + "automaticAttendanceTeam": "Automatische Anwesenheitserfassung für das gesamte Team" + }, + "hints": { + "correctNumber": "Anzahl der richtigen Antworten", + "correctNumberPlaceHolder": "Wie viele richtige Antworten brauchen die Schüler, um einen Hinweis zu erhalten?", + "explanation": "In diesem Schritt können Sie die Hinweisstrategie für Ihren Escape Room auswählen. Es stehen drei Strategien zur Verfügung: keine Hinweise zulassen, kostenlose Hinweise zulassen und die Schüler auffordern, ein Quiz zu lösen, um einen Hinweis zu erhalten. Wenn Sie Hinweise zulassen, können Sie eine Höchstzahl von Hinweisen festlegen, die die Schüler erhalten können. Wenn Sie sich für die letzte Strategie entscheiden, müssen Sie eine MoodleXML-Datei mit einer Reihe von Fragen hochladen und angeben, wie viele Fragen bei jedem Versuch angezeigt werden, wie viele sie richtig beantworten müssen, um zu bestehen, und ob ihnen die richtige Antwort nach jedem Versuch angezeigt werden soll", + "moodleExplanation": "Wenn Sie möchten, dass die Schüler ein Quiz beantworten, um einen Hinweis zu erhalten, laden Sie bitte eine MoodleXML-Datei mit einer Reihe von Fragen hoch", + "feedback": "Rückmeldung", + "feedbackExplanation": "Möchten Sie den Schülern die richtigen Antworten zeigen, sobald das Quiz beendet ist?", + "hintFile": "Batterie von Fragen Datei", + "allowCustomHints": "Manuelle Hinweise zulassen", + "allowCustomHintsExplanation": "Wenn Sie diese Option ankreuzen, wird ein Team, wenn es keine automatischen Hinweise mehr hat, aufgefordert, stattdessen den Lehrer um Hilfe zu bitten. Wenn diese Option nicht aktiviert ist, können die Schüler keine Hinweise anfordern, wenn sie keine mehr haben.", + "hintInterval": "Hinweishäufigkeit", + "hintIntervalExplanation": "Wie viel Zeit (in Minuten) müssen die SchülerInnen warten, bevor sie um einen neuen Hinweis bitten?", + "hintLimit": "Hinweisgrenze", + "hintLimitExplanation": "Wie viele Hinweise können Studierende maximal erhalten?", + "hintLimitPlaceholder": "Keine Begrenzung", + "hintStrategy": "Tipp-Strategie", + "noHintsStrategy": "Keine Hinweise erlaubt", + "freeHintsStrategy": "Studenten können kostenlose Tipps erhalten", + "quizHintsStrategy": "Schüler können Hinweise erhalten, indem sie ein Quiz bestehen", + "MoodleXML": "MoodleXML", + "noFile": "Sie haben noch keine Dateien hochgeladen", + "questionNumber": "Anzahl der Fragen", + "questionNumberExplanation": "Die Fragen werden nach dem Zufallsprinzip aus der MoodleXML-Datei ausgewählt", + "questionNumberPlaceHolder": "Wie viele Fragen pro Versuch wollen Sie?", + "title": "Verwaltung von Hinweisen", + "uploadFile": "Bitte laden Sie eine MoodleXML-Datei hoch" + }, + "team": { + "explanation": "Hier können Sie die Oberfläche anpassen, die die Schülerinnen und Schüler auf ihren Computern sehen, wenn sie spielen. Sie können alle Informationen hinzufügen, die sie für die Teilnahme benötigen: Links, Bilder, Nachrichten, den ersten Hinweis, usw.", + "placeholder": "Sie können eine benutzerdefinierte Nachricht, Bilder, Links... hinzufügen. Vergessen Sie nicht festzulegen, wann Sie diese Informationen anzeigen möchten, indem Sie auf das Augensymbol auf der linken Seite klicken.", + "title": "Team-Schnittstelle" + }, + "class": { + "explanation": "Hier können Sie die Oberfläche anpassen, die Sie im Klassenzimmer für alle Schüler anzeigen können. Sie kann das Einführungsvideo, den Countdown, die Bestenliste usw. enthalten. Wenn die Schüler aus der Ferne am Escape Room teilnehmen, werden sie die Klassenschnittstelle nie sehen, sodass Sie diesen Schritt überspringen können.", + "placeholder": "Fügen Sie die Informationen hinzu, die Sie im Klassenzimmer projizieren möchten", + "title": "Schnittstelle zum Klassenzimmer" + }, + "indications": { + "explanation": "Hier können Sie die Informationen, die die Teilnehmer vor Beginn des Escape Rooms sehen, ab dem Zeitpunkt ihrer Anmeldung anpassen. Sie können sie zum Beispiel daran erinnern, bestimmte Materialien mitzubringen, ihnen sagen, dass sie den Kursinhalt noch einmal durchgehen sollen, oder ihnen ein Video zum Anschauen geben.", + "placeholder": "Benutzerdefinierte Anweisungen hinzufügen", + "title": "Anweisungen vor der Aktivität", + "front": { + "countdown": "Countdown", + "ranking": "Bestenliste", + "progress": "Fortschrittsbalken", + "textAndMedia": "Text und Multimedia", + "reorder": "Ziehen zum Neuordnen", + "delete": "Löschen", + "areYouSureDelete": "Sind Sie sicher, dass Sie diesen Inhaltsblock löschen möchten? Diese Aktion kann nicht rückgängig gemacht werden", + "setupVisualization": "Visualisierung", + "visualizationIntro": "Wann möchten Sie diesen Inhaltsblock anzeigen?", + "visualizationStart": "Gleich zu Beginn", + "visualizationFinish": "Wenn sie den Escape Room beendet haben", + "visualizationSucceed": "Wenn die Schülerinnen und Schüler an folgenden Rätseln arbeiten", + "accept": "akzeptieren", + "cancel": "kündigen", + "dropHere": "Jetzt fallen lassen, um den Inhalt hier zu platzieren", + "theme": "Theme", + "Team": "Team", + "Members": "Mitglieder", + "Progress": "Fortschritt", + "Time": "Zeit", + "Student": "Studenten" + } + }, + "list": { + "edit": "Grundlegende Konfiguration", + "evaluation": "Bewertung", + "hints": "Verwaltung von Hinweisen", + "assets": "Hochladen von Vermögenswerten", + "team": "Team-Schnittstelle", + "indications": "Anweisungen vor der Aktivität", + "class": "Schnittstelle zum Klassenzimmer", + "participants": "Teilnehmer", + "puzzles": "Rätsel", + "turnos": "Shifts" + }, + "puzzles": { + "explanation": "In diesem Schritt können Sie die verschiedenen Rätsel festlegen, aus denen der Escape Room besteht. Denken Sie daran, dass sie einer linearen Struktur folgen müssen, d. h., um ein Rätsel zu lösen, müssen die Schüler das vorherige Rätsel gelöst haben. Sie müssen den Namen und die Beschreibung jedes Rätsels sowie dessen Lösung angeben. Wenn Sie die Option \"Automatische Überwachung\" für ein Rätsel aktivieren, wird es nicht in der Teamoberfläche angezeigt, damit die Schüler es lösen können. Stattdessen müssen Sie die API von escapp verwenden, um es zu lösen. Darüber hinaus können Sie für jedes Rätsel automatische Hinweise hinzufügen, die den Schülern ausgehändigt werden, wenn sie nicht weiterkommen und um Hilfe bitten.", + "addNewHint": "hinweis hinzufügen", + "addNewCategory": "kategorie hinzufügen", + "addNewPuzzles": "rätsel hinzufügen", + "automatic": "Automatisch", + "clueName": "Name des Hinweises", + "description": "Beschreibung", + "failMsg": "Nachricht bei Fail", + "Hint": "Hint", + "hints": "Hinweise", + "manual": "Handbuch", + "newCat": "Neue Kategorie", + "noCluesYet": "Sie haben noch keine Rätsel definiert", + "noPuzzlesYet": "Sie haben noch keine Rätsel definiert", + "notYet": "Bitte erstellen Sie ein neues Rätsel, bevor Sie ihm einen Hinweis zuweisen", + "placeholder": "Tracking-Modus auswählen", + "puzzleTitle": "Titel des Rätsels", + "reorder": "Ziehen, um die Rätsel neu anzuordnen", + "solution": "Answer", + "subpuzzles": "Unterpuzzles", + "successMsg": "Nachricht über den Erfolg", + "title": "Rätsel", + "tracking": "Nachverfolgung" + }, + "turnos": { + "title": "Shifts", + "indicacion": "Einen Kommentar hinzufügen", + "addTitle": "Eine neue Schicht hinzufügen", + "alwaysTitle": "Shift immer offen", + "deleteTitle": "Schicht löschen", + "editTitle": "Schicht bearbeiten", + "hourTitle": "Zeit einstellen", + "name": "Name", + "namePlaceholder": "Name zur Identifizierung der Schicht", + "autonomous": "Autonome", + "date": "Datum der Feierlichkeiten", + "datePlaceholder": "Datum, an dem der Escape Room stattfinden wird", + "enrollmentPeriod": "Einschreibungszeitraum", + "enrollmentPeriodPlaceholder": "Zeitraum, in dem sich Schüler für diese Schicht anmelden können", + "password": "Passwort", + "passwordPlaceholder": "Passwort für den Zugriff auf die Schicht. Standardmäßig ist es das gleiche, das Sie für den Escape Room angegeben haben", + "passwordEmpty": "keine", + "capacity": "Kapazität", + "capacityPlaceholder": "Maximal erlaubte Personen in dieser Schicht. Lassen Sie das Feld leer, wenn Sie es nicht begrenzen möchten" + } + }, + "general": { + "areYouSureDelete": "Sind Sie sicher, dass Sie diesen Escape Room löschen wollen?" + }, + "attributes": { + "title": "Der Titel", + "subject": "Das Thema", + "duration": "Die Dauer", + "description": "Die Beschreibung", + "hintInterval": "Die Zeit zwischen den Hinweisen", + "teamSize": "Die Teamgröße", + "scope": "Die Sichtbarkeit", + "invitation": "Das Kennwort", + "teamAppearance": "Das Thema der Teamschnittstelle", + "classAppearance": "Das Thema der Klassenschnittstelle", + "survey": "Die Umfrage", + "pretest": "Der Vortest", + "posttest": "Der Posttest", + "numQuestions": "Die Anzahl der Fragen", + "numRight": "Die Anzahl der Fragen zum Bestehen", + "feedback": "Die Feedback-Option", + "allowCustomHints": "Der Brauch weist darauf hin, dass", + "forbiddenLateSubmissions": "Die Möglichkeit, verspätete Einreichungen zu verbieten", + "classInstructions": "Die Klassenschnittstelle", + "teamInstructions": "Die Teamschnittstelle", + "indicationsInstructions": "Die Instruktionen vor der Aktivität", + "supportLink": "Der Support-Link", + "scoreParticipation": "Die Anwesenheitspunkte", + "automaticAttendance": "Die Anwesenheitsmethode", + "hintLimit": "Die Hinweisgrenze", + "hintSuccess": "Die erzielte Punktzahl pro Hinweis", + "hintFailed": "Die Punktzahl pro Hinweis wurde nicht erreicht", + "forceLang": "Die Sprache" + } + }, + "gallery": { + "insert": "einfügen", + "cancel": "kündigen", + "title": "Galerie", + "editYourText": "HTML bearbeiten", + "insertURL": "URL einfügen", + "selectFileFromList": "Wählen Sie eine Datei aus der Liste oder", + "uploadNew": "eine neue Datei hochladen", + "selectGamificationElements": "Gamification-Element einfügen", + "countdown": "Countdown", + "countdownExplanation": "Es zeigt den Countdown der Zeit an, die den Schülern noch bleibt, um den Escape Room zu beenden", + "ranking": "Bestenliste", + "rankingExplanation": "Sie zeigt die Teams geordnet nach ihrem Leistungsniveau", + "progress": "Fortschrittsbalken", + "progressExplanation": "Sie zeigt den Prozentsatz der Rätsel, die ein Team gelöst hat" + }, + "inspiration": { + "downloadText": "herunterladen", + "intro": "Du weißt nicht, wie du den Escape Room erstellen kannst?
Befolge diese Schritte", + "title": "Escape Room Einrichtungsanleitung", + "banner": { + "design": "Gestaltung", + "approach": "Allgemeines
Ansatz", + "objectives": "Zielsetzungen", + "puzzles": "Rätsel", + "theme": "thema", + "build": "Bauen Sie", + "hints": "Hinweise", + "instructions": "Anweisungen", + "try": "Versuchen Sie", + "puzzleByPuzzle": "Rätsel für Rätsel", + "simulation": "Vollständige Simulation", + "evaluate": "evaluatel", + "prequiz": "Pre-Quiz", + "postquiz": "Post-Quiz", + "survey": "Umfrage" + }, + "steps": { + "first": { + "title": "Schritt 1: Festlegen des allgemeinen Ansatzes", + "intro": "Ein guter Weg, um mit der Gestaltung eines pädagogischen Escape Rooms zu beginnen, besteht darin, herauszufinden, wie sich die Aktivität in das Thema einfügt, und so die richtige Größe der Aktivität zu bestimmen.", + "list": { + "first": "Fakultativ oder obligatorisch", + "second": "Bewertbar oder extra", + "third": "Einzel- oder Gruppenaktivität", + "fourth": "Während der Unterrichtszeit oder außerhalb dieser", + "fifth": "Duration", + "sixth": "Benötigte Ressourcen: Räumlichkeiten, Verwendung von speziellem Material, Budget..." + } + }, + "second": { + "title": "Schritt 2: >Schritt 3: Wählen Sie die Puzzles", + "intro": "Sobald die Aktivität im Kontext des Fachs, in dem sie entwickelt wird, definiert ist, muss festgelegt werden, welche spezifischen Inhalte der Escape Room haben wird. Wie bei jeder anderen didaktischen Aktivität auch. Es wird empfohlen, zunächst einige allgemeine Ziele festzulegen und diese dann in spezifischere Ziele aufzuschlüsseln, die die Schüler erreichen müssen, um die Aktivität zu bewältigen." + }, + "third": { + "title": "Schritt 3: Auswahl der Herausforderungen", + "intro": "Auf der Grundlage der im vorangegangenen Schritt festgelegten Ziele muss die geeignete Art und Weise gefunden werden, das Wissen der Schüler zu testen, indem Aufgaben, die die praktische Anwendung der im Fach erworbenen Fähigkeiten beinhalten, mit theoretischem Wissen kombiniert werden. Die Herausforderungen, mit denen die Schüler konfrontiert werden, hängen in hohem Maße von dem Fach ab, in dem die Aktivität angesiedelt ist.", + "middle": "Einige Beispiele für diese Ressourcen sind unten aufgeführt.", + "list": { + "coded": "Verschlüsselte Nachrichten", + "assembly": "Die Teile eines Objekts bilden", + "info": "Informationen ausgraben", + "logic": "Abstrakte Logik", + "search": "Suche nach versteckten Objekten", + "unusual": "Ungewöhnliche Verwendung eines Objekts", + "light": "Lichter, Geräusche, Gerüche ..." + }, + "resources": "Hier können Sie auf einige Ressourcen zugreifen." + }, + "fourth": { + "title": "Schritt 4: Wählen Sie ein passendes Thema", + "intro": "Das Thema ist eines der Schlüsselelemente, die einen Escape Room von einer gewöhnlichen praktischen Übung unterscheiden. Es geht um die Geschichte, die das ganze Erlebnis umgibt und die den immersiven Charakter des Spiels ausmacht. Sie gibt den Aufgaben, die die Schüler während des Escape Rooms erfüllen müssen, einen Sinn und sorgt für den Zusammenhalt aller Tests der Aktivität. Wenn Sie das Thema entwickeln, müssen Sie es berücksichtigen:", + "list": { + "first": " Die Erzählung, der zeitliche und räumliche Kontext", + "second": " Das Schülerprofil , an das er sich richtet", + "third": "Konsistenz zwischen dem Thema und den gewählten Herausforderungen", + "fourth": "Den Zeitfaktor in das Thema einbeziehen", + "sciencefiction": "Fantasy oder Science Fiction", + "thriller": "Spannung", + "adventure": "Abenteuer", + "history": "Geschichte" + }, + "booksAndMovies": "Eine gute Inspirationsquelle für die Auswahl eines Themas sind Bücher, Videospiele, berühmte Filme oder Serien, da die SchülerInnen die Handlung oder die Charaktere wahrscheinlich schon kennen. Natürlich hat das Thema, in das der Escape Room eingebettet ist, einen großen Einfluss auf die Auswahl des Themas, da die zu bewältigenden Herausforderungen durch die Erzählung unterstützt werden müssen. Einige Beispiele für Themen sind:" + }, + "fifth": { + "title": "Schritt 5: Bau von Herausforderungen, Strecken und anderen Materialien", + "intro": "Mit dem Entwurf des Escape Rooms und den verfügbaren Ressourcen im Hinterkopf, ist es nun an der Zeit, mit dem Bau aller Teile zu beginnen.", + "puzzles": { + "title": "Rätsel", + "content": "Um Herausforderungen zu schaffen, ist es üblich, physische Ressourcen wie Schlösser, Schlüssel, Kisten, Laborausrüstung, Puzzles usw. zu verwenden. Bei einem Escape Room, an dem viele SchülerInnen gleichzeitig teilnehmen, können diese Arten von Ressourcen jedoch das für die Aktivität erforderliche Budget stark erhöhen. Eine Lösung besteht darin, einfache physische Ressourcen (z. B. Papier) mit kostenlosen digitalen Ressourcen zu kombinieren: mobile Anwendungen, Sounds, virtuelle Rätsel usw. Beispiele und Ressourcen finden Sie in Schritt 3." + }, + "hints": { + "title": "Hinweise", + "content": "Ein wesentlicher Bestandteil bei der Gestaltung aller Escape Rooms sind die Hinweise und Hilfsmittel. Es muss unbedingt vermieden werden, dass die Schüler zu viel Zeit mit ein und derselben Herausforderung verbringen, da in diesem Fall die Gefahr besteht, dass die Schüler nicht alle Herausforderungen bewältigen.Um zu verhindern, dass ständig um Hilfe gebeten wird, besteht eine Möglichkeit darin, eine Reihe von Fragen zu entwickeln, die die Schüler jedes Mal, wenn sie einen Hinweis benötigen, zu beantworten versuchen müssen." + }, + "instructions": { + "title": "Anweisungen", + "intro": "Bevor mit der Entwicklung der Aktivität begonnen wird, ist es wichtig, den Schülern das Spiel vorzustellen und zu klären, wo die Grenzen der Aktivität liegen, ob sie den Raum verlassen können, ob sie ihre mobilen Geräte benutzen können, ob sie mit den anderen Teams sprechen können, usw. Dann werden sie in das Thema eingeführt, indem das Ziel, das im Escape Room erreicht werden soll, vorgestellt und Hinweise gegeben werden, wo sie beginnen sollen. Dies kann in Form einer Videobotschaft geschehen, in der eine Figur (entweder die Lehrkraft oder ein \"Schauspieler\") an die SchülerInnen appelliert, bei der Lösung eines Geheimnisses, Verbrechens, Rätsels usw. zu helfen. Sie können auch den umgekehrten Weg einschlagen und ein Video zeigen, in dem die Figur einen Bösewicht spielt, der die SchülerInnen bedroht." + } + }, + "sixth": { + "title": "Schritt 6: Testen Sie den Escape Room", + "intro": "Das Erkennen und Beheben von Fehlern ist für den Erfolg eines pädagogischen Escape Rooms von entscheidender Bedeutung, da ein Fehler katastrophale Folgen für die Entwicklung der Aktivität haben könnte. Es ist notwendig, die Herausforderungen zunächst einzeln zu testen und dann eine vollständige Simulation durchzuführen." + }, + "seventh": { + "title": "Schritt 7: Entwickeln Sie eine Methode zur Bewertung der Erfahrung", + "intro": "Es gibt mehrere Möglichkeiten, um zu evaluieren, ob die SchülerInnen bei der Aktivität gelernt haben. Eine Möglichkeit ist eine Kontrollgruppe, die die Notizen der SchülerInnen, die den Escape Room gemacht haben, mit denen vergleicht, die ihn nicht gemacht haben. zu Beginn des Escape Rooms und am Ende, um zu überprüfen, ob es einen signifikanten Wissenszuwachs bei den SchülerInnen gegeben hat." + } + } + }, + "langs": { + "dontForce": "Nicht erzwingen", + "en": "Englisch", + "es": "Spanisch" + }, + "resources": { + "title": "Ressourcen für die Erstellung von Puzzles", + "coded": "Verschlüsselte Nachrichten", + "assembly": "Die Teile eines Objekts bilden", + "info": "Informationen ausgraben", + "logic": "Abstrakte Logik", + "search": "Suche nach versteckten Objekten", + "secretCode": "Geheimcode", + "snotes": "Snotes: Versteckte Nachrichten", + "ar": "Erweiterte Realität", + "roulette": "Roulette mit Farben und Zahlen", + "coordinates": "Nachricht mit Koordinaten", + "codeGen": "Code-Generator", + "url": "URL mit Kennwort", + "postcard": "Secret code postcard", + "puzzleGen": "Puzzle-Generator", + "ticket": "Gefälschtes Ticket", + "id": "Gefälschte ID", + "whatsapp": "Gefälschtes Whatsapp", + "vt": "Gefälschte virtuelle Tour", + "anonymous": "Anonymus message", + "rhyme": "Reimgenerator", + "soup": "Alphabetischer Suppengenerator", + "crossword": "Kreuzworträtsel-Generator", + "labyrinth": "Labyrinth-Generator", + "math": "Mathematische Rätsel", + "hidden": "Versteckte Objekte Spiele", + "selectApp": "Wählen Sie einen Rätseltyp", + "selectResource": "Meine Rätsel", + "my": "Meine Rätsel", + "share": "aktie", + "shareIntro": "Sie können diesen Link verwenden, um das Rätsel mit Ihren SchülerInnen zu teilen", + "edit": "bearbeiten", + "delete": "löschen", + "outside": "Andere Ressourcen, die nicht in den Anwendungsbereich von escapp fallen", + "fullscreen": "Teilen im Vollbildmodus", + "intro": "Die nachstehende Sammlung von Rätseln ermöglicht es Ihnen, digitale Rätselanwendungen mit dem von Ihnen für Ihren Escapp Escape Room definierten Rätselrahmen zu verbinden. Sie können deren Einstellungen anpassen und sie mit Ihren Schülern als Teil Ihres Escape Rooms teilen." + }, + "participant": { + "attendanceSaved": "Anwesenheit erfolgreich gespeichert", + "areYouSureDelete": "Sind Sie sicher, dass Sie diesen Teilnehmer löschen möchten?", + "back": "zurück", + "confirm": "die Teilnahme bestätigen", + "delete": "Diesen Teilnehmer aus dem Escape Room löschen", + "download": "herunterladen", + "emptyER": "Es gibt noch keine Teilnehmer in diesem Escape Room", + "emptyTurno": "Es gibt noch keine Teilnehmer in dieser Schicht", + "errorSaving": "Es ist ein Fehler aufgetreten", + "participantS": "wartende", + "present": "Gegenwart", + "seeByParticipant": "siehe unter Teilnehmer", + "seeByTeam": "siehe nach Team", + "select": "alle auswählen/abwählen", + "title": "Teilnehmer", + "wrongToken": "Falsches Passwort für den Zugang zum Escape Room", + "connected": "Verbunden", + "waiting": "Warten", + "disconnected": "Getrennt" + }, + "puzzle": { + "puzzle": "rätsel", + "Puzzle": "Puzzle", + "puzzles": "rätsel", + "Puzzles": "Rätsel", + "wrongAnswer": "Entschuldigung! Falsche Antwort", + "messages": "Puzzle-Nachrichten", + "retosSuperados": "Rätsel gelöst", + "correctAnswer": "Herzlichen Glückwunsch! Du hast dieses Rätsel gelöst", + "start": "Start", + "attributes": { + "title": "Der Name des Rätsels", + "sol": "Des Rätsels Lösung", + "desc": "Die Beschreibung des Rätsels", + "order": "Der Auftrag", + "correct": "Die Botschaft des Rätsels gelöst", + "fail": "Das Rätsel falsche Nachricht", + "automatic": "Die automatische Option", + "score": "Das Rätselergebnis" + } + }, + "showStudent": { + "access": "zugang", + "beforeLeave": "Bitte füllen Sie vor Ihrer Abreise den folgenden Fragebogen aus", + "beforeStart": "Bevor Sie beginnen, füllen Sie bitte den folgenden Fragebogen aus", + "opinion": "Ihre Meinung zählt für uns! Bitte sagen Sie uns, was Sie darüber denken", + "play": "spielen", + "results": "ergebnisse", + "Results": "Ergebnisse", + "start": "Der Escape Room hat gerade erst begonnen!", + "join": "beitreten", + "supportLink": "Unterstützung", + "sureUnjoin": "Bist du sicher, dass du den Escape Room verlassen willst?", + "congrats": "Herzlichen Glückwunsch! Du hast den Escape Room erfolgreich verlassen.", + "resultsTitle": "Dies ist die Bestenliste des Escape Rooms", + "unjoin": "verlassen" + }, + "showTeacher": { + "actionList": { + "activateTurno": "start", + "analytics": "Lernende Analytik", + "appearance": "Erscheinungsbild", + "basic": "Grundlegende Konfiguration", + "puzzles": "Rätsel & Hinweise", + "hintStrategy": "Verwaltung von Hinweisen", + "message": "Nachrichten", + "management": "Management", + "setup": "Einrichtung", + "indications": "Anweisungen vor der Aktivität", + "teamInterface": "Team-Schnittstelle", + "classInterface": "Klasse Schnittstelle", + "evaluation": "Bewertung", + "clone": "klonen", + "delete": "löschen", + "edit": "Bearbeiten", + "join": "Einladung zum Beitritt", + "participants": "Teilnehmer", + "teams": "Mannschaften", + "share": "aktie", + "shifts": "Shifts", + "stop": "stopp", + "shift": "schicht", + "turnos": "Shifts", + "volver": "zurück", + "actions": "Aktionen", + "information": "Informationen" + }, + "messages": { + "noHintControl": "Dieser Escape Room hat noch kein Hinweissystem", + "freeHintsStrategy": "Dieser Escape Room ermöglicht es, kostenlose Hinweise zu erhalten", + "noHintsStrategy": "Dieser Escape Room erlaubt es nicht, Hinweise zu erhalten", + "noVideo": "Dieser Escape Room hat noch kein Video", + "copyAria": "Unsichtbare Eingabe, um das Kopieren des Einladungslinks zu ermöglichen", + "copyTitle": "Kopieren Sie den Link", + "qrTitle": "Generieren Sie einen QR-Code zum Teilen", + "noShiftsShare": "Sie können den Escape Room erst dann freigeben, wenn Sie mindestens eine Schicht erstellt haben", + "noShiftsStart": "Sie können den Escape Room erst starten, wenn Sie mindestens eine Schicht erstellt haben", + "join": { + "intro": "Geben Sie den folgenden Link an Ihre Schülerinnen und Schüler weiter, damit sie Zugang zum Escape Room haben:", + "also": "Sie können auch auf", + "register": " und nach der Anmeldung und dem Einloggen können sie den Escape Room mit dem Titel", + "password": " und geben Sie das folgende Passwort ein", + "specialShifts": "Sonderschichten" + } + }, + "titles": { + "appearance": "Erscheinungsbild", + "description": "Beschreibung", + "duration": "Duration (Min.)", + "hints": "Hinweise", + "instructions": "Anweisungen", + "invitation": "Einladung", + "password": "Passwort für den Escape Room", + "posttest": "Post-Quiz", + "pretest": "Pre-Quiz", + "puzzles": "Rätsel", + "subject": "Thema", + "survey": "Umfrage", + "teamSize": "Kapazität des Teams", + "scope": "Datenschutz", + "supportLink": "Link, um Unterstützung während des Escape Rooms zu erhalten", + "thumbnail": "Vorschaubild", + "title": "Titel", + "turnos": "Shifts", + "video": "Video", + "share": "Teilen Sie", + "forceLang": "Erzwingen Sie spezifische Sprache in escapp für die Teilnehmer dieses Escape Rooms" + } + }, + "team": { + "add": "Ein Team hinzufügen", + "addMsg": "Deine Freunde können sich diesem Team anschließen, wenn sie dem Escape Room beitreten", + "addPlaceHolder": "Schreibe den Namen deines Teams", + "areYouSureDelete": "Sind Sie sicher, dass Sie dieses Team aus dem Escape Room entfernen wollen?", + "areYouSureReset": "Sind Sie sicher, dass Sie den Fortschritt dieses Teams zurücksetzen wollen?", + "back": "zurück", + "choose": "Wählen Sie ein Team", + "delete": "Entferne dieses Team aus dem Escape Room", + "deleteSuccess": "Das Team wurde erfolgreich entfernt", + "deleteFail": "Das Team konnte nicht entfernt werden", + "emptyER": "Es gibt noch keine Teams", + "emptyTurno": "Es gibt noch keine Teams in dieser Schicht", + "fullTeam": "Komplettes Team. Bitte wählen Sie ein anderes Team", + "hasStarted": "Haben sie schon angefangen?", + "alreadyFinished": "Dieses Team hat den Escape Room bereits beendet. Bitte wähle ein anderes Team", + "Members": "Mitglieder", + "noTeamYet": "Es gibt noch keine Teams", + "noResults": "Keine Ergebnisse", + "notAvailable": "Das ausgewählte Team ist nicht verfügbar", + "seeByTeam": "siehe nach Team", + "resetProgress": "Den Fortschritt des Teams zurücksetzen, so dass es wieder von vorne anfangen muss", + "resetSuccess": "Der Teamfortschritt wurde erfolgreich zurückgesetzt", + "resetFail": "Der Teamfortschritt konnte nicht zurückgesetzt werden", + "teamSearch": "Suchen Sie nach Ihrem Teamnamen oder Mitgliedern", + "doYouWantToCreate": "Möchten Sie Ihr eigenes Team gründen?", + "Team": "Team", + "team": "team", + "teams": "teams", + "teamS": "mannschaft(en)", + "title": "Mannschaften", + "turnNotAvailable": "Die gewählte Schicht ist nicht verfügbar", + "message": "Eine Nachricht senden", + "email": "Kontakt per E-Mail" + }, + "turno": { + "Actions": "Aktionen", + "all": "Alle Schichten", + "alreadyIn": "Sie sind bereits einer Schicht zugeteilt", + "always": "immer", + "tooLate": "Es ist zu spät, diesem Team beizutreten", + "alwaysOpen": "Immer offen", + "arrows": { + "closeText": "Schließen Sie", + "currentText": "Heute", + "nextText": "Nächste >", + "prevText": "< Zurück" + }, + "days": { + "d": "Sonntag", + "l": "Montag", + "m": "Dienstag", + "x": "Mittwoch", + "j": "Donnerstag", + "v": "Freitag", + "s": "Samstag" + }, + "from": "Von", + "to": "An", + "apply": "Bewerbung", + "activated": "Schichtbeginn", + "deactivated": "Verschiebung gestoppt", + "cancel": "Abbrechen", + "customRange": "Benutzerdefinierter Bereich", + "Description": "Beschreibung", + "months": { + "jan": "Januar", + "feb": "Februar", + "mar": "März", + "apr": "April", + "may": "Mai", + "jun": "Juni", + "jul": "Juli", + "aug": "August", + "sep": "September", + "oct": "Oktober", + "nov": "November", + "dec": "Dezember" + }, + "place": "Standort", + "noPlace": "Ort nicht angegeben", + "fullTurno": "Die von Ihnen gewählte Schicht ist voll. Wählen Sie eine andere", + "notActive": "Dieser Escape Room ist im Moment nicht für Sie verfügbar", + "selectActivate": "Wählen Sie die Schicht aus, die Sie aktivieren/deaktivieren möchten", + "selectStudent": "Wählen Sie eine Schicht", + "areYouSureReset": "Sind Sie sicher, dass Sie diese Schicht zurücksetzen wollen? Der gesamte Fortschritt der Schüler geht verloren", + "todayEscapeRoom": "Der Escape Room wird an diesem Tag gefeiert", + "Turno": "Schicht", + "Links": "Links", + "activateTurnos": "Verwalten der Escape-Room-Schichten", + "areYouSureStop": "Sind Sie sicher, dass Sie diesen Wechsel stoppen wollen?", + "areYouSureStopScheduledFor": "Sind Sie sicher, dass Sie die Schicht, die für", + "areYouSureStart": "Sind Sie sicher, dass Sie mit dieser Umstellung beginnen wollen?", + "areYouSureStartScheduledFor": "Sind Sie sicher, dass Sie die Schicht beginnen wollen, die für", + "activateTurnosBC": "Schichten verwalten", + "resetProgress": "Diese Schicht zurücksetzen", + "status": "Status", + "statuses": { + "active": "Aktiv", + "finished": "Fertige", + "pending": "Anhängig" + }, + "noTurnAvailable": "Keine Abzweigung für diese ER verfügbar", + "theres": "Es gibt", + "thereare": "Es gibt", + "start": "Schichtbeginn", + "stop": "Schicht anhalten", + "spot": "offene Stelle", + "spots": "offene Stellen", + "openSpots": "in dieser Schicht", + "turnNotAvailable": "Der ausgewählte Zug ist nicht verfügbar", + "statusMsg": { + "pending": "Anstehende Schicht", + "active": "Aktive Schicht", + "finished": "Geschlossene Schicht", + "canSignUp": "Verschiebung verfügbar", + "full": "Keine Plätze mehr in dieser Schicht" + }, + "attributes": { + "date": "Das Datum der Feier", + "place": "Der Titel", + "from": "Das Datum des Beginns des Einschreibungszeitraums", + "to": "Das Enddatum des Einschreibungszeitraums", + "password": "Das Shift-Passwort", + "capacity": "Die Schichtkapazität", + "status": "Der Status" + } + }, + "user": { + "actions": { + "alreadyRegistered": "Bereits registriert?", + "iForgotMyPassword": "Ich habe mein Passwort vergessen", + "login": "anmeldung", + "Login": "Anmeldung", + "notRegistered": "Sie haben noch kein Konto?", + "register": "registrieren", + "Register": "Register", + "resetPassword": "Passwort zurücksetzen", + "save": "speichern" + }, + "attributes": { + "surname": "Nachname", + "name": "Name", + "username": "E-Mail", + "password": "Passwort", + "gender": "Geschlecht" + }, + "role": "Rolle", + "teacher": "Lehrer", + "student": "Studenten", + "gender": "Geschlecht", + "lang": "Sprache", + "acceptTerms": "Bedingungen und Konditionen", + "terms": "Ich bin damit einverstanden, dass meine Daten in anonymisierter Form ausschließlich für Forschungszwecke verwendet werden.", + "inputs": { + "editUser": "Profil bearbeiten", + "genderPlaceHolder": "Wählen Sie Ihr Geschlecht", + "namePlaceHolder": "Geben Sie Ihren Namen ein", + "passwordConfirmPlaceHolder": "Geben Sie Ihr Passwort ein", + "passwordPlaceHolder": "Geben Sie Ihr Passwort ein", + "surnamePlaceHolder": "Geben Sie Ihren Nachnamen ein", + "usernamePlaceHolder": "Geben Sie Ihre E-Mail ein" + }, + "messages": { + "doNotMatch": "Ups! Passwörter müssen übereinstimmen", + "fillIn": "Beide Felder Passwort und Passwortbestätigung müssen ausgefüllt werden", + "invalidDNI": "Ungültige ID-Nummer. Falsches Format", + "welcome": "Willkommen bei der Escape Room Management Plattform ;)", + "wrongLetterDNI": "Huch! Ungültige ID-Nummer, der Buchstabe muss mit der Zahlenkombination übereinstimmen", + "notFound": "Benutzer nicht gefunden", + "ensureRegistered": "Es ist ein Fehler aufgetreten. Bitte stellen Sie sicher, dass Sie sich korrekt im Escape Room registriert haben", + "emailConfirm": "Bitte bestätigen Sie Ihre E-Mail-Adresse, indem Sie auf die Schaltfläche \"Bestätigen\" unten klicken", + "emailConfirmButton": "bestätigen", + "emailResetPassword1": "Wenn Sie diese E-Mail erhalten, haben Sie Ihr Passwort in escapp zurückgesetzt.", + "emailResetPassword2": "Dies ist der Link zum Zurücksetzen Ihres Passworts:" + }, + "name": "Name", + "password": "Passwort", + "passwordConfirm": "Bestätigen Sie das Passwort", + "passLeaveBlank": "Wenn Sie Ihr Passwort ändern möchten, füllen Sie die folgenden Felder aus. Andernfalls lassen Sie sie leer", + "roles": { + "admin": "Verwaltung", + "student": "studenten", + "teacher": "Lehrer" + }, + "sessionExpired": "Ihre Sitzung ist abgelaufen", + "surname": "Nachname", + "title": "Benutzer", + "user": "benutzer", + "username": "E-Mail", + "wrongCredentials": "Anmeldefehler. Bitte überprüfen Sie Ihre Anmeldedaten", + "turno": "Schicht", + "man": "Mann", + "woman": "Frau", + "other": "Andere" + }, + "hint": { + "Hints": "Hinweise", + "hintFailedToObtain": "Hinweis nicht erhalten", + "hintObtained": "Hinweis erhalten", + "attributes": { + "content": "Der Inhalt des Hinweises", + "order": "Der Auftrag", + "category": "Die Hinweiskategorie" + } + }, + "message": { + "title": "Eine Nachricht senden", + "ok": "Nachricht sent", + "nok": "Nachricht konnte nicht gesendet werden", + "send": "send", + "everyone": "Jeder, der mit diesem Escape Room verbunden ist", + "shift": "Jeder, der mit der Schicht verbunden ist, gehört dazu", + "team": "Alle, die zum Team gehören, sind verbunden", + "participant": "Nur eine Person (falls angeschlossen)", + "waiting": "Beziehen Sie auch Teilnehmer ein, die darauf warten, den Escape Room zu betreten", + "msgPlaceholder": "Schreiben Sie hier Ihre Nachricht", + "msgPlaceholder2": "Schreiben Sie hier Ihre Nachricht. Alle Benutzer in dieser Liste, die derzeit verbunden sind, werden sie erhalten." + } +} \ No newline at end of file diff --git a/io.js b/io.js index 4f0d367d..4fb62f9a 100644 --- a/io.js +++ b/io.js @@ -19,19 +19,19 @@ exports.createServer = (server, sessionMiddleware) => { const {escapeRoomId, lang, waiting, "turnId": teacherTurnId} = getInfoFromSocket(socket); let forceLanguage = "en"; - if (lang && (lang === "es" || lang === "en")) { + if (lang && (lang === "es" || lang === "en" || lang === "de")) { forceLanguage = lang; } let i18n = require(`./i18n/${forceLanguage}`); if (user) { - if (user.lang && (user.lang === "es" || user.lang === "en")) { + if (user.lang && (user.lang === "es" || user.lang === "en" || user.lang === "de")) { i18n = require(`./i18n/${user.lang}`); } const {token, username} = user; const {"turnId": studentTurnId, teamId, participation, erState, errorMsg, language, teamInstructions} = await checkAccess(user, escapeRoomId, i18n, waiting); - if (language && (language === "es" || language === "en")) { + if (language && (language === "es" || language === "en" || language === "de")) { i18n = require(`./i18n/${language}`); } diff --git a/models/escapeRoom.js b/models/escapeRoom.js index c311e63e..ae8dac5c 100644 --- a/models/escapeRoom.js +++ b/models/escapeRoom.js @@ -111,7 +111,7 @@ module.exports = function (sequelize, DataTypes) { "forceLang": { "type": DataTypes.STRING, "allowNull": true, - "validate": {"isIn": [["en", "es"]]} + "validate": {"isIn": [["en", "es", "de"]]} } } ); diff --git a/models/user.js b/models/user.js index 217c7a3b..38716918 100644 --- a/models/user.js +++ b/models/user.js @@ -59,7 +59,7 @@ module.exports = function (sequelize, DataTypes) { "lang": { "type": DataTypes.STRING, "allowNull": true, - "validate": {"isIn": [["en", "es"]]} + "validate": {"isIn": [["en", "es", "de"]]} } }); diff --git a/public/apps/digitalLock/dist/vendors/I18n.js b/public/apps/digitalLock/dist/vendors/I18n.js index 2a3635a3..e7ac01a6 100644 --- a/public/apps/digitalLock/dist/vendors/I18n.js +++ b/public/apps/digitalLock/dist/vendors/I18n.js @@ -63,7 +63,7 @@ function readURLparams(){ } function isValidLanguage(language){ - return ((typeof language === "string") && (["en", "es"].indexOf(language) !== -1)); + return ((typeof language === "string") && (["en", "es", "de"].indexOf(language) !== -1)); } export function getTrans(s, params){ diff --git a/public/apps/digitalLock/scorm12/vendors/I18n.js b/public/apps/digitalLock/scorm12/vendors/I18n.js index 2a3635a3..e7ac01a6 100644 --- a/public/apps/digitalLock/scorm12/vendors/I18n.js +++ b/public/apps/digitalLock/scorm12/vendors/I18n.js @@ -63,7 +63,7 @@ function readURLparams(){ } function isValidLanguage(language){ - return ((typeof language === "string") && (["en", "es"].indexOf(language) !== -1)); + return ((typeof language === "string") && (["en", "es", "de"].indexOf(language) !== -1)); } export function getTrans(s, params){ diff --git a/public/apps/digitalLock/scorm2004/vendors/I18n.js b/public/apps/digitalLock/scorm2004/vendors/I18n.js index 2a3635a3..e7ac01a6 100644 --- a/public/apps/digitalLock/scorm2004/vendors/I18n.js +++ b/public/apps/digitalLock/scorm2004/vendors/I18n.js @@ -63,7 +63,7 @@ function readURLparams(){ } function isValidLanguage(language){ - return ((typeof language === "string") && (["en", "es"].indexOf(language) !== -1)); + return ((typeof language === "string") && (["en", "es", "de"].indexOf(language) !== -1)); } export function getTrans(s, params){ diff --git a/public/images/uzh_logo_d_neg.png b/public/images/uzh_logo_d_neg.png new file mode 100644 index 0000000000000000000000000000000000000000..df22d827a4fe26afd9e06d0fdda6e1cd4e6b5e92 GIT binary patch literal 3079 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 x!iE?=|L4&* literal 0 HcmV?d00001 diff --git a/public/scorm/SCORM_Player.js b/public/scorm/SCORM_Player.js index 8169d721..20ed25ee 100644 --- a/public/scorm/SCORM_Player.js +++ b/public/scorm/SCORM_Player.js @@ -496,7 +496,8 @@ function SCORM_Player (options) { return typeof language === "string" && [ "en", - "es" + "es", + "de" ].indexOf(language) != -1; } diff --git a/public/stylesheets/style.css b/public/stylesheets/style.css index 04a7be39..97472068 100644 --- a/public/stylesheets/style.css +++ b/public/stylesheets/style.css @@ -3747,7 +3747,6 @@ body .daterangepicker .calendar-time .hourselect option, body .daterangepicker . .finish .ranking-table .ranking-members { display: none; } - .showStudent .flex { flex-direction: column; } diff --git a/public/stylesheets/style.css.map b/public/stylesheets/style.css.map index f97072db..87e7b441 100644 --- a/public/stylesheets/style.css.map +++ b/public/stylesheets/style.css.map @@ -1 +1 @@ -{"version":3,"sourceRoot":"","sources":["common/gugi.scss","common/buttons.sass","common/colors.sass","common/mixins.sass","analytics.sass","appearance.sass","apps.sass","calendar.sass","charts.sass","daterange.sass","dialogs.sass","escapeRoomCustomization.sass","escapeRoomForm.sass","escapeRoomShow.sass","escapeRooms.sass","error.scss","evaluation.sass","filters.sass","flash.sass","hints.sass","inspiration.sass","instructions.sass","join.sass","main.sass","messages.sass","participants.sass","portada.sass","puzzles.sass","ranking.sass","showStudent.sass","table.sass","timeline.sass","resources.sass","teams.sass","turnos.sass","turnos.manager.sass","userForm.sass","user.sass","style.sass"],"names":[],"mappings":";AAAA;EACC;EACA;;ACSD;EACE;EACA,OCZa;EDab;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;;AACF;EACE;;AACF;EACE;EACA;;AACF;EACE;EACA;EACA;;AACF;EACE,kBC9BU;ED+BV,OClCW;EDmCX,QChCU;EDiCV;EACA;EACA;EACA;EACA;EACA;;AAEF;EACE;EACA;EACA;EACA;EACA;EACA;EACA,kBC9CW;ED+CX,OCnDW;EDoDX,QChDW;;ADkDb;EAtDA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAgDE,kBCpDW;EDqDX,cCrDW;EDsDX,OC1DW;;AD4Db;EA5DA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAsDE,kBC7DS;ED8DT,cC9DS;ED+DT,OChEW;;ADkEb;EAlEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EA4DE,kBC7DO;ED8DP,OCrEW;EDsEX,cC/DO;;ADiET;EACE;EACA,OC1EW;ED2EX;EACA;EACA;EACA;EACA;EACA;EACA;;AAEF;EAnFA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EA6EE,kBC/EW;EDgFX,cChFW;EDiFX,OCvFW;;ADyFb;EACE,kBCvFU;EDwFV,OC3FW;ED4FX;EACA;EACA,cC3FU;ED4FV;EACA;EACA;EACA;;AAEF;EACE,kBChGS;EDiGT,OCtGW;EDuGX;EACA;EACA,cCpGS;EDqGT;EACA;EACA;EACA;;AAEF;EACE;EACA;EACA;EACA;;AAEF;EACE;;;AEjHJ;EACE;;AACA;EAPA;EACA;EACA;;;AASF;EACE;;AACA;EAbA;EACA;EACA;;;AAcF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,ODxBW;;;AECT;EACE;EACA;EACA;;AACA;EACE;EACA;EACA;;AAEE;EACE;EACA;EACA;EACA;EAMA;EACA;EACA;EACA;EACA;EACA;EACA;;AAXA;EACE;EACA;EACA;EACA;;AAQF;EACE;EACA;EACA;;AAEF;EACE;;AAER;EACE;;AACA;EACE;EACA;;AACA;EACE;EACA,OF1CC;EE2CD;EACA;EACA;EACA;EACA;EACA;;AACA;EACE,OF/CC;;AEgDH;EACE,OF9CH;;AE+CC;EACE,OFpDA;;AEqDF;EACE,OF1DD;;AE2DD;EACE,OFrDC;;AEsDH;EACE;EACA;;AACF;EACE,OF/DD;;AEgED;EACE;;AACA;EACE;;AACR;EACE;EACA;;AAEN;EACE;EACA;EACA;;AACJ;EACE;;AAEA;EACE;;AACF;EACE;EACA;EACA;;AACF;EACE;EACA;;AACJ;EACE;EACA;;;AACJ;EAGM;IACE;;EAGI;IACE;;;AClGR;EACE;EACA;EACA;;AACA;EACE;;AACF;EACE;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE,cHjBC;;AGkBP;EACE;EACA;;AACA;EACE;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;ACpCd;EACI;;AAEI;EACI;;AACJ;EACI;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACI;EACA;EACA;EACA;;AACJ;EACI;EACA;;AAER;EACI;;AACR;EL1BN;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EKoBU;EACA;EACA,kBJ1BG;EI2BH,OJ/BG;EIgCH;EACA;EACA;;AACA;EACI;;AACJ;EACI,kBJnCF;EIoCE;;;AAChB;EACI;EACA;EACA;EACA;EACA;EACA;;AACA;EACI;EACA;;AACJ;EACI;EACA;EACA;EACA;EACA;;AACJ;EACI;EACA;;AACA;EACI;IACI;;;;AAEZ;EACI;EACA;;;AChEJ;EACE;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;;AACF;EACE,OLVC;;AKWH;EACE;EACA;;AACF;EACE,OLrBG;EKsBH;EACA;;AAEE;EACE;EACA,kBLxBC;EKyBD;EACA;;AAGJ;EACE;EACA;EACA;;AACA;EACE;EACA;;AACF;EACE;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA,oBL3CD;EK4CC;;AACF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACJ;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;;AACF;EACE;EACA,mBLlEC;;AKmEL;EACE;EACA;;AAEA;EACE;;AACN;EACE;EACA;;AACF;EACE,OL5EC;;AK6EH;EACE;EACA;EACA;;;ACvFR;EACE;EACA,ONDS;;;AMEb;EACE;EACA;;;AACF;EACE;EACA,ONRa;EMSb;EACA;EACA;EACA;EACA;;;AACF;EACE;;;AACF;EACE,ONhBW;EMiBX;EACA;;AACA;EACE;EACA;EACA;;AACF;EACE;EACA;;;AACJ;EACE;EACA;;AACA;EACE,ON9BS;EM+BT;;;AChCA;EACI;EACA;EACA;EACA,OPJO;EOKP;EACA;;AAEI;EACI,kBPHD;EOIC;;AACA;EACI,kBPNL;EOOK;;AACR;EACI;;AACJ;EACI;;AACR;EACI,OPhBE;;AOiBN;EACI;;AACA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACI;;;AC/BZ;EACI;;AACR;EACI;;AACJ;EACI;EACA;EACA;EACA;;AACA;EACI;;AACR;EACI;EACA;EACA;;AACJ;EACI;;AACJ;EACI;;AACA;EACI;;AACJ;EACI,ORpBE;EQqBF;EACA;;AAEA;EACI;EACA,OR5BH;;AQ6BG;EACI;EACA,ORzBT;;AQ0BC;EACI,OR3BL;EQ4BK;EACA;;AACJ;EACI;EACA;EACA;EACA;EACA,kBRzCH;;AQ2CL;EACI,OR7CG;EQ8CH;EACA;;AACJ;EACI;EACA;EACA;EACA;EACA;;AACJ;EACI;EACA;EACA;EACA,ORpDG;EQqDH;;AACJ;EACI,ORtDD;;AQuDH;EACI;;AACA;EACI;EACA;EACA;;AACR;EACI;EACA,ORtEG;;AQwEH;EACI;;AACA;EACI;;AAEZ;EACI,OR3EE;;AQ4EN;EACI,OR3EC;;AQ4ET;EACI;EACA;EACA;;AACA;EACI;EACA;EACA;EACA;;AACA;EACI;EACA;;AACA;EACI;;AACJ;EACI;EACA;EACA;;AACA;EACI;EACA;EACA;EACA;;AACR;EACI;;AACA;EACI;;AACA;EACI;EACA;;AAEpB;EACI;IACI;;;AACR;EACI;IACI;;;AACZ;EACI;EACA;EACA;;AACJ;EACI;EACA;;AACJ;EACI;EACA;EACA;;AACJ;EACI;;AACA;EACI;EACA;;AACR;EACI;EACA;EACA,ORlIG;;AQmIP;EACI;;AACA;EACI;EACA;;AACR;EACI;EACA;EACA;EACA,YRnJO;EQoJP;EACA;EACA;EACA;EACA;;;ACpJE;EACE;;AACR;EACE;;AACA;EACE;;AACF;EACE;;AACJ;EACE;;AACA;EACE;EACA;EACA;EACA;EACA;;AACA;EACE;;AACF;EACE;EACA;EACA;EACA,OTzBG;ES0BH;EACA;;AACA;EACE;;AACF;EACE;EACA;;AACJ;EACE;EACA;EACA;EACA;EACA;;AAEN;EACE;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;;AACN;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;;AACF;EACE;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;;;AAEV;EACE;IACE;;EACA;IACE;;;AACN;EAIQ;IACE;;EACA;IACE;;EACF;IACE;;;AC9FR;EACE;EACA;EACA;;AACA;EACE;EACA;;AACA;EACE;;AACA;EACE;;AACJ;EACE;EACA;EACA;EACA;;AACF;EACE;EACA;EACA;EACA;EACA;EACA;EACA,OVvBG;EUwBH;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA,OVjCG;EUkCH;;AACF;EACE;;AACF;EACE;EACA;EACA;EACA;;AACF;EACE;EACA;EACA;;AACA;EACE;;AACN;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AACF;EACE;;AACF;EACE,OV1DG;EU2DH;EACA;EACA;;AACN;EACI;EACA,OVhEK;EUiEL;EACA;EACA;EACA;EACA;;AACA;EACE;;;ACxER;EACE;;AACA;EACE;EACA;EACA;EACA;;AACA;EACE;;AACJ;EACE;;AACA;EACE;EACA;EACA;;AACF;EACE;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;;AACJ;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;;AACA;EACE;EACA;;AACA;EACE;;AACF;EACE;EACA;EACA;EACA,OXvCC;;AWwCH;EACE;;AACA;EACE,OX5CF;;AW8CF;EACE;EACA;EACA;EACA;EACA;;AACA;EACE;;AAGR;EACE;EACA;EACA;;AACF;EACE;EACA;;AACA;EACE;;AACJ;EACI;;AACR;EACE;EACA;EACA;EACA;;AACA;EACE;;AACJ;EACE;EACA;EACA;;AACF;EACE;;AACA;EACE,OXrFK;EWsFL;EACA;;AACF;EACE,OXzFK;;AW0FP;EACE;;AAIE;EACE;;AACJ;EACE;EACA;EACA,OXlGG;;AWmGH;EACE;EACA,OX/FD;;AWiGC;EACE;;AACF;EACE,OXtGD;;AWuGH;EACE;;AACA;EACE,OX5GA;;AW6GJ;EACE;;AACA;EACE,OX9GD;;AW+GL;EACE,OXtHG;EWuHH;EACA;;AACJ;EACE,OX1HK;EW2HL;EACA;EACA;EACA;EACA;;AACA;EACE;;AACF;EACE,OX3HC;;AW4HL;EACE;EACA,OXrIO;EWsIP;EACA;;AACF;EACE;EACA;EACA;EACA;EACA;;AACF;EACE;EACA;EACA;EACA,OX5IO;EW6IP;;AACF;EACE,OX9IG;;AW+IL;EACE,OXvJO;EWwJP;EACA;EACA;;AACA;EACE,OXzJI;;AW0JR;EACE;EACA;EACA,OXhKO;;AWiKP;EACE;;AACF;EACE,OXjKI;EWkKJ;;AACF;EACE,OXlKG;EWmKH;;AACJ;EACE;EACA;EACA,OX5KO;;AW6KP;EACE,OX3KI;EW4KJ;;AACN;EACE;;AACF;EACE;EACA;;AACF;EACE;EACA;EACA;;AACF;EACE;;AACA;EACE;EACA;;AACJ;EACE;EACA;EACA,OX1LK;;;AW6LX;EAGM;IACE;;EACF;IACE;IACA;;EACA;IACE;IACA;IACA;IACA;;EACA;IACE;IACA;IACA;IACA;;EACJ;IACE;IACA;IACA;IACA;;EACA;IACE;;;AAEZ;EACE;IACE;;;AC/NA;EACE;EACA;EACA;EACA;;AACA;EACE;EACA;;AACN;EACE;EACA;EACA;EACA;EACA;;AACA;EACI;EACA;;AACJ;EACE;EACA;EACA;;AACA;EACE;EACA;EACA;;AACF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;;AACF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA,kBZ9CI;;AY+CJ;EACE,kBZ/CG;;AYgDP;EACE;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;;AACF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEJ;EACE;EACA;EACA;;;AAEV;EAGM;IACE;;;AACR;EAGM;IACE;;;AACR;EAGM;IACE;;;ACtFR;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;;AAGE;EACE;EACA;;AAEA;EACE;EACA;EACA;EACA,YA/BF;EAgCE;EACA;EACA;EACA;;AAEF;EACE;;AAEF;EACE;;AAGJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA,cApDA;EAqDA;EACA;;AAEF;EACE;EACA;;AAEA;EACE;EACA;EACA;EACA,YAhEF;EAiEE;EACA;EACA;EACA;;AAEF;EACE;;AAEF;EACE;;AAGJ;EACE;EACA;;AAEA;EACE;EACA;EACA;EACA,YArFF;EAsFE;EACA;EACA;EACA;;AAEF;EACE;;AAEF;EACE;;AAGJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA,cA1GA;EA2GA;EACA;;AAEF;EACE;EACA;;AAEA;EACE;EACA;EACA;EACA,YAtHF;EAuHE;EACA;EACA;EACA;;AAEF;EACE;;AAEF;EACE;;AAKN;EACE,YAtIE;EAuIF;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EAEA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAIJ;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA,kBAvLF;;AAyLE;EACE;EACA;EACA;EACA;;AAMR;EACE;EACA;EACA;EACA;EACA;;AAIJ;EACE;EACA;EACA;EACA;;AAEA;EACE,OAnNE;EAoNF;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;EACA;EACA;;AAIJ;EACE;EACA;EACA,YAzOC;EA0OD;EACA;EACA;EACA;EACA;EACA,OA9OE;EA+OF;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA,YA7PA;EA8PA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA,cAvQA;;AAyQA;EACE;;;AAQV;EACE;IAAI;;EACJ;IAAK;;EACL;IAAM;;;AAER;EACE;IAAI;;EACJ;IAAK;;EACL;IAAM;;;AAER;EACE;IAAI;;EACJ;IAAK;;EACL;IAAK;;EACL;IAAM;;;AC9RF;EACE;;AACF;EAGE;EACA;;AAHA;EACE;;AAGF;EACE;;AACF;EACE;EACA;;AACA;EACE;EACA;;AAEN;EACE,OdlBK;EcmBL;;AACA;EACE;EACA;;AACA;EACE;EACA;;AAGE;EACE,Od7BH;Ec8BG;;AAGA;EACE;EACA;;AACV;EACE;EACA;;;ACxCV;EACE;;AACA;EACE;;AACF;EACE;EACA;;AACA;EACE;;AACJ;EACE;EACA;EACA;EACA;;AACF;EACE;;;ACfJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA,OhBPW;EgBQX;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;ACnBE;EACE;EACA;;AACF;EACE;EACA;;AACF;EACE,OjBRK;EiBSL;EACA;EACA;;AACF;EACE;EACA;EACA,OjBTG;;AiBUL;EACE;EACA;;AACA;EACE;EACA;EACA;EACA;;;ACvBN;EACE;;AACA;EACE;;AACF;EACE;;AACF;EACE,OlBLM;EkBMN;;AACF;EACE,OlBPO;EkBQP;EACA;;AACF;EACE,OlBRG;;AkBSL;EACE;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;;AACA;EACE;;AACF;EACE;;AACN;EACE;;AACF;EACE;;AACF;EACE;EACA;;AAEA;EACE;;AACJ;EACE;;AAEE;EACE;EACA,OlBzCG;EkB0CH;EACA;EACA;EACA;;AACN;EACE;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;;AACF;EACE;EACA,OlB3DD;;AkB4DL;EACE;;AACF;EACE;EACA;EACA;;AAEF;EACE;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AACV;EAGM;IACE;IACA;;EAEA;IACE;IACA;IACA;;;ACrGJ;EACE;;AACF;EAEE;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA,OnBpBG;;AmBqBL;EACE;EACA;;AACF;EACE;EACA;EACA,OnB3BG;EmB4BH;EACA;;AACF;EACE;EACA,OnBhCG;;AmBiCH;EACE,OnBlCC;;AmBmCP;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEJ;EACE;EACA;EACA;EACA;EACA;;AACA;EACE;EACA,kBnBjDK;EmBkDL;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA,OnBtEC;EmBuED;;AAER;EACE;EACA;;AACA;EACE,kBnB3EH;;AmB4EC;EACE;;AACJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACF;EACE;EACA;EACA;EACA;;AACF;EACE;EACA;EACA;EACA;;AACF;EACE;EACA;EACA;;AACF;EACE;EACA;EACA;;AACF;EACE;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;;AACJ;EACE;;AACA;EACE;EACA;;AACJ;EACE;EACA;EACA,OnB3HG;;AmB4HL;EACE,OnBnIK;EmBoIL;EACA;EACA;EACA;EACA;;AACA;EACE;;AACF;EACE;EACA;;AACF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,anB9JG;;AmB+JH;EACE;EACA;;AACN;EpBnKJ;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EoB6JM;EACA;EACA;EACA,kBnBpKO;;AmBqKT;EACE;EACA;EACA;EACA;;AAEE;EACE;;AACF;EACI;;AACA;EACE;EACA;EACA;EACA;EACA;;AACF;EACE;;AAEJ;EACE;;AAEF;EACE;;AACR;EACE;EACA;;AACA;EpBpMN;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EoB8LQ;EACA;EACA;;AACA;EACE,kBnBvME;;AmBwMJ;EACE,kBnBrMD;;AmBsML;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;;AACF;EACE;EACA;EACA,OnBxOC;EmByOD;EACA;EACA;EACA;;AACF;EACE;EACA;EACA;EACA;EACA;;AAEN;EACI;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;;AACN;EACE;EACA;EACA;;AACA;EACI;;AACN;EACE;EACA;;AACA;EACE;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AACF;EACE;;AACF;EACE;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;;AACJ;EACE;;AACF;EACE;;AACF;EACE;;AACF;EACE;;AACF;EACE;;AACR;EACE;;AACA;EACE;;AACA;EACE,OnB9SE;;AmB+SJ;EACE;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;;AACR;EACE;;AACA;EACE;;AACA;EACE;EACA;;AACF;EACE;EACA;EACA;;AACF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE,cnBhVA;;AmBiVF;EACE;EACA;;;AAIZ;EACE;EACA;;AACA;EACE;EACA;EACA;;AACF;EACE;;AACF;EACE;;;AAEJ;EACE;;;AACJ;EACE;;;AAEA;EACE;EACA;;AACF;EACE;EACA;;AACA;EACE;;;AACN;EACE;;;AACF;EACE;;;AACF;EACE;;;AACF;EACE;;;AACF;EACE;;;AACF;EACE;EACA;;;AC9XE;EACE;EACA;EACA;EACA;EACA;;AACA;EACE,kBpBND;EoBOC;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA,kBpBdK;EoBeL;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;;AACJ;EACE;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;;AACA;EACE;;AACF;EACE;EACA;;AACN;EACE;EACA;EACA,OpB3CG;EoB4CH;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;;AACF;EACE;EACA;;AACF;EACE;;AAGJ;EACE;;AACF;EACE;;AAEA;EACE,OpBlEC;EoBmED;;AACJ;EACE;;AACF;EACE;;AACA;EACE;;AACF;EACE;;AACA;EACE;EACA;EACA;EACA;EACA,OpB9EC;;AoB+ET;EACE;EACA;EACA;EACA;EACA;;AACF;EACE;;AACF;EACE;EACA;;AACA;EACE;;AACA;EACE,OpBhGC;EoBiGD;;AACJ;EACE;EACA;EACA;EACA;EACA;EACA,OpBxGG;EoByGH;;AACA;EACE;EACA;;AAEJ;EACE;;AAEJ;EACE;;;AACR;EAIQ;IACE;IACA;;;AACV;EAIQ;IACE;IACA;;EACA;IACE;IACA;;EACA;IACE;IACA;;;ACxId;EACE;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAGA;EACE;;AAGF;EACE;;AAIF;EACE;EACA;EACA;EACA,OrBzBO;EqB0BP;;AAEJ;EACE;EACA;EACA;EACA;EACA,kBrBlCW;EqBmCX;EACA;EACA;;AAEA;EACE;EACA;;AACF;EACE;EACA;EACA;EACA;EACA;;AACF;EACE;;AAEE;EACE;;AACR;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EAuCA;;AArCE;EACE;EACA;;AAEA;EACE;;AACJ;EACE,OrBxEI;;AqByEN;EACE;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;;AACF;EACE;;AACF;EACE;EACA,OrBxGC;;AqB0GX;EACE;;AACF;EACE;;AACA;EACE;EACA;;AAEF;EACE;EACA;;AACJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA,OrBhIO;;AqBiIT;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,OrBvJO;;AqByJX;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACF;EACE;EACA;EACA;;AACA;EACE,OrBpKM;;AqBqKR;EACE,OrBlKG;;AqBmKL;EACE,OrBvKO;;;AqByKf;EAEI;IACE;;EACA;IACE;;;AAER;EAEI;IACE;;EACF;IACE;;;AACN;EAGM;IACE;;EACF;IACE;;;AC/LA;EACI,OtBDC;EsBED;EACA;;AACJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA,OtBZG;;AsBaH;EACI;;AACR;EACQ,OtBfH;;AsBgBL;EACI;EACA,OtBlBC;EsBmBD;;AACA;EACI;;AACA;EACI;EACA;EACA;;AACZ;EACI;EACA;;;AC7BV;EACE;EACA;;AACA;EACE;;AAGI;EACE;;AACF;EACE;EACA;EACA;EACA;;AACA;EACE,OvBfC;EuBgBD;;AACJ;EACE;;AACF;EACE;;AACF;EACE;EACA;;AACA;EACE;;AAEJ;EACE;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;;AACA;EACE;;AACV;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;;AACF;EACE;;AACF;EACE;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;;AAEF;EACE;;AAOJ;EACE,kBvBhEC;EuBiED,OvBxEK;EuByEL,cvBlEC;EuBmED;;AACF;EACE,kBvBzEI;EuB0EJ,OvB7EK;EuB8EL,cvB3EI;EuB4EJ;;AACF;EACE,kBvB7EK;EuB8EL,OvBlFK;EuBmFL,cvB/EK;EuBgFL;;AACF;EACE;EACA,OvBvFK;EuBwFL;EACA;;AACF;EACE,kBvBtFG;EuBuFH,OvB5FK;EuB6FL,cvBxFG;EuByFH;;AACF;EACE,kBvB5FK;EuB6FL,OvBjGK;EuBkGL,cvB9FK;EuB+FL;;AACN;EACE;;AACJ;EACE;EACA;EACA;EACA;;;AC3GJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;;AACJ;EACI;EACA;EACA,kBxBXS;EwBYT;EACA;;AACA;EACI;EACA;EACA;EACA,kBxBjBO;;AwBkBP;EAEI;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACI;EACA;EACA;EACA;;AACR;EACI;EACA,kBxBhCL;EwBiCK;EACA;EACA;EACA;EACA;;AACA;EACI;;AACJ;EACI;EACA;EACA;;AACJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;;AACJ;EACI;;AACR;EACI,OxB7DH;EwB8DG;EACA;EACA;;AAEJ;EACI;EACA;EACA;EACA;;AACA;EACI;EACA;EACA;EACA;;AACA;EACI;;AACJ;EACI;EACA;;AACZ;EACI;EACA;;AACJ;EACI;EACA;EACA,OxBvFH;;AwBwFG;EACI;EACA;;AACZ;EACI;;;AACZ;EACI;IACI;;;AC9FJ;EACE;;AACF;EACE;EACA;EACA,OzBNO;EyBOP;EACA;EACA;EACA;EACA;;AACA;EACE;;AAGE;EACE;;AACN;EACE;;AACF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACF;EACE;EACA;EACA;EACA;EACA;EACA;EACA,YzBjCO;;AyBkCP;EACE,OzBvCK;;AyBwCT;EACE;EACA;EACA;EACA;;AACA;EACE;;AACJ;EACE;EACA;EACA;;AACA;EACE,OzB7CC;;AyB8CL;EACE,OzBnDM;;AyBoDR;EACE;EACA;EACA;;AACA;EACE;EACA;;AACF;EACE;EACA;EACA;EACA;;AAEJ;EACE;EACA;EACA;;AACA;EACI;;AACJ;EACE;;AACJ;EACE;EACA;;AACF;EAGE;;AACF;EACE;EACA;;AACA;EACE;EACA;;AACA;EACE;EACA;;AACF;EACE;EACA;;AACF;EACE;EACA;EACA;;AACA;EACE,OzB7FH;;AyB8FH;EACE;EACA;EACA;EACA;EACA;;AACA;EACE,OzBvGC;EyBwGD;;AACF;EACE;EACA;EACA;;AACA;EACE,OzB5GH;;AyB6GD;EACE;EACA;EACA;;AACN;EACE;;AACA;EACE;;AACF;EACE,OzBzHK;;AyB2HX;EACI;;AACJ;EACE;EACA;;AACA;EACE;EACA;EACA,kBzB9HK;EyB+HL,OzBxIO;EyByIP;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;;AACA;EACE,kBzBnJG;EyBoJH;EACA;EACA;;AACA;EACE;EACA;;AACJ;EACE;EACA;;AACA;EACE;;AACF;EACE;;AACF;EACE;;AAEE;EACE;;AACN;EACE;;AACF;EACE;EACA;;AACF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE,kBzBvLH;EyBwLG,OzBhLH;;AyBiLC;EACE;EACA;;AACF;EACE;EACA;EACA;;AACF;EACE;;AACF;EAOE;EACA,kBzB1MH;;AyBmMG;EACE;;AACA;EACE;;AACA;EACE;;AAGN;EACE;;AACF;EACE;;AACF;EACE;EACA;;AACF;EACE;EACA;EACA;;AACA;EACE;EACA,kBzBhNP;EyBiNO;EACA;;AACA;EACE,kBzB5NT;EyB6NS,OzBrNT;;AyBsNO;EACE;EACA;EACA;EACA;;AACF;EACE;;AAEA;EACE;EACA;EACA;;AACF;EACE;EACA;EACA;EACA;;AACJ;EACE;EACA;EACA;EACA;;AAEF;EACE;;AACF;EACE;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;;AACR;EACE,kBzBjQL;EyBkQK,OzBnQH;;AyBoQG;EACE;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA,kBzB5QT;EyB6QS,OzB9QP;EyB+QO;EACA;EACA;;AACA;EACE;EACA;EACA,OzB5QX;;AyB6QS;EACE;EACA;;AACF;EACE;EACA;EACA;;AACR;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGV;EACE;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;;AACA;EACE;EACA;EACA;EACA;;AAEA;EACE;;AACZ;EACE;EACA;EACA;EACA;;AACA;EACE;;;ACjUR;EACE;;AACA;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;;AACA;EACE;;AACJ;EACE;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA,O1B1BI;E0B2BJ;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACF;EACE;EACA,kB1BjCC;E0BkCD;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAEF;EACE;;AAEF;EACE;;AACJ;EACE,O1BtDK;E0BuDL;EACA;;AAKE;EACE;;AAEF;EACE;;AAEF;EACE;;AACZ;EACE;;AACA;EACM;;AACR;EACE;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA,kB1BhFO;E0BiFP,O1B1FS;E0B2FT;;AACA;EACE,kB1B7FO;E0B8FP;EACA;;AACA;EACE;;AACJ;EACE,kB1B5FG;;A0B6FH;EACE,kB1BlGI;;A0BmGR;EACE;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;;AACJ;EACE;;AACF;EACE;;AACF;EACE;;AACF;EACE;;AACF;EACI;;AAEJ;EACE;EACA;;AACF;EACE;;AACF;EACE;;AACF;EACE;;;AACR;EAEI;IACE;;EACF;IACE;;EACF;IACE;;EACF;IACE;;;AC/IJ;EACE;EACA;;AACA;EACE;EACA;;AACA;EACE;EACA;EACA;EACA;;AACA;EACE;EACA;;AACJ;EACE;;AACJ;EACE;EACA;;AACF;EACE;;AACF;EACE;;AACF;EACE;;AACA;EACE;;AACJ;EACE;EACA;;AACA;EACE;EACA;;AACA;EACE;EACA;EACA;EACA;;AACN;EACE;EACA;EACA;EACA;;AACA;EACE;;;AAGN;EACE;;AACF;EACE;EACA;EACA;EACA;EACA;;AACF;EACE;IACE;;EACF;IACE;;EACF;IACE;;;AAEJ;EACE;IACE;IACA;;EACF;IACE;IACA;;EACF;IACE;IACA;;;;AAEN;EAGM;IACE;;EACF;IACE;;;EAEJ;IACE;;EACA;IACE;IACA;;EACF;IACE;;;ACzFR;EACE;EACA;EACA;EACA,O5BHa;E4BIb;EACA;EACA;;AACA;EACE;EACA;EACA;;AAEF;EACE,kB5BJS;E4BKT;;AACA;EACE,kB5BhBS;E4BiBT;;AACA;EACE;;AACF;EACE;;AACA;EACE;;AACN;EACE;EACA;EACA;EACA;;AACA;EACE;EACA;;AAEF;EACE;;AACF;EACE;;AACF;EACE;;AACJ;EACE;EACA;EACA;EACA;EACA;;AACA;EACE;;AACF;EACE;;AACF;EACE,O5B/CM;;A4BgDN;EACE,kB5BjDI;;A4BkDR;EACE,O5B/CG;;A4BgDH;EACE,kB5BjDC;;A4BkDL;EACE;EACA;EACA;EACA;EACA;;;AC/DR;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;;AACF;EACE;;AACJ;EACE;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACF;EACE;EACA;EACA;EACA;;AACF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;;AAEA;EACE;EACA;;AACJ;EACE;EACA;EACA;EACA;EACA;EACA;;AACF;EACE;EACA;EACA;;AAEA;EACE,kB7B/ED;;A6BgFD;EACE;;AAEF;EACE;;AAEN;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;;AACF;EACE;;AAEA;EACE;EACA;EACA;;AAGV;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE,kB7BjII;;A6BkIN;EACE,kB7B/HC;;A6BiID;EACE;EACA;;AAER;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;;AACA;EACE;;AAEA;EACE;EACA;;AACV;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;;AACF;EACE;EACA;EACA;EACA;;AACF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;;AACF;EACE;EACA;;AACA;EACE,kB7B3MI;;A6B4MN;EACE,kB7BzMC;;A6B0MP;EACE;EACA;;AACA;EACE;EACA;;AAEN;EACE;EACA;EACA;EACA;EACA;EACA;EACA,O7B9NS;E6B+NT;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;;AACF;EACE;EACA,O7BhPS;;A6BiPX;EACE;;AAGF;EACE;EACA;;AACJ;EAGE;;AAFA;EACE;;AAEJ;EAGE;;AAFA;EACE;;AAEJ;EAGE;;AAFA;EACE;;AAEJ;EAGE;;AAFA;EACE;;AAEJ;EAGE;;AAFA;EACE;;AAEJ;EAGE;;AAFA;EACE;;AAEJ;EACE;EACA;;AACF;EACE,Y7BnRS;;A6BoRX;EACE,Y7BtRW;;A6BuRb;EACE,Y7BxRW;;;A8BDf;EACE;EACA;;AACA;EACE;;AAGA;EACE;EACA;;AACJ;EACE;;AAEF;EACE;;AAEF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAGA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEF;EACE;EACA;EACA;EACA;;AAEF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,kB9B5CK;;A8B8CP;EACE;;AAEJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AClEF;EACE;;AACF;EACE,O/BFS;;A+BIP;EACE;;AACF;EACE,O/BFO;;A+BGT;EACE,O/BHG;;A+BIL;EACE,O/BRO;;A+BST;EACE,O/BXM;;A+BYV;EACE;EACA;EACA;EACA;;AACA;EACE;EACA;;AACF;EACE;EACA;EACA;;AACJ;EACE;EACA;EACA;EACA;EACA,O/BhCS;E+BiCT;;AAEA;EACE,O/BnCK;;A+BoCX;EACE;EACA;;AACA;EACE;EACA;EACA;;AACA;EACE;EACA;;AACJ;EACE;;AAEJ;EACE;EACA;;AAIM;EACE;;AACF;EACE;;AACF;EACE;;AACF;EACE;EACA;EACA;;AAEF;EACE;EACA;;AACA;EACE;;AACR;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;;AACA;EACE;EACA;EACA;;AACJ;EACE;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;;AAEF;EACE;;AAER;EACE;;AACF;EACE;;AACA;EACE;;AACJ;EACE;;AACF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,O/BrHO;;A+BwHL;EACE,kB/BnHC;E+BoHD,O/B3HK;E+B4HL,c/BrHC;E+BsHD;;AACF;EACE,kB/B5HI;E+B6HJ,O/BhIK;E+BiIL,c/B9HI;E+B+HJ;;AACF;EACE,kB/BhIK;E+BiIL,O/BrIK;E+BsIL,c/BlIK;E+BmIL;;AACR;EACE;EACA;EACA;EACA;EACA;;;AC5IA;EACE;;AACA;EACE;EACA;;AACA;EACE;;AACF;EACE;;AACF;EACE;;AAMM;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,ahClBP;EgCmBO;EACA;;AACA;EACE;EACA;;AACF;EACE;EACA;;AACF;EACE;EACA;EACA;;AACA;EACE;;AACJ;EACE;EACA;EACA;;AACN;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;;AACF;EACE,YhC1DH;EgC2DG;;AACF;EACE,YhC1DP;;AgC2DK;EACE,YhC7DH;EgC8DG;;AAEZ;EACE;;AACA;EACE;EACA;EACA,kBhCxEI;EgCyEJ;;AACJ;EACE;EACA;;AACF;EACE;;AAEE;EACE;EACA,OhClFE;;AgCmFJ;EACE;;AACR;EACE;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA,OhCzGK;;AgC0GP;EACE;EACA;EACA;;AACF;EACE;EACA;;AACF;EACE;;AACF;EACE;;AAGA;EACE;EACA;;AAEF;EACE;;AAEF;EACE,OhC5HE;;AgC6HN;EACE;;AACF;EACE;EACA;EACA;;AACF;EACE,OhCvIK;EgCwIL;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE,OhC1ID;EgC2IC;;AACA;EACE;;AACN;EACE,OhCpJI;;AgCqJN;EACE;EACA;EACA;;AAEN;EACE;EACA;;;AAGN;EACE;IACE;;EACA;IACE;;EACF;IACE;;;AACN;EACE;IACE;IACA;IACA;;;ACxKoB;EACI,kBjCHd;;AiCKc;EACI;;AACJ;EACI;;AAEJ;EACI;;AACA;EACI;EACA;EACA;EACA;EACA;EACA,OjChBvB;;AiCiBuB;EACI;;AACZ;EACI;;AACA;EACI,OjCpBzB;;AiCqBiB;EACI;;AACA;EACI;EACA;EACA;;AACA;EACI;EACA;;;ACpCtC;EACE;;AACF;EACE;EACA;;;ACLJ;EACE;EACA;;AACA;EACE;EACA;;AACA;EACE;EACA;EACA;;AAIE;EACE;;AACF;EACE;EACA;EACA;;AACF;EACE;EACA,OnCrBG;;AmCsBL;EACE;EACA;;;ACeT;EACC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAEF;EACE;;;AACF;EACE;EACA,kBpC7DK;EoC8DL;;AACA;EACE;EACA;;AACA;EACE;EACA;EACA;;AACF;EACE;;AACF;EACE;;AACF;EACE;;AACF;EACE;;AACF;EACE;;AACF;EACE;;AACF;EACE;;AACF;EACE;EACA;EACA;;AACF;EACE,OpC1FO;;AoC2FT;EACE,OpC7FS;EoC8FT;;AACF;EAEE;EACA;EACA,OpClGO;EoCmGP;EACA;EACA,cpCrGO;EoCsGP;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;;AACF;EACE;EACA;EACA;;AACF;EAEE;EACA;EACA;;AACA;EACE;EACA;EACA;;AACJ;EACE;;AACA;EACE;EACA;EACA;;AACJ;EACE;EACA;EACA;EACA;EACA;;AACA;EACE;;AACN;EACE;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;;AACF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,OpCxLO;;AoCyLP;EACE;EACA;EACA,OpC5LK;;AoC6LL;EACE;EACA;;;AACV;EACE;;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;;;AACJ;EACE;;;AACF;EACE;;;AACF;EACE;;;AACF;EACE;;;AAEF;EACE;EACA;EACA;EACA;;AACA;EACE;;;AACJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;;AACF;EACE;EACA;EACA,OpCxOO;EoCyOP;EACA;;AACA;EACE;EACA;EACA;;AACJ;EACE;EACA;EACA,OpCzPW","file":"style.css"} \ No newline at end of file +{"version":3,"sourceRoot":"","sources":["common/gugi.scss","common/buttons.sass","common/colors.sass","common/mixins.sass","analytics.sass","appearance.sass","apps.sass","calendar.sass","charts.sass","daterange.sass","dialogs.sass","escapeRoomCustomization.sass","escapeRoomForm.sass","escapeRoomShow.sass","escapeRooms.sass","error.scss","evaluation.sass","filters.sass","flash.sass","hints.sass","inspiration.sass","instructions.sass","join.sass","main.sass","messages.sass","participants.sass","portada.sass","puzzles.sass","ranking.sass","showStudent.sass","table.sass","timeline.sass","resources.sass","teams.sass","turnos.sass","turnos.manager.sass","userForm.sass","user.sass","style.sass"],"names":[],"mappings":";AAAA;EACC;EACA;;ACSD;EACE;EACA,OCZa;EDab;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;;AACF;EACE;;AACF;EACE;EACA;;AACF;EACE;EACA;EACA;;AACF;EACE,kBC9BU;ED+BV,OClCW;EDmCX,QChCU;EDiCV;EACA;EACA;EACA;EACA;EACA;;AAEF;EACE;EACA;EACA;EACA;EACA;EACA;EACA,kBC9CW;ED+CX,OCnDW;EDoDX,QChDW;;ADkDb;EAtDA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAgDE,kBCpDW;EDqDX,cCrDW;EDsDX,OC1DW;;AD4Db;EA5DA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAsDE,kBC7DS;ED8DT,cC9DS;ED+DT,OChEW;;ADkEb;EAlEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EA4DE,kBC7DO;ED8DP,OCrEW;EDsEX,cC/DO;;ADiET;EACE;EACA,OC1EW;ED2EX;EACA;EACA;EACA;EACA;EACA;EACA;;AAEF;EAnFA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EA6EE,kBC/EW;EDgFX,cChFW;EDiFX,OCvFW;;ADyFb;EACE,kBCvFU;EDwFV,OC3FW;ED4FX;EACA;EACA,cC3FU;ED4FV;EACA;EACA;EACA;;AAEF;EACE,kBChGS;EDiGT,OCtGW;EDuGX;EACA;EACA,cCpGS;EDqGT;EACA;EACA;EACA;;AAEF;EACE;EACA;EACA;EACA;;AAEF;EACE;;;AEjHJ;EACE;;AACA;EAPA;EACA;EACA;;;AASF;EACE;;AACA;EAbA;EACA;EACA;;;AAcF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,ODxBW;;;AECT;EACE;EACA;EACA;;AACA;EACE;EACA;EACA;;AAEE;EACE;EACA;EACA;EACA;EAMA;EACA;EACA;EACA;EACA;EACA;EACA;;AAXA;EACE;EACA;EACA;EACA;;AAQF;EACE;EACA;EACA;;AAEF;EACE;;AAER;EACE;;AACA;EACE;EACA;;AACA;EACE;EACA,OF1CC;EE2CD;EACA;EACA;EACA;EACA;EACA;;AACA;EACE,OF/CC;;AEgDH;EACE,OF9CH;;AE+CC;EACE,OFpDA;;AEqDF;EACE,OF1DD;;AE2DD;EACE,OFrDC;;AEsDH;EACE;EACA;;AACF;EACE,OF/DD;;AEgED;EACE;;AACA;EACE;;AACR;EACE;EACA;;AAEN;EACE;EACA;EACA;;AACJ;EACE;;AAEA;EACE;;AACF;EACE;EACA;EACA;;AACF;EACE;EACA;;AACJ;EACE;EACA;;;AACJ;EAGM;IACE;;EAGI;IACE;;;AClGR;EACE;EACA;EACA;;AACA;EACE;;AACF;EACE;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE,cHjBC;;AGkBP;EACE;EACA;;AACA;EACE;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;ACpCd;EACI;;AAEI;EACI;;AACJ;EACI;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACI;EACA;EACA;EACA;;AACJ;EACI;EACA;;AAER;EACI;;AACR;EL1BN;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EKoBU;EACA;EACA,kBJ1BG;EI2BH,OJ/BG;EIgCH;EACA;EACA;;AACA;EACI;;AACJ;EACI,kBJnCF;EIoCE;;;AAChB;EACI;EACA;EACA;EACA;EACA;EACA;;AACA;EACI;EACA;;AACJ;EACI;EACA;EACA;EACA;EACA;;AACJ;EACI;EACA;;AACA;EACI;IACI;;;;AAEZ;EACI;EACA;;;AChEJ;EACE;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;;AACF;EACE,OLVC;;AKWH;EACE;EACA;;AACF;EACE,OLrBG;EKsBH;EACA;;AAEE;EACE;EACA,kBLxBC;EKyBD;EACA;;AAGJ;EACE;EACA;EACA;;AACA;EACE;EACA;;AACF;EACE;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA,oBL3CD;EK4CC;;AACF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACJ;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;;AACF;EACE;EACA,mBLlEC;;AKmEL;EACE;EACA;;AAEA;EACE;;AACN;EACE;EACA;;AACF;EACE,OL5EC;;AK6EH;EACE;EACA;EACA;;;ACvFR;EACE;EACA,ONDS;;;AMEb;EACE;EACA;;;AACF;EACE;EACA,ONRa;EMSb;EACA;EACA;EACA;EACA;;;AACF;EACE;;;AACF;EACE,ONhBW;EMiBX;EACA;;AACA;EACE;EACA;EACA;;AACF;EACE;EACA;;;AACJ;EACE;EACA;;AACA;EACE,ON9BS;EM+BT;;;AChCA;EACI;EACA;EACA;EACA,OPJO;EOKP;EACA;;AAEI;EACI,kBPHD;EOIC;;AACA;EACI,kBPNL;EOOK;;AACR;EACI;;AACJ;EACI;;AACR;EACI,OPhBE;;AOiBN;EACI;;AACA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACI;;;AC/BZ;EACI;;AACR;EACI;;AACJ;EACI;EACA;EACA;EACA;;AACA;EACI;;AACR;EACI;EACA;EACA;;AACJ;EACI;;AACJ;EACI;;AACA;EACI;;AACJ;EACI,ORpBE;EQqBF;EACA;;AAEA;EACI;EACA,OR5BH;;AQ6BG;EACI;EACA,ORzBT;;AQ0BC;EACI,OR3BL;EQ4BK;EACA;;AACJ;EACI;EACA;EACA;EACA;EACA,kBRzCH;;AQ2CL;EACI,OR7CG;EQ8CH;EACA;;AACJ;EACI;EACA;EACA;EACA;EACA;;AACJ;EACI;EACA;EACA;EACA,ORpDG;EQqDH;;AACJ;EACI,ORtDD;;AQuDH;EACI;;AACA;EACI;EACA;EACA;;AACR;EACI;EACA,ORtEG;;AQwEH;EACI;;AACA;EACI;;AAEZ;EACI,OR3EE;;AQ4EN;EACI,OR3EC;;AQ4ET;EACI;EACA;EACA;;AACA;EACI;EACA;EACA;EACA;;AACA;EACI;EACA;;AACA;EACI;;AACJ;EACI;EACA;EACA;;AACA;EACI;EACA;EACA;EACA;;AACR;EACI;;AACA;EACI;;AACA;EACI;EACA;;AAEpB;EACI;IACI;;;AACR;EACI;IACI;;;AACZ;EACI;EACA;EACA;;AACJ;EACI;EACA;;AACJ;EACI;EACA;EACA;;AACJ;EACI;;AACA;EACI;EACA;;AACR;EACI;EACA;EACA,ORlIG;;AQmIP;EACI;;AACA;EACI;EACA;;AACR;EACI;EACA;EACA;EACA,YRnJO;EQoJP;EACA;EACA;EACA;EACA;;;ACpJE;EACE;;AACR;EACE;;AACA;EACE;;AACF;EACE;;AACJ;EACE;;AACA;EACE;EACA;EACA;EACA;EACA;;AACA;EACE;;AACF;EACE;EACA;EACA;EACA,OTzBG;ES0BH;EACA;;AACA;EACE;;AACF;EACE;EACA;;AACJ;EACE;EACA;EACA;EACA;EACA;;AAEN;EACE;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;;AACN;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;;AACF;EACE;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;;;AAEV;EACE;IACE;;EACA;IACE;;;AACN;EAIQ;IACE;;EACA;IACE;;EACF;IACE;;;AC9FR;EACE;EACA;EACA;;AACA;EACE;EACA;;AACA;EACE;;AACA;EACE;;AACJ;EACE;EACA;EACA;EACA;;AACF;EACE;EACA;EACA;EACA;EACA;EACA;EACA,OVvBG;EUwBH;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA,OVjCG;EUkCH;;AACF;EACE;;AACF;EACE;EACA;EACA;EACA;;AACF;EACE;EACA;EACA;;AACA;EACE;;AACN;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AACF;EACE;;AACF;EACE,OV1DG;EU2DH;EACA;EACA;;AACN;EACI;EACA,OVhEK;EUiEL;EACA;EACA;EACA;EACA;;AACA;EACE;;;ACxER;EACE;;AACA;EACE;EACA;EACA;EACA;;AACA;EACE;;AACJ;EACE;;AACA;EACE;EACA;EACA;;AACF;EACE;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;;AACJ;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;;AACA;EACE;EACA;;AACA;EACE;;AACF;EACE;EACA;EACA;EACA,OXvCC;;AWwCH;EACE;;AACA;EACE,OX5CF;;AW8CF;EACE;EACA;EACA;EACA;EACA;;AACA;EACE;;AAGR;EACE;EACA;EACA;;AACF;EACE;EACA;;AACA;EACE;;AACJ;EACI;;AACR;EACE;EACA;EACA;EACA;;AACA;EACE;;AACJ;EACE;EACA;EACA;;AACF;EACE;;AACA;EACE,OXrFK;EWsFL;EACA;;AACF;EACE,OXzFK;;AW0FP;EACE;;AAIE;EACE;;AACJ;EACE;EACA;EACA,OXlGG;;AWmGH;EACE;EACA,OX/FD;;AWiGC;EACE;;AACF;EACE,OXtGD;;AWuGH;EACE;;AACA;EACE,OX5GA;;AW6GJ;EACE;;AACA;EACE,OX9GD;;AW+GL;EACE,OXtHG;EWuHH;EACA;;AACJ;EACE,OX1HK;EW2HL;EACA;EACA;EACA;EACA;;AACA;EACE;;AACF;EACE,OX3HC;;AW4HL;EACE;EACA,OXrIO;EWsIP;EACA;;AACF;EACE;EACA;EACA;EACA;EACA;;AACF;EACE;EACA;EACA;EACA,OX5IO;EW6IP;;AACF;EACE,OX9IG;;AW+IL;EACE,OXvJO;EWwJP;EACA;EACA;;AACA;EACE,OXzJI;;AW0JR;EACE;EACA;EACA,OXhKO;;AWiKP;EACE;;AACF;EACE,OXjKI;EWkKJ;;AACF;EACE,OXlKG;EWmKH;;AACJ;EACE;EACA;EACA,OX5KO;;AW6KP;EACE,OX3KI;EW4KJ;;AACN;EACE;;AACF;EACE;EACA;;AACF;EACE;EACA;EACA;;AACF;EACE;;AACA;EACE;EACA;;AACJ;EACE;EACA;EACA,OX1LK;;;AW6LX;EAGM;IACE;;EACF;IACE;IACA;;EACA;IACE;IACA;IACA;IACA;;EACA;IACE;IACA;IACA;IACA;;EACJ;IACE;IACA;IACA;IACA;;EACA;IACE;;;AAEZ;EACE;IACE;;;AC/NA;EACE;EACA;EACA;EACA;;AACA;EACE;EACA;;AACN;EACE;EACA;EACA;EACA;EACA;;AACA;EACI;EACA;;AACJ;EACE;EACA;EACA;;AACA;EACE;EACA;EACA;;AACF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;;AACF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA,kBZ9CI;;AY+CJ;EACE,kBZ/CG;;AYgDP;EACE;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;;AACF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEJ;EACE;EACA;EACA;;;AAEV;EAGM;IACE;;;AACR;EAGM;IACE;;;AACR;EAGM;IACE;;;ACtFR;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;;AAGE;EACE;EACA;;AAEA;EACE;EACA;EACA;EACA,YA/BF;EAgCE;EACA;EACA;EACA;;AAEF;EACE;;AAEF;EACE;;AAGJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA,cApDA;EAqDA;EACA;;AAEF;EACE;EACA;;AAEA;EACE;EACA;EACA;EACA,YAhEF;EAiEE;EACA;EACA;EACA;;AAEF;EACE;;AAEF;EACE;;AAGJ;EACE;EACA;;AAEA;EACE;EACA;EACA;EACA,YArFF;EAsFE;EACA;EACA;EACA;;AAEF;EACE;;AAEF;EACE;;AAGJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA,cA1GA;EA2GA;EACA;;AAEF;EACE;EACA;;AAEA;EACE;EACA;EACA;EACA,YAtHF;EAuHE;EACA;EACA;EACA;;AAEF;EACE;;AAEF;EACE;;AAKN;EACE,YAtIE;EAuIF;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EAEA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAIJ;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA,kBAvLF;;AAyLE;EACE;EACA;EACA;EACA;;AAMR;EACE;EACA;EACA;EACA;EACA;;AAIJ;EACE;EACA;EACA;EACA;;AAEA;EACE,OAnNE;EAoNF;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;EACA;EACA;;AAIJ;EACE;EACA;EACA,YAzOC;EA0OD;EACA;EACA;EACA;EACA;EACA,OA9OE;EA+OF;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA,YA7PA;EA8PA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA,cAvQA;;AAyQA;EACE;;;AAQV;EACE;IAAI;;EACJ;IAAK;;EACL;IAAM;;;AAER;EACE;IAAI;;EACJ;IAAK;;EACL;IAAM;;;AAER;EACE;IAAI;;EACJ;IAAK;;EACL;IAAK;;EACL;IAAM;;;AC9RF;EACE;;AACF;EAGE;EACA;;AAHA;EACE;;AAGF;EACE;;AACF;EACE;EACA;;AACA;EACE;EACA;;AAEN;EACE,OdlBK;EcmBL;;AACA;EACE;EACA;;AACA;EACE;EACA;;AAGE;EACE,Od7BH;Ec8BG;;AAGA;EACE;EACA;;AACV;EACE;EACA;;;ACxCV;EACE;;AACA;EACE;;AACF;EACE;EACA;;AACA;EACE;;AACJ;EACE;EACA;EACA;EACA;;AACF;EACE;;;ACfJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA,OhBPW;EgBQX;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;ACnBE;EACE;EACA;;AACF;EACE;EACA;;AACF;EACE,OjBRK;EiBSL;EACA;EACA;;AACF;EACE;EACA;EACA,OjBTG;;AiBUL;EACE;EACA;;AACA;EACE;EACA;EACA;EACA;;;ACvBN;EACE;;AACA;EACE;;AACF;EACE;;AACF;EACE,OlBLM;EkBMN;;AACF;EACE,OlBPO;EkBQP;EACA;;AACF;EACE,OlBRG;;AkBSL;EACE;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;;AACA;EACE;;AACF;EACE;;AACN;EACE;;AACF;EACE;;AACF;EACE;EACA;;AAEA;EACE;;AACJ;EACE;;AAEE;EACE;EACA,OlBzCG;EkB0CH;EACA;EACA;EACA;;AACN;EACE;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;;AACF;EACE;EACA,OlB3DD;;AkB4DL;EACE;;AACF;EACE;EACA;EACA;;AAEF;EACE;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AACV;EAGM;IACE;IACA;;EAEA;IACE;IACA;IACA;;;ACrGJ;EACE;;AACF;EAEE;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA,OnBpBG;;AmBqBL;EACE;EACA;;AACF;EACE;EACA;EACA,OnB3BG;EmB4BH;EACA;;AACF;EACE;EACA,OnBhCG;;AmBiCH;EACE,OnBlCC;;AmBmCP;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEJ;EACE;EACA;EACA;EACA;EACA;;AACA;EACE;EACA,kBnBjDK;EmBkDL;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA,OnBtEC;EmBuED;;AAER;EACE;EACA;;AACA;EACE,kBnB3EH;;AmB4EC;EACE;;AACJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACF;EACE;EACA;EACA;EACA;;AACF;EACE;EACA;EACA;EACA;;AACF;EACE;EACA;EACA;;AACF;EACE;EACA;EACA;;AACF;EACE;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;;AACJ;EACE;;AACA;EACE;EACA;;AACJ;EACE;EACA;EACA,OnB3HG;;AmB4HL;EACE,OnBnIK;EmBoIL;EACA;EACA;EACA;EACA;;AACA;EACE;;AACF;EACE;EACA;;AACF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,anB9JG;;AmB+JH;EACE;EACA;;AACN;EpBnKJ;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EoB6JM;EACA;EACA;EACA,kBnBpKO;;AmBqKT;EACE;EACA;EACA;EACA;;AAEE;EACE;;AACF;EACI;;AACA;EACE;EACA;EACA;EACA;EACA;;AACF;EACE;;AAEJ;EACE;;AAEF;EACE;;AACR;EACE;EACA;;AACA;EpBpMN;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EoB8LQ;EACA;EACA;;AACA;EACE,kBnBvME;;AmBwMJ;EACE,kBnBrMD;;AmBsML;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;;AACF;EACE;EACA;EACA,OnBxOC;EmByOD;EACA;EACA;EACA;;AACF;EACE;EACA;EACA;EACA;EACA;;AAEN;EACI;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;;AACN;EACE;EACA;EACA;;AACA;EACI;;AACN;EACE;EACA;;AACA;EACE;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AACF;EACE;;AACF;EACE;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;;AACJ;EACE;;AACF;EACE;;AACF;EACE;;AACF;EACE;;AACF;EACE;;AACR;EACE;;AACA;EACE;;AACA;EACE,OnB9SE;;AmB+SJ;EACE;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;;AACR;EACE;;AACA;EACE;;AACA;EACE;EACA;;AACF;EACE;EACA;EACA;;AACF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE,cnBhVA;;AmBiVF;EACE;EACA;;;AAIZ;EACE;EACA;;AACA;EACE;EACA;EACA;;AACF;EACE;;AACF;EACE;;;AAEJ;EACE;;;AACJ;EACE;;;AAEA;EACE;EACA;;AACF;EACE;EACA;;AACA;EACE;;;AACN;EACE;;;AACF;EACE;;;AACF;EACE;;;AACF;EACE;;;AACF;EACE;;;AACF;EACE;EACA;;;AC9XE;EACE;EACA;EACA;EACA;EACA;;AACA;EACE,kBpBND;EoBOC;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA,kBpBdK;EoBeL;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;;AACJ;EACE;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;;AACA;EACE;;AACF;EACE;EACA;;AACN;EACE;EACA;EACA,OpB3CG;EoB4CH;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;;AACF;EACE;EACA;;AACF;EACE;;AAGJ;EACE;;AACF;EACE;;AAEA;EACE,OpBlEC;EoBmED;;AACJ;EACE;;AACF;EACE;;AACA;EACE;;AACF;EACE;;AACA;EACE;EACA;EACA;EACA;EACA,OpB9EC;;AoB+ET;EACE;EACA;EACA;EACA;EACA;;AACF;EACE;;AACF;EACE;EACA;;AACA;EACE;;AACA;EACE,OpBhGC;EoBiGD;;AACJ;EACE;EACA;EACA;EACA;EACA;EACA,OpBxGG;EoByGH;;AACA;EACE;EACA;;AAEJ;EACE;;AAEJ;EACE;;;AACR;EAIQ;IACE;IACA;;;AACV;EAIQ;IACE;IACA;;EACA;IACE;IACA;;EACA;IACE;IACA;;;ACxId;EACE;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAGA;EACE;;AAGF;EACE;;AAIF;EACE;EACA;EACA;EACA,OrBzBO;EqB0BP;;AAEJ;EACE;EACA;EACA;EACA;EACA,kBrBlCW;EqBmCX;EACA;EACA;;AAEA;EACE;EACA;;AACF;EACE;EACA;EACA;EACA;EACA;;AACF;EACE;;AAEE;EACE;;AACR;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EAuCA;;AArCE;EACE;EACA;;AAEA;EACE;;AACJ;EACE,OrBxEI;;AqByEN;EACE;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;;AACF;EACE;;AACF;EACE;EACA,OrBxGC;;AqB0GX;EACE;;AACF;EACE;;AACA;EACE;EACA;;AAEF;EACE;EACA;;AACJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA,OrBhIO;;AqBiIT;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,OrBvJO;;AqByJX;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACF;EACE;EACA;EACA;;AACA;EACE,OrBpKM;;AqBqKR;EACE,OrBlKG;;AqBmKL;EACE,OrBvKO;;;AqByKf;EAEI;IACE;;EACA;IACE;;;AAER;EAEI;IACE;;EACF;IACE;;;AACN;EAGM;IACE;;EACF;IACE;;;AC/LA;EACI,OtBDC;EsBED;EACA;;AACJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA,OtBZG;;AsBaH;EACI;;AACR;EACQ,OtBfH;;AsBgBL;EACI;EACA,OtBlBC;EsBmBD;;AACA;EACI;;AACA;EACI;EACA;EACA;;AACZ;EACI;EACA;;;AC7BV;EACE;EACA;;AACA;EACE;;AAGI;EACE;;AACF;EACE;EACA;EACA;EACA;;AACA;EACE,OvBfC;EuBgBD;;AACJ;EACE;;AACF;EACE;;AACF;EACE;EACA;;AACA;EACE;;AAEJ;EACE;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;;AACA;EACE;;AACV;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;;AACF;EACE;;AACF;EACE;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;;AAEF;EACE;;AAOJ;EACE,kBvBhEC;EuBiED,OvBxEK;EuByEL,cvBlEC;EuBmED;;AACF;EACE,kBvBzEI;EuB0EJ,OvB7EK;EuB8EL,cvB3EI;EuB4EJ;;AACF;EACE,kBvB7EK;EuB8EL,OvBlFK;EuBmFL,cvB/EK;EuBgFL;;AACF;EACE;EACA,OvBvFK;EuBwFL;EACA;;AACF;EACE,kBvBtFG;EuBuFH,OvB5FK;EuB6FL,cvBxFG;EuByFH;;AACF;EACE,kBvB5FK;EuB6FL,OvBjGK;EuBkGL,cvB9FK;EuB+FL;;AACN;EACE;;AACJ;EACE;EACA;EACA;EACA;;;AC3GJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;;AACJ;EACI;EACA;EACA,kBxBXS;EwBYT;EACA;;AACA;EACI;EACA;EACA;EACA,kBxBjBO;;AwBkBP;EAEI;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACI;EACA;EACA;EACA;;AACR;EACI;EACA,kBxBhCL;EwBiCK;EACA;EACA;EACA;EACA;;AACA;EACI;;AACJ;EACI;EACA;EACA;;AACJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;;AACJ;EACI;;AACR;EACI,OxB7DH;EwB8DG;EACA;EACA;;AAEJ;EACI;EACA;EACA;EACA;;AACA;EACI;EACA;EACA;EACA;;AACA;EACI;;AACJ;EACI;EACA;;AACZ;EACI;EACA;;AACJ;EACI;EACA;EACA,OxBvFH;;AwBwFG;EACI;EACA;;AACZ;EACI;;;AACZ;EACI;IACI;;;AC9FJ;EACE;;AACF;EACE;EACA;EACA,OzBNO;EyBOP;EACA;EACA;EACA;EACA;;AACA;EACE;;AAGE;EACE;;AACN;EACE;;AACF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACF;EACE;EACA;EACA;EACA;EACA;EACA;EACA,YzBjCO;;AyBkCP;EACE,OzBvCK;;AyBwCT;EACE;EACA;EACA;EACA;;AACA;EACE;;AACJ;EACE;EACA;EACA;;AACA;EACE,OzB7CC;;AyB8CL;EACE,OzBnDM;;AyBoDR;EACE;EACA;EACA;;AACA;EACE;EACA;;AACF;EACE;EACA;EACA;EACA;;AAEJ;EACE;EACA;EACA;;AACA;EACI;;AACJ;EACE;;AACJ;EACE;EACA;;AACF;EAGE;;AACF;EACE;EACA;;AACA;EACE;EACA;;AACA;EACE;EACA;;AACF;EACE;EACA;;AACF;EACE;EACA;EACA;;AACA;EACE,OzB7FH;;AyB8FH;EACE;EACA;EACA;EACA;EACA;;AACA;EACE,OzBvGC;EyBwGD;;AACF;EACE;EACA;EACA;;AACA;EACE,OzB5GH;;AyB6GD;EACE;EACA;EACA;;AACN;EACE;;AACA;EACE;;AACF;EACE,OzBzHK;;AyB2HX;EACI;;AACJ;EACE;EACA;;AACA;EACE;EACA;EACA,kBzB9HK;EyB+HL,OzBxIO;EyByIP;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;;AACA;EACE,kBzBnJG;EyBoJH;EACA;EACA;;AACA;EACE;EACA;;AACJ;EACE;EACA;;AACA;EACE;;AACF;EACE;;AACF;EACE;;AAEE;EACE;;AACN;EACE;;AACF;EACE;EACA;;AACF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE,kBzBvLH;EyBwLG,OzBhLH;;AyBiLC;EACE;EACA;;AACF;EACE;EACA;EACA;;AACF;EACE;;AACF;EAOE;EACA,kBzB1MH;;AyBmMG;EACE;;AACA;EACE;;AACA;EACE;;AAGN;EACE;;AACF;EACE;;AACF;EACE;EACA;;AACF;EACE;EACA;EACA;;AACA;EACE;EACA,kBzBhNP;EyBiNO;EACA;;AACA;EACE,kBzB5NT;EyB6NS,OzBrNT;;AyBsNO;EACE;EACA;EACA;EACA;;AACF;EACE;;AAEA;EACE;EACA;EACA;;AACF;EACE;EACA;EACA;EACA;;AACJ;EACE;EACA;EACA;EACA;;AAEF;EACE;;AACF;EACE;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;;AACR;EACE,kBzBjQL;EyBkQK,OzBnQH;;AyBoQG;EACE;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA,kBzB5QT;EyB6QS,OzB9QP;EyB+QO;EACA;EACA;;AACA;EACE;EACA;EACA,OzB5QX;;AyB6QS;EACE;EACA;;AACF;EACE;EACA;EACA;;AACR;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGV;EACE;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;;AACA;EACE;EACA;EACA;EACA;;AAEA;EACE;;AACZ;EACE;EACA;EACA;EACA;;AACA;EACE;;;ACjUR;EACE;;AACA;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;;AACA;EACE;;AACJ;EACE;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA,O1B1BI;E0B2BJ;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACF;EACE;EACA,kB1BjCC;E0BkCD;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAEF;EACE;;AAEF;EACE;;AACJ;EACE,O1BtDK;E0BuDL;EACA;;AAKE;EACE;;AAEF;EACE;;AAEF;EACE;;AACZ;EACE;;AACA;EACM;;AACR;EACE;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA,kB1BhFO;E0BiFP,O1B1FS;E0B2FT;;AACA;EACE,kB1B7FO;E0B8FP;EACA;;AACA;EACE;;AACJ;EACE,kB1B5FG;;A0B6FH;EACE,kB1BlGI;;A0BmGR;EACE;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;;AACJ;EACE;;AACF;EACE;;AACF;EACE;;AACF;EACE;;AACF;EACI;;AAEJ;EACE;EACA;;AACF;EACE;;AACF;EACE;;AACF;EACE;;;AACR;EAEI;IACE;;EACF;IACE;;EACF;IACE;;EACF;IACE;;;AC/IJ;EACE;EACA;;AACA;EACE;EACA;;AACA;EACE;EACA;EACA;EACA;;AACA;EACE;EACA;;AACJ;EACE;;AACJ;EACE;EACA;;AACF;EACE;;AACF;EACE;;AACF;EACE;;AACA;EACE;;AACJ;EACE;EACA;;AACA;EACE;EACA;;AACA;EACE;EACA;EACA;EACA;;AACN;EACE;EACA;EACA;EACA;;AACA;EACE;;;AAGN;EACE;;AACF;EACE;EACA;EACA;EACA;EACA;;AACF;EACE;IACE;;EACF;IACE;;EACF;IACE;;;AAEJ;EACE;IACE;IACA;;EACF;IACE;IACA;;EACF;IACE;IACA;;;;AAEN;EAGM;IACE;;EACF;IACE;;EAEJ;IACE;;EACA;IACE;IACA;;EACF;IACE;;;ACzFR;EACE;EACA;EACA;EACA,O5BHa;E4BIb;EACA;EACA;;AACA;EACE;EACA;EACA;;AAEF;EACE,kB5BJS;E4BKT;;AACA;EACE,kB5BhBS;E4BiBT;;AACA;EACE;;AACF;EACE;;AACA;EACE;;AACN;EACE;EACA;EACA;EACA;;AACA;EACE;EACA;;AAEF;EACE;;AACF;EACE;;AACF;EACE;;AACJ;EACE;EACA;EACA;EACA;EACA;;AACA;EACE;;AACF;EACE;;AACF;EACE,O5B/CM;;A4BgDN;EACE,kB5BjDI;;A4BkDR;EACE,O5B/CG;;A4BgDH;EACE,kB5BjDC;;A4BkDL;EACE;EACA;EACA;EACA;EACA;;;AC/DR;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;;AACF;EACE;;AACJ;EACE;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACF;EACE;EACA;EACA;EACA;;AACF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;;AAEA;EACE;EACA;;AACJ;EACE;EACA;EACA;EACA;EACA;EACA;;AACF;EACE;EACA;EACA;;AAEA;EACE,kB7B/ED;;A6BgFD;EACE;;AAEF;EACE;;AAEN;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;;AACF;EACE;;AAEA;EACE;EACA;EACA;;AAGV;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE,kB7BjII;;A6BkIN;EACE,kB7B/HC;;A6BiID;EACE;EACA;;AAER;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;;AACA;EACE;;AAEA;EACE;EACA;;AACV;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;;AACF;EACE;EACA;EACA;EACA;;AACF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;;AACF;EACE;EACA;;AACA;EACE,kB7B3MI;;A6B4MN;EACE,kB7BzMC;;A6B0MP;EACE;EACA;;AACA;EACE;EACA;;AAEN;EACE;EACA;EACA;EACA;EACA;EACA;EACA,O7B9NS;E6B+NT;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;;AACF;EACE;EACA,O7BhPS;;A6BiPX;EACE;;AAGF;EACE;EACA;;AACJ;EAGE;;AAFA;EACE;;AAEJ;EAGE;;AAFA;EACE;;AAEJ;EAGE;;AAFA;EACE;;AAEJ;EAGE;;AAFA;EACE;;AAEJ;EAGE;;AAFA;EACE;;AAEJ;EAGE;;AAFA;EACE;;AAEJ;EACE;EACA;;AACF;EACE,Y7BnRS;;A6BoRX;EACE,Y7BtRW;;A6BuRb;EACE,Y7BxRW;;;A8BDf;EACE;EACA;;AACA;EACE;;AAGA;EACE;EACA;;AACJ;EACE;;AAEF;EACE;;AAEF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAGA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEF;EACE;EACA;EACA;EACA;;AAEF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,kB9B5CK;;A8B8CP;EACE;;AAEJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AClEF;EACE;;AACF;EACE,O/BFS;;A+BIP;EACE;;AACF;EACE,O/BFO;;A+BGT;EACE,O/BHG;;A+BIL;EACE,O/BRO;;A+BST;EACE,O/BXM;;A+BYV;EACE;EACA;EACA;EACA;;AACA;EACE;EACA;;AACF;EACE;EACA;EACA;;AACJ;EACE;EACA;EACA;EACA;EACA,O/BhCS;E+BiCT;;AAEA;EACE,O/BnCK;;A+BoCX;EACE;EACA;;AACA;EACE;EACA;EACA;;AACA;EACE;EACA;;AACJ;EACE;;AAEJ;EACE;EACA;;AAIM;EACE;;AACF;EACE;;AACF;EACE;;AACF;EACE;EACA;EACA;;AAEF;EACE;EACA;;AACA;EACE;;AACR;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;;AACA;EACE;EACA;EACA;;AACJ;EACE;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;;AAEF;EACE;;AAER;EACE;;AACF;EACE;;AACA;EACE;;AACJ;EACE;;AACF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,O/BrHO;;A+BwHL;EACE,kB/BnHC;E+BoHD,O/B3HK;E+B4HL,c/BrHC;E+BsHD;;AACF;EACE,kB/B5HI;E+B6HJ,O/BhIK;E+BiIL,c/B9HI;E+B+HJ;;AACF;EACE,kB/BhIK;E+BiIL,O/BrIK;E+BsIL,c/BlIK;E+BmIL;;AACR;EACE;EACA;EACA;EACA;EACA;;;AC5IA;EACE;;AACA;EACE;EACA;;AACA;EACE;;AACF;EACE;;AACF;EACE;;AAMM;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,ahClBP;EgCmBO;EACA;;AACA;EACE;EACA;;AACF;EACE;EACA;;AACF;EACE;EACA;EACA;;AACA;EACE;;AACJ;EACE;EACA;EACA;;AACN;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;;AACF;EACE,YhC1DH;EgC2DG;;AACF;EACE,YhC1DP;;AgC2DK;EACE,YhC7DH;EgC8DG;;AAEZ;EACE;;AACA;EACE;EACA;EACA,kBhCxEI;EgCyEJ;;AACJ;EACE;EACA;;AACF;EACE;;AAEE;EACE;EACA,OhClFE;;AgCmFJ;EACE;;AACR;EACE;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA,OhCzGK;;AgC0GP;EACE;EACA;EACA;;AACF;EACE;EACA;;AACF;EACE;;AACF;EACE;;AAGA;EACE;EACA;;AAEF;EACE;;AAEF;EACE,OhC5HE;;AgC6HN;EACE;;AACF;EACE;EACA;EACA;;AACF;EACE,OhCvIK;EgCwIL;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE,OhC1ID;EgC2IC;;AACA;EACE;;AACN;EACE,OhCpJI;;AgCqJN;EACE;EACA;EACA;;AAEN;EACE;EACA;;;AAGN;EACE;IACE;;EACA;IACE;;EACF;IACE;;;AACN;EACE;IACE;IACA;IACA;;;ACxKoB;EACI,kBjCHd;;AiCKc;EACI;;AACJ;EACI;;AAEJ;EACI;;AACA;EACI;EACA;EACA;EACA;EACA;EACA,OjChBvB;;AiCiBuB;EACI;;AACZ;EACI;;AACA;EACI,OjCpBzB;;AiCqBiB;EACI;;AACA;EACI;EACA;EACA;;AACA;EACI;EACA;;;ACpCtC;EACE;;AACF;EACE;EACA;;;ACLJ;EACE;EACA;;AACA;EACE;EACA;;AACA;EACE;EACA;EACA;;AAIE;EACE;;AACF;EACE;EACA;EACA;;AACF;EACE;EACA,OnCrBG;;AmCsBL;EACE;EACA;;;ACeT;EACC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAEF;EACE;;;AACF;EACE;EACA,kBpC7DK;EoC8DL;;AACA;EACE;EACA;;AACA;EACE;EACA;EACA;;AACF;EACE;;AACF;EACE;;AACF;EACE;;AACF;EACE;;AACF;EACE;;AACF;EACE;;AACF;EACE;;AACF;EACE;EACA;EACA;;AACF;EACE,OpC1FO;;AoC2FT;EACE,OpC7FS;EoC8FT;;AACF;EAEE;EACA;EACA,OpClGO;EoCmGP;EACA;EACA,cpCrGO;EoCsGP;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;;AACF;EACE;EACA;EACA;;AACF;EAEE;EACA;EACA;;AACA;EACE;EACA;EACA;;AACJ;EACE;;AACA;EACE;EACA;EACA;;AACJ;EACE;EACA;EACA;EACA;EACA;;AACA;EACE;;AACN;EACE;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;;AACF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,OpCxLO;;AoCyLP;EACE;EACA;EACA,OpC5LK;;AoC6LL;EACE;EACA;;;AACV;EACE;;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;;;AACJ;EACE;;;AACF;EACE;;;AACF;EACE;;;AACF;EACE;;;AAEF;EACE;EACA;EACA;EACA;;AACA;EACE;;;AACJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;;AACF;EACE;EACA;EACA,OpCxOO;EoCyOP;EACA;;AACA;EACE;EACA;EACA;;AACJ;EACE;EACA;EACA,OpCzPW","file":"style.css"} \ No newline at end of file diff --git a/views/index.ejs b/views/index.ejs index 8316d641..c64c91c3 100644 --- a/views/index.ejs +++ b/views/index.ejs @@ -16,7 +16,8 @@ <% } %> diff --git a/views/partials/_footer.ejs b/views/partials/_footer.ejs index f23be18f..13c25da7 100644 --- a/views/partials/_footer.ejs +++ b/views/partials/_footer.ejs @@ -1,10 +1,21 @@
- Logo - <% if (!locals.ignoreExtras) {%> - - <% } %> - Universidad Politécnica de Madrid -
\ No newline at end of file + <% } %> + GBL@UZH + Universidad Politécnica de Madrid + diff --git a/views/partials/_form.ejs b/views/partials/_form.ejs index 6e074aae..a8f28c94 100644 --- a/views/partials/_form.ejs +++ b/views/partials/_form.ejs @@ -71,6 +71,7 @@ + diff --git a/views/partials/_header.ejs b/views/partials/_header.ejs index a2815370..04b88e60 100644 --- a/views/partials/_header.ejs +++ b/views/partials/_header.ejs @@ -6,9 +6,7 @@ home <% if (!session.user.isStudent) { %> - help_outline - - widgets + help_outline <% } %> <% } %> diff --git a/views/users/_form.ejs b/views/users/_form.ejs index 06f79ac3..943bcc50 100644 --- a/views/users/_form.ejs +++ b/views/users/_form.ejs @@ -54,6 +54,7 @@