diff --git a/README.md b/README.md
index 57b49f6..01060b1 100644
--- a/README.md
+++ b/README.md
@@ -12,7 +12,8 @@
---
-![Screenshots](./screenshots.jpg)
+![Login form](./screenshots/auth.webp)
+![Screenshots](./screenshots/screenshots.jpg)
This project is built using [react-admin](https://marmelab.com/react-admin/).
@@ -94,6 +95,7 @@ with a proper manifest.json generation on build)
* [Support configuration via /.well-known/matrix/client](https://github.com/etkecc/synapse-admin/pull/126)
* [Prevent accidental user overwrites](https://github.com/etkecc/synapse-admin/pull/139)
* [Allow providing login form details via GET params](https://github.com/etkecc/synapse-admin/pull/140)
+* [Add preferred theme colors to login page and footer](https://github.com/etkecc/synapse-admin/pull/155)
_the list will be updated as new changes are added_
diff --git a/screenshots/auth.webp b/screenshots/auth.webp
new file mode 100644
index 0000000..ba0a3c1
Binary files /dev/null and b/screenshots/auth.webp differ
diff --git a/screenshots.jpg b/screenshots/screenshots.jpg
similarity index 100%
rename from screenshots.jpg
rename to screenshots/screenshots.jpg
diff --git a/src/App.tsx b/src/App.tsx
index 1b47be3..3c4162c 100644
--- a/src/App.tsx
+++ b/src/App.tsx
@@ -23,7 +23,6 @@ import users from "./resources/users";
import authProvider from "./synapse/authProvider";
import dataProvider from "./synapse/dataProvider";
import { QueryClient, QueryClientProvider } from "@tanstack/react-query";
-import Footer from "./components/Footer";
// TODO: Can we use lazy loading together with browser locale?
const messages = {
@@ -82,7 +81,6 @@ const App = () => (
-
);
diff --git a/src/components/AdminLayout.tsx b/src/components/AdminLayout.tsx
index 1e0d0b1..518d9d6 100644
--- a/src/components/AdminLayout.tsx
+++ b/src/components/AdminLayout.tsx
@@ -3,6 +3,7 @@ import { LoginMethod } from "../pages/LoginPage";
import { useEffect, useState, Suspense } from "react";
import { Icons, DefaultIcon } from "./icons";
import { ClearConfig } from "./config";
+import Footer from "./Footer";
const AdminUserMenu = () => {
const [open, setOpen] = useState(false);
@@ -88,8 +89,9 @@ const AdminMenu = (props) => {
);
};
-export const AdminLayout = ({ children }) => (
- {
+ return <>
+ (
marginBottom: '3rem',
},
}}>
- {children}
-
-
-);
+ {children}
+
+
+
+ >
+};
\ No newline at end of file
diff --git a/src/components/Footer.tsx b/src/components/Footer.tsx
index 4f85a5a..0566aa6 100644
--- a/src/components/Footer.tsx
+++ b/src/components/Footer.tsx
@@ -1,8 +1,11 @@
import { Avatar, Box, Link, Typography } from "@mui/material";
import { useEffect, useState } from "react";
+import { useTheme } from "@mui/material/styles";
const Footer = () => {
const [version, setVersion] = useState(null);
+ const theme = useTheme();
+
useEffect(() => {
const version = document.getElementById("js-version")?.textContent;
if (version) {
@@ -10,6 +13,8 @@ const Footer = () => {
}
}, []);
+ console.log(theme);
+
return ( {
zIndex: 100,
bottom: 0,
width: '100%',
- bgcolor: "#eee",
+ bgcolor: theme.palette.background.default,
+ color: theme.palette.text.primary,
borderTop: '1px solid',
- borderColor: '#ddd',
+ borderColor: theme.palette.divider,
+ fontSize: '0.89rem',
+ display: 'flex',
+ flexDirection: 'row',
+ alignItems: 'center',
+ justifyContent: 'start',
p: 1,
+ gap: '10px'
}}>
-
-
- Synapse Admin
-
- {version}
-
- by etke.cc
-
- (originally developed by Awesome Technologies Innovationslabor GmbH).
- #synapse-admin:etke.cc
-
+
+ Synapse Admin {version}
+
+ by
+
+ etke.cc
+
+ (originally developed by Awesome Technologies Innovationslabor GmbH).
+ #synapse-admin:etke.cc
);
};
diff --git a/src/pages/LoginPage.tsx b/src/pages/LoginPage.tsx
index 64838f9..0691f7b 100644
--- a/src/pages/LoginPage.tsx
+++ b/src/pages/LoginPage.tsx
@@ -26,6 +26,7 @@ import {
splitMxid,
} from "../synapse/synapse";
import storage from "../storage";
+import Footer from "../components/Footer";
export type LoginMethod = "credentials" | "accessToken";
@@ -321,6 +322,7 @@ const LoginPage = () => {
+
);
};