Skip to content

Commit

Permalink
got basic hookup between changes or timeout to write to file. Now jus…
Browse files Browse the repository at this point in the history
…t have to think about concurrency problem on write and pretty-fying this page. Wow this was definitely not worth my time
  • Loading branch information
shankj3 committed Feb 16, 2017
1 parent 8aef45b commit 92d7bbf
Show file tree
Hide file tree
Showing 3 changed files with 41 additions and 14 deletions.
7 changes: 5 additions & 2 deletions legis.py
Expand Up @@ -23,8 +23,11 @@

# todo: write changes to md_file after 10 minutes - avoid concurrency issues
@socketio.on('md change')
def md_change(json):
print('received json: ' + str(json))
def md_change(data):
print('received json: ' + str(data))
md_change = open(vars.WHAT_WERE_DOING_MD, 'r+')
md_change.write(str(data))
md_change.close()

@app.route('/')
def index():
Expand Down
9 changes: 4 additions & 5 deletions static/what_happen.md
@@ -1,5 +1,4 @@
Hello
=======
* test
* test
* three
hello
======
*s *s==
s
39 changes: 32 additions & 7 deletions templates/what_happen_md.html
Expand Up @@ -24,25 +24,37 @@

<script type="text/javascript">
var change_count = 0;
var isConnected = false;
var isDirty = false;
var oldTime = new Date().getTime();
var sentData = false;

// on page load connect to websocket
var socket = io.connect('http://' + document.domain + ':' + location.port);
socket.on('connect', function() {
console.log('connected');
isConnected = true;
});

var area = document.querySelector('textarea#what_happen_text');

var area = document.querySelector('textarea#what_happen_text');
if (area.addEventListener) {
area.addEventListener('input', function() {
change_count++;

if (!isDirty) {
isDirty = true;
oldTime = new Date().getTime();
}

change_count = change_count + 1;
console.log(change_count);
var timeDiff = new Date().getTime() - oldTime;
var todo = document.getElementById("what_happen_text").value;
// TODO: or timeout happens
if (change_count == 10) {
// TODO: check for if connected
socket.emit('md change', {data: todo});
if (change_count == 20) {
console.log('SENDING SOMETHING!', isConnected, change_count, timeDiff);
send_md(todo);
change_count = 0;
oldTime = new Date().getTime();
sentData = true;
}

}, false);
Expand All @@ -53,6 +65,19 @@
});
}

setInterval(function() {
if (!sentData && isDirty) {
// todo: what happens after first call dirty-ing isdirty?
var todo = document.getElementById("what_happen_text").value;
send_md(todo);
}
}, 10000);

function send_md(todo) {
if (isConnected) {
socket.emit('md change', todo);
}
}

</script>
</body>
Expand Down

0 comments on commit 92d7bbf

Please sign in to comment.