aboutsummaryrefslogtreecommitdiff
path: root/src/mobile/ImageUpload.tsx
diff options
context:
space:
mode:
authorlaurawilsonri <laura_wilson@brown.edu>2019-04-11 14:12:49 -0400
committerlaurawilsonri <laura_wilson@brown.edu>2019-04-11 14:12:49 -0400
commitc392a9322c1df269cfd823dd82d07d991fe065c0 (patch)
treefdd44c511bd179984dc3dc18b92745751c86bfc5 /src/mobile/ImageUpload.tsx
parent15514b0f3d685764d1bd7ebeac9cdee1f778e184 (diff)
parent50be8cb7a93110821c972c679567ddb6aae8bc6f (diff)
Merge branch 'master' of https://github.com/browngraphicslab/Dash-Web into richTextEditor
Diffstat (limited to 'src/mobile/ImageUpload.tsx')
-rw-r--r--src/mobile/ImageUpload.tsx59
1 files changed, 28 insertions, 31 deletions
diff --git a/src/mobile/ImageUpload.tsx b/src/mobile/ImageUpload.tsx
index ae48dd2c6..ec89a1194 100644
--- a/src/mobile/ImageUpload.tsx
+++ b/src/mobile/ImageUpload.tsx
@@ -9,6 +9,7 @@ import { RouteStore } from '../server/RouteStore';
import { ServerUtils } from '../server/ServerUtil';
import "./ImageUpload.scss";
import React = require('react');
+import { Opt } from '../fields/Field';
@@ -20,51 +21,47 @@ import React = require('react');
// }
// }
-const onFileLoad = (file: any) => {
- let imgPrev = document.getElementById("img_preview")
+const onFileLoad = async (file: any) => {
+ let imgPrev = document.getElementById("img_preview");
if (imgPrev) {
let files: File[] = file.target.files;
- if (files.length != 0) {
+ if (files.length !== 0) {
console.log(files[0]);
let formData = new FormData();
formData.append("file", files[0]);
- const upload = window.location.origin + "/upload"
- fetch(upload, {
+ const upload = window.location.origin + "/upload";
+ const res = await fetch(upload, {
method: 'POST',
body: formData
- }).then((res: Response) => {
- return res.json()
- }).then(json => {
- json.map((file: any) => {
- let path = window.location.origin + file
- var doc: Document = Documents.ImageDocument(path, { nativeWidth: 200, width: 200 })
+ });
+ const json = await res.json();
+ json.map(async (file: any) => {
+ let path = window.location.origin + file;
+ var doc: Document = Documents.ImageDocument(path, { nativeWidth: 200, width: 200 });
- rp.get(ServerUtils.prepend(RouteStore.getUserDocumentId)).then(res => {
- if (res) {
- return Server.GetField(res);
- }
- throw new Error("No user id returned");
- }).then(field => {
- if (field instanceof Document) {
- return field.GetTAsync(KeyStore.OptionalRightCollection, Document)
- }
- }).then(pending => {
- if (pending) {
- pending.GetOrCreateAsync(KeyStore.Data, ListField, list => {
- list.Data.push(doc);
- })
- }
+ const res = await rp.get(ServerUtils.prepend(RouteStore.getUserDocumentId));
+ if (!res) {
+ throw new Error("No user id returned");
+ }
+ const field = await Server.GetField(res);
+ let pending: Opt<Document>;
+ if (field instanceof Document) {
+ pending = await field.GetTAsync(KeyStore.OptionalRightCollection, Document);
+ }
+ if (pending) {
+ pending.GetOrCreateAsync(KeyStore.Data, ListField, list => {
+ list.Data.push(doc);
});
+ }
+ });
- // console.log(window.location.origin + file[0])
+ // console.log(window.location.origin + file[0])
- //imgPrev.setAttribute("src", window.location.origin + files[0].name)
- })
- })
+ //imgPrev.setAttribute("src", window.location.origin + files[0].name)
}
}
-}
+};
ReactDOM.render((
<div className="imgupload_cont">