Compare commits
3 commits
3b27101503
...
b6aede1fc4
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
b6aede1fc4 | ||
|
|
6bfcca578b | ||
|
|
45e11299c6 |
113 changed files with 271 additions and 184 deletions
|
|
@ -438,7 +438,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<script src="assets/app_auth.js"></script>
|
||||
<script src="assets/app_auth.js?v=2.1.0"></script>
|
||||
<script>
|
||||
let ALL_USERS = [];
|
||||
|
||||
|
|
|
|||
|
|
@ -50,29 +50,47 @@
|
|||
user: getStoredUser(),
|
||||
platformStatus: { maintenance: false, announcement: '', allow_registration: true },
|
||||
|
||||
getToken() {
|
||||
if (!this.token) {
|
||||
this.token = getStoredToken();
|
||||
}
|
||||
return this.token;
|
||||
},
|
||||
|
||||
getUser() {
|
||||
if (!this.user) {
|
||||
this.user = getStoredUser();
|
||||
}
|
||||
return this.user;
|
||||
},
|
||||
|
||||
isLoggedIn() {
|
||||
return !!(this.token && this.user && !this.user.isGuest && this.user.email);
|
||||
const token = this.getToken();
|
||||
const user = this.getUser();
|
||||
return !!(token && user && !user.isGuest && user.email);
|
||||
},
|
||||
|
||||
isAdmin() {
|
||||
return !!(this.isLoggedIn() && this.user && this.user.role === 'admin');
|
||||
const user = this.getUser();
|
||||
return !!(this.isLoggedIn() && user && user.role === 'admin');
|
||||
},
|
||||
|
||||
setSession(token, user, rememberMe = false) {
|
||||
isTeacher() {
|
||||
const user = this.getUser();
|
||||
return !!(this.isLoggedIn() && user && (user.role === 'teacher' || user.role === 'admin'));
|
||||
},
|
||||
|
||||
setSession(token, user, rememberMe = true) {
|
||||
this.token = token;
|
||||
this.user = user;
|
||||
|
||||
if (rememberMe) {
|
||||
try {
|
||||
localStorage.setItem('auth_token', token);
|
||||
localStorage.setItem('auth_user', JSON.stringify(user));
|
||||
sessionStorage.removeItem('auth_token');
|
||||
sessionStorage.removeItem('auth_user');
|
||||
} else {
|
||||
sessionStorage.setItem('auth_token', token);
|
||||
sessionStorage.setItem('auth_user', JSON.stringify(user));
|
||||
localStorage.removeItem('auth_token');
|
||||
localStorage.removeItem('auth_user');
|
||||
}
|
||||
} catch (e) {}
|
||||
|
||||
this.updateUI();
|
||||
this.handleMaintenanceDisplay();
|
||||
},
|
||||
|
|
@ -313,6 +331,7 @@
|
|||
|
||||
updateUI() {
|
||||
const loggedIn = this.isLoggedIn();
|
||||
const user = this.getUser();
|
||||
|
||||
// Topbar Elemente in index.html
|
||||
const userSpan = document.getElementById('nav-auth-user');
|
||||
|
|
@ -322,12 +341,18 @@
|
|||
const teacherLink = document.getElementById('nav-teacher-link');
|
||||
const heroPrimaryCta = document.getElementById('hero-primary-cta');
|
||||
|
||||
// Dashboard Links auf index.html / impressum / datenschutz
|
||||
const navDashLink = document.getElementById('nav-dashboard-link');
|
||||
const mobDashLink = document.getElementById('mobile-drawer-dash-link');
|
||||
const landingBanner = document.getElementById('landing-logged-in-banner');
|
||||
const landingUserName = document.getElementById('landing-user-name');
|
||||
|
||||
if (guestBtn) guestBtn.style.display = 'none'; // Gast-Button permanent ausblenden
|
||||
|
||||
if (loggedIn && this.user) {
|
||||
if (loggedIn && user) {
|
||||
if (userSpan) {
|
||||
userSpan.style.display = 'inline-flex';
|
||||
userSpan.innerHTML = `👤 ${escapeHtml(this.user.name || this.user.email)}`;
|
||||
userSpan.innerHTML = `👤 ${escapeHtml(user.name || user.email)}`;
|
||||
}
|
||||
if (loginBtn) {
|
||||
loginBtn.style.display = 'inline-flex';
|
||||
|
|
@ -335,6 +360,7 @@
|
|||
loginBtn.style.background = 'rgba(239, 68, 68, 0.15)';
|
||||
loginBtn.style.color = '#f87171';
|
||||
loginBtn.style.borderColor = 'rgba(239, 68, 68, 0.3)';
|
||||
loginBtn.removeAttribute('onclick');
|
||||
loginBtn.onclick = () => {
|
||||
if (confirm('Möchtest du dich wirklich abmelden?')) {
|
||||
this.logout();
|
||||
|
|
@ -342,14 +368,18 @@
|
|||
};
|
||||
}
|
||||
if (registerBtn) {
|
||||
registerBtn.style.display = 'inline-flex';
|
||||
registerBtn.innerHTML = '<span class="btn-text-desktop">💻 Zum Kurs-Dashboard</span><span class="btn-text-mobile">💻 Dashboard</span>';
|
||||
registerBtn.style.background = '#10b981';
|
||||
registerBtn.onclick = () => {
|
||||
registerBtn.removeAttribute('onclick');
|
||||
registerBtn.onclick = (e) => {
|
||||
e.preventDefault();
|
||||
window.location.href = 'dashboard.html';
|
||||
};
|
||||
}
|
||||
if (heroPrimaryCta) {
|
||||
heroPrimaryCta.innerHTML = '<span>▶ Zum Dashboard & Kurse wählen →</span>';
|
||||
heroPrimaryCta.removeAttribute('onclick');
|
||||
heroPrimaryCta.onclick = (e) => {
|
||||
e.preventDefault();
|
||||
window.location.href = 'dashboard.html';
|
||||
|
|
@ -360,11 +390,25 @@
|
|||
document.querySelectorAll('.landing-cta-btn').forEach(btn => {
|
||||
btn.innerHTML = '<span>▶ Zum Dashboard & Kurse wählen →</span>';
|
||||
btn.style.background = '#10b981';
|
||||
btn.removeAttribute('onclick');
|
||||
btn.onclick = (e) => {
|
||||
e.preventDefault();
|
||||
window.location.href = 'dashboard.html';
|
||||
};
|
||||
});
|
||||
|
||||
const footerLoginBtn = document.getElementById('footer-cta-login');
|
||||
if (footerLoginBtn) footerLoginBtn.style.display = 'none';
|
||||
|
||||
// Banner und Dashboard-Links einblenden
|
||||
if (landingBanner) {
|
||||
landingBanner.style.display = 'flex';
|
||||
if (landingUserName) {
|
||||
landingUserName.innerText = user.name || user.email.split('@')[0];
|
||||
}
|
||||
}
|
||||
if (navDashLink) navDashLink.style.display = 'inline-flex';
|
||||
if (mobDashLink) mobDashLink.style.display = 'flex';
|
||||
} else {
|
||||
if (userSpan) userSpan.style.display = 'none';
|
||||
if (loginBtn) {
|
||||
|
|
@ -398,11 +442,18 @@
|
|||
window.openAuthModal('register', { allowClose: true });
|
||||
};
|
||||
});
|
||||
|
||||
const footerLoginBtn = document.getElementById('footer-cta-login');
|
||||
if (footerLoginBtn) footerLoginBtn.style.display = 'inline-flex';
|
||||
|
||||
if (landingBanner) landingBanner.style.display = 'none';
|
||||
if (navDashLink) navDashLink.style.display = 'none';
|
||||
if (mobDashLink) mobDashLink.style.display = 'none';
|
||||
}
|
||||
|
||||
// 🔒 Strikter Rollen-Filter für Dozenten- und Admin-Funktionen
|
||||
const isTeacherOrAdmin = loggedIn && this.user && (this.user.role === 'teacher' || this.user.role === 'admin');
|
||||
const isAdmin = loggedIn && this.user && this.user.role === 'admin';
|
||||
const isTeacherOrAdmin = loggedIn && user && (user.role === 'teacher' || user.role === 'admin');
|
||||
const isAdmin = loggedIn && user && user.role === 'admin';
|
||||
|
||||
document.querySelectorAll('.teacher-only, #nav-teacher-link, #mobile-drawer-teacher-link, #footer-teacher-link').forEach(el => {
|
||||
if (isTeacherOrAdmin) {
|
||||
|
|
@ -446,6 +497,10 @@
|
|||
|
||||
// Auth Modal UI
|
||||
window.openAuthModal = function (initialMode = 'login', options = {}) {
|
||||
if (window.AUTH && window.AUTH.isLoggedIn()) {
|
||||
window.location.href = 'dashboard.html';
|
||||
return;
|
||||
}
|
||||
const allowClose = options.allowClose !== false;
|
||||
let modal = document.getElementById('auth-modal-overlay');
|
||||
if (modal) modal.remove();
|
||||
|
|
@ -628,13 +683,8 @@
|
|||
if (options.onSuccess) {
|
||||
options.onSuccess(result.user);
|
||||
} else {
|
||||
window.AUTH.updateUI();
|
||||
const p = window.location.pathname;
|
||||
if (p.endsWith('index.html') || p === '/' || p.endsWith('/')) {
|
||||
window.location.href = 'dashboard.html';
|
||||
} else {
|
||||
window.location.reload();
|
||||
}
|
||||
try { window.AUTH.updateUI(); } catch (e) {}
|
||||
window.location.href = 'dashboard.html';
|
||||
}
|
||||
} else {
|
||||
errorBox.innerText = result.error || 'Fehler bei der Authentifizierung';
|
||||
|
|
@ -652,7 +702,11 @@
|
|||
const params = new URLSearchParams(window.location.search);
|
||||
const authParam = params.get('auth');
|
||||
if (authParam === 'login' || authParam === 'register') {
|
||||
window.openAuthModal(authParam, { allowClose: true });
|
||||
if (!window.AUTH.isLoggedIn()) {
|
||||
window.openAuthModal(authParam, { allowClose: true });
|
||||
} else {
|
||||
window.location.replace('dashboard.html');
|
||||
}
|
||||
}
|
||||
});
|
||||
})();
|
||||
|
|
|
|||
|
|
@ -104,7 +104,7 @@
|
|||
|
||||
if (!window.AUTH) {
|
||||
const authScript = document.createElement('script');
|
||||
authScript.src = `${rootPrefix}assets/app_auth.js`;
|
||||
authScript.src = `${rootPrefix}assets/app_auth.js?v=2.1.0`;
|
||||
authScript.onload = () => proceed();
|
||||
authScript.onerror = () => proceed();
|
||||
document.head.appendChild(authScript);
|
||||
|
|
|
|||
|
|
@ -630,7 +630,7 @@ class IhkExamEngine {
|
|||
|
||||
<div style="margin-top: 24px; display: flex; justify-content: flex-end; gap: 12px;">
|
||||
<button class="ihk-btn ihk-btn-secondary" onclick="this.closest('[style*=\\'position: fixed\\']').remove()">Musterlösungen studieren</button>
|
||||
<a href="../../../index.html" class="ihk-btn ihk-btn-success">Zurück zur Kursübersicht</a>
|
||||
<a href="../../../dashboard.html" class="ihk-btn ihk-btn-success">Zurück zum Dashboard</a>
|
||||
</div>
|
||||
</div>
|
||||
`;
|
||||
|
|
|
|||
|
|
@ -137,9 +137,13 @@
|
|||
|
||||
if (window.RunnerRegistry) {
|
||||
window.RunnerRegistry.register(HtmlCssAdapter);
|
||||
window.RunnerRegistry.register({ ...HtmlCssAdapter, id: "html" });
|
||||
} else {
|
||||
document.addEventListener("DOMContentLoaded", () => {
|
||||
if (window.RunnerRegistry) window.RunnerRegistry.register(HtmlCssAdapter);
|
||||
if (window.RunnerRegistry) {
|
||||
window.RunnerRegistry.register(HtmlCssAdapter);
|
||||
window.RunnerRegistry.register({ ...HtmlCssAdapter, id: "html" });
|
||||
}
|
||||
});
|
||||
}
|
||||
})();
|
||||
|
|
|
|||
|
|
@ -141,7 +141,7 @@ set +x # Schaltet Tracing wieder aus</code></pre>
|
|||
<div style="margin-top: 25px; display: flex; gap: 12px; flex-wrap: wrap;">
|
||||
<a href="../../../workspace.html?course=bash&track=track_2_skripting_und_textmining&chapter=08_robuste_skripte_und_debugging" class="btn" style="background: #10b981; color: #fff; font-weight: 700;">💻 In Web-IDE öffnen →</a>
|
||||
<a href="../07_text_mining_grep_sed_awk_und_jq/index.html" class="btn btn-secondary">← Zurück zu Bash 07</a>
|
||||
<a href="../../../index.html#zertifikate" class="btn btn-secondary">🎓 Zur Kursübersicht & Zertifikate →</a>
|
||||
<a href="../../../index.html#zertifikate" class="btn btn-secondary">🎓 Zum Dashboard & Zertifikate →</a>
|
||||
</div>
|
||||
</section>
|
||||
</main>
|
||||
|
|
|
|||
|
|
@ -112,7 +112,7 @@
|
|||
<div style="margin-top: 25px; display: flex; gap: 12px; flex-wrap: wrap;">
|
||||
<a href="../../../workspace.html?course=bash&track=track_4_cloud_devops_und_master&chapter=16_master_abschlussprojekt_devops_suite" class="btn" style="background: #eab308; color: #000; font-weight: 700;">💻 In Web-IDE öffnen →</a>
|
||||
<a href="../15_bats_automatisiertes_unit_testing/index.html" class="btn btn-secondary">← Zurück zu Bash 15</a>
|
||||
<a href="../../../index.html" class="btn btn-secondary">🏠 Zurück zur Kursübersicht</a>
|
||||
<a href="../../../dashboard.html" class="btn btn-secondary">🏠 Zurück zum Dashboard</a>
|
||||
</div>
|
||||
</section>
|
||||
</main>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<p class="text-sm text-slate-300">Bearbeite die Aufgaben im Startercode und teste deine Lösung direkt in der Web-IDE.</p>
|
||||
</div>
|
||||
<div class="flex justify-between items-center">
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Zurück zur Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Zurück zum Dashboard</a>
|
||||
<a href="../../../workspace.html?course=cpp&chapter=04_structs_und_header_dateien" class="bg-cyan-500 hover:bg-cyan-600 text-slate-950 font-bold px-6 py-2 rounded shadow transition">💻 In Web-IDE öffnen →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<p class="text-sm text-slate-300">Bearbeite die Aufgaben im Startercode und teste deine Lösung direkt in der Web-IDE.</p>
|
||||
</div>
|
||||
<div class="flex justify-between items-center">
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Zurück zur Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Zurück zum Dashboard</a>
|
||||
<a href="../../../workspace.html?course=cpp&chapter=05_einstieg_cpp_und_namespaces" class="bg-cyan-500 hover:bg-cyan-600 text-slate-950 font-bold px-6 py-2 rounded shadow transition">💻 In Web-IDE öffnen →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<p class="text-sm text-slate-300">Bearbeite die Aufgaben im Startercode und teste deine Lösung direkt in der Web-IDE.</p>
|
||||
</div>
|
||||
<div class="flex justify-between items-center">
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Zurück zur Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Zurück zum Dashboard</a>
|
||||
<a href="../../../workspace.html?course=cpp&chapter=06_klassen_konstruktoren_und_raii" class="bg-cyan-500 hover:bg-cyan-600 text-slate-950 font-bold px-6 py-2 rounded shadow transition">💻 In Web-IDE öffnen →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<p class="text-sm text-slate-300">Bearbeite die Aufgaben im Startercode und teste deine Lösung direkt in der Web-IDE.</p>
|
||||
</div>
|
||||
<div class="flex justify-between items-center">
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Zurück zur Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Zurück zum Dashboard</a>
|
||||
<a href="../../../workspace.html?course=cpp&chapter=07_vererbung_und_virtuelle_methoden" class="bg-cyan-500 hover:bg-cyan-600 text-slate-950 font-bold px-6 py-2 rounded shadow transition">💻 In Web-IDE öffnen →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<p class="text-sm text-slate-300">Bearbeite die Aufgaben im Startercode und teste deine Lösung direkt in der Web-IDE.</p>
|
||||
</div>
|
||||
<div class="flex justify-between items-center">
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Zurück zur Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Zurück zum Dashboard</a>
|
||||
<a href="../../../workspace.html?course=cpp&chapter=08_operator_overloading" class="bg-cyan-500 hover:bg-cyan-600 text-slate-950 font-bold px-6 py-2 rounded shadow transition">💻 In Web-IDE öffnen →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<p class="text-sm text-slate-300">Bearbeite die Aufgaben im Startercode und teste deine Lösung direkt in der Web-IDE.</p>
|
||||
</div>
|
||||
<div class="flex justify-between items-center">
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Zurück zur Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Zurück zum Dashboard</a>
|
||||
<a href="../../../workspace.html?course=cpp&chapter=13_multithreading_mit_std_thread" class="bg-cyan-500 hover:bg-cyan-600 text-slate-950 font-bold px-6 py-2 rounded shadow transition">💻 In Web-IDE öffnen →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<p class="text-sm text-slate-300">Bearbeite die Aufgaben im Startercode und teste deine Lösung direkt in der Web-IDE.</p>
|
||||
</div>
|
||||
<div class="flex justify-between items-center">
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Zurück zur Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Zurück zum Dashboard</a>
|
||||
<a href="../../../workspace.html?course=cpp&chapter=14_dateiverarbeitung_und_streams" class="bg-cyan-500 hover:bg-cyan-600 text-slate-950 font-bold px-6 py-2 rounded shadow transition">💻 In Web-IDE öffnen →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<p class="text-sm text-slate-300">Bearbeite die Aufgaben im Startercode und teste deine Lösung direkt in der Web-IDE.</p>
|
||||
</div>
|
||||
<div class="flex justify-between items-center">
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Zurück zur Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Zurück zum Dashboard</a>
|
||||
<a href="../../../workspace.html?course=cpp&chapter=15_googletest_gtest_unittesting" class="bg-cyan-500 hover:bg-cyan-600 text-slate-950 font-bold px-6 py-2 rounded shadow transition">💻 In Web-IDE öffnen →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<p class="text-sm text-slate-300">Bearbeite die Aufgaben im Startercode und teste deine Lösung direkt in der Web-IDE.</p>
|
||||
</div>
|
||||
<div class="flex justify-between items-center">
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Zurück zur Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Zurück zum Dashboard</a>
|
||||
<a href="../../../workspace.html?course=cpp&chapter=16_master_abschlussprojekt_high_performance_engine" class="bg-cyan-500 hover:bg-cyan-600 text-slate-950 font-bold px-6 py-2 rounded shadow transition">💻 In Web-IDE öffnen →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<p class="text-sm text-slate-300">Bearbeite die Aufgaben im Startercode und teste deine Lösung direkt in der Web-IDE.</p>
|
||||
</div>
|
||||
<div class="flex justify-between items-center">
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Zurück zur Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Zurück zum Dashboard</a>
|
||||
<a href="../../../workspace.html?course=csharp&chapter=02_kontrollfluss_und_pattern_matching" class="bg-purple-600 hover:bg-purple-700 text-white font-bold px-6 py-2 rounded shadow transition">💻 In Web-IDE öffnen →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<p class="text-sm text-slate-300">Bearbeite die Aufgaben im Startercode und teste deine Lösung direkt in der Web-IDE.</p>
|
||||
</div>
|
||||
<div class="flex justify-between items-center">
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Zurück zur Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Zurück zum Dashboard</a>
|
||||
<a href="../../../workspace.html?course=csharp&chapter=03_arrays_listen_und_collections" class="bg-purple-600 hover:bg-purple-700 text-white font-bold px-6 py-2 rounded shadow transition">💻 In Web-IDE öffnen →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<p class="text-sm text-slate-300">Bearbeite die Aufgaben im Startercode und teste deine Lösung direkt in der Web-IDE.</p>
|
||||
</div>
|
||||
<div class="flex justify-between items-center">
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Zurück zur Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Zurück zum Dashboard</a>
|
||||
<a href="../../../workspace.html?course=csharp&chapter=04_methoden_parameter_und_tuples" class="bg-purple-600 hover:bg-purple-700 text-white font-bold px-6 py-2 rounded shadow transition">💻 In Web-IDE öffnen →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<p class="text-sm text-slate-300">Bearbeite die Aufgaben im Startercode und teste deine Lösung direkt in der Web-IDE.</p>
|
||||
</div>
|
||||
<div class="flex justify-between items-center">
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Zurück zur Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Zurück zum Dashboard</a>
|
||||
<a href="../../../workspace.html?course=csharp&chapter=05_klassen_objekte_und_primary_constructors" class="bg-purple-600 hover:bg-purple-700 text-white font-bold px-6 py-2 rounded shadow transition">💻 In Web-IDE öffnen →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<p class="text-sm text-slate-300">Bearbeite die Aufgaben im Startercode und teste deine Lösung direkt in der Web-IDE.</p>
|
||||
</div>
|
||||
<div class="flex justify-between items-center">
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Zurück zur Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Zurück zum Dashboard</a>
|
||||
<a href="../../../workspace.html?course=csharp&chapter=06_records_und_immutability" class="bg-purple-600 hover:bg-purple-700 text-white font-bold px-6 py-2 rounded shadow transition">💻 In Web-IDE öffnen →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<p class="text-sm text-slate-300">Bearbeite die Aufgaben im Startercode und teste deine Lösung direkt in der Web-IDE.</p>
|
||||
</div>
|
||||
<div class="flex justify-between items-center">
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Zurück zur Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Zurück zum Dashboard</a>
|
||||
<a href="../../../workspace.html?course=csharp&chapter=07_vererbung_polymorphismus_und_abstract" class="bg-purple-600 hover:bg-purple-700 text-white font-bold px-6 py-2 rounded shadow transition">💻 In Web-IDE öffnen →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<p class="text-sm text-slate-300">Bearbeite die Aufgaben im Startercode und teste deine Lösung direkt in der Web-IDE.</p>
|
||||
</div>
|
||||
<div class="flex justify-between items-center">
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Zurück zur Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Zurück zum Dashboard</a>
|
||||
<a href="../../../workspace.html?course=csharp&chapter=08_interfaces_und_dependency_injection" class="bg-purple-600 hover:bg-purple-700 text-white font-bold px-6 py-2 rounded shadow transition">💻 In Web-IDE öffnen →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<p class="text-sm text-slate-300">Bearbeite die Aufgaben im Startercode und teste deine Lösung direkt in der Web-IDE.</p>
|
||||
</div>
|
||||
<div class="flex justify-between items-center">
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Zurück zur Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Zurück zum Dashboard</a>
|
||||
<a href="../../../workspace.html?course=csharp&chapter=13_json_serialisierung_und_dateien" class="bg-purple-600 hover:bg-purple-700 text-white font-bold px-6 py-2 rounded shadow transition">💻 In Web-IDE öffnen →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<p class="text-sm text-slate-300">Bearbeite die Aufgaben im Startercode und teste deine Lösung direkt in der Web-IDE.</p>
|
||||
</div>
|
||||
<div class="flex justify-between items-center">
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Zurück zur Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Zurück zum Dashboard</a>
|
||||
<a href="../../../workspace.html?course=csharp&chapter=14_events_delegates_und_lambdas" class="bg-purple-600 hover:bg-purple-700 text-white font-bold px-6 py-2 rounded shadow transition">💻 In Web-IDE öffnen →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<p class="text-sm text-slate-300">Bearbeite die Aufgaben im Startercode und teste deine Lösung direkt in der Web-IDE.</p>
|
||||
</div>
|
||||
<div class="flex justify-between items-center">
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Zurück zur Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Zurück zum Dashboard</a>
|
||||
<a href="../../../workspace.html?course=csharp&chapter=15_xunit_automatisiertes_unit_testing" class="bg-purple-600 hover:bg-purple-700 text-white font-bold px-6 py-2 rounded shadow transition">💻 In Web-IDE öffnen →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<p class="text-sm text-slate-300">Bearbeite die Aufgaben im Startercode und teste deine Lösung direkt in der Web-IDE.</p>
|
||||
</div>
|
||||
<div class="flex justify-between items-center">
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Zurück zur Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Zurück zum Dashboard</a>
|
||||
<a href="../../../workspace.html?course=csharp&chapter=16_master_abschlussprojekt_enterprise_order_engine" class="bg-purple-600 hover:bg-purple-700 text-white font-bold px-6 py-2 rounded shadow transition">💻 In Web-IDE öffnen →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -87,7 +87,7 @@ defer fmt.Println("3. Dritter Defer")
|
|||
|
||||
<div style="margin-top: 25px; display: flex; gap: 12px; flex-wrap: wrap;">
|
||||
<a href="../../../workspace.html?course=go&track=track_2_structs_interfaces&chapter=08_defer_panic_und_recover" class="btn" style="background: #00add8; color: #fff; font-weight: 700;">💻 In Web-IDE öffnen →</a>
|
||||
<a href="../../../index.html" class="btn btn-secondary">Zurück zum Dashboard →</a>
|
||||
<a href="../../../dashboard.html" class="btn btn-secondary">Zurück zum Dashboard →</a>
|
||||
</div>
|
||||
</section>
|
||||
</main>
|
||||
|
|
|
|||
|
|
@ -147,7 +147,7 @@
|
|||
<div style="margin-top: 25px; display: flex; gap: 12px; flex-wrap: wrap;">
|
||||
<a href="../../../workspace.html?course=go&track=track_4_microservices_master&chapter=16_master_abschlussprojekt_microservice" class="btn" style="background: #00add8; color: #fff; font-weight: 700;">💻 In Web-IDE öffnen →</a>
|
||||
<a href="../15_unit_testing_und_benchmarks/index.html" class="btn btn-secondary">← Zurück zu Go 15</a>
|
||||
<a href="../../../index.html" class="btn" style="background: var(--success); color: white;">🏆 Go-Kurs abschließen →</a>
|
||||
<a href="../../../dashboard.html" class="btn" style="background: var(--success); color: white;">🏆 Go-Kurs abschließen →</a>
|
||||
</div>
|
||||
</section>
|
||||
</main>
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
<body class="bg-slate-900 text-slate-100 font-sans p-6">
|
||||
<div class="container mx-auto max-w-4xl">
|
||||
<div class="flex justify-between items-center mb-6">
|
||||
<a href="../../../index.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zur Gesamtübersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zum Dashboard</a>
|
||||
<span class="ihk-badge ihk-badge-success">Lernfeld 1</span>
|
||||
</div>
|
||||
|
||||
|
|
@ -293,7 +293,7 @@ Qualitative Kriterien: 1. Know-how-Aufbau und Datensicherheit im eigenen Haus; 2
|
|||
|
||||
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
|
||||
<span></span>
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a>
|
||||
<a href="../02_lf2_arbeitsplaetze_ausstatten/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
<body class="bg-slate-900 text-slate-100 font-sans p-6">
|
||||
<div class="container mx-auto max-w-4xl">
|
||||
<div class="flex justify-between items-center mb-6">
|
||||
<a href="../../../index.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zur Gesamtübersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zum Dashboard</a>
|
||||
<span class="ihk-badge ihk-badge-success">Lernfeld 2</span>
|
||||
</div>
|
||||
|
||||
|
|
@ -410,7 +410,7 @@ Burn-In-Risiko: IPS hat kein Burn-In; bei OLED besteht bei statischen Office-Ele
|
|||
|
||||
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
|
||||
<a href="../01_lf1_unternehmen_und_arbeitsplatz/index.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Vorheriges Modul</a>
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a>
|
||||
<a href="../03_lf3_clients_in_netzwerke_einbinden/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
<body class="bg-slate-900 text-slate-100 font-sans p-6">
|
||||
<div class="container mx-auto max-w-4xl">
|
||||
<div class="flex justify-between items-center mb-6">
|
||||
<a href="../../../index.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zur Gesamtübersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zum Dashboard</a>
|
||||
<span class="ihk-badge ihk-badge-success">Lernfeld 3</span>
|
||||
</div>
|
||||
|
||||
|
|
@ -501,7 +501,7 @@ RRSIG (Resource Record Signature): Enthält die kryptografische Signatur über e
|
|||
|
||||
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
|
||||
<a href="../02_lf2_arbeitsplaetze_ausstatten/index.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Vorheriges Modul</a>
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a>
|
||||
<a href="../04_lf4_schutzbedarfsanalyse_und_cybersicherheit/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
<body class="bg-slate-900 text-slate-100 font-sans p-6">
|
||||
<div class="container mx-auto max-w-4xl">
|
||||
<div class="flex justify-between items-center mb-6">
|
||||
<a href="../../../index.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zur Gesamtübersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zum Dashboard</a>
|
||||
<span class="ihk-badge ihk-badge-success">Lernfeld 4</span>
|
||||
</div>
|
||||
|
||||
|
|
@ -466,7 +466,7 @@ Drei Säulen: 1. Identitätsbasierte Zugriffskontrolle (starke MFA, Kontextprüf
|
|||
|
||||
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
|
||||
<a href="../03_lf3_clients_in_netzwerke_einbinden/index.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Vorheriges Modul</a>
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a>
|
||||
<a href="../05_lf5_software_zur_datenverwaltung/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
<body class="bg-slate-900 text-slate-100 font-sans p-6">
|
||||
<div class="container mx-auto max-w-4xl">
|
||||
<div class="flex justify-between items-center mb-6">
|
||||
<a href="../../../index.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zur Gesamtübersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zum Dashboard</a>
|
||||
<span class="ihk-badge ihk-badge-success">Lernfeld 5</span>
|
||||
</div>
|
||||
|
||||
|
|
@ -453,7 +453,7 @@ Syntax-Erklärung:
|
|||
|
||||
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
|
||||
<a href="../04_lf4_schutzbedarfsanalyse_und_cybersicherheit/index.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Vorheriges Modul</a>
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a>
|
||||
<a href="../06_lf6_cyber_physische_systeme_iot/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
<body class="bg-slate-900 text-slate-100 font-sans p-6">
|
||||
<div class="container mx-auto max-w-4xl">
|
||||
<div class="flex justify-between items-center mb-6">
|
||||
<a href="../../../index.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zur Gesamtübersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zum Dashboard</a>
|
||||
<span class="ihk-badge ihk-badge-success">Lernfeld 6</span>
|
||||
</div>
|
||||
|
||||
|
|
@ -195,7 +195,7 @@ Modbus TCP: Basiert auf Standard-Ethernet und TCP/IP (Standard-Port 502). Adress
|
|||
|
||||
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
|
||||
<a href="../05_lf5_software_zur_datenverwaltung/index.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Vorheriges Modul</a>
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a>
|
||||
<a href="../07_lf7_instandhaltung_und_fehlerdiagnose/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
<body class="bg-slate-900 text-slate-100 font-sans p-6">
|
||||
<div class="container mx-auto max-w-4xl">
|
||||
<div class="flex justify-between items-center mb-6">
|
||||
<a href="../../../index.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zur Gesamtübersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zum Dashboard</a>
|
||||
<span class="ihk-badge ihk-badge-success">Lernfeld 7</span>
|
||||
</div>
|
||||
|
||||
|
|
@ -183,7 +183,7 @@ CAT-Einstufung (Überspannungskategorien): CAT II gilt für Geräte an normalen
|
|||
|
||||
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
|
||||
<a href="../06_lf6_cyber_physische_systeme_iot/index.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Vorheriges Modul</a>
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a>
|
||||
<a href="../08_lf8_datenfluesse_und_schnittstellen/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
<body class="bg-slate-900 text-slate-100 font-sans p-6">
|
||||
<div class="container mx-auto max-w-4xl">
|
||||
<div class="flex justify-between items-center mb-6">
|
||||
<a href="../../../index.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zur Gesamtübersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zum Dashboard</a>
|
||||
<span class="ihk-badge ihk-badge-success">Lernfeld 8</span>
|
||||
</div>
|
||||
|
||||
|
|
@ -190,7 +190,7 @@ Webhook (Push-Prinzip): Der Client registriert eine Empfänger-URL beim Server.
|
|||
|
||||
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
|
||||
<a href="../07_lf7_instandhaltung_und_fehlerdiagnose/index.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Vorheriges Modul</a>
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a>
|
||||
<a href="../12_ap1_probepruefung_simulation/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
<body class="bg-slate-900 text-slate-100 font-sans p-6">
|
||||
<div class="container mx-auto max-w-4xl">
|
||||
<div class="flex justify-between items-center mb-6">
|
||||
<a href="../../../index.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zur Gesamtübersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zum Dashboard</a>
|
||||
<span class="ihk-badge ihk-badge-success">IHK AP1 Prüfungstraining</span>
|
||||
</div>
|
||||
|
||||
|
|
@ -24,7 +24,7 @@
|
|||
|
||||
|
||||
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a>
|
||||
<a href="#" onclick="window.scrollTo({top: 0, behavior: 'smooth'}); return false;" class="text-sky-400 hover:underline">↑ Nach oben</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
<body class="bg-slate-900 text-slate-100 font-sans p-6">
|
||||
<div class="container mx-auto max-w-4xl">
|
||||
<div class="flex justify-between items-center mb-6">
|
||||
<a href="../../../index.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zur Gesamtübersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zum Dashboard</a>
|
||||
<span class="ihk-badge ihk-badge-success">IHK AP1 Prüfungstraining</span>
|
||||
</div>
|
||||
|
||||
|
|
@ -35,7 +35,7 @@ ORDER BY anzahl_bestellungen DESC;</pre>
|
|||
</div>
|
||||
|
||||
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a>
|
||||
<a href="#" onclick="window.scrollTo({top: 0, behavior: 'smooth'}); return false;" class="text-sky-400 hover:underline">↑ Nach oben</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
<body class="bg-slate-900 text-slate-100 font-sans p-6">
|
||||
<div class="container mx-auto max-w-4xl">
|
||||
<div class="flex justify-between items-center mb-6">
|
||||
<a href="../../../index.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zur Gesamtübersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zum Dashboard</a>
|
||||
<span class="ihk-badge ihk-badge-success">IHK AP1 Prüfungstraining</span>
|
||||
</div>
|
||||
|
||||
|
|
@ -24,7 +24,7 @@
|
|||
|
||||
|
||||
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a>
|
||||
<a href="#" onclick="window.scrollTo({top: 0, behavior: 'smooth'}); return false;" class="text-sky-400 hover:underline">↑ Nach oben</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
<body class="bg-slate-900 text-slate-100 font-sans p-6">
|
||||
<div class="container mx-auto max-w-4xl">
|
||||
<div class="flex justify-between items-center mb-6">
|
||||
<a href="../../../index.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zur Gesamtübersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zum Dashboard</a>
|
||||
<span class="ihk-badge ihk-badge-success">Offizieller IHK 100-Punkte-Schlüssel</span>
|
||||
</div>
|
||||
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
<body class="bg-slate-900 text-slate-100 font-sans p-6">
|
||||
<div class="container mx-auto max-w-4xl">
|
||||
<div class="flex justify-between items-center mb-6">
|
||||
<a href="../../../index.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zur Gesamtübersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zum Dashboard</a>
|
||||
<span class="ihk-badge ihk-badge-success">Lernfeld 9 (FISI)</span>
|
||||
</div>
|
||||
|
||||
|
|
@ -384,7 +384,7 @@ Roaming: WireGuard bindet Sitzungen an kryptografische Schlüssel und öffentlic
|
|||
|
||||
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
|
||||
<span></span>
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a>
|
||||
<a href="../02_lf10_serverdienste_und_automation/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
<body class="bg-slate-900 text-slate-100 font-sans p-6">
|
||||
<div class="container mx-auto max-w-4xl">
|
||||
<div class="flex justify-between items-center mb-6">
|
||||
<a href="../../../index.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zur Gesamtübersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zum Dashboard</a>
|
||||
<span class="ihk-badge ihk-badge-success">Lernfeld 10 (FISI)</span>
|
||||
</div>
|
||||
|
||||
|
|
@ -250,7 +250,7 @@ Dynamic ARP Inspection (DAI): Verhindert ARP-Spoofing/Poisoning. Der Switch fän
|
|||
|
||||
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
|
||||
<a href="../01_lf9_netzwerke_und_dienste/index.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Vorheriges Modul</a>
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a>
|
||||
<a href="../03_lf11_speicher_und_hochverfuegbarkeit/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
<body class="bg-slate-900 text-slate-100 font-sans p-6">
|
||||
<div class="container mx-auto max-w-4xl">
|
||||
<div class="flex justify-between items-center mb-6">
|
||||
<a href="../../../index.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zur Gesamtübersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zum Dashboard</a>
|
||||
<span class="ihk-badge ihk-badge-success">Lernfeld 11 (FISI)</span>
|
||||
</div>
|
||||
|
||||
|
|
@ -275,7 +275,7 @@ Asynchrone Replikation: Der Schreibbefehl wird der Anwendung sofort nach dem Sch
|
|||
|
||||
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
|
||||
<a href="../02_lf10_serverdienste_und_automation/index.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Vorheriges Modul</a>
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a>
|
||||
<a href="../04_lf12_virtualisierung_und_cloud/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
<body class="bg-slate-900 text-slate-100 font-sans p-6">
|
||||
<div class="container mx-auto max-w-4xl">
|
||||
<div class="flex justify-between items-center mb-6">
|
||||
<a href="../../../index.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zur Gesamtübersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zum Dashboard</a>
|
||||
<span class="ihk-badge ihk-badge-success">Lernfeld 12 (FISI)</span>
|
||||
</div>
|
||||
|
||||
|
|
@ -251,7 +251,7 @@ Metriktypen:
|
|||
|
||||
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
|
||||
<a href="../03_lf11_speicher_und_hochverfuegbarkeit/index.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Vorheriges Modul</a>
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a>
|
||||
<a href="../05_wiso_arbeitsrecht_und_wirtschaft/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
<body class="bg-slate-900 text-slate-100 font-sans p-6">
|
||||
<div class="container mx-auto max-w-4xl">
|
||||
<div class="flex justify-between items-center mb-6">
|
||||
<a href="../../../index.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zur Gesamtübersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zum Dashboard</a>
|
||||
<span class="ihk-badge ihk-badge-success">WiSo Prüfungsfach</span>
|
||||
</div>
|
||||
|
||||
|
|
@ -494,7 +494,7 @@ Zeichnung: Prokurist zeichnet mit "per procura" / "ppa. Vorname Nachname"; Handl
|
|||
|
||||
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
|
||||
<a href="../04_lf12_virtualisierung_und_cloud/index.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Vorheriges Modul</a>
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a>
|
||||
<a href="../06_betriebliche_projektarbeit_guide/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
<body class="bg-slate-900 text-slate-100 font-sans p-6">
|
||||
<div class="container mx-auto max-w-4xl">
|
||||
<div class="flex justify-between items-center mb-6">
|
||||
<a href="../../../index.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zur Gesamtübersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zum Dashboard</a>
|
||||
<span class="ihk-badge ihk-badge-success">Projektarbeit & Fachgespräch (50% der AP2)</span>
|
||||
</div>
|
||||
|
||||
|
|
@ -51,7 +51,7 @@
|
|||
|
||||
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
|
||||
<a href="../05_wiso_arbeitsrecht_und_wirtschaft/index.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Vorheriges Modul</a>
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a>
|
||||
<a href="../07_ap2_teil_1_probepruefung/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
<body class="bg-slate-900 text-slate-100 font-sans p-6">
|
||||
<div class="container mx-auto max-w-4xl">
|
||||
<div class="flex justify-between items-center mb-6">
|
||||
<a href="../../../index.html" class="text-rose-400 hover:text-rose-300 font-semibold">← Zurück zur Gesamtübersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-rose-400 hover:text-rose-300 font-semibold">← Zurück zum Dashboard</a>
|
||||
<span class="ihk-badge ihk-badge-danger">AP2 FISI Fachqualifikation 1</span>
|
||||
</div>
|
||||
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
<body class="bg-slate-900 text-slate-100 font-sans p-6">
|
||||
<div class="container mx-auto max-w-4xl">
|
||||
<div class="flex justify-between items-center mb-6">
|
||||
<a href="../../../index.html" class="text-rose-400 hover:text-rose-300 font-semibold">← Zurück zur Gesamtübersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-rose-400 hover:text-rose-300 font-semibold">← Zurück zum Dashboard</a>
|
||||
<span class="ihk-badge ihk-badge-danger">AP2 FISI Fachqualifikation 2</span>
|
||||
</div>
|
||||
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
<body class="bg-slate-900 text-slate-100 font-sans p-6">
|
||||
<div class="container mx-auto max-w-4xl">
|
||||
<div class="flex justify-between items-center mb-6">
|
||||
<a href="../../../index.html" class="text-rose-400 hover:text-rose-300 font-semibold">← Zurück zur Gesamtübersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-rose-400 hover:text-rose-300 font-semibold">← Zurück zum Dashboard</a>
|
||||
<span class="ihk-badge ihk-badge-warning">WiSo Prüfungsteil 3 (60 Min.)</span>
|
||||
</div>
|
||||
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
<h1 class="text-3xl font-bold text-amber-400 mb-4">Java 01: Java Syntax & Primitive Datentypen</h1>
|
||||
<p class="text-slate-300 mb-6">Einstieg in Java, main-Methode, Variablen, int, double, boolean und String-Ausgaben.</p>
|
||||
<div class="flex justify-between items-center">
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Zurück zur Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Zurück zum Dashboard</a>
|
||||
<a href="../../../workspace.html?course=java&chapter=01_java_syntax_und_primitive_typen" class="bg-amber-500 hover:bg-amber-600 text-slate-950 font-bold px-6 py-2 rounded shadow transition">💻 In Web-IDE öffnen →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
<h1 class="text-3xl font-bold text-amber-400 mb-4">Java 02: Kontrollfluss & Switch-Expressions</h1>
|
||||
<p class="text-slate-300 mb-6">Entscheidungen mit if/else und modernen Java Switch-Expressions (->).</p>
|
||||
<div class="flex justify-between items-center">
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Zurück zur Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Zurück zum Dashboard</a>
|
||||
<a href="../../../workspace.html?course=java&chapter=02_kontrollfluss_und_verzweigungen" class="bg-amber-500 hover:bg-amber-600 text-slate-950 font-bold px-6 py-2 rounded shadow transition">💻 In Web-IDE öffnen →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
<h1 class="text-3xl font-bold text-amber-400 mb-4">Java 03: Schleifen, For-Each & Arrays</h1>
|
||||
<p class="text-slate-300 mb-6">Zählschleifen, while-Schleifen, for-each und Array-Verarbeitung in Java.</p>
|
||||
<div class="flex justify-between items-center">
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Zurück zur Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Zurück zum Dashboard</a>
|
||||
<a href="../../../workspace.html?course=java&chapter=03_schleifen_und_arrays" class="bg-amber-500 hover:bg-amber-600 text-slate-950 font-bold px-6 py-2 rounded shadow transition">💻 In Web-IDE öffnen →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
<h1 class="text-3xl font-bold text-amber-400 mb-4">Java 04: Methoden, Static & Overloading</h1>
|
||||
<p class="text-slate-300 mb-6">Methodendeklaration, statische vs. Instanzmethoden und Methodenüberladung.</p>
|
||||
<div class="flex justify-between items-center">
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Zurück zur Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Zurück zum Dashboard</a>
|
||||
<a href="../../../workspace.html?course=java&chapter=04_methoden_und_parameter" class="bg-amber-500 hover:bg-amber-600 text-slate-950 font-bold px-6 py-2 rounded shadow transition">💻 In Web-IDE öffnen →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
<h1 class="text-3xl font-bold text-amber-400 mb-4">Java 05: Klassen, Objekte & Konstruktoren</h1>
|
||||
<p class="text-slate-300 mb-6">Klassendefinition, new-Operator, this-Referenz und Konstruktoren.</p>
|
||||
<div class="flex justify-between items-center">
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Zurück zur Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Zurück zum Dashboard</a>
|
||||
<a href="../../../workspace.html?course=java&chapter=05_klassen_objekte_und_konstruktoren" class="bg-amber-500 hover:bg-amber-600 text-slate-950 font-bold px-6 py-2 rounded shadow transition">💻 In Web-IDE öffnen →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
<h1 class="text-3xl font-bold text-amber-400 mb-4">Java 06: Kapselung, Immutability & Records</h1>
|
||||
<p class="text-slate-300 mb-6">Zugriffsmodifikatoren private/public, Getter/Setter und Java 17+ Records.</p>
|
||||
<div class="flex justify-between items-center">
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Zurück zur Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Zurück zum Dashboard</a>
|
||||
<a href="../../../workspace.html?course=java&chapter=06_kapselung_und_records" class="bg-amber-500 hover:bg-amber-600 text-slate-950 font-bold px-6 py-2 rounded shadow transition">💻 In Web-IDE öffnen →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
<h1 class="text-3xl font-bold text-amber-400 mb-4">Java 07: Vererbung, Polymorphie & Abstract Classes</h1>
|
||||
<p class="text-slate-300 mb-6">Vererbung mit extends, Aufruf mit super(), Überschreiben (@Override) und abstrakte Klassen.</p>
|
||||
<div class="flex justify-between items-center">
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Zurück zur Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Zurück zum Dashboard</a>
|
||||
<a href="../../../workspace.html?course=java&chapter=07_vererbung_polymorphie_und_super" class="bg-amber-500 hover:bg-amber-600 text-slate-950 font-bold px-6 py-2 rounded shadow transition">💻 In Web-IDE öffnen →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
<h1 class="text-3xl font-bold text-amber-400 mb-4">Java 08: Interfaces, Default Methods & Kopplung</h1>
|
||||
<p class="text-slate-300 mb-6">Schnittstellen mit interface, implements, Default- und Static-Methoden.</p>
|
||||
<div class="flex justify-between items-center">
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Zurück zur Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Zurück zum Dashboard</a>
|
||||
<a href="../../../workspace.html?course=java&chapter=08_interfaces_und_default_methods" class="bg-amber-500 hover:bg-amber-600 text-slate-950 font-bold px-6 py-2 rounded shadow transition">💻 In Web-IDE öffnen →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<p class="text-sm text-slate-300">Bearbeite die Aufgaben im Startercode und teste deine Lösung direkt in der Web-IDE.</p>
|
||||
</div>
|
||||
<div class="flex justify-between items-center">
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Zurück zur Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Zurück zum Dashboard</a>
|
||||
<a href="../../../workspace.html?course=java&chapter=13_dateien_json_und_persistenz" class="bg-amber-500 hover:bg-amber-600 text-slate-950 font-bold px-6 py-2 rounded shadow transition">💻 In Web-IDE öffnen →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<p class="text-sm text-slate-300">Bearbeite die Aufgaben im Startercode und teste deine Lösung direkt in der Web-IDE.</p>
|
||||
</div>
|
||||
<div class="flex justify-between items-center">
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Zurück zur Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Zurück zum Dashboard</a>
|
||||
<a href="../../../workspace.html?course=java&chapter=14_multithreading_und_virtual_threads" class="bg-amber-500 hover:bg-amber-600 text-slate-950 font-bold px-6 py-2 rounded shadow transition">💻 In Web-IDE öffnen →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<p class="text-sm text-slate-300">Bearbeite die Aufgaben im Startercode und teste deine Lösung direkt in der Web-IDE.</p>
|
||||
</div>
|
||||
<div class="flex justify-between items-center">
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Zurück zur Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Zurück zum Dashboard</a>
|
||||
<a href="../../../workspace.html?course=java&chapter=15_junit_5_automatisiertes_unit_testing" class="bg-amber-500 hover:bg-amber-600 text-slate-950 font-bold px-6 py-2 rounded shadow transition">💻 In Web-IDE öffnen →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<p class="text-sm text-slate-300">Bearbeite die Aufgaben im Startercode und teste deine Lösung direkt in der Web-IDE.</p>
|
||||
</div>
|
||||
<div class="flex justify-between items-center">
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Zurück zur Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Zurück zum Dashboard</a>
|
||||
<a href="../../../workspace.html?course=java&chapter=16_master_abschlussprojekt_banking_system" class="bg-amber-500 hover:bg-amber-600 text-slate-950 font-bold px-6 py-2 rounded shadow transition">💻 In Web-IDE öffnen →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -166,7 +166,7 @@
|
|||
<!-- Footer Navigation -->
|
||||
<div class="footer-nav" style="display: flex; justify-content: space-between; margin-top: 30px;">
|
||||
<a href="../15_typescript_fortgeschritten/index.html" class="btn btn-secondary">← Zurück zu Modul 07</a>
|
||||
<a href="../../../index.html" class="btn" style="background: var(--success); color: white;">🏆 Kurs abgeschlossen – Zur Übersicht →</a>
|
||||
<a href="../../../dashboard.html" class="btn" style="background: var(--success); color: white;">🏆 Kurs abgeschlossen – Zur Übersicht →</a>
|
||||
</div>
|
||||
</main>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -130,7 +130,7 @@
|
|||
<!-- Footer Navigation -->
|
||||
<div class="footer-nav" style="display: flex; justify-content: space-between; margin-top: 30px;">
|
||||
<a href="../15_cloud_und_cross_platform_automatisierung/index.html" class="btn btn-secondary">← Zurück zu PS 15</a>
|
||||
<a href="../../../index.html" class="btn" style="background: var(--success); color: white;">🏆 Kurs erfolgreich abgeschlossen – Zum Dashboard →</a>
|
||||
<a href="../../../dashboard.html" class="btn" style="background: var(--success); color: white;">🏆 Kurs erfolgreich abgeschlossen – Zum Dashboard →</a>
|
||||
</div>
|
||||
</main>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<p class="text-sm text-slate-300">Bearbeite die Aufgaben im Startercode und teste deine Lösung direkt in der Web-IDE.</p>
|
||||
</div>
|
||||
<div class="flex justify-between items-center">
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Zurück zur Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Zurück zum Dashboard</a>
|
||||
<a href="../../../workspace.html?course=rust&chapter=05_structs_und_impl_methoden" class="bg-orange-500 hover:bg-orange-600 text-slate-950 font-bold px-6 py-2 rounded shadow transition">💻 In Web-IDE öffnen →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<p class="text-sm text-slate-300">Bearbeite die Aufgaben im Startercode und teste deine Lösung direkt in der Web-IDE.</p>
|
||||
</div>
|
||||
<div class="flex justify-between items-center">
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Zurück zur Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Zurück zum Dashboard</a>
|
||||
<a href="../../../workspace.html?course=rust&chapter=06_enums_und_option_monade" class="bg-orange-500 hover:bg-orange-600 text-slate-950 font-bold px-6 py-2 rounded shadow transition">💻 In Web-IDE öffnen →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<p class="text-sm text-slate-300">Bearbeite die Aufgaben im Startercode und teste deine Lösung direkt in der Web-IDE.</p>
|
||||
</div>
|
||||
<div class="flex justify-between items-center">
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Zurück zur Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Zurück zum Dashboard</a>
|
||||
<a href="../../../workspace.html?course=rust&chapter=07_robustes_error_handling_mit_result" class="bg-orange-500 hover:bg-orange-600 text-slate-950 font-bold px-6 py-2 rounded shadow transition">💻 In Web-IDE öffnen →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<p class="text-sm text-slate-300">Bearbeite die Aufgaben im Startercode und teste deine Lösung direkt in der Web-IDE.</p>
|
||||
</div>
|
||||
<div class="flex justify-between items-center">
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Zurück zur Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Zurück zum Dashboard</a>
|
||||
<a href="../../../workspace.html?course=rust&chapter=08_packages_crates_und_module" class="bg-orange-500 hover:bg-orange-600 text-slate-950 font-bold px-6 py-2 rounded shadow transition">💻 In Web-IDE öffnen →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<p class="text-sm text-slate-300">Bearbeite die Aufgaben im Startercode und teste deine Lösung direkt in der Web-IDE.</p>
|
||||
</div>
|
||||
<div class="flex justify-between items-center">
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Zurück zur Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Zurück zum Dashboard</a>
|
||||
<a href="../../../workspace.html?course=rust&chapter=14_shared_state_concurrency" class="bg-orange-500 hover:bg-orange-600 text-slate-950 font-bold px-6 py-2 rounded shadow transition">💻 In Web-IDE öffnen →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<p class="text-sm text-slate-300">Bearbeite die Aufgaben im Startercode und teste deine Lösung direkt in der Web-IDE.</p>
|
||||
</div>
|
||||
<div class="flex justify-between items-center">
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Zurück zur Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Zurück zum Dashboard</a>
|
||||
<a href="../../../workspace.html?course=rust&chapter=15_automatisiertes_testing_mit_cargo_test" class="bg-orange-500 hover:bg-orange-600 text-slate-950 font-bold px-6 py-2 rounded shadow transition">💻 In Web-IDE öffnen →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<p class="text-sm text-slate-300">Bearbeite die Aufgaben im Startercode und teste deine Lösung direkt in der Web-IDE.</p>
|
||||
</div>
|
||||
<div class="flex justify-between items-center">
|
||||
<a href="../../../index.html" class="text-slate-400 hover:text-white">🏠 Zurück zur Übersicht</a>
|
||||
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Zurück zum Dashboard</a>
|
||||
<a href="../../../workspace.html?course=rust&chapter=16_master_abschlussprojekt_high_speed_cache" class="bg-orange-500 hover:bg-orange-600 text-slate-950 font-bold px-6 py-2 rounded shadow transition">💻 In Web-IDE öffnen →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -301,7 +301,7 @@
|
|||
<a href="workspace.html?course=python" class="portal-btn-primary" style="padding: 10px 18px; font-size: 0.9rem;">
|
||||
<span>💻 Web-IDE öffnen</span>
|
||||
</a>
|
||||
<a href="index.html" class="portal-btn-secondary" style="padding: 10px 16px; font-size: 0.9rem;" title="Zur öffentlichen Plattform-Startseite">
|
||||
<a href="index.html?view=landing" class="portal-btn-secondary" style="padding: 10px 16px; font-size: 0.9rem;" title="Zur öffentlichen Plattform-Startseite">
|
||||
<span>🌐 Startseite</span>
|
||||
</a>
|
||||
</div>
|
||||
|
|
@ -1152,7 +1152,7 @@
|
|||
<li><a href="#ihk-section" class="portal-footer-link">🎓 IHK Prüfungstrainer</a></li>
|
||||
<li><a href="workspace.html?course=python" class="portal-footer-link">💻 Web-IDE starten</a></li>
|
||||
<li><a href="#zertifikate-section" class="portal-footer-link">🏆 Meine Zertifikate</a></li>
|
||||
<li><a href="index.html" class="portal-footer-link">🌐 Zur Plattform-Startseite</a></li>
|
||||
<li><a href="index.html?view=landing" class="portal-footer-link">🌐 Zur Plattform-Startseite</a></li>
|
||||
<li class="teacher-only" style="display: none;"><a href="teacher.html" class="portal-footer-link" id="footer-teacher-link">👨🏫 Dozenten-Portal</a></li>
|
||||
<li class="admin-only" style="display: none;"><a href="admin.html" class="portal-footer-link" id="footer-admin-link">🛡️ Administration</a></li>
|
||||
</ul>
|
||||
|
|
@ -1185,10 +1185,10 @@
|
|||
</footer>
|
||||
|
||||
<!-- Scripts -->
|
||||
<script src="assets/app_auth.js"></script>
|
||||
<script src="assets/it_ausbildungen_manifest.js"></script>
|
||||
<script src="assets/courses_manifest.js"></script>
|
||||
<script src="assets/certificate.js"></script>
|
||||
<script src="assets/app_auth.js?v=2.1.0"></script>
|
||||
<script src="assets/it_ausbildungen_manifest.js?v=2.1.0"></script>
|
||||
<script src="assets/courses_manifest.js?v=2.1.0"></script>
|
||||
<script src="assets/certificate.js?v=2.1.0"></script>
|
||||
|
||||
<script>
|
||||
function toggleMobileMenu() {
|
||||
|
|
|
|||
|
|
@ -276,7 +276,7 @@
|
|||
</footer>
|
||||
|
||||
<!-- Scripts -->
|
||||
<script src="assets/app_auth.js"></script>
|
||||
<script src="assets/app_auth.js?v=2.1.0"></script>
|
||||
<script>
|
||||
function toggleMobileMenu() {
|
||||
const drawer = document.getElementById('portal-mobile-drawer');
|
||||
|
|
|
|||
|
|
@ -230,7 +230,7 @@
|
|||
</footer>
|
||||
|
||||
<!-- Scripts -->
|
||||
<script src="assets/app_auth.js"></script>
|
||||
<script src="assets/app_auth.js?v=2.1.0"></script>
|
||||
<script>
|
||||
function toggleMobileMenu() {
|
||||
const drawer = document.getElementById('portal-mobile-drawer');
|
||||
|
|
|
|||
25
index.html
25
index.html
|
|
@ -11,6 +11,20 @@
|
|||
<meta property="og:type" content="website">
|
||||
<meta property="og:url" content="https://alpha.it-praxisportal.de/">
|
||||
<link rel="stylesheet" href="assets/style.css">
|
||||
<script src="assets/app_auth.js?v=2.1.0"></script>
|
||||
<script>
|
||||
// Sofortige automatische Weiterleitung für angemeldete Nutzer direkt ins Dashboard
|
||||
(function autoRedirectLoggedInUser() {
|
||||
try {
|
||||
if (window.AUTH && window.AUTH.isLoggedIn()) {
|
||||
var p = new URLSearchParams(window.location.search);
|
||||
if (!p.has('view') && !p.has('landing') && !p.has('preview')) {
|
||||
window.location.replace('dashboard.html');
|
||||
}
|
||||
}
|
||||
} catch (e) {}
|
||||
})();
|
||||
</script>
|
||||
<style>
|
||||
.portal-container {
|
||||
max-width: 1240px;
|
||||
|
|
@ -252,11 +266,11 @@
|
|||
<nav class="portal-nav-links">
|
||||
<a href="#hero" class="portal-nav-link">🚀 Start</a>
|
||||
<a href="#was-du-bekommst" class="portal-nav-link">💎 Das Konzept</a>
|
||||
<a href="#dashboard-spotlight" class="portal-nav-link">📊 Kurs-Dashboard</a>
|
||||
<a href="#dashboard-spotlight" class="portal-nav-link">📊 Features</a>
|
||||
<a href="#features-ide" class="portal-nav-link">💻 Web-IDE</a>
|
||||
<a href="#ihk-section" class="portal-nav-link">🎓 IHK Prüfung</a>
|
||||
<a href="#zielgruppen" class="portal-nav-link">👥 Für wen?</a>
|
||||
<a href="dashboard.html" class="portal-nav-link" id="nav-dashboard-link" style="display: none; color: #34d399; font-weight: 700;">💻 Kurs-Dashboard</a>
|
||||
<a href="dashboard.html" class="portal-nav-link" id="nav-dashboard-link" style="display: none; color: #34d399; font-weight: 800; background: rgba(52, 211, 153, 0.12); padding: 5px 12px; border-radius: 6px; border: 1px solid rgba(52, 211, 153, 0.3);">💻 Zum Kurs-Dashboard →</a>
|
||||
<a href="teacher.html" class="portal-nav-link" id="nav-teacher-link" style="display: none;">👨🏫 Dozenten</a>
|
||||
<a href="admin.html" class="portal-nav-link" id="nav-admin-link" style="display: none; color: #f87171; font-weight: 800;">🛡️ Admin</a>
|
||||
</nav>
|
||||
|
|
@ -276,12 +290,12 @@
|
|||
<div id="portal-mobile-drawer" class="mobile-drawer" style="display: none;">
|
||||
<a href="#hero" class="mobile-drawer-link" onclick="toggleMobileMenu()">🚀 Start & Übersicht</a>
|
||||
<a href="#was-du-bekommst" class="mobile-drawer-link" onclick="toggleMobileMenu()">💎 Was du bekommst</a>
|
||||
<a href="#dashboard-spotlight" class="mobile-drawer-link" onclick="toggleMobileMenu()">📊 Kurs-Dashboard</a>
|
||||
<a href="#dashboard-spotlight" class="mobile-drawer-link" onclick="toggleMobileMenu()">📊 Features & Vorschau</a>
|
||||
<a href="#features-ide" class="mobile-drawer-link" onclick="toggleMobileMenu()">💻 Monaco Web-IDE</a>
|
||||
<a href="#ihk-section" class="mobile-drawer-link" onclick="toggleMobileMenu()">🎓 IHK Prüfungstrainer</a>
|
||||
<a href="impressum.html" class="mobile-drawer-link" onclick="toggleMobileMenu()">⚖️ Impressum</a>
|
||||
<a href="datenschutz.html" class="mobile-drawer-link" onclick="toggleMobileMenu()">🔒 Datenschutzerklärung</a>
|
||||
<a href="dashboard.html" class="mobile-drawer-link" id="mobile-drawer-dash-link" style="display: none; color: #34d399; font-weight: 700;">💻 Zum Kurs-Dashboard →</a>
|
||||
<a href="dashboard.html" class="mobile-drawer-link" id="mobile-drawer-dash-link" style="display: none; color: #34d399; font-weight: 800; background: rgba(52, 211, 153, 0.1); padding: 8px 12px; border-radius: 6px; border: 1px solid rgba(52, 211, 153, 0.3);">💻 Zum Kurs-Dashboard →</a>
|
||||
<a href="teacher.html" class="mobile-drawer-link" id="mobile-drawer-teacher-link" style="display: none;">👨🏫 Dozenten-Portal</a>
|
||||
<a href="admin.html" class="mobile-drawer-link" id="mobile-drawer-admin-link" style="display: none; color: #f87171; font-weight: 800;">🛡️ Admin-Panel</a>
|
||||
</div>
|
||||
|
|
@ -740,7 +754,7 @@
|
|||
<button type="button" class="landing-cta-btn btn" style="background: #ffffff; color: #0284c7; padding: 12px 28px; font-size: 1rem; font-weight: 800; border-radius: 8px; border: none; cursor: pointer; box-shadow: 0 4px 20px rgba(0,0,0,0.2);">
|
||||
<span>✨ Jetzt kostenlos registrieren & Kurse wählen →</span>
|
||||
</button>
|
||||
<button type="button" class="btn" style="background: rgba(255,255,255,0.15); color: white; border: 1px solid rgba(255,255,255,0.3); padding: 12px 20px; font-size: 1rem; font-weight: 700; border-radius: 8px; cursor: pointer;" onclick="window.openAuthModal('login', { allowClose: true })">
|
||||
<button type="button" class="btn" id="footer-cta-login" style="background: rgba(255,255,255,0.15); color: white; border: 1px solid rgba(255,255,255,0.3); padding: 12px 20px; font-size: 1rem; font-weight: 700; border-radius: 8px; cursor: pointer;" onclick="window.openAuthModal('login', { allowClose: true })">
|
||||
🔑 Anmelden
|
||||
</button>
|
||||
</div>
|
||||
|
|
@ -821,7 +835,6 @@
|
|||
</footer>
|
||||
|
||||
<!-- Scripts -->
|
||||
<script src="assets/app_auth.js"></script>
|
||||
<script>
|
||||
function toggleMobileMenu() {
|
||||
const drawer = document.getElementById('portal-mobile-drawer');
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<header>
|
||||
<div class="header-container">
|
||||
<nav class="nav-links">
|
||||
<a href="../../index.html">🏠 Zur Kursübersicht</a>
|
||||
<a href="../../dashboard.html">🏠 Zum Dashboard</a>
|
||||
<span>›</span>
|
||||
<span style="color: white; font-weight: 600;">Grundlagen 01</span>
|
||||
<span>›</span>
|
||||
|
|
@ -312,7 +312,7 @@
|
|||
</div>
|
||||
|
||||
<div class="footer-nav">
|
||||
<a href="../../index.html" class="btn btn-secondary">← Zurück zur Übersicht</a>
|
||||
<a href="../../dashboard.html" class="btn btn-secondary">← Zurück zum Dashboard</a>
|
||||
<a href="../02_variablen_und_datentypen/index.html" class="btn">Weiter zu Kapitel G02: Variablen & Datentypen →</a>
|
||||
</div>
|
||||
</section>
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@
|
|||
<nav class="nav-links">
|
||||
<a href="../01_erste_schritte_taschenrechner/index.html">← Grundlagen 01</a>
|
||||
<span>›</span>
|
||||
<a href="../../index.html">🏠 Kursübersicht</a>
|
||||
<a href="../../dashboard.html">🏠 Dashboard</a>
|
||||
<span>›</span>
|
||||
<span style="color: white; font-weight: 600;">Grundlagen 02</span>
|
||||
<span>›</span>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<header>
|
||||
<div class="header-container">
|
||||
<nav class="nav-links">
|
||||
<a href="../../index.html">🏠 Zur Kursübersicht</a>
|
||||
<a href="../../dashboard.html">🏠 Zum Dashboard</a>
|
||||
<span>›</span>
|
||||
<a href="../02_variablen_und_datentypen/index.html">← Kapitel G02</a>
|
||||
<span>›</span>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<header>
|
||||
<div class="header-container">
|
||||
<nav class="nav-links">
|
||||
<a href="../../index.html">🏠 Zur Kursübersicht</a>
|
||||
<a href="../../dashboard.html">🏠 Zum Dashboard</a>
|
||||
<span>›</span>
|
||||
<a href="../03_ein_und_ausgabe/index.html">← Kapitel G03</a>
|
||||
<span>›</span>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<header>
|
||||
<div class="header-container">
|
||||
<nav class="nav-links">
|
||||
<a href="../../index.html">🏠 Zur Kursübersicht</a>
|
||||
<a href="../../dashboard.html">🏠 Zum Dashboard</a>
|
||||
<span>›</span>
|
||||
<a href="../04_verzweigungen_und_bedingungen/index.html">← Kapitel G04</a>
|
||||
<span>›</span>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<header>
|
||||
<div class="header-container">
|
||||
<nav class="nav-links">
|
||||
<a href="../../index.html">🏠 Zur Kursübersicht</a>
|
||||
<a href="../../dashboard.html">🏠 Zum Dashboard</a>
|
||||
<span>›</span>
|
||||
<a href="../05_schleifen_und_wiederholungen/index.html">← Kapitel G05</a>
|
||||
<span>›</span>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<header>
|
||||
<div class="header-container">
|
||||
<nav class="nav-links">
|
||||
<a href="../../index.html">🏠 Zur Kursübersicht</a>
|
||||
<a href="../../dashboard.html">🏠 Zum Dashboard</a>
|
||||
<span>›</span>
|
||||
<a href="../06_funktionen_und_module/index.html">Kapitel G06</a>
|
||||
<span>›</span>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<header>
|
||||
<div class="header-container">
|
||||
<nav class="nav-links">
|
||||
<a href="../../index.html">🏠 Zur Kursübersicht</a>
|
||||
<a href="../../dashboard.html">🏠 Zum Dashboard</a>
|
||||
<span>›</span>
|
||||
<a href="../07_listen_und_sequenzen/index.html">Kapitel G07</a>
|
||||
<span>›</span>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<header>
|
||||
<div class="header-container">
|
||||
<nav class="nav-links">
|
||||
<a href="../../index.html">🏠 Zur Kursübersicht</a>
|
||||
<a href="../../dashboard.html">🏠 Zum Dashboard</a>
|
||||
<span>›</span>
|
||||
<a href="../08_textverarbeitung_und_strings/index.html">← Kapitel G08</a>
|
||||
<span>›</span>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<header>
|
||||
<div class="header-container">
|
||||
<nav class="nav-links">
|
||||
<a href="../../index.html">🏠 Zur Kursübersicht</a>
|
||||
<a href="../../dashboard.html">🏠 Zum Dashboard</a>
|
||||
<span>›</span>
|
||||
<a href="../09_dictionaries_und_sets/index.html">← Kapitel G09</a>
|
||||
<span>›</span>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<header>
|
||||
<div class="header-container">
|
||||
<nav class="nav-links">
|
||||
<a href="../../index.html">🏠 Zur Kursübersicht</a>
|
||||
<a href="../../dashboard.html">🏠 Zum Dashboard</a>
|
||||
<span>›</span>
|
||||
<span style="color: white; font-weight: 600;">Kapitel 00</span>
|
||||
<span>›</span>
|
||||
|
|
@ -216,7 +216,7 @@
|
|||
</div>
|
||||
|
||||
<div class="footer-nav">
|
||||
<a href="../../index.html" class="btn btn-secondary">← Zurück zur Übersicht</a>
|
||||
<a href="../../dashboard.html" class="btn btn-secondary">← Zurück zum Dashboard</a>
|
||||
<a href="../01_einstieg_klassen/index.html" class="btn">Weiter zu Kapitel 01: Klassen →</a>
|
||||
</div>
|
||||
</section>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<header>
|
||||
<div class="header-container">
|
||||
<nav class="nav-links">
|
||||
<a href="../../index.html">🏠 Zur Kursübersicht</a>
|
||||
<a href="../../dashboard.html">🏠 Zum Dashboard</a>
|
||||
<span>›</span>
|
||||
<a href="../00_fehlersuche_und_grundlagen/index.html">Kapitel 00</a>
|
||||
<span>›</span>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<header>
|
||||
<div class="header-container">
|
||||
<nav class="nav-links">
|
||||
<a href="../../index.html">🏠 Zur Kursübersicht</a>
|
||||
<a href="../../dashboard.html">🏠 Zum Dashboard</a>
|
||||
<span>›</span>
|
||||
<a href="../01_einstieg_klassen/index.html">Kapitel 01</a>
|
||||
<span>›</span>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<header>
|
||||
<div class="header-container">
|
||||
<nav class="nav-links">
|
||||
<a href="../../index.html">🏠 Zur Kursübersicht</a>
|
||||
<a href="../../dashboard.html">🏠 Zum Dashboard</a>
|
||||
<span>›</span>
|
||||
<a href="../02_init_und_self/index.html">Kapitel 02</a>
|
||||
<span>›</span>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<header>
|
||||
<div class="header-container">
|
||||
<nav class="nav-links">
|
||||
<a href="../../index.html">🏠 Zur Kursübersicht</a>
|
||||
<a href="../../dashboard.html">🏠 Zum Dashboard</a>
|
||||
<span>›</span>
|
||||
<a href="../03_methoden_und_verhalten/index.html">Kapitel 03</a>
|
||||
<span>›</span>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<header>
|
||||
<div class="header-container">
|
||||
<nav class="nav-links">
|
||||
<a href="../../index.html">🏠 Zur Kursübersicht</a>
|
||||
<a href="../../dashboard.html">🏠 Zum Dashboard</a>
|
||||
<span>›</span>
|
||||
<a href="../04_str_und_darstellung/index.html">Kapitel 04</a>
|
||||
<span>›</span>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<header>
|
||||
<div class="header-container">
|
||||
<nav class="nav-links">
|
||||
<a href="../../index.html">🏠 Zur Kursübersicht</a>
|
||||
<a href="../../dashboard.html">🏠 Zum Dashboard</a>
|
||||
<span>›</span>
|
||||
<a href="../04b_umstieg_vscode/index.html">Kapitel 04b</a>
|
||||
<span>›</span>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<header>
|
||||
<div class="header-container">
|
||||
<nav class="nav-links">
|
||||
<a href="../../index.html">🏠 Zur Kursübersicht</a>
|
||||
<a href="../../dashboard.html">🏠 Zum Dashboard</a>
|
||||
<span>›</span>
|
||||
<a href="../04c_git_und_versionskontrolle/index.html">Kapitel 04c (Git)</a>
|
||||
<span>›</span>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<header>
|
||||
<div class="header-container">
|
||||
<nav class="nav-links">
|
||||
<a href="../../index.html">🏠 Zur Kursübersicht</a>
|
||||
<a href="../../dashboard.html">🏠 Zum Dashboard</a>
|
||||
<span>›</span>
|
||||
<a href="../05_objekte_kombinieren/index.html">Kapitel 05</a>
|
||||
<span>›</span>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<header>
|
||||
<div class="header-container">
|
||||
<nav class="nav-links">
|
||||
<a href="../../index.html">🏠 Zur Kursübersicht</a>
|
||||
<a href="../../dashboard.html">🏠 Zum Dashboard</a>
|
||||
<span>›</span>
|
||||
<a href="../../lehrpfad_2_oop_einstieg/06_abschlussprojekt_tamagotchi/index.html">Kapitel 06</a>
|
||||
<span>›</span>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<header>
|
||||
<div class="header-container">
|
||||
<nav class="nav-links">
|
||||
<a href="../../index.html">🏠 Zur Kursübersicht</a>
|
||||
<a href="../../dashboard.html">🏠 Zum Dashboard</a>
|
||||
<span>›</span>
|
||||
<a href="../07_referenzen_und_speicher/index.html">Kapitel 07</a>
|
||||
<span>›</span>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<header>
|
||||
<div class="header-container">
|
||||
<nav class="nav-links">
|
||||
<a href="../../index.html">🏠 Zur Kursübersicht</a>
|
||||
<a href="../../dashboard.html">🏠 Zum Dashboard</a>
|
||||
<span>›</span>
|
||||
<a href="../08_operator_overloading_dunder/index.html">Kapitel 08</a>
|
||||
<span>›</span>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<header>
|
||||
<div class="header-container">
|
||||
<nav class="nav-links">
|
||||
<a href="../../index.html">🏠 Zur Kursübersicht</a>
|
||||
<a href="../../dashboard.html">🏠 Zum Dashboard</a>
|
||||
<span>›</span>
|
||||
<a href="../09_eigene_unit_tests_schreiben/index.html">Kapitel 09 (Unit Tests)</a>
|
||||
<span>›</span>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<header>
|
||||
<div class="header-container">
|
||||
<nav class="nav-links">
|
||||
<a href="../../index.html">🏠 Zur Kursübersicht</a>
|
||||
<a href="../../dashboard.html">🏠 Zum Dashboard</a>
|
||||
<span>›</span>
|
||||
<a href="../10_vererbung_und_super/index.html">Kapitel 10 (Vererbung)</a>
|
||||
<span>›</span>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<header>
|
||||
<div class="header-container">
|
||||
<nav class="nav-links">
|
||||
<a href="../../index.html">🏠 Zur Kursübersicht</a>
|
||||
<a href="../../dashboard.html">🏠 Zum Dashboard</a>
|
||||
<span>›</span>
|
||||
<a href="../11_polymorphie_und_interfaces/index.html">Kapitel 11</a>
|
||||
<span>›</span>
|
||||
|
|
|
|||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue