aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorkimdahey <claire_kim1@brown.edu>2019-11-19 19:06:47 -0500
committerkimdahey <claire_kim1@brown.edu>2019-11-19 19:06:47 -0500
commitb4a23b21bbe0a44df1328419c7d94b97a772e54f (patch)
tree427938ba76c04324e1902ac49483ea807dd384e0
parent79260cec351f1f76505c44c338222082dc4a666e (diff)
progress w password
-rw-r--r--src/client/util/SettingsManager.scss37
-rw-r--r--src/client/util/SettingsManager.tsx38
-rw-r--r--src/server/index.ts10
3 files changed, 61 insertions, 24 deletions
diff --git a/src/client/util/SettingsManager.scss b/src/client/util/SettingsManager.scss
index 1e44a6a3c..cd9d2569a 100644
--- a/src/client/util/SettingsManager.scss
+++ b/src/client/util/SettingsManager.scss
@@ -2,16 +2,33 @@
.settings-interface {
display: flex;
+ flex-direction: column;
- .focus-span {
- text-decoration: underline;
+ .settings-body {
+ display: flex;
+ flex-direction: row;
+
+ .settings-type {
+ display: flex;
+ flex-direction: column;
+ flex-basis: 30%;
+ }
+
+ .settings-content {
+ padding-left: 1em;
+ display: flex;
+ justify-content: space-between;
+ }
}
- p {
- text-align: left;
- padding: 0;
- margin: 0 0 20px 0;
+ .focus-span {
+ text-decoration: underline;
}
+p {
+ text-align: left;
+ padding: 0;
+ margin: 0 0 20px 0;
+}
h1 {
color: $dark-color;
@@ -22,12 +39,8 @@
.close-button {
position: absolute;
- right: 0;
- top: 0;
- }
-
- .close-button:hover {
- border-color: black;
+ right: 1em;
+ top: 1em;
}
.container {
diff --git a/src/client/util/SettingsManager.tsx b/src/client/util/SettingsManager.tsx
index ca9124ef6..c7d4d1786 100644
--- a/src/client/util/SettingsManager.tsx
+++ b/src/client/util/SettingsManager.tsx
@@ -7,6 +7,7 @@ import * as fa from '@fortawesome/free-solid-svg-icons';
import { SelectionManager } from "./SelectionManager";
import "./SettingsManager.scss";
import { FontAwesomeIcon } from "@fortawesome/react-fontawesome";
+import { Identified } from "../Network";
library.add(fa.faWindowClose);
@@ -16,6 +17,7 @@ export default class SettingsManager extends React.Component<{}> {
@observable private isOpen = false;
@observable private dialogueBoxOpacity = 1;
@observable private overlayOpacity = 0.4;
+ private curr_password_ref = React.createRef<HTMLInputElement>();
public open = action(() => {
SelectionManager.DeselectAll();
@@ -31,23 +33,35 @@ export default class SettingsManager extends React.Component<{}> {
SettingsManager.Instance = this;
}
+ private dispatchRequest = async () => {
+ const curr_pass = this.curr_password_ref.current!.value;
+ const { error: resultError, ...others } = await Identified.PostToServer('/internalResetPassword', { curr_pass });
+ if (resultError) {
+ // we failed
+ }
+ // do stuff with response
+ }
+
private get settingsInterface() {
return (
<div className={"settings-interface"}>
- <div className={"close-button"} onClick={this.close}>
- <FontAwesomeIcon icon={fa.faWindowClose} />
+ <div className="settings-heading">
+ <h1>settings</h1>
+ <div className={"close-button"} onClick={this.close}>
+ <FontAwesomeIcon icon={fa.faWindowClose} size={"lg"} />
+ </div>
</div>
- <h1>settings</h1>
-
- <div>toggle
- second toggle
- </div>
- <div>hellow
- heree
- s
- a
- lot of information hahahahahahahah
+ <div className="settings-body">
+ <div className="settings-type">
+ <p>changeable settings</p>
+ <p>static data</p>
+ </div>
+ <div className="settings-content">
+ <input ref={this.curr_password_ref}></input>
+ this changes with what you select!
+ </div>
</div>
+
</div>
);
}
diff --git a/src/server/index.ts b/src/server/index.ts
index 1595781dc..d5dbe8913 100644
--- a/src/server/index.ts
+++ b/src/server/index.ts
@@ -668,6 +668,16 @@ addSecureRoute({
onRejection: (_req, res) => res.send(JSON.stringify({ id: "__guest__", email: "" }))
});
+addSecureRoute({
+ method: Method.POST,
+ subscribers: '/internalResetPassword',
+ onValidation: (user, _req, res) => {
+ // user password auth
+ // new pass same
+ // do extra stuff
+ }
+});
+
const ServicesApiKeyMap = new Map<string, string | undefined>([
["face", process.env.FACE],
["vision", process.env.VISION],