From 6287eb1fbd3b4f58cfcbb8477cbed96603dd5760 Mon Sep 17 00:00:00 2001
From: =?utf8?q?Benoi=CC=82t=20Pin?= <pin@cri.ensmp.fr>
Date: Fri, 31 Oct 2014 14:47:15 +0100
Subject: [PATCH] =?utf8?q?Mise=20=C3=A0=20jour=20de=20la=20ligne=20du=20li?=
 =?utf8?q?sting=20lors=20d'un=20=C3=A9crasement.?=
MIME-Version: 1.0
Content-Type: text/plain; charset=utf8
Content-Transfer-Encoding: 8bit

---
 skins/ajax_scripts/folder_contents_script.js | 15 +++++++++++++--
 1 file changed, 13 insertions(+), 2 deletions(-)

diff --git a/skins/ajax_scripts/folder_contents_script.js b/skins/ajax_scripts/folder_contents_script.js
index 6480f9d..066bfc0 100644
--- a/skins/ajax_scripts/folder_contents_script.js
+++ b/skins/ajax_scripts/folder_contents_script.js
@@ -352,14 +352,25 @@ DDFolderUploader.prototype.beforeUpload = function(item) {
 DDFolderUploader.prototype.uploadCompleteHandlerCB = function(req) {
 	var item = this.uploadedItem;
 	var row = getCopyOfNode(req.responseXML.documentElement.firstChild);
-	row.className = item.className;
 
 	if (req.status === 200) {
 		// update
-		console.log('todo');
+		this.listing.removeChild(item);
+		var itemUrl = row.getElementsByTagName('a')[0].href;
+		var links = this.listing.getElementsByTagName('a');
+		var i, existingRow;
+		for (i=0 ; i < links.length ; i++) {
+			if (links[i].href === itemUrl) {
+				existingRow = links[i].parentNode.parentNode;
+				row.className = existingRow.className;
+				this.listing.replaceChild(row, existingRow);
+				break;
+			}
+		}
 	}
 	else if(req.status === 201) {
 		// creation
+		row.className = item.className;
 		this.listing.replaceChild(row, item);
 		this.progressBarMaxSize = row.clientWidth;
 	}
-- 
2.20.1