aboutsummaryrefslogtreecommitdiff
path: root/src/server
diff options
context:
space:
mode:
authoryipstanley <stanley_yip@brown.edu>2019-03-09 18:37:47 -0500
committeryipstanley <stanley_yip@brown.edu>2019-03-09 18:37:47 -0500
commitc739d5ae0f7d78bbd65134606c727df5a71defec (patch)
tree27c05f13a244a04717eeaa8aeb537b60b0ca985c /src/server
parent1135a989b154aae084e07e09195e2d1c59e06180 (diff)
parent96eede5f7d1706a3f7ac6ee02a85bb3da217f467 (diff)
finally merged
Diffstat (limited to 'src/server')
-rw-r--r--src/server/Message.ts2
-rw-r--r--src/server/ServerUtil.ts32
-rw-r--r--src/server/index.ts11
3 files changed, 31 insertions, 14 deletions
diff --git a/src/server/Message.ts b/src/server/Message.ts
index 80fc9a80d..5e97a5edf 100644
--- a/src/server/Message.ts
+++ b/src/server/Message.ts
@@ -45,7 +45,7 @@ export class GetFieldArgs {
}
export enum Types {
- Number, List, Key, Image, Document, Text, RichText, DocumentReference, Html
+ Number, List, Key, Image, Web, Document, Text, RichText, DocumentReference, Html, Ink, PDF
}
export class DocumentTransfer implements Transferable {
diff --git a/src/server/ServerUtil.ts b/src/server/ServerUtil.ts
index 08e72fdae..3b9d14891 100644
--- a/src/server/ServerUtil.ts
+++ b/src/server/ServerUtil.ts
@@ -1,15 +1,17 @@
-import { Field } from './../fields/Field';
-import { TextField } from './../fields/TextField';
-import { NumberField } from './../fields/NumberField';
-import { RichTextField } from './../fields/RichTextField';
-import { Key } from './../fields/Key';
-import { ImageField } from './../fields/ImageField';
-import { ListField } from './../fields/ListField';
-import { Document } from './../fields/Document';
-import { Server } from './../client/Server';
-import { Types } from './Message';
-import { Utils } from '../Utils';
-import { HtmlField } from '../fields/HtmlField';
+import {HtmlField} from '../fields/HtmlField';
+import {InkField} from '../fields/InkField';
+import {PDFField} from '../fields/PDFField';
+import {WebField} from '../fields/WebField';
+import {Utils} from '../Utils';
+import {Document} from './../fields/Document';
+import {Field} from './../fields/Field';
+import {ImageField} from './../fields/ImageField';
+import {Key} from './../fields/Key';
+import {ListField} from './../fields/ListField';
+import {NumberField} from './../fields/NumberField';
+import {RichTextField} from './../fields/RichTextField';
+import {TextField} from './../fields/TextField';
+import {Types} from './Message';
export class ServerUtils {
public static FromJson(json: any): Field {
@@ -30,14 +32,20 @@ export class ServerUtils {
return new TextField(data, id, false)
case Types.Html:
return new HtmlField(data, id, false)
+ case Types.Web:
+ return new WebField(new URL(data), id, false)
case Types.RichText:
return new RichTextField(data, id, false)
case Types.Key:
return new Key(data, id, false)
case Types.Image:
return new ImageField(new URL(data), id, false)
+ case Types.PDF:
+ return new PDFField(new URL(data), id, false)
case Types.List:
return ListField.FromJson(id, data)
+ case Types.Ink:
+ return InkField.FromJson(id, data);
case Types.Document:
let doc: Document = new Document(id, false)
let fields: [string, string][] = data as [string, string][]
diff --git a/src/server/index.ts b/src/server/index.ts
index f5e66b31b..4c2e09661 100644
--- a/src/server/index.ts
+++ b/src/server/index.ts
@@ -31,6 +31,12 @@ const MongoStore = require('connect-mongo')(session);
const mongoose = require('mongoose');
const bluebird = require('bluebird');
import { performance } from 'perf_hooks'
+import * as fs from 'fs';
+import * as request from 'request'
+
+const download = (url: string, dest: fs.PathLike) => {
+ request.get(url).pipe(fs.createWriteStream(dest));
+}
const mongoUrl = 'mongodb://localhost:27017/Dash';
// mongoose.Promise = bluebird;
@@ -79,6 +85,10 @@ app.get("/hello", (req, res) => {
res.send("<p>Hello</p>");
})
+app.use("/corsProxy", (req, res) => {
+ req.pipe(request(req.url.substring(1))).pipe(res);
+});
+
app.get("/delete", (req, res) => {
deleteAll();
res.redirect("/");
@@ -119,7 +129,6 @@ function deleteAll() {
function barReceived(guid: String) {
clients[guid.toString()] = new Client(guid.toString());
- // Database.Instance.print()
}
function addDocument(document: Document) {