From aa72d1b83337c5af27a72f96ce402302d09bd4d2 Mon Sep 17 00:00:00 2001 From: Gonzalo Odiard Date: Wed, 08 May 2013 19:39:32 +0000 Subject: Update the view when one download finish Signed-off-by: Gonzalo Odiard --- diff --git a/web/index.html b/web/index.html index 303aec8..e0ff3a3 100644 --- a/web/index.html +++ b/web/index.html @@ -8,7 +8,7 @@ local = (window.location.hostname == '0.0.0.0'); - function add_tr(item) { + function create_tr(item, tr) { id = item.id; title = item.title; desc = item.desc; @@ -22,8 +22,11 @@ } } - $('#journaltable').append("" + - ""+ + if (tr == null) { + var tr = document.createElement('tr'); + tr.id = id; + } + tr.innerHTML = ""+ ""+ ""+ ""+ @@ -36,11 +39,13 @@ ""+ "Download" : "") + "
" + title + "
"+ - "" + - ""); + ""; + return tr; } + var shared_items = []; + function init() { $.getJSON("/datastore/owner_info.json", function(owner_info) { $('#header').append("Journal of " + owner_info.nick_name); @@ -49,8 +54,9 @@ }); $.getJSON("/datastore/selected.json", function(selected) { + shared_items = selected; for (var i = 0; i < selected.length; i++) { - add_tr(selected[i]); + $('#journaltable').append(create_tr(selected[i], null)); } if (selected.length == 0) { @@ -73,10 +79,21 @@ new_list = eval(evt.data); for (var i = 0; i < new_list.length; i++) { id = new_list[i].id; + // if is a new shared item if ($('#' + id).length == 0) { - add_tr(new_list[i]); + $('#journaltable').append(create_tr(new_list[i], null)); + } else { + // verify if the information changed + for (var j = 0; j < shared_items.length; j++) { + if (shared_items[j].id == id) { + if (shared_items[j] != new_list[i]) { + create_tr(new_list[i],$('#' + id)[0]); + } + } + } } } + shared_items = new_list; }; -- cgit v0.9.1