Compare commits
2
Commits
53478fa452
..
master
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ef12aaadee | ||
|
|
1782d2c5ac |
@@ -130,7 +130,7 @@ public class AdminController : ControllerBase
|
|||||||
<tr><td style="padding:0.4rem 0;color:#8b949e">Email</td><td style="padding:0.4rem 0;font-weight:600">{req.Email}</td></tr>
|
<tr><td style="padding:0.4rem 0;color:#8b949e">Email</td><td style="padding:0.4rem 0;font-weight:600">{req.Email}</td></tr>
|
||||||
<tr><td style="padding:0.4rem 0;color:#8b949e">Heslo</td><td style="padding:0.4rem 0;font-weight:600">user</td></tr>
|
<tr><td style="padding:0.4rem 0;color:#8b949e">Heslo</td><td style="padding:0.4rem 0;font-weight:600">user</td></tr>
|
||||||
</table>
|
</table>
|
||||||
<p style="margin:1.25rem 0 0;color:#f85149;font-size:0.88rem">⚠️ Po prvom prihlásení si zmeň heslo cez „Zabudol som heslo".</p>
|
<p style="margin:1.25rem 0 0;color:#8b949e;font-size:0.88rem">Po prvom prihlásení ťa aplikácia vyzve na zmenu hesla.</p>
|
||||||
</div>
|
</div>
|
||||||
<div style="padding:0.75rem 1.5rem;border-top:1px solid #30363d;font-size:0.78rem;color:#6e7681">Calendar Reminder</div>
|
<div style="padding:0.75rem 1.5rem;border-top:1px solid #30363d;font-size:0.78rem;color:#6e7681">Calendar Reminder</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -126,7 +126,8 @@ public class AuthController : ControllerBase
|
|||||||
resetToken.Used = true;
|
resetToken.Used = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
user.PasswordHash = BCrypt.Net.BCrypt.HashPassword(req.NewPassword);
|
user.PasswordHash = BCrypt.Net.BCrypt.HashPassword(req.NewPassword);
|
||||||
|
user.MustChangePassword = false;
|
||||||
await _db.SaveChangesAsync();
|
await _db.SaveChangesAsync();
|
||||||
|
|
||||||
return Ok("Heslo bolo úspešne zmenené.");
|
return Ok("Heslo bolo úspešne zmenené.");
|
||||||
|
|||||||
@@ -1259,18 +1259,27 @@ async function doMcpChange() {
|
|||||||
const u = JSON.parse(localStorage.getItem('user') || '{}');
|
const u = JSON.parse(localStorage.getItem('user') || '{}');
|
||||||
if (pass.length < 6) { err.textContent = 'Heslo musí mať aspoň 6 znakov.'; return; }
|
if (pass.length < 6) { err.textContent = 'Heslo musí mať aspoň 6 znakov.'; return; }
|
||||||
if (pass !== pass2) { err.textContent = 'Heslá sa nezhodujú.'; return; }
|
if (pass !== pass2) { err.textContent = 'Heslá sa nezhodujú.'; return; }
|
||||||
|
|
||||||
|
// 1. Zmeniť heslo — server zároveň nastaví MustChangePassword = false
|
||||||
const res = await fetch(`${API}/auth/reset-password`, {
|
const res = await fetch(`${API}/auth/reset-password`, {
|
||||||
method:'POST', headers:{'Content-Type':'application/json'},
|
method:'POST', headers:{'Content-Type':'application/json'},
|
||||||
body: JSON.stringify({ email: u.email, newPassword: pass, code: null })
|
body: JSON.stringify({ email: u.email, newPassword: pass, code: null })
|
||||||
});
|
});
|
||||||
if (res.ok) {
|
if (!res.ok) { err.textContent = await res.text(); return; }
|
||||||
// Update stored user to clear mustChangePassword flag
|
|
||||||
u.mustChangePassword = false;
|
// 2. Znovu prihlásiť — dostaneme nový token s mustChangePassword: false
|
||||||
localStorage.setItem('user', JSON.stringify(u));
|
const loginRes = await fetch(`${API}/auth/login`, {
|
||||||
document.getElementById('mcp-modal').classList.remove('open');
|
method:'POST', headers:{'Content-Type':'application/json'},
|
||||||
} else {
|
body: JSON.stringify({ email: u.email, password: pass })
|
||||||
err.textContent = await res.text();
|
});
|
||||||
|
if (loginRes.ok) {
|
||||||
|
const d = await loginRes.json();
|
||||||
|
saveAuth(d);
|
||||||
|
// Aktualizuj meno/avatar v topbare (zostáva rovnaké, ale token je nový)
|
||||||
|
document.getElementById('hdr-user').textContent = d.username;
|
||||||
|
document.getElementById('hdr-avatar').textContent = d.username ? d.username[0].toUpperCase() : '?';
|
||||||
}
|
}
|
||||||
|
document.getElementById('mcp-modal').classList.remove('open');
|
||||||
}
|
}
|
||||||
|
|
||||||
// ═══ ADMIN PANEL ═══
|
// ═══ ADMIN PANEL ═══
|
||||||
|
|||||||
Reference in New Issue
Block a user