Files
lunaqrmenu/app/login/page.tsx
2026-05-15 19:11:17 +03:00

66 lines
1.8 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
'use client';
import React, { useState } from 'react';
import { authenticate } from '../admin/actions';
import './login.css';
export default function LoginPage() {
const [error, setError] = useState<string | null>(null);
const [loading, setLoading] = useState(false);
async function handleSubmit(formData: FormData) {
setLoading(true);
setError(null);
const result = await authenticate(formData);
if (result?.error) {
setError(result.error);
setLoading(false);
}
}
return (
<div className="login-page">
<div className="login-card">
<div className="login-header">
<h1>LUNA <span>ADMIN</span></h1>
<p>Yönetim paneline giriş yapın</p>
</div>
<form action={handleSubmit} className="login-form">
{error && <div className="login-error">{error}</div>}
<div className="form-group">
<label htmlFor="username">Kullanıcı Adı</label>
<input
type="text"
id="username"
name="username"
className="admin-input"
required
/>
</div>
<div className="form-group">
<label htmlFor="password">Şifre</label>
<input
type="password"
id="password"
name="password"
className="admin-input"
required
/>
</div>
<button type="submit" className="admin-btn login-btn" disabled={loading}>
{loading ? 'Giriş yapılıyor...' : 'Giriş Yap'}
</button>
</form>
<div className="login-footer">
<a href="/" className="back-to-site"> Siteye Dön</a>
</div>
</div>
</div>
);
}