Files
CPLv4.0/components/main/settingsPageComponents/DatabaseSettings.tsx

64 lines
2.1 KiB
TypeScript
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

// /components/main/settingsPageComponents/DatabaseSettings.tsx
"use client";
import React from "react";
import handleClearDatabase from "./handlers/dbHandlers/handleClearDatabase";
import handleClearConfig from "./handlers/dbHandlers/handleClearConfig";
import handleClearMessages from "./handlers/dbHandlers/handleClearMessages";
import handleClearLogger from "./handlers/dbHandlers/handleClearLogger";
import { useAdminAuth } from "./hooks/useAdminAuth";
const DatabaseSettings: React.FC = () => {
const { isAdminLoggedIn } = useAdminAuth(true);
return (
<div className="p-6 bg-gray-100 max-w-5xl mr-auto rounded shadow">
<h2 className="text-lg font-bold mb-6">Datenbank Einstellungen</h2>
<div className="grid grid-cols-1 md:grid-cols-2 gap-4 mb-6">
<button
type="button"
onClick={handleClearMessages}
className="bg-littwin-blue text-white px-4 py-2 rounded shadow hover:bg-blue-700"
>
Meldungen löschen
</button>
<button
type="button"
onClick={handleClearLogger}
className="bg-littwin-blue text-white px-4 py-2 rounded shadow hover:bg-blue-700"
>
Messwerte Logger löschen
</button>
</div>
{isAdminLoggedIn && (
<div className="mt-8 border-t pt-6">
<h3 className="text-md font-semibold mb-4 text-red-700">
Nur für Administratoren
</h3>
<div className="grid grid-cols-1 md:grid-cols-2 gap-4">
<button
type="button"
onClick={handleClearDatabase}
className="bg-red-600 text-white px-4 py-2 rounded shadow hover:bg-red-700"
>
Datenbank vollständig leeren
</button>
<button
type="button"
onClick={handleClearConfig}
className="bg-red-600 text-white px-4 py-2 rounded shadow hover:bg-red-700"
>
Konfiguration löschen
</button>
</div>
</div>
)}
</div>
);
};
export default DatabaseSettings;