gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[taler-merchant-backoffice] 01/02: Revert "make the managment login inte


From: gnunet
Subject: [taler-merchant-backoffice] 01/02: Revert "make the managment login intention explicit"
Date: Mon, 02 Aug 2021 16:23:04 +0200

This is an automated email from the git hooks/post-receive script.

sebasjm pushed a commit to branch master
in repository merchant-backoffice.

commit cfd0c0749714878539589ec7e4ac446076384e5b
Author: Sebastian <sebasjm@gmail.com>
AuthorDate: Mon Aug 2 10:53:25 2021 -0300

    Revert "make the managment login intention explicit"
    
    This reverts commit f4aa1c00298b8b240b6e5fdf0f8bb73d6e842db7.
---
 packages/frontend/src/ApplicationReadyRoutes.tsx   | 38 ++++------------------
 packages/frontend/src/InstanceRoutes.tsx           |  8 ++---
 .../frontend/src/components/exception/login.tsx    | 33 ++++---------------
 packages/frontend/src/context/backend.ts           |  8 ++---
 packages/frontend/src/hooks/index.ts               | 11 +++----
 packages/frontend/src/index.tsx                    |  4 +--
 packages/frontend/src/paths/login/index.tsx        |  2 +-
 7 files changed, 27 insertions(+), 77 deletions(-)

diff --git a/packages/frontend/src/ApplicationReadyRoutes.tsx 
b/packages/frontend/src/ApplicationReadyRoutes.tsx
index 37a4caf..d9bd75d 100644
--- a/packages/frontend/src/ApplicationReadyRoutes.tsx
+++ b/packages/frontend/src/ApplicationReadyRoutes.tsx
@@ -29,30 +29,23 @@ import { NotYetReadyAppMenu, Menu, NotificationCard } from 
'./components/menu';
 import { useTranslator } from './i18n';
 import { createHashHistory } from 'history';
 import { useState } from 'preact/hooks';
+import { CreateStockNoRestock } from './components/form/InputStock.stories';
 
-/**
- * We know that we are connection to a merchant backend because we have 
- * succeeded with a /config request but we should check for credentials 
- * and management control before continue
- *  
- * @returns Application or Login form with an error
- */
 export function ApplicationReadyRoutes(): VNode {
   const i18n = useTranslator();
-  const { url: backendURL, managementIntended, changeBackend, updateToken, 
clearAllTokens } = useBackendContext();
+  const { url: backendURL, changeBackend, updateToken, clearAllTokens } = 
useBackendContext();
 
-  const updateLoginStatus = (url: string, management: boolean, token?: string) 
=> {
-    changeBackend(url, management);
+  const updateLoginStatus = (url: string, token?: string) => {
+    changeBackend(url);
     if (token) updateToken(token);
   };
+  const result = useBackendInstancesTestForAdmin()
 
   const clearTokenAndGoToRoot = () => {
     clearAllTokens();
     route('/')
   }
 
-  const result = useBackendInstancesTestForAdmin()
-
   if (result.clientError && result.isUnauthorized) {
     return <Fragment>
       <NotYetReadyAppMenu title="Login" onLogout={clearTokenAndGoToRoot} />
@@ -69,25 +62,10 @@ export function ApplicationReadyRoutes(): VNode {
 
   if (result.loading) return <NotYetReadyAppMenu title="Loading..." />
 
-  let admin = managementIntended;
+  let admin = true;
   let instanceNameByBackendURL;
 
   if (!result.ok) {
-
-    if (managementIntended) {
-      return <Fragment>
-        <NotYetReadyAppMenu title="Login" onLogout={clearTokenAndGoToRoot} />
-        <NotificationCard notification={{
-          message: i18n`Couldn't access the server`,
-          description: i18n`You ask for management but seems that this is not 
the default instance of the backend`,
-          type: 'ERROR'
-        }}
-        />
-        <LoginPage onConfirm={updateLoginStatus} />
-      </Fragment>
-    }
-    admin = false
-
     const path = new URL(backendURL).pathname
     const match = INSTANCE_ID_LOOKUP.exec(path)
     if (!match || !match[1]) {
@@ -106,12 +84,10 @@ export function ApplicationReadyRoutes(): VNode {
       </Fragment>
     }
 
+    admin = false
     instanceNameByBackendURL = match[1]
   }
 
-  /**
-   * We are using router to take information from the URL parameters
-   */
   const history = createHashHistory()
   return <Router history={history}>
     <Route default component={DefaultMainRoute} 
clearTokenAndGoToRoot={clearTokenAndGoToRoot} admin={admin} 
instanceNameByBackendURL={instanceNameByBackendURL} />
diff --git a/packages/frontend/src/InstanceRoutes.tsx 
b/packages/frontend/src/InstanceRoutes.tsx
index 5acca16..2914f5f 100644
--- a/packages/frontend/src/InstanceRoutes.tsx
+++ b/packages/frontend/src/InstanceRoutes.tsx
@@ -102,8 +102,8 @@ export function InstanceRoutes({ id, admin, setInstanceName 
}: Props): VNode {
       updateDefaultToken(token)
     }
   }
-  const updateLoginStatus = (url: string, magement: boolean, token?: string) 
=> {
-    changeBackend(url, magement);
+  const updateLoginStatus = (url: string, token?: string) => {
+    changeBackend(url);
     if (!token) return
     changeToken(token)
   };
@@ -303,8 +303,8 @@ export function Redirect({ to }: { to: string }): null {
 function AdminInstanceUpdatePage({ id, ...rest }: { id: string } & 
InstanceUpdatePageProps) {
   const [token, changeToken] = useBackendInstanceToken(id);
   const { changeBackend } = useBackendContext();
-  const updateLoginStatus = (url: string, management: boolean, token?: string) 
=> {
-    changeBackend(url, management);
+  const updateLoginStatus = (url: string, token?: string) => {
+    changeBackend(url);
     if (token)
     changeToken(token);
   };
diff --git a/packages/frontend/src/components/exception/login.tsx 
b/packages/frontend/src/components/exception/login.tsx
index 6b83879..fca81ae 100644
--- a/packages/frontend/src/components/exception/login.tsx
+++ b/packages/frontend/src/components/exception/login.tsx
@@ -28,7 +28,7 @@ import { Notification } from "../../utils/types";
 
 interface Props {
   withMessage?: Notification;
-  onConfirm: (backend: string, management: boolean, token?: string) => void;
+  onConfirm: (backend: string, token?: string) => void;
 }
 
 function getTokenValuePart(t?: string): string | undefined {
@@ -44,8 +44,7 @@ export function LoginModal({ onConfirm, withMessage }: 
Props): VNode {
   const { admin, token: instanceToken } = useInstanceContext()
   const currentToken = getTokenValuePart(!admin ? baseToken : instanceToken || 
'')
   const [token, setToken] = useState(currentToken)
-  const [management, setManagement] = useState(false)
-
+  
   const [url, setURL] = useState(backendUrl)
   const i18n = useTranslator()
 
@@ -66,7 +65,7 @@ export function LoginModal({ onConfirm, withMessage }: 
Props): VNode {
                 <p class="control is-expanded">
                   <input class="input" type="text" placeholder="set new url" 
name="id"
                     value={url}
-                    onKeyPress={e => e.keyCode === 13 ? onConfirm(url, 
management, token ? `secret-token:${token}` : undefined) : null}
+                    onKeyPress={e => e.keyCode === 13 ? onConfirm(url, token ? 
`secret-token:${token}` : undefined) : null}
                     onInput={(e): void => setURL(e?.currentTarget.value)}
                   />
                 </p>
@@ -81,38 +80,18 @@ export function LoginModal({ onConfirm, withMessage }: 
Props): VNode {
               <div class="field">
                 <p class="control is-expanded">
                   <input class="input" type="text" placeholder={"set new 
access token"} name="token"
-                    onKeyPress={e => e.keyCode === 13 ? onConfirm(url, 
management, token ? `secret-token:${token}` : undefined) : null}
-                    value={token}
+                    onKeyPress={e => e.keyCode === 13 ? onConfirm(url, token ? 
`secret-token:${token}` : undefined) : null}
+                    value={token} 
                     onInput={(e): void => setToken(e?.currentTarget.value)}
                   />
                 </p>
               </div>
             </div>
           </div>
-          <div class="field is-horizontal">
-            <div class="field-label is-normal">
-              <label class="label"><Translate>Management</Translate></label>
-            </div>
-            <div class="field-body">
-              <div class="field">
-                <p class="control is-expanded">
-                  <label class="b-checkbox checkbox">
-                    <input type="checkbox"
-                      class="input"
-                      checked={management}
-                      placeholder={"asdsad"}
-                      name="management"
-                      onChange={() => setManagement(v => !v)} />
-                    <span class="check" />
-                  </label>
-                </p>
-              </div>
-            </div>
-          </div>
         </section>
         <footer class="modal-card-foot " style={{ justifyContent: 'flex-end', 
border: '1px solid', borderTop: 0 }} >
           <button class="button is-info" onClick={(): void => {
-            onConfirm(url, management, token ? `secret-token:${token}` : 
undefined);
+            onConfirm(url, token ? `secret-token:${token}` : undefined);
           }} ><Translate>Confirm</Translate></button>
         </footer>
       </div>
diff --git a/packages/frontend/src/context/backend.ts 
b/packages/frontend/src/context/backend.ts
index aeb1c81..1a7cd72 100644
--- a/packages/frontend/src/context/backend.ts
+++ b/packages/frontend/src/context/backend.ts
@@ -27,8 +27,7 @@ interface BackendContextType {
   url: string;
   token?: string;
   triedToLog: boolean;
-  managementIntended: boolean;
-  changeBackend: (url: string, management: boolean) => void;
+  changeBackend: (url: string) => void;
   resetBackend: () => void;
   clearAllTokens: () => void;
   addTokenCleaner: (c: () => void) => void;
@@ -39,7 +38,6 @@ const BackendContext = createContext<BackendContextType>({
   url: '',
   token: undefined,
   triedToLog: false,
-  managementIntended: false,
   changeBackend: () => null,
   resetBackend: () => null,
   clearAllTokens: () => null,
@@ -48,7 +46,7 @@ const BackendContext = createContext<BackendContextType>({
 })
 
 export function useBackendContextState(defaultUrl?:string): BackendContextType 
{
-  const [url, triedToLog, management, changeBackend, resetBackend] = 
useBackendURL(defaultUrl);
+  const [url, triedToLog, changeBackend, resetBackend] = 
useBackendURL(defaultUrl);
   const [token, _updateToken] = useBackendDefaultToken();
   const updateToken = (t?:string) => {
     _updateToken(t)
@@ -68,7 +66,7 @@ export function useBackendContextState(defaultUrl?:string): 
BackendContextType {
     resetBackend()
   }
 
-  return { url, token, triedToLog, managementIntended: management, 
changeBackend, updateToken, resetBackend, clearAllTokens, addTokenCleaner: 
addTokenCleanerMemo }
+  return { url, token, triedToLog, changeBackend, updateToken, resetBackend, 
clearAllTokens, addTokenCleaner: addTokenCleanerMemo }
 }
 
 export const BackendContextProvider = ({children, defaultUrl}:{children:any, 
defaultUrl?:string}):VNode => {
diff --git a/packages/frontend/src/hooks/index.ts 
b/packages/frontend/src/hooks/index.ts
index 46b3222..19d672a 100644
--- a/packages/frontend/src/hooks/index.ts
+++ b/packages/frontend/src/hooks/index.ts
@@ -28,22 +28,19 @@ const calculateRootPath = () => {
   return rootPath
 }
 
-export function useBackendURL(url?: string): [string, boolean, boolean, 
(url:string, m:boolean) => void, () => void] {
+export function useBackendURL(url?: string): [string, boolean, 
StateUpdater<string>, () => void] {
   const [value, setter] = useNotNullLocalStorage('backend-url', url || 
calculateRootPath())
-  const [mngmt, setMngmt] = useLocalStorage('backend-management')
   const [triedToLog, setTriedToLog] = useLocalStorage('tried-login')
 
-  const checkedSetter = (v: string, m: boolean) => {
+  const checkedSetter = (v: ValueOrFunction<string>) => {
     setTriedToLog('yes')
-    setMngmt(m ? 'yes' : 'no')
-    return setter(v.replace(/\/$/, ''))
+    return setter(p => (v instanceof Function ? v(p) : v).replace(/\/$/, ''))
   }
 
   const resetBackend = () => {
-    setMngmt(undefined)
     setTriedToLog(undefined)
   }
-  return [value, !!triedToLog, mngmt === 'yes', checkedSetter, resetBackend]
+  return [value, !!triedToLog, checkedSetter, resetBackend]
 }
 
 export function useBackendDefaultToken(): [string | undefined, 
StateUpdater<string | undefined>] {
diff --git a/packages/frontend/src/index.tsx b/packages/frontend/src/index.tsx
index 0dee1fe..0a77533 100644
--- a/packages/frontend/src/index.tsx
+++ b/packages/frontend/src/index.tsx
@@ -51,8 +51,8 @@ function ApplicationStatusRoutes(): VNode {
   const result = useBackendConfig();
   const i18n = useTranslator()
 
-  const updateLoginInfoAndGoToRoot = (url: string, management: boolean, 
token?: string) => {
-    changeBackend(url, management)
+  const updateLoginInfoAndGoToRoot = (url: string, token?: string) => {
+    changeBackend(url)
     if (token) updateToken(token)
     route('/')
   }
diff --git a/packages/frontend/src/paths/login/index.tsx 
b/packages/frontend/src/paths/login/index.tsx
index 44ab9b1..acad7fe 100644
--- a/packages/frontend/src/paths/login/index.tsx
+++ b/packages/frontend/src/paths/login/index.tsx
@@ -22,7 +22,7 @@ import { h, VNode } from "preact";
 import { LoginModal } from '../../components/exception/login';
 
 interface Props {
-  onConfirm: (url: string, management: boolean, token?: string) => void;
+  onConfirm: (url: string, token?: string) => void;
 }
 export default function LoginPage({ onConfirm }: Props): VNode {
   return <LoginModal onConfirm={onConfirm} />

-- 
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]