aboutsummaryrefslogtreecommitdiff
path: root/cli
diff options
context:
space:
mode:
authorMicah Lee <micah@micahflee.com>2021-04-28 19:10:26 -0400
committerMicah Lee <micah@micahflee.com>2021-04-28 19:10:26 -0400
commit0de27f9775cf5231e0d7bdf5a2b388e5d1b7ee52 (patch)
tree9cffa342da50cad4035b1ce6b879554c890ead1f /cli
parent2acdea52298695549dfe25260ed59df88b6c3a2c (diff)
downloadonionshare-0de27f9775cf5231e0d7bdf5a2b388e5d1b7ee52.tar.gz
onionshare-0de27f9775cf5231e0d7bdf5a2b388e5d1b7ee52.zip
WIP: Starting to make messages in receive mode work in GUI
Diffstat (limited to 'cli')
-rw-r--r--cli/onionshare_cli/mode_settings.py2
-rw-r--r--cli/onionshare_cli/web/receive_mode.py27
2 files changed, 22 insertions, 7 deletions
diff --git a/cli/onionshare_cli/mode_settings.py b/cli/onionshare_cli/mode_settings.py
index c2e5e6cd..7b545623 100644
--- a/cli/onionshare_cli/mode_settings.py
+++ b/cli/onionshare_cli/mode_settings.py
@@ -53,6 +53,8 @@ class ModeSettings:
"receive": {
"data_dir": self.build_default_receive_data_dir(),
"webhook_url": None,
+ "disable_text": False,
+ "disable_files": False,
},
"website": {"disable_csp": False, "filenames": []},
"chat": {"room": "default"},
diff --git a/cli/onionshare_cli/web/receive_mode.py b/cli/onionshare_cli/web/receive_mode.py
index f52e691e..7d2f0d7d 100644
--- a/cli/onionshare_cli/web/receive_mode.py
+++ b/cli/onionshare_cli/web/receive_mode.py
@@ -26,6 +26,17 @@ from datetime import datetime
from flask import Request, request, render_template, make_response, flash, redirect
from werkzeug.utils import secure_filename
+"""
+Receive mode uses a special flask requests object, ReceiveModeRequest, in
+order to keep track of upload progress. Here's what happens when someone
+uploads files:
+
+- new ReceiveModeRequest object is created
+- creates a directory based on the timestamp
+-
+
+"""
+
class ReceiveModeWeb:
"""
@@ -90,18 +101,20 @@ class ReceiveModeWeb:
with open(local_path, "w") as f:
f.write(text_message)
- basename = os.path.basename(local_path)
-
- # TODO: possibly change this
+ # Tell the GUI a message has been uploaded
self.web.add_request(
- self.web.REQUEST_UPLOAD_SET_DIR,
- request.path,
+ self.web.REQUEST_STARTED,
+ local_path,
{
"id": request.history_id,
- "filename": basename,
- "dir": request.receive_mode_dir,
+ "content_length": len(text_message),
},
)
+ self.web.add_request(
+ self.web.REQUEST_UPLOAD_FINISHED,
+ local_path,
+ {"id": request.history_id},
+ )
self.common.log(
"ReceiveModeWeb",