summaryrefslogtreecommitdiff
path: root/web/source/panels/admin/index.js
diff options
context:
space:
mode:
authorLibravatar tobi <31960611+tsmethurst@users.noreply.github.com>2022-08-08 10:40:51 +0200
committerLibravatar GitHub <noreply@github.com>2022-08-08 10:40:51 +0200
commit117888cf59c10330671f43bbce949a3984761c91 (patch)
tree432e62b06206f315048e719ef2bb0e39c5f658ae /web/source/panels/admin/index.js
parent[chore] Update js deps (#744) (diff)
downloadgotosocial-117888cf59c10330671f43bbce949a3984761c91.tar.xz
[feature] Add first iteration of a user panel at `/user` (#736)
* start work on user panel * parse source first before checking if empty form * newline * set avi + header nicely * add posts settings * render signin a bit nicer on mobile * return OK json on successful change * return unauthorized on bad password * clarify message on insecure password * make login a bit prettier * add alt text + border round image previews * add logout button * add password change * styling updates * redirect /auth/edit to /user * update tests * fix validation tests * better labels, link to more info * make submit button generic component * move submit button inside forms * add autocomplete labels to password fields * fix indentation (thx eslint) * update eslintrc * eslint: no-unescaped-entities * initial deduplication between user and admin panel * add default status/post format setting * user panel styling for inputs * update user panel styling, include normalize css * add placeholder text * input padding Co-authored-by: f0x <f0x@cthu.lu>
Diffstat (limited to 'web/source/panels/admin/index.js')
-rw-r--r--web/source/panels/admin/index.js39
1 files changed, 4 insertions, 35 deletions
diff --git a/web/source/panels/admin/index.js b/web/source/panels/admin/index.js
index 05ab8e583..0fc1601eb 100644
--- a/web/source/panels/admin/index.js
+++ b/web/source/panels/admin/index.js
@@ -22,45 +22,14 @@ const Promise = require("bluebird");
const React = require("react");
const ReactDom = require("react-dom");
-const oauthLib = require("../../lib/oauth.js");
-const Auth = require("./auth");
+const createPanel = require("../lib/panel");
+
const Settings = require("./settings");
const Blocks = require("./blocks");
+require("../base.css");
require("./style.css");
-function App() {
- const [oauth, setOauth] = React.useState();
- const [hasAuth, setAuth] = React.useState(false);
- const [oauthState, setOauthState] = React.useState(localStorage.getItem("oauth"));
-
- React.useEffect(() => {
- let state = localStorage.getItem("oauth");
- if (state != undefined) {
- state = JSON.parse(state);
- let restoredOauth = oauthLib(state.config, state);
- Promise.try(() => {
- return restoredOauth.callback();
- }).then(() => {
- setAuth(true);
- });
- setOauth(restoredOauth);
- }
- }, []);
-
- if (!hasAuth && oauth && oauth.isAuthorized()) {
- setAuth(true);
- }
-
- if (oauth && oauth.isAuthorized()) {
- return <AdminPanel oauth={oauth} />;
- } else if (oauthState != undefined) {
- return "processing oauth...";
- } else {
- return <Auth setOauth={setOauth} />;
- }
-}
-
function AdminPanel({oauth}) {
/*
Features: (issue #78)
@@ -92,4 +61,4 @@ function Logout({oauth}) {
);
}
-ReactDom.render(<App/>, document.getElementById("root")); \ No newline at end of file
+createPanel("GoToSocial Admin Panel", ["admin"], AdminPanel); \ No newline at end of file