diff --git a/inc/media.php b/inc/media.php
index d083fd2b266635a58f4db54e8b3ff40b2dc28d10..7e8caa19c6375139aeb3e565f5fb23456b43bb26 100644
--- a/inc/media.php
+++ b/inc/media.php
@@ -268,7 +268,7 @@ function media_upload_xhr($ns,$auth){
             'mime' => $mime,
             'ext'  => $ext),
         $ns.':'.$id,
-        (($_REQUEST['ow'] == 'true') ? true : false),
+        (($_REQUEST['ow'] == 'checked') ? true : false),
         $auth,
         'copy'
     );
@@ -1626,7 +1626,7 @@ function media_uploadform($ns, $auth, $fullscreen = false){
     $params = array('id'      => 'dw__upload',
                     'enctype' => 'multipart/form-data');
     if (!$fullscreen) {
-        $params['action'] = DOKU_BASE.'lib/exe/mediamanager.php?ns='.$ns;
+        $params['action'] = DOKU_BASE.'lib/exe/mediamanager.php';
     } else {
         $params['action'] = media_managerURL(array('tab_files' => 'files',
             'tab_details' => 'view'), '&');
diff --git a/lib/exe/ajax.php b/lib/exe/ajax.php
index d8754b87594e383a7163749a8d9f09e842e3c33c..7fcccd4d9d34fb2b0453ecdaaf57ed99c62710fa 100644
--- a/lib/exe/ajax.php
+++ b/lib/exe/ajax.php
@@ -268,15 +268,15 @@ function ajax_mediaupload(){
     $id = cleanID($id, false, true);
 
     if ($res) $result = array('success' => true,
-        'link' => media_managerURL(array('ns' => getNS($id), 'image' => $id), '&'),
-        'id' => $id);
+        'link' => media_managerURL(array('ns' => $NS, 'image' => $id), '&'),
+        'id' => $NS.':'.$id, 'ns' => $NS);
 
     if (!$result) {
         $error = '';
         if (isset($MSG)) {
             foreach($MSG as $msg) $error .= $msg['msg'];
         }
-        $result = array('error' => $msg['msg']);
+        $result = array('error' => $msg['msg'], 'ns' => $NS);
     }
     echo htmlspecialchars(json_encode($result), ENT_NOQUOTES);
 }
diff --git a/lib/plugins/acl/script.js b/lib/plugins/acl/script.js
index 5b6c9ce1b73debcf4b5fad69e4147e166248384f..a3dbbe0d22088a9a2642212dba36ac5fa86e71f6 100644
--- a/lib/plugins/acl/script.js
+++ b/lib/plugins/acl/script.js
@@ -45,7 +45,7 @@ acl = {
                 'acl_t':    frm.elements['acl_t'].value,
                 'acl_w':    frm.elements['acl_w'].value,
                 'sectok':   frm.elements['sectok'].value,
-                'ajax':     'info',
+                'ajax':     'info'
             }
         );
         return false;
diff --git a/lib/scripts/cookie.js b/lib/scripts/cookie.js
index f7d9b5ffb6ce3cecce9e72a07a577d5c2b490bee..e7ba620c7c4c8f0a072d8a2249df20ee8e94f76e 100644
--- a/lib/scripts/cookie.js
+++ b/lib/scripts/cookie.js
@@ -72,7 +72,7 @@ DokuCookie = {
             expires: expires_,
             path: path_,
             domain: domain_,
-            secure: secure_,
+            secure: secure_
         };
 
         jQuery.cookie(name, value, params);
diff --git a/lib/scripts/fileuploaderextended.js b/lib/scripts/fileuploaderextended.js
index 005268bbb865aa39360f10f714ba04cda7a49109..ed631a9eaa04328fc8be1b3a446e6830546e6b75 100644
--- a/lib/scripts/fileuploaderextended.js
+++ b/lib/scripts/fileuploaderextended.js
@@ -80,7 +80,7 @@ qq.FileUploaderExtended = function(o){
                 '<div class="qq-upload-button">' + LANG.media_select + '</div>' +
                 '<div class="qq-upload-list"></div>' +
                 '<div><input class="button" type="submit" value="' + LANG.media_upload_btn + '" id="mediamanager__upload_button">' +
-                '<label class="check" for="dw__ow"><input id="dw__ow" type="checkbox" value="1" name="ow"><span>' + LANG.media_overwrt + '</span></label>' +
+                '<label class="check"><input class="dw__ow" type="checkbox" value="1" name="ow"><span>' + LANG.media_overwrt + '</span></label>' +
                 '</div>' +
              '</div>',
 
@@ -163,7 +163,7 @@ qq.extend(qq.FileUploaderExtended.prototype, {
         qq.removeClass(fileElement, 'qq-upload-file-hidden');
         qq.remove(nameInput);
         jQuery('.qq-upload-button, #mediamanager__upload_button').remove();
-        jQuery('#dw__ow').parent().hide();
+        jQuery('.dw__ow').parent().hide();
         jQuery('.qq-upload-drop-area').remove();
 
         if (result.success){
@@ -178,8 +178,12 @@ qq.extend(qq.FileUploaderExtended.prototype, {
         }
 
         if (document.getElementById('media__content') && !document.getElementById('mediamanager__done_form')) {
-            var button = '<form method="post" action="' + document.location +'" id="mediamanager__done_form"><div>';
-            button += '<input class="button" type="submit" value="' + LANG.media_done_btn + '"></div></form>'
+            var action = document.location.href;
+            var i = action.indexOf('?');
+            if (i) action = action.substr(0, i);
+            var button = '<form method="post" action="' + action + '" id="mediamanager__done_form"><div>';
+            button += '<input type="hidden" value="' + result.ns + '" name="ns">';
+            button += '<input class="button" type="submit" value="' + LANG.media_done_btn + '"></div></form>';
             jQuery('#mediamanager__uploader').append(button);
         }
     }
@@ -232,8 +236,10 @@ qq.extend(qq.UploadHandlerForm.prototype, {
         var nameInput = qq.toElement('<input name="mediaid" value="' + fileName + '" type="text">');
         form.appendChild(nameInput);
 
-        var owCheckbox = document.getElementById('dw__ow').cloneNode(true);
-        form.appendChild(owCheckbox);
+	    var checked = jQuery('.dw__ow').attr('checked');
+        var owCheckbox = jQuery('.dw__ow').clone();
+    	owCheckbox.attr('checked', checked);
+        jQuery(form).append(owCheckbox);
 
         var self = this;
         this._attachLoadEvent(iframe, function(){
@@ -311,7 +317,7 @@ qq.extend(qq.UploadHandlerXhr.prototype, {
         // build query string
         params = params || {};
         params['qqfile'] = name;
-        params['ow'] = document.getElementById('dw__ow').checked;
+        params['ow'] = jQuery('.dw__ow').attr('checked');
         var queryString = qq.obj2url(params, this._options.action);
 
         xhr.open("POST", queryString, true);
diff --git a/lib/scripts/media.js b/lib/scripts/media.js
index 997321a65441004617287f290c30e7e10f0759fc..f345c3786657c752945e048f141c4382539aa289 100644
--- a/lib/scripts/media.js
+++ b/lib/scripts/media.js
@@ -274,8 +274,6 @@ var dw_mediamanager = {
         if (document.getElementById('media__content')) {
             //popup
             $content = jQuery('#media__content');
-            $content.html('<img src="' + DOKU_BASE + 'lib/images/loading.gif" alt="..." class="load" />');
-
         } else {
             //fullscreen media manager
             $content = jQuery('#mediamanager__layout_list');
@@ -288,8 +286,6 @@ var dw_mediamanager = {
                 });
                 $link.addClass('selected');
             }
-
-            jQuery('.scroll-container', $content).html('<img src="' + DOKU_BASE + 'lib/images/loading.gif" alt="..." class="load" />');
         }
 
         params = '';
@@ -309,6 +305,14 @@ var dw_mediamanager = {
         // fetch the subtree
         dw_mediamanager.update_content($content, params);
 
+        if (document.getElementById('media__content')) {
+            //popup
+            $content = jQuery('#media__content');
+            $content.html('<img src="' + DOKU_BASE + 'lib/images/loading.gif" alt="..." class="load" />');
+        } else {
+            //fullscreen media manager
+            jQuery('.scroll-container', $content).html('<img src="' + DOKU_BASE + 'lib/images/loading.gif" alt="..." class="load" />');
+        }
     },
 
      /**
@@ -381,12 +385,6 @@ var dw_mediamanager = {
         if ($link[0].id == 'mediamanager__btn_restore' && !confirm(LANG['restore_confirm'])) return false;
 
         $content = jQuery('#mediamanager__layout_detail');
-        if (jQuery('.scroll-container', $content).length) {
-            jQuery('.scroll-container', $content).html('<img src="' + DOKU_BASE + 'lib/images/loading.gif" alt="..." class="load" />');
-        } else {
-            jQuery($content).html('<img src="' + DOKU_BASE + 'lib/images/loading.gif" alt="..." class="load" />');
-        }
-
         params = '';
 
         if ($link[0].search) {
@@ -399,6 +397,12 @@ var dw_mediamanager = {
 
         update_list = ($link[0].id == 'mediamanager__btn_delete' || $link[0].id == 'mediamanager__btn_restore');
         dw_mediamanager.update_content($content, params, update_list);
+
+        if (jQuery('.scroll-container', $content).length) {
+            jQuery('.scroll-container', $content).html('<img src="' + DOKU_BASE + 'lib/images/loading.gif" alt="..." class="load" />');
+        } else {
+            jQuery($content).html('<img src="' + DOKU_BASE + 'lib/images/loading.gif" alt="..." class="load" />');
+        }
     },
 
     update_content: function ($content, params, update_list) {
@@ -427,9 +431,8 @@ var dw_mediamanager = {
                     $link1 = jQuery('a.files');
                     params1 = $link1[0].search.substr(1)+'&call=medialist';
                     $content1 = jQuery('#mediamanager__layout_list');
-                    jQuery('.scroll-container', $content1).html('<img src="' + DOKU_BASE + 'lib/images/loading.gif" alt="..." class="load" />');
-
                     dw_mediamanager.update_content($content1, params1);
+                    jQuery('.scroll-container', $content1).html('<img src="' + DOKU_BASE + 'lib/images/loading.gif" alt="..." class="load" />');
                 }
             },
             'html'
@@ -552,11 +555,11 @@ var dw_mediamanager = {
         $label.append($select);
         $form.append($label);
 
-	// for IE
-	var select = document.getElementById('mediamanager__difftype');
-	select.options[0].text = LANG.media_diff_both;
-	select.options[1].text = LANG.media_diff_opacity;
-	select.options[2].text = LANG.media_diff_portions;
+    	// for IE
+    	var select = document.getElementById('mediamanager__difftype');
+    	select.options[0].text = LANG.media_diff_both;
+    	select.options[1].text = LANG.media_diff_opacity;
+    	select.options[2].text = LANG.media_diff_portions;
     },
 
     /**
diff --git a/lib/tpl/default/_fileuploader.css b/lib/tpl/default/_fileuploader.css
index 0e53f818793535f87e7df2acb5670eefe28d21b5..9e60393a0573e0b4ece85c00633cfe45726a86b4 100644
--- a/lib/tpl/default/_fileuploader.css
+++ b/lib/tpl/default/_fileuploader.css
@@ -8,7 +8,6 @@
     border: 1px solid __border__;
     color: __text__;
     background-color: __background__;
-    vertical-align: middle;
     text-decoration: none;
     font-size: 100%;
     cursor: pointer;
@@ -18,6 +17,11 @@
     background:  __background__ url(images/buttonshadow.png) repeat-x bottom;
 }
 
+* html .qq-upload-button,
+*+html .qq-upload-button {
+    display: inline;
+}
+
 .qq-upload-button-focus {
     outline: 1px dotted black;
 }
@@ -84,8 +88,9 @@
     padding-left: 10px;
 }
 
-.qq-uploader #dw__ow {
-    margin: 10px 3px -5px 10px;
+.qq-uploader .dw__ow {
+    margin-left: 10px;
+    margin-right: 3px;
 }
 
 .qq-uploader .check {
@@ -93,7 +98,6 @@
 }
 
 .qq-uploader #mediamanager__upload_button {
-    margin-top: -5px;
     margin-bottom: 10px;
 }
 
diff --git a/lib/tpl/default/mediamanager.css b/lib/tpl/default/mediamanager.css
index ad371ee3d7e13ea39dde09e807b4cd3ff0a4449f..245bb555070f0e993e3b5c85a64f6727993931aa 100644
--- a/lib/tpl/default/mediamanager.css
+++ b/lib/tpl/default/mediamanager.css
@@ -22,6 +22,7 @@
     padding: 0;
     margin: 0;
     text-align: left;
+    position: relative;
 }
 
 #mediamanager__layout .background-container {
@@ -359,10 +360,16 @@ form.meta textarea.edit {
 * html #mediamanager__diff_table li {
     display: inline;
 }
+
 *+html #mediamanager__diff_table li {
     display: inline;
 }
 
+/* For IE7 */
+*:first-child+html #mediamanager__diff_table li {
+    width: 45%;
+}
+
 /* Image diff */
 
 #mediamanager__layout dl.img_tags dd.highlighted{