Index: admin/media.php
===================================================================
--- admin/media.php	(revision 1681)
+++ admin/media.php	(revision 1725)
@@ -91,5 +91,5 @@
 	$dir =& $core->media->dir;
 	if  (!$core_media_writable) {
-		throw new Exception('you do not have sufficient permissions to write to this folder: ');
+//		throw new Exception('you do not have sufficient permissions to write to this folder: ');
 	}
 } catch (Exception $e) {
@@ -262,4 +262,8 @@
 	);
 
+if (!$core_media_writable) {
+	dcPage::warning(__('You do not have sufficient permissions to write to this folder.'));
+}
+
 if (!empty($_GET['mkdok'])) {
 	dcPage::success(__('Directory has been successfully created.'));
@@ -343,5 +347,5 @@
 {
 	echo 
-	'<h3>'.sprintf(__('In %s:'),($d == '' ? '“'.__('Media manager').'”' : '“'.$d.'”')).'</h3>'.
+	'<h3 class="hidden">'.sprintf(__('In %s:'),($d == '' ? '“'.__('Media manager').'”' : '“'.$d.'”')).'</h3>'.
 	'<div class="media-action-box">';
 	
@@ -393,19 +397,41 @@
 	'</div>'.
 	'</div>';
-
-	echo
-	'<div class="media-action-box">'.
-	'<form action="'.html::escapeURL($page_url).'" method="post">'.
-	'<div id="new-dir-f">'.
-	'<h4>'.__('Create new directory').'</h4>'.
-	$core->formNonce().
-	'<p><label for="newdir">'.__('Directory Name:').'</label>'.
-	form::field(array('newdir','newdir'),35,255).'</p>'.
-	'<p><input type="submit" value="'.__('Create').'" />'.
-	form::hidden(array('d'),html::escapeHTML($d)).'</p>'.
-	'</div>'.
-	'</form>'.
-	'</div>';
-	}
+}
+
+$core_media_archivable = $core->auth->check('media_admin',$core->blog->id) && 
+	!(count($items) == 0 || (count($items) == 1 && $items[0]->parent));
+
+if ($core_media_writable || $core_media_archivable) {
+
+	echo '<div class="media-action-box">';
+
+	# Create directory
+	if ($core_media_writable)
+	{
+		echo
+		'<form action="'.html::escapeURL($page_url).'" method="post">'.
+		'<div id="new-dir-f">'.
+		'<h4>'.__('Create new directory').'</h4>'.
+		$core->formNonce().
+		'<p><label for="newdir">'.__('Directory Name:').'</label>'.
+		form::field(array('newdir','newdir'),35,255).'</p>'.
+		'<p><input type="submit" value="'.__('Create').'" />'.
+		form::hidden(array('d'),html::escapeHTML($d)).'</p>'.
+		'</div>'.
+		'</form>';
+	}
+
+	# Get zip directory
+	if ($core_media_archivable)
+	{
+		echo
+		'<h4>'.__('Backup content').'</h4>'.
+		'<p>'.__('Compress this directory with its content as a zip file and download it.').'</p>'.
+		'<p><a class="submit" href="'.html::escapeURL($page_url).'&amp;zipdl=1">'.
+		__('Download').'</a></p>';
+	}
+
+	echo '</div>';
+}
 
 # Empty remove form (for javascript actions)
@@ -419,17 +445,4 @@
 '</form>';
 
-# Get zip directory
-if ($core->auth->check('media_admin',$core->blog->id) && 
-	!(count($items) == 0 || (count($items) == 1 && $items[0]->parent)))
-{
-	echo
-	'<div class="media-action-box">'.
-	'<h4>'.__('Backup content').'</h4>'.
-	'<p>'.__('Compress this directory with its content as a zip file and download it.').'</p>'.
-	'<p><a class="submit" href="'.html::escapeURL($page_url).'&amp;zipdl=1">'.
-	__('Download').'</a></p>'.
-	'</div>';
-}
-
 call_user_func($close_f);
 
Index: admin/style/default.css
===================================================================
--- admin/style/default.css	(revision 1698)
+++ admin/style/default.css	(revision 1725)
@@ -797,5 +797,5 @@
 	border: none;
 }
-.media-item, .media-action-box {
+.media-item {
 	position: relative;
 	border: 1px solid #ccc;
@@ -806,4 +806,18 @@
 	vertical-align: top;
 	min-height: 120px
+}
+.media-action-box {
+	position: relative;
+	margin: 1em 3em 1em;
+	display: inline-block;
+	vertical-align: top;
+	min-height: 120px
+}
+.media-action-box h4 {
+	font-size: 1em;
+	text-transform: uppercase;
+	font-weight: bold;
+	color: #333;
+	margin-top: 2em;
 }
 a.media-icon {
@@ -1169,10 +1183,10 @@
 }
 /* ------------------------------------------------------------------ messages */
-.error, .message, .static-msg, .static-msg, .success {
+.error, .message, .static-msg, .success, .warning-msg {
 	padding: 1em 0.5em 0.5em 48px;
 	margin-bottom: 1em;
 	border-radius: 8px;
 }
-p.error, p.message, p.static-msg, p.success {
+p.error, p.message, p.static-msg, p.success, p.warning-msg {
 	padding-top: 1em;
 	padding-bottom: 1em;
@@ -1190,8 +1204,13 @@
 	color: #000;
 }
+.warning-msg {
+	background: #ffd url(msg-warning.png) no-repeat .7em .7em;
+	color: #666;
+	border: 1px solid #f0c020;
+}
 .message a, .static-msg a {
 	color: #fff;
 }
-.success a {
+.success a, .warning-msg a {
 	color: #666;
 }
Index: inc/admin/lib.dc.page.php
===================================================================
--- inc/admin/lib.dc.page.php	(revision 1718)
+++ inc/admin/lib.dc.page.php	(revision 1725)
@@ -330,4 +330,9 @@
 	{
 		self::message($msg,$timestamp,$div,$echo,"success");
+	}
+
+	public static function warning($msg,$timestamp=true,$div=false,$echo=true)
+	{
+		self::message($msg,$timestamp,$div,$echo,"warning-msg");
 	}
 
Index: locales/fr/main.po
===================================================================
--- locales/fr/main.po	(revision 1718)
+++ locales/fr/main.po	(revision 1725)
@@ -3324,2 +3324,5 @@
 msgid "There is no writable root directory for the media manager. You should contact your administrator."
 msgstr "Il n'existe pas de répertoire principal accessible en écriture pour la médiathèque. Vous devriez contacter votre administrateur."
+
+msgid "You do not have sufficient permissions to write to this folder."
+msgstr "Vous n'avez pas les droits suffisants pour écrire dans ce répertoire."
