From 9501bed7401484cd530925cce7ef1420cea7be4c Mon Sep 17 00:00:00 2001 From: hexxa Date: Fri, 24 Sep 2021 22:12:48 +0800 Subject: [PATCH] fix(fe): refactor fe to support visitor accessing --- src/client/web/src/components/panes.tsx | 69 ++++++++++++------------ src/client/web/src/components/topbar.tsx | 30 ----------- src/userstore/user_store.go | 4 +- 3 files changed, 38 insertions(+), 65 deletions(-) diff --git a/src/client/web/src/components/panes.tsx b/src/client/web/src/components/panes.tsx index 0e31438..5e5abee 100644 --- a/src/client/web/src/components/panes.tsx +++ b/src/client/web/src/components/panes.tsx @@ -2,7 +2,7 @@ import * as React from "react"; import { Set, Map } from "immutable"; import { updater } from "./state_updater"; -import { roleAdmin, roleVisitor } from "../client"; +import { roleAdmin, roleUser, roleVisitor } from "../client"; import { ICoreState, MsgProps } from "./core_state"; import { PaneSettings } from "./pane_settings"; import { AdminPane, AdminProps } from "./pane_admin"; @@ -35,40 +35,43 @@ export class Panes extends React.Component { render() { let displaying = this.props.panes.displaying; - // if (!this.props.login.authed) { - // TODO: use constant instead - // TODO: control this with props - // displaying = "login"; - // } let panesMap: Map = Map({}); - if (this.props.login.userRole !== roleVisitor) { - panesMap = panesMap.set( - "settings", - - ); - panesMap = panesMap.set( - "login", - - ); - } - if (this.props.login.userRole === roleAdmin) { - panesMap = panesMap.set( - "admin", - - ); + const settingsPane = ( + + ); + const loginPane = ( + + ); + const adminPane = ( + + ); + + switch(this.props.login.userRole) { + case roleAdmin: + panesMap = panesMap.set("settings", settingsPane); + panesMap = panesMap.set("admin", adminPane); + panesMap = panesMap.set("login", loginPane); + break; + case roleUser: + panesMap = panesMap.set("settings", settingsPane); + panesMap = panesMap.set("login", loginPane); + break; + default: + panesMap = panesMap.set("login", loginPane); + break; } const panes = panesMap.keySeq().map((paneName: string): JSX.Element => { diff --git a/src/client/web/src/components/topbar.tsx b/src/client/web/src/components/topbar.tsx index f1cb2b3..bcdb42c 100644 --- a/src/client/web/src/components/topbar.tsx +++ b/src/client/web/src/components/topbar.tsx @@ -65,7 +65,6 @@ export class TopBar extends React.Component { className="h5" > Quickshare - {/* */} , { { justifyContent: "flex-end", alignItems: "center" }, ])} /> - {/*
- - Quickshare - - - - {this.props.login.userName} - -  -  - - {this.props.login.userRole} - - - {adminBtn} - - - -
*/} ); } diff --git a/src/userstore/user_store.go b/src/userstore/user_store.go index 097ad58..0a84af7 100644 --- a/src/userstore/user_store.go +++ b/src/userstore/user_store.go @@ -25,8 +25,8 @@ const ( defaultSpaceLimit = 1024 * 1024 * 1024 // 1GB defaultUploadSpeedLimit = 50 * 1024 * 1024 // 50MB defaultDownloadSpeedLimit = 50 * 1024 * 1024 // 50MB - visitorUploadSpeedLimit = 10 * 1024 * 1024 // 50MB - visitorDownloadSpeedLimit = 10 * 1024 * 1024 // 50MB + visitorUploadSpeedLimit = 10 * 1024 * 1024 // 10MB + visitorDownloadSpeedLimit = 10 * 1024 * 1024 // 10MB ) var (