Index: admin/blog_theme.php
===================================================================
--- admin/blog_theme.php	(revision 2191)
+++ admin/blog_theme.php	(revision 2241)
@@ -15,362 +15,231 @@
 dcPage::check('admin');
 
-# Loading themes
+# -- "First time" settings setup --
+if ($core->blog->settings->system->store_theme_url === null) {
+	$core->blog->settings->system->put(
+		'store_theme_url', 'http://update.dotaddict.org/dc2/themes.xml', 'string', 'Themes XML feed location', true, true
+	);
+}
+
+# -- Loading themes --
 $core->themes = new dcThemes($core);
-$core->themes->loadModules($core->blog->themes_path,null);
-
-# Theme screenshot
-if (!empty($_GET['shot']) && $core->themes->moduleExists($_GET['shot']))
-{
-	if (empty($_GET['src'])) {
-		$f = $core->blog->themes_path.'/'.$_GET['shot'].'/screenshot.jpg';
-	} else {
-		$f = $core->blog->themes_path.'/'.$_GET['shot'].'/'.path::clean($_GET['src']);
-	}
-	
-	$f = path::real($f);
-	
+$core->themes->loadModules($core->blog->themes_path, null);
+
+# -- Page helper --
+$list = new adminThemesList(
+	$core->themes, 
+	$core->blog->themes_path,
+	$core->blog->settings->system->store_theme_url
+);
+$list::$distributed_modules = array(
+	'blueSilence',
+	'blowupConfig',
+	'customCSS',
+	'default',
+	'ductile'
+);
+
+# -- Theme screenshot --
+if (!empty($_GET['shot']) && $list->modules->moduleExists($_GET['shot'])) {
+
+	$f= path::real(empty($_GET['src']) ?
+		$core->blog->themes_path.'/'.$_GET['shot'].'/screenshot.jpg' :
+		$core->blog->themes_path.'/'.$_GET['shot'].'/'.path::clean($_GET['src'])
+	);
+
 	if (!file_exists($f)) {
 		$f = dirname(__FILE__).'/images/noscreenshot.png';
 	}
-	
-	http::cache(array_merge(array($f),get_included_files()));
-	
+
+	http::cache(array_merge(array($f), get_included_files()));
+
 	header('Content-Type: '.files::getMimeType($f));
 	header('Content-Length: '.filesize($f));
 	readfile($f);
-	
+
 	exit;
 }
 
-$can_install = $core->auth->isSuperAdmin();
-$is_writable = is_dir($core->blog->themes_path) && is_writable($core->blog->themes_path);
-$default_tab = 'themes-list';
-
-# Selecting theme
-if (!empty($_POST['theme']) && !empty($_POST['select']) && empty($_REQUEST['conf']))
-{
-	$core->blog->settings->addNamespace('system');
-	$core->blog->settings->system->put('theme',$_POST['theme']);
-	$core->blog->triggerBlog();
-	$theme = $core->themes->getModules($_POST['theme']);
-	dcPage::addSuccessNotice(sprintf(
-		__('Current theme has been successfully changed to "%s".'),
-		html::escapeHTML($theme['name']))
+# -- Display module configuration page --
+if ($list->setConfiguration($core->blog->settings->system->theme)) {
+
+	# Get content before page headers
+	include $list->includeConfiguration();
+
+	# Gather content
+	$list->getConfiguration();
+
+	# Display page
+	dcPage::open(__('Blog appearance'),
+		dcPage::jsPageTabs().
+		dcPage::jsColorPicker().
+
+		# --BEHAVIOR-- themesToolsHeaders
+		$core->callBehavior('themesToolsHeaders', $core, true),
+
+		dcPage::breadcrumb(
+			array(
+				html::escapeHTML($core->blog->name) => '',
+				__('Blog appearance') => $list->getURL('',false),
+				'<span class="page-title">'.__('Theme configuration').'</span>' => ''
+			))
 	);
 
-	http::redirect('blog_theme.php');
-}
-
-if ($can_install && !empty($_POST['theme']) && !empty($_POST['remove']) && empty($_REQUEST['conf']))
-{
-	try
-	{
-		if ($_POST['theme'] == 'default') {
-			throw new Exception(__('You can\'t remove default theme.'));
-		}
-		
-		if (!$core->themes->moduleExists($_POST['theme'])) {
-			throw new Exception(__('Theme does not exist.'));
-		}
-		
-		$theme = $core->themes->getModules($_POST['theme']);
-		
-		# --BEHAVIOR-- themeBeforeDelete
-		$core->callBehavior('themeBeforeDelete',$theme);
-		
-		$core->themes->deleteModule($_POST['theme']);
-		
-		# --BEHAVIOR-- themeAfterDelete
-		$core->callBehavior('themeAfterDelete',$theme);
-		
-		http::redirect('blog_theme.php');
-	}
-	catch (Exception $e)
-	{
-		$core->error->add($e->getMessage());
-	}
-}
-
-# Theme upload
-if ($can_install && $is_writable && ((!empty($_POST['upload_pkg']) && !empty($_FILES['pkg_file'])) ||
-	(!empty($_POST['fetch_pkg']) && !empty($_POST['pkg_url']))))
-{
-	try
-	{
-		if (empty($_POST['your_pwd']) || !$core->auth->checkPassword(crypt::hmac(DC_MASTER_KEY,$_POST['your_pwd']))) {
-			throw new Exception(__('Password verification failed'));
-		}
-		
-		if (!empty($_POST['upload_pkg']))
-		{
-			files::uploadStatus($_FILES['pkg_file']);
-			
-			$dest = $core->blog->themes_path.'/'.$_FILES['pkg_file']['name'];
-			if (!move_uploaded_file($_FILES['pkg_file']['tmp_name'],$dest)) {
-				throw new Exception(__('Unable to move uploaded file.'));
-			}
-		}
-		else
-		{
-			$url = urldecode($_POST['pkg_url']);
-			$dest = $core->blog->themes_path.'/'.basename($url);
-			
-			try
-			{
-				$client = netHttp::initClient($url,$path);
-				$client->setUserAgent('Dotclear - http://www.dotclear.org/');
-				$client->useGzip(false);
-				$client->setPersistReferers(false);
-				$client->setOutput($dest);
-				$client->get($path);
-			}
-			catch( Exception $e)
-			{
-				throw new Exception(__('An error occurred while downloading the file.'));
-			}
-			
-			unset($client);
-		}
-		
-		$ret_code = dcModules::installPackage($dest,$core->themes);
-		if ($ret_code == 2) {
-			dcPage::addSuccessNotice(__('Theme has been successfully upgraded.'));
-		} else {
-			dcPage::addSuccessNotice(__('Theme has been successfully installed.'));
-		}
-		http::redirect('blog_theme.php');
-	}
-	catch (Exception $e)
-	{
-		$core->error->add($e->getMessage());
-		$default_tab = 'add-theme';
-	}
-}
-
-$theme_conf_mode = false;
-if (!empty($_REQUEST['conf']))
-{
-	$theme_conf_file = path::real($core->blog->themes_path.'/'.$core->blog->settings->system->theme).'/_config.php';
-	if (file_exists($theme_conf_file)) {
-		$theme_conf_mode = true;
-	}
-}
-
-function display_theme_details($id,$details,$current)
-{
-	global $core;
-	
-	$screenshot = 'images/noscreenshot.png';
-	if (file_exists($core->blog->themes_path.'/'.$id.'/screenshot.jpg')) {
-		$screenshot = 'blog_theme.php?shot='.rawurlencode($id);
-	}
-	
-	$radio_id = 'theme_'.html::escapeHTML($id);
-	if (preg_match('#^http(s)?://#',$core->blog->settings->system->themes_url)) {
-		$theme_url = http::concatURL($core->blog->settings->system->themes_url,'/'.$id);
-	} else {
-		$theme_url = http::concatURL($core->blog->url,$core->blog->settings->system->themes_url.'/'.$id);
-	}
-	$has_conf = file_exists(path::real($core->blog->themes_path.'/'.$id).'/_config.php');
-	$has_css = file_exists(path::real($core->blog->themes_path.'/'.$id).'/style.css');
-	$parent = $core->themes->moduleInfo($id,'parent');
-	$has_parent = (boolean)$parent;
-	if ($has_parent) {
-		$is_parent_present = $core->themes->moduleExists($parent);
-	}
-	
-	$res =
-	'<div class="theme-details'.($current ? ' current-theme' : '').'">'.
-	'<div class="theme-shot"><img src="'.$screenshot.'" alt="" /></div>'.
-	'<div class="theme-info">'.
-		'<h4>'.form::radio(array('theme',$radio_id),html::escapeHTML($id),$current,'','',($has_parent && !$is_parent_present)).' '.
-		'<label class="classic" for="'.$radio_id.'">'.
-		html::escapeHTML($details['name']).'</label></h4>'.
-		'<p><span class="theme-desc">'.html::escapeHTML($details['desc']).'</span> '.
-		'<span class="theme-author">'.sprintf(__('by %s'),html::escapeHTML($details['author'])).'</span> '.
-		'<span class="theme-version">'.sprintf(__('version %s'),html::escapeHTML($details['version'])).'</span> ';
-		if ($has_parent) {
-			if ($is_parent_present) {
-				$res .= '<span class="theme-parent-ok">'.sprintf(__('(built on "%s")'),html::escapeHTML($parent)).'</span> ';
-			} else {
-				$res .= '<span class="theme-parent-missing">'.sprintf(__('(requires "%s")'),html::escapeHTML($parent)).'</span> ';
-			}
-		}
-		if ($has_css) {
-			$res .= '<span class="theme-css"><a href="'.$theme_url.'/style.css">'.__('Stylesheet').'</a></span>';
-		}
-		$res .= '</p>';
-	$res .=
-	'</div>'.
-	'<div class="theme-actions">';
-		if ($current && $has_conf) {
-			$res .= '<p><a href="blog_theme.php?conf=1" class="button">'.__('Configure theme').'</a></p>';
-		}
-		if ($current) {
-			# --BEHAVIOR-- adminCurrentThemeDetails
-			$res .= $core->callBehavior('adminCurrentThemeDetails',$core,$id,$details);
-		}
-	$res .=
-	'</div>'.
-	'</div>';
-	
-	return $res;
-}
-
-if (!$theme_conf_mode)
-{
-	$breadcrumb = dcPage::breadcrumb(
+	# Display previously gathered content
+	$list->displayConfiguration();
+
+	dcPage::close();
+
+	# Stop reading code here
+	return;
+}
+
+# -- Execute actions --
+try {
+	$list->doActions('themes');
+}
+catch (Exception $e) {
+	$core->error->add($e->getMessage());
+}
+
+# -- Page header --
+dcPage::open(__('Themes management'),
+	dcPage::jsLoad('js/_blog_theme.js').
+	dcPage::jsPageTabs().
+	dcPage::jsColorPicker().
+
+	# --BEHAVIOR-- themesToolsHeaders
+	$core->callBehavior('themesToolsHeaders', $core, false),
+
+	dcPage::breadcrumb(
 		array(
 			html::escapeHTML($core->blog->name) => '',
-			__('Blog appearance') => ''
-		));
-} else {
-	$breadcrumb = dcPage::breadcrumb(
-		array(
-			html::escapeHTML($core->blog->name) => '',
-			__('Blog appearance') => 'blog_theme.php',
-			__('Theme configuration') => ''
-		));
-}
-
-dcPage::open(__('Blog appearance'),
-	(!$theme_conf_mode ? dcPage::jsLoad('js/_blog_theme.js') : '').
-	dcPage::jsPageTabs($default_tab).
-	dcPage::jsColorPicker(),
-	$breadcrumb
+			'<span class="page-title">'.__('Blog appearance').'</span>' => ''
+		))
 );
 
-if (!$theme_conf_mode)
-{
-	if (!empty($_GET['upd'])) {
-		dcPage::success(__('Theme has been successfully changed.'));
+# -- Display modules lists --
+if ($core->auth->isSuperAdmin() && $list->isWritablePath()) {
+
+	# Updated modules from repo
+	$modules = $list->store->get(true);
+	if (!empty($modules)) {
+		echo 
+		'<div class="multi-part" id="update" title="'.html::escapeHTML(__('Update themes')).'">'.
+		'<h3>'.html::escapeHTML(__('Update themes')).'</h3>'.
+		'<p>'.sprintf(
+			__('There is one theme to update available from repository.', 'There are %s themes to update available from repository.', count($modules)),
+			count($modules)
+		).'</p>';
+
+		$list
+			->setList('theme-update')
+			->setTab('themes')
+			->setModules($modules)
+			->displayModules(
+				/*cols */		array('sshot', 'name', 'desc', 'author', 'version', 'current_version', 'parent'),
+				/* actions */	array('update', 'delete')
+			);
+
+		echo
+		'<p class="info vertical-separator">'.sprintf(
+			__("Visit %s repository, the resources center for Dotclear."),
+			'<a href="http://dotaddict.org/dc2/themes">Dotaddict</a>'
+			).
+		'</p>'.
+
+		'</div>';
 	}
-	
-	if (!empty($_GET['added'])) {
-		dcPage::success(($_GET['added'] == 2 ? __('Theme has been successfully upgraded') : __('Theme has been successfully installed.')));
+}
+
+# Activated modules
+$modules = $list->modules->getModules();
+if (!empty($modules)) {
+
+	echo
+	'<div class="multi-part" id="themes" title="'.__('Installed themes').'">'.
+	'<h3>'.__('Installed themes').'</h3>'.
+	'<p>'.__('You can configure and manage installed themes from this list.').'</p>';
+
+	$list
+		->setList('theme-activate')
+		->setTab('themes')
+		->setModules($modules)
+		->displayModules(
+			/* cols */		array('sshot', 'distrib', 'name', 'config', 'desc', 'author', 'version', 'parent'),
+			/* actions */	array('select', 'behavior', 'deactivate', 'delete')
+		);
+
+	echo 
+	'</div>';
+}
+
+# Deactivated modules
+$modules = $list->modules->getDisabledModules();
+if (!empty($modules)) {
+
+	echo
+	'<div class="multi-part" id="deactivate" title="'.__('Deactivated themes').'">'.
+	'<h3>'.__('Deactivated themes').'</h3>'.
+	'<p>'.__('Deactivated themes are installed but not usable. You can activate them from here.').'</p>';
+
+	$list
+		->setList('theme-deactivate')
+		->setTab('themes')
+		->setModules($modules)
+		->displayModules(
+			/* cols */		array('name', 'distrib'),
+			/* actions */	array('activate', 'delete')
+		);
+
+	echo 
+	'</div>';
+}
+
+if ($core->auth->isSuperAdmin() && $list->isWritablePath()) {
+
+	# New modules from repo
+	$search = $list->getSearch();
+	$modules = $search ? $list->store->search($search) : $list->store->get();
+
+	if (!empty($search) || !empty($modules)) {
+		echo
+		'<div class="multi-part" id="new" title="'.__('Add themes').'">'.
+		'<h3>'.__('Add themes from repository').'</h3>'.
+		'<p>'.__('Search and install themes directly from repository.').'</p>';
+
+		$list
+			->setList('theme-new')
+			->setTab('new')
+			->setModules($modules)
+			->displaySearch()
+			->displayIndex()
+			->displayModules(
+				/* cols */		array('expander', 'sshot', 'name', 'score', 'config', 'desc', 'author', 'version', 'parent', 'details', 'support'),
+				/* actions */	array('install'),
+				/* nav limit */	true
+			);
+
+		echo
+		'<p class="info vertical-separator">'.sprintf(
+			__("Visit %s repository, the resources center for Dotclear."),
+			'<a href="http://dotaddict.org/dc2/themes">Dotaddict</a>'
+			).
+		'</p>'.
+
+		'</div>';
 	}
-	
-	if (!empty($_GET['del'])) {
-		dcPage::success(__('Theme has been successfully deleted.'));
-	}
-	
-	# Themes list
-	echo '<div class="multi-part" id="themes-list" title="'.__('Themes').'">'.
-	'<h3>'.__('Available themes in your installation').'</h3>';
-	
-	$themes = $core->themes->getModules();
-	if (isset($themes[$core->blog->settings->system->theme])) {
-		echo '<p>'.sprintf(__('You are currently using <strong>%s</strong>'),$themes[$core->blog->settings->system->theme]['name']).'.</p>';
-	}
-	
-	echo
-	'<form action="blog_theme.php" method="post" id="themes-form">'.
-	'<div id="themes">';
-	
-	if (isset($themes[$core->blog->settings->system->theme])) {
-		echo display_theme_details($core->blog->settings->system->theme,$themes[$core->blog->settings->system->theme],true);
-	}
-	
-	foreach ($themes as $k => $v)
-	{
-		if ($core->blog->settings->system->theme == $k) { // Current theme
-			continue;
-		}
-		echo display_theme_details($k,$v,false);
-	}
-	
-	echo '</div>';
-	
-	echo
-	'<div id="themes-actions">'.
-	
-	'<p>'.$core->formNonce().'<input type="submit" name="select" value="'.__('Use selected theme').'" /> ';	
-	if ($can_install) {
-		echo ' <input type="submit" class="delete" name="remove" value="'.__('Delete selected theme').'" />';
-	}
-	echo '</p>'.
-	
-	'</div>'.
-	'</form>'.
+
+	# Add a new plugin
+	echo
+	'<div class="multi-part" id="addtheme" title="'.__('Install or upgrade manually').'">'.
+	'<h3>'.__('Add themes from a package').'</h3>'.
+	'<p>'.__('You can install themes by uploading or downloading zip files.').'</p>';
+
+	$list->displayManualForm();
+
+	echo
 	'</div>';
-	
-	# Add a new theme
-	if ($can_install)
-	{
-		echo
-		'<div class="multi-part clear" id="add-theme" title="'.__('Install or upgrade a theme').'">'.
-		'<h3>'.__('Add themes to your installation').'</h3>'.
-		'<p class="form-note info">'.sprintf(__('You can find additional themes for your blog on %s.'),
-		'<a href="http://themes.dotaddict.org/galerie-dc2/">Dotaddict</a>').'</p>';
-		
-		if ($is_writable)
-		{
-			echo '<p>'.__('You can also install themes by uploading or downloading zip files.').'</p>';
-			
-			# 'Upload theme' form
-			echo
-			'<form method="post" action="blog_theme.php" id="uploadpkg" enctype="multipart/form-data" class="fieldset">'.
-			'<h4>'.__('Upload a zip file').'</h4>'.
-			'<p class="field"><label for="pkg_file" class="classic required"><abbr title="'.__('Required field').'">*</abbr> '.__('Theme zip file:').'</label> '.
-			'<input type="file" name="pkg_file" id="pkg_file" /></p>'.
-			'<p class="field"><label for="your_pwd1" class="classic required"><abbr title="'.__('Required field').'">*</abbr> '.__('Your password:').'</label> '.
-			form::password(array('your_pwd','your_pwd1'),20,255).'</p>'.
-			'<p><input type="submit" name="upload_pkg" value="'.__('Upload theme').'" />'.
-			$core->formNonce().'</p>'.
-			'</form>';
-			
-			# 'Fetch theme' form
-			echo
-			'<form method="post" action="blog_theme.php" id="fetchpkg" class="fieldset">'.
-			'<h4>'.__('Download a zip file').'</h4>'.
-			'<p class="field"><label for="pkg_url" class="classic required"><abbr title="'.__('Required field').'">*</abbr> '.__('Theme zip file URL:').'</label> '.
-			form::field(array('pkg_url','pkg_url'),40,255).'</p>'.
-			'<p class="field"><label for="your_pwd2" class="classic required"><abbr title="'.__('Required field').'">*</abbr> '.__('Your password:').'</label> '.
-			form::password(array('your_pwd','your_pwd2'),20,255).'</p>'.
-			'<p><input type="submit" name="fetch_pkg" value="'.__('Download theme').'" />'.
-			$core->formNonce().'</p>'.
-			'</form>';
-		}
-		else
-		{
-			echo
-			'<p class="static-msg">'.
-			__('To enable this function, please give write access to your themes directory.').
-			'</p>';
-		}
-		echo '</div>';
-	}
-}
-else
-{
-	$theme_name = $core->themes->moduleInfo($core->blog->settings->system->theme,'name');
-	$core->themes->loadModuleL10Nresources($core->blog->settings->system->theme,$_lang);
-
-	echo
-	'<p><a class="back" href="blog_theme.php">'.__('Back to Blog appearance').'</a></p>';
-	
-	try
-	{
-		# Let theme configuration set their own form(s) if required
-		$standalone_config = (boolean) $core->themes->moduleInfo($core->blog->settings->system->theme,'standalone_config');
-
-		if (!$standalone_config)
-			echo '<form id="theme_config" action="blog_theme.php?conf=1" method="post" enctype="multipart/form-data">';
-
-		include $theme_conf_file;
-
-		if (!$standalone_config)
-			echo
-			'<p class="clear"><input type="submit" value="'.__('Save').'" />'.
-			$core->formNonce().'</p>'.
-			'</form>';
-
-	}
-	catch (Exception $e)
-	{
-		echo '<div class="error"><p>'.$e->getMessage().'</p></div>';
-	}
 }
 
 dcPage::close();
-?>
Index: admin/categories.php
===================================================================
--- admin/categories.php	(revision 2256)
+++ admin/categories.php	(revision 2189)
@@ -78,6 +78,5 @@
 	}
 
-	dcPage::addSuccessNotice(__('Categories have been successfully reordered.'));
-	http::redirect('categories.php');
+	http::redirect('categories.php?reord=1');
 }
 
@@ -88,5 +87,5 @@
 	{
 		$core->blog->resetCategoriesOrder();
-		dcPage::addSuccessNotice(__('Categories order has been successfully reset.'));
+		dcPage::addSuccessNotice(__('Categories have been successfully reordered.'));
 		http::redirect('categories.php');
 	}
Index: admin/comment.php
===================================================================
--- admin/comment.php	(revision 2256)
+++ admin/comment.php	(revision 2166)
@@ -57,6 +57,5 @@
 		$core->callBehavior('adminAfterCommentCreate',$cur,$comment_id);
 		
-		dcPage::addSuccessNotice(__('Comment has been successfully created.'));
-		http::redirect($core->getPostAdminURL($rs->post_type,$rs->post_id,false).'&co=1');
+		http::redirect($core->getPostAdminURL($rs->post_type,$rs->post_id,false).'&co=1&creaco=1');
 	} catch (Exception $e) {
 		$core->error->add($e->getMessage());
@@ -132,6 +131,5 @@
 			$core->callBehavior('adminAfterCommentUpdate',$cur,$comment_id);
 			
-			dcPage::addSuccessNotice(__('Comment has been successfully updated.'));
-			http::redirect('comment.php?id='.$comment_id);
+			http::redirect('comment.php?id='.$comment_id.'&upd=1');
 		}
 		catch (Exception $e)
@@ -148,7 +146,5 @@
 			
 			$core->blog->delComment($comment_id);
-			
-			dcPage::addSuccessNotice(__('Comment has been successfully deleted.'));
-			http::redirect($core->getPostAdminURL($rs->post_type,$rs->post_id).'&co=1',false);
+			http::redirect($core->getPostAdminURL($rs->post_type,$rs->post_id).'&co=1#c'.$comment_id,false);
 		} catch (Exception $e) {
 			$core->error->add($e->getMessage());
Index: admin/comments_actions.php
===================================================================
--- admin/comments_actions.php	(revision 2244)
+++ admin/comments_actions.php	(revision 2066)
@@ -16,20 +16,7 @@
 require dirname(__FILE__).'/../inc/admin/prepend.php';
 
-if (isset($_REQUEST['redir'])) {
-	$u = explode('?',$_REQUEST['redir']);
-	$uri = $u[0];
-	if (isset($u[1])) {
-		parse_str($u[1],$args);
-	}
-	$args['redir'] = $_REQUEST['redir'];
-} else {
-	$uri = 'comments.php';
-	$args=array();
-}
-
 dcPage::check('usage,contentadmin');
 
-$comments_actions_page = new dcCommentsActionsPage($core,$uri,$args);
-$comments_actions_page->setEnableRedirSelection(false);
+$comments_actions_page = new dcCommentsActionsPage($core,'comments.php');
 
 $comments_actions_page->process();
Index: admin/index.php
===================================================================
--- admin/index.php	(revision 2239)
+++ admin/index.php	(revision 2240)
@@ -76,4 +76,24 @@
 $favs = $core->favs->getUserFavorites();
 $core->favs->appendDashboardIcons($__dashboard_icons);
+
+# Check plugins and themes update from repository
+function dc_check_store_update($mod, $url, $img, $icon)
+{
+	$repo = new dcStore($mod, $url);
+	$upd = $repo->get(true);
+	if (!empty($upd)) {
+		$icon[0] .= '<br />'.sprintf(__('An update is available', '%s updates are available.', count($upd)),count($upd));
+		$icon[1] .= '#update';
+		$icon[2] = 'images/menu/'.$img.'-b-update.png';
+	}
+}
+if (isset($__dashboard_icons['plugins'])) {
+	dc_check_store_update($core->plugins, $core->blog->settings->system->store_plugin_url, 'plugins', $__dashboard_icons['plugins']);
+}
+if (isset($__dashboard_icons['blog_theme'])) {
+	$themes = new dcThemes($core);
+	$themes->loadModules($core->blog->themes_path, null);
+	dc_check_store_update($themes, $core->blog->settings->system->store_theme_url, 'blog-theme', $__dashboard_icons['blog_theme']);
+}
 
 # Latest news for dashboard
Index: admin/install/index.php
===================================================================
--- admin/install/index.php	(revision 2247)
+++ admin/install/index.php	(revision 2183)
@@ -211,5 +211,5 @@
 		$init_fav['new_post'] = array('new_post','New entry','post.php',
 			'images/menu/edit.png','images/menu/edit-b.png',
-			'usage,contentadmin',null,null);
+			'usage,contentadmin',null,'menu-new-post');
 		$init_fav['newpage'] = array('newpage','New page','plugin.php?p=pages&amp;act=page',
 			'index.php?pf=pages/icon-np.png','index.php?pf=pages/icon-np-big.png',
Index: admin/js/_blog_theme.js
===================================================================
--- admin/js/_blog_theme.js	(revision 2101)
+++ admin/js/_blog_theme.js	(revision 2195)
@@ -1,71 +1,13 @@
 $(function() {
-	$('#themes-actions').hide();
-	var submit_s = $('#themes-actions input[name=select]');
-	var submit_r = $('#themes-actions input[name=remove]');
-	
-	var details = $('#themes div.theme-details');
-	$('div.theme-actions',details).hide();
-	$('input:radio',details).hide();
-	$('div.theme-info span, div.theme-info a',details).hide();
-	details.removeClass('theme-details').addClass('theme-details-js');
-	
-	var themes_wrapper = $('<div id="themes-wrapper"></div>');
-	var theme_box = $('<div id="theme-box"><div</div>');
-	$('#themes').wrap(themes_wrapper).before(theme_box);
-	
-	details.each(function() {
-		var box = this;
-		var a = $(document.createElement('a'));
-		a.attr('href','#');
-		a.attr('title',$('>div h3>label',this).text());
-		$(box).wrap(a);
-		$(box).parent().click(function(event) {
-			update_box(box);
-			event.preventDefault();
-			return false;
-		});
+	$('.module-sshot').not('.current-theme .module-sshot').each(function(){
+		var bar = $('<div>').addClass('bloc-toggler');
+		$(this).after(
+		$(bar).toggleWithLegend($(this).parent().children('.toggle-bloc'),{
+			img_on_src: dotclear.img_plus_theme_src,
+			img_on_alt: dotclear.img_plus_theme_alt,
+			img_off_src: dotclear.img_minus_theme_src,
+			img_off_alt: dotclear.img_minus_theme_alt, 
+			legend_click: true
+		}));
 	});
-	
-	function update_box(e) {
-		theme_box.empty();
-		var img = $('div.theme-shot',e).clone();
-		var info = $('div.theme-info',e).clone();
-		
-		if ($(e).hasClass('current-theme')) {
-			var actions = $('div.theme-actions',e).clone();
-			actions.show();
-		} else {
-			var actions = $('<div class="theme-actions"></div>');
-			if (submit_s.length > 0  && !$('input:radio',info).attr('disabled')) {
-				var select = $('<a href="#" class="button">' + dotclear.msg.use_this_theme + '</a>');
-				select.addClass('select-button').click(function(){
-					submit_s.click();
-					return false;
-				});
-				actions.append(select).append('&nbsp;&nbsp;');
-			}
-			if (submit_r.length > 0 && $('input:radio',info).attr('id') != 'theme_default') {
-				var remove = $('<a href="#" class="button delete">' + dotclear.msg.remove_this_theme + '</a>');
-				remove.click(function() {
-					var t_name = $(this).parents('#theme-box').find('div.theme-info h3:first').text();
-					t_name = $.trim(t_name);
-					if (window.confirm(dotclear.msg.confirm_delete_theme.replace('%s',t_name))) {
-						submit_r.click();
-					}
-					return false;
-				});
-				actions.append(remove);
-			}
-		}
-		
-		$('input:radio',info).remove();
-		$('span, a',info).show();
-		
-		theme_box.append(img).append(info).append(actions);
-		details.removeClass('theme-selected');
-		$(e).addClass('theme-selected');
-		$('input:radio',e).prop('checked',true);
-	}
-	
-	update_box(details[0]);
 });
Index: admin/js/_plugins.js
===================================================================
--- admin/js/_plugins.js	(revision 0)
+++ admin/js/_plugins.js	(revision 2222)
@@ -1,6 +1,158 @@
+dotclear.moduleExpander = function(line) {
+        var td = line.firstChild;
+        
+        var img = document.createElement('img');
+        img.src = dotclear.img_plus_src;
+        img.alt = dotclear.img_plus_alt;
+        img.className = 'expand';
+        $(img).css('cursor','pointer');
+        img.line = line;
+        img.onclick = function() { dotclear.viewModuleContent(this,this.line); };
+        
+        td.insertBefore(img,td.firstChild);
+};
+
+dotclear.modulesExpander = function(line,lines) {
+        var td = line.firstChild;
+
+        var img = document.createElement('img');
+        img.src = dotclear.img_plus_src;
+        img.alt = dotclear.img_plus_alt;
+        img.className = 'expand';
+        $(img).css('cursor','pointer');
+        img.lines = lines;
+        img.onclick = function() { dotclear.viewModulesContent(this,this.lines); };
+
+        td.insertBefore(img,td.firstChild);
+};
+
+dotclear.viewModulesContent = function(img,lines) {
+        
+        action = 'toggle';
+
+        if (img.alt == dotclear.img_plus_alt) {
+                img.src = dotclear.img_minus_src;
+                img.alt = dotclear.img_minus_alt;
+                action = 'open';
+        } else {
+                img.src = dotclear.img_plus_src;
+                img.alt = dotclear.img_plus_alt;
+                action = 'close';
+        }
+        
+        lines.each(function() {
+                var td = this.firstChild;
+                dotclear.viewModuleContent(td.firstChild,td.firstChild.line,action);
+        });
+};
+
+dotclear.viewModuleContent = function(img,line,action) {
+
+        var action = action || 'toggle';
+		var cols = $('td',$(line)).length
+        var sp = line.id.split('_m_');
+		var listId=sp[0];
+		var moduleId= sp[1];
+
+        var tr = document.getElementById('pe'+moduleId);
+        
+		if ( !tr && ( action == 'toggle' || action == 'open' ) ) {
+                tr = document.createElement('tr');
+                tr.id = 'pe'+moduleId;
+
+                var td = document.createElement('td');
+                td.colSpan = cols;
+                td.className = 'expand';
+                tr.appendChild(td);
+                
+                img.src = dotclear.img_minus_src;
+                img.alt = dotclear.img_minus_alt;
+                
+                // Get post content
+                $.get('services.php',{f:'getModuleById', id: moduleId, list: listId},function(data) {
+                        var rsp = $(data).children('rsp')[0];
+                        
+                        if (rsp.attributes[0].value == 'ok') {
+                                var author = $(rsp).find('author').text();
+                                var details = $(rsp).find('details').text();
+                                var support = $(rsp).find('support').text();
+								var box = document.createElement('div');
+                                var bloc = document.createElement('ul');
+                                bloc.className = "mod-more";
+                                
+                                if (author) {
+                                        $(bloc).append($('<li class="module-author">'+dotclear.msg.module_author+' '+author+'</li>'));
+                                }
+                                if (details) {
+                                        var dd = '';
+                                        dd += '<a class="module-details" href="'+details+'">'+dotclear.msg.module_details+'</a>';
+                                        if (support) {
+                                                dd += ' - ';
+                                                dd += '<a class="module-support" href="'+support+'">'+dotclear.msg.module_support+'</a>';
+                                        }
+                                        $(bloc).append($('<li>'+dotclear.msg.module_help+' '+dd+'</li>'));
+                                }
+
+                                $(td).append($(box).addClass('two-boxes').append(bloc));
+                                
+                                var section = $(rsp).find('section').text();
+                                var tags = $(rsp).find('tags').text();
+                                
+								var boxb = document.createElement('div');
+                                var blocb = document.createElement('ul');
+                                blocb.className = "mod-more";
+                                
+                                if (section) {
+                                        $(blocb).append($('<li class="module-section">'+dotclear.msg.module_section+' '+section+'</li>'));
+                                }
+                                if (tags) {
+                                        $(blocb).append($('<li class="module-tags">'+dotclear.msg.module_tags+' '+tags+'</li>'));
+                                }
+                                $(td).append($(boxb).addClass('two-boxes').append(blocb));
+                        } else {
+                                alert($(rsp).find('message').text());
+                        }
+                });
+                
+                $(line).addClass('expand');
+                line.parentNode.insertBefore(tr,line.nextSibling);
+        }
+        else if (tr && tr.style.display == 'none' && ( action == 'toggle' || action == 'open' ) )
+        {
+                $(tr).css('display', 'table-row');
+                $(line).addClass('expand');
+                img.src = dotclear.img_minus_src;
+                img.alt = dotclear.img_minus_alt;
+        }
+        else if (tr && tr.style.display != 'none' && ( action == 'toggle' || action == 'close' ) )
+        {
+                $(tr).css('display', 'none');
+                $(line).removeClass('expand');
+                img.src = dotclear.img_plus_src;
+                img.alt = dotclear.img_plus_alt;
+        }
+        
+        parentTable = $(line).parents('table');
+        if( parentTable.find('tr.expand').length == parentTable.find('tr.line').length ) {
+                img = parentTable.find('tr:not(.line) th:first img');
+                img.attr('src',dotclear.img_minus_src);
+                img.attr('alt',dotclear.img_minus_alt);
+        }
+        
+        if( parentTable.find('tr.expand').length == 0 ) {
+                img = parentTable.find('tr:not(.line) th:first img');
+                img.attr('src',dotclear.img_plus_src);
+                img.attr('alt',dotclear.img_plus_alt);
+        }
+        
+};
+
+
 $(function() {
-	$('table.plugins form input[type=submit][name=delete]').click(function() {
-		var p_name = $('input[name=plugin_id]',$(this).parent()).val();
-		return window.confirm(dotclear.msg.confirm_delete_plugin.replace('%s',p_name));
-	});
+        $('table.modules.expandable tr:not(.line)').each(function() {
+                dotclear.modulesExpander(this,$('table.modules.expandable tr.line'));
+        });
+        $('table.modules.expandable tr.line').each(function() {
+                dotclear.moduleExpander(this);
+        });
 });
Index: admin/js/common.js
===================================================================
--- admin/js/common.js	(revision 2248)
+++ admin/js/common.js	(revision 2225)
@@ -407,12 +407,6 @@
 
 	// manage outgoing links
-	$('a').filter(function() {
-		return ((this.hostname && this.hostname!=location.hostname)
-			|| $(this).hasClass('outgoing'));
-	}).each(function() {
-		$(this).prop('title',$(this).prop('title')+' ('+dotclear.msg.new_window+')');
-		if (!$(this).hasClass('outgoing')) {
-			$(this).append(' <img src="images/outgoing-blue.png" alt=""/>');
-		}
+	$('.outgoing').each(function() {
+		$(this).prop('title',$(this).attr('title')+' ('+dotclear.msg.new_window+')');
 	}).click(function(e) {
 		e.preventDefault();
Index: admin/langs.php
===================================================================
--- admin/langs.php	(revision 2256)
+++ admin/langs.php	(revision 2166)
@@ -49,6 +49,5 @@
 		}
 		
-		dcPage::addSuccessNotice(__('Language has been successfully deleted.'));
-		http::redirect('langs.php');
+		http::redirect('langs.php?removed=1');
 	}
 	catch (Exception $e)
@@ -88,10 +87,5 @@
 		
 		@unlink($dest);
-		if ($ret_code == 2) {
-			dcPage::addSuccessNotice( __('Language has been successfully upgraded'));
-		} else {
-			dcPage::addSuccessNotice($__('Language has been successfully installed.'));
-		}
-		http::redirect('langs.php');
+		http::redirect('langs.php?added='.$ret_code);
 	}
 	catch (Exception $e)
@@ -124,10 +118,5 @@
 		
 		@unlink($dest);
-		if ($ret_code == 2) {
-			dcPage::addSuccessNotice( __('Language has been successfully upgraded'));
-		} else {
-			dcPage::addSuccessNotice($__('Language has been successfully installed.'));
-		}
-		http::redirect('langs.php');
+		http::redirect('langs.php?added='.$ret_code);
 	}
 	catch (Exception $e)
Index: admin/media.php
===================================================================
--- admin/media.php	(revision 2256)
+++ admin/media.php	(revision 2228)
@@ -129,9 +129,5 @@
 	try {
 		$core->media->makeDir($_POST['newdir']);
-		dcPage::addSuccessNotice(sprintf(
-			__('Directory "%s" has been successfully created.'),
-			html::escapeHTML($_POST['newdir']))
-		);
-		http::redirect($page_url.'&d='.rawurlencode($d));
+		http::redirect($page_url.'&d='.rawurlencode($d).'&mkdok=1');
 	} catch (Exception $e) {
 		$core->error->add($e->getMessage());
@@ -177,7 +173,5 @@
 
 			$core->media->uploadFile($upfile['tmp_name'], $upfile['name'], $f_title, $f_private);
-
-			dcPage::addSuccessNotice(__('Files have been successfully uploaded.'));
-			http::redirect($page_url.'&d='.rawurlencode($d));
+			http::redirect($page_url.'&d='.rawurlencode($d).'&upok=1');
 		} catch (Exception $e) {
 			$core->error->add($e->getMessage());
@@ -213,7 +207,5 @@
 	try {
 		$core->media->removeItem($_POST['remove']);
-
-		dcPage::addSuccessNotice(__('File has been successfully removed.'));
-		http::redirect($page_url.'&d='.rawurlencode($d));
+		http::redirect($page_url.'&d='.rawurlencode($d).'&rmfok=1');
 	} catch (Exception $e) {
 		$core->error->add($e->getMessage());
@@ -226,10 +218,5 @@
 	try {
 		$core->media->rebuild($d);
-
-		dcPage::success(sprintf(
-			__('Directory "%s" has been successfully rebuilt.'),
-			html::escapeHTML($d))
-		);
-		http::redirect($page_url.'&d='.rawurlencode($d));
+		http::redirect($page_url.'&d='.rawurlencode($d).'&rebuildok=1');
 	} catch (Exception $e) {
 		$core->error->add($e->getMessage());
Index: admin/media_item.php
===================================================================
--- admin/media_item.php	(revision 2256)
+++ admin/media_item.php	(revision 2211)
@@ -81,7 +81,5 @@
 		files::uploadStatus($_FILES['upfile']);
 		$core->media->uploadFile($_FILES['upfile']['tmp_name'],$file->basename,null,false,true);
-
-		dcPage::addSuccessNotice(__('File has been successfully updated.'));
-		http::redirect($page_url.'&id='.$id);
+		http::redirect($page_url.'&id='.$id.'&fupl=1');
 	} catch (Exception $e) {
 		$core->error->add($e->getMessage());
@@ -110,7 +108,5 @@
 	try {
 		$core->media->updateFile($file,$newFile);
-
-		dcPage::addSuccessNotice(__('File has been successfully updated.'));
-		http::redirect($page_url.'&id='.$id.'&tab=media-details-tab');
+		http::redirect($page_url.'&id='.$id.'&fupd=1&tab=media-details-tab');
 	} catch (Exception $e) {
 		$core->error->add($e->getMessage());
@@ -124,7 +120,5 @@
 		$foo = null;
 		$core->media->mediaFireRecreateEvent($file);
-		
-		dcPage::addSuccessNotice(__('Thumbnails have been successfully updated.'));
-		http::redirect($page_url.'&id='.$id.'&tab=media-details-tab');
+		http::redirect($page_url.'&id='.$id.'&thumbupd=1&tab=media-details-tab');
 	} catch (Exception $e) {
 		$core->error->add($e->getMessage());
@@ -137,7 +131,5 @@
 	try {
 		$unzip_dir = $core->media->inflateZipFile($file,$_POST['inflate_mode'] == 'new');
-		
-		dcPage::addSuccessNotice(__('Zip file has been successfully extracted.'));
-		http::redirect($media_page_url.'&d='.$unzip_dir);
+		http::redirect($media_page_url.'&d='.$unzip_dir.'&unzipok=1');
 	} catch (Exception $e) {
 		$core->error->add($e->getMessage());
@@ -162,7 +154,5 @@
 		$core->blog->settings->system->put('media_img_default_link',($_POST['pref_insertion'] == 'link'));
 	}
-	
-	dcPage::addSuccessNotice(__('Default media insertion settings have been successfully updated.'));
-	http::redirect($page_url.'&id='.$id);
+	http::redirect($page_url.'&id='.$id.'&blogprefupd=1');
 }
 
Index: admin/plugins.php
===================================================================
--- admin/plugins.php	(revision 2256)
+++ admin/plugins.php	(revision 2241)
@@ -13,188 +13,100 @@
 require dirname(__FILE__).'/../inc/admin/prepend.php';
 
-dcPage::checkSuper();
-
-$default_tab = !empty($_REQUEST['tab']) ? html::escapeHTML($_REQUEST['tab']) : 'plugins';
-
-$p_paths = explode(PATH_SEPARATOR, DC_PLUGINS_ROOT);
-$p_path = array_pop($p_paths);
-unset($p_paths);
-
-$is_writable = false;
-if (is_dir($p_path) && is_writeable($p_path)) {
-	$is_writable = true;
-	$p_path_pat = preg_quote($p_path,'!');
-}
-
-$plugin_id = !empty($_POST['plugin_id']) ? $_POST['plugin_id'] : null;
-
-if ($is_writable)
-{
-	# Delete plugin
-	if ($plugin_id && !empty($_POST['delete']))
-	{
-		try
-		{
-			if (empty($_POST['deactivated']))
-			{
-				if (!$core->plugins->moduleExists($plugin_id)) {
-					throw new Exception(__('No such plugin.'));
-				}
-				
-				$plugin = $core->plugins->getModules($plugin_id);
-				$plugin['id'] = $plugin_id;
-				
-				if (!preg_match('!^'.$p_path_pat.'!', $plugin['root'])) {
-					throw new Exception(__('You don\'t have permissions to delete this plugin.'));
-				}
-				
-				# --BEHAVIOR-- pluginBeforeDelete
-				$core->callBehavior('pluginsBeforeDelete', $plugin);
-				
-				$core->plugins->deleteModule($plugin_id);
-				
-				# --BEHAVIOR-- pluginAfterDelete
-				$core->callBehavior('pluginsAfterDelete', $plugin);
-			}
-			else
-			{
-				$core->plugins->deleteModule($plugin_id,true);
-			}
-
-			dcPage::addSuccessNotice(__('Plugin has been successfully deleted.'));
-			http::redirect('plugins.php');
-		}
-		catch (Exception $e)
-		{
-			$core->error->add($e->getMessage());
-		}
-	}
-	# Deactivate plugin
-	elseif ($plugin_id && !empty($_POST['deactivate']))
-	{
-		try
-		{
-			if (!$core->plugins->moduleExists($plugin_id)) {
-				throw new Exception(__('No such plugin.'));
-			}
-			
-			$plugin = $core->plugins->getModules($plugin_id);
-			$plugin['id'] = $plugin_id;
-			
-			if (!$plugin['root_writable']) {
-				throw new Exception(__('You don\'t have permissions to deactivate this plugin.'));
-			}
-			
-			# --BEHAVIOR-- pluginBeforeDeactivate
-			$core->callBehavior('pluginsBeforeDeactivate', $plugin);
-				
-			$core->plugins->deactivateModule($plugin_id);
-
-			# --BEHAVIOR-- pluginAfterDeactivate
-			$core->callBehavior('pluginsAfterDeactivate', $plugin);
-				
-			http::redirect('plugins.php');
-		}
-		catch (Exception $e)
-		{
-			$core->error->add($e->getMessage());
-		}
-	}
-	# Activate plugin
-	elseif ($plugin_id && !empty($_POST['activate']))
-	{
-		try
-		{
-			$p = $core->plugins->getDisabledModules();
-			if (!isset($p[$plugin_id])) {
-				throw new Exception(__('No such plugin.'));
-			}
-
-			# --BEHAVIOR-- pluginBeforeActivate
-			$core->callBehavior('pluginsBeforeActivate', $plugin_id);
-			
-			$core->plugins->activateModule($plugin_id);
-
-			# --BEHAVIOR-- pluginAfterActivate
-			$core->callBehavior('pluginsAfterActivate', $plugin_id);
-			
-			http::redirect('plugins.php');
-		}
-		catch (Exception $e)
-		{
-			$core->error->add($e->getMessage());
-		}
-	}
-	# Plugin upload
-	elseif ((!empty($_POST['upload_pkg']) && !empty($_FILES['pkg_file'])) ||
-		(!empty($_POST['fetch_pkg']) && !empty($_POST['pkg_url'])))
-	{
-		try
-		{
-			if (empty($_POST['your_pwd']) || !$core->auth->checkPassword(crypt::hmac(DC_MASTER_KEY,$_POST['your_pwd']))) {
-				throw new Exception(__('Password verification failed'));
-			}
-			
-			if (!empty($_POST['upload_pkg']))
-			{
-				files::uploadStatus($_FILES['pkg_file']);
-				
-				$dest = $p_path.'/'.$_FILES['pkg_file']['name'];
-				if (!move_uploaded_file($_FILES['pkg_file']['tmp_name'],$dest)) {
-					throw new Exception(__('Unable to move uploaded file.'));
-				}
-			}
-			else
-			{
-				$url = urldecode($_POST['pkg_url']);
-				$dest = $p_path.'/'.basename($url);
-				
-				try
-				{
-					$client = netHttp::initClient($url,$path);
-					$client->setUserAgent('Dotclear - http://www.dotclear.org/');
-					$client->useGzip(false);
-					$client->setPersistReferers(false);
-					$client->setOutput($dest);
-					$client->get($path);
-				}
-				catch( Exception $e)
-				{
-					throw new Exception(__('An error occurred while downloading the file.'));
-				}
-				
-				unset($client);
-			}
-
-			# --BEHAVIOR-- pluginBeforeAdd
-			$core->callBehavior('pluginsBeforeAdd', $plugin_id);
-						
-			$ret_code = $core->plugins->installPackage($dest,$core->plugins);
-
-			# --BEHAVIOR-- pluginAfterAdd
-			$core->callBehavior('pluginsAfterAdd', $plugin_id);
-			if ($ret_code == 2) {
-				dcPage::addSuccessNotice(__('Plugin has been successfully upgraded'));
-			} else {
-				dcPage::addSuccessNotice(__('Plugin has been successfully installed.'));
-			}
-			http::redirect('plugins.php');
-		}
-		catch (Exception $e)
-		{
-			$core->error->add($e->getMessage());
-			$default_tab = 'addplugin';
-		}
-	}
-}
-
-# Plugin install
-$plugins_install = $core->plugins->installModules();
-
-/* DISPLAY Main page
--------------------------------------------------------- */
+dcPage::check('admin');
+
+# -- "First time" settings setup --
+if ($core->blog->settings->system->plugins_allow_multi_install === null) {
+	$core->blog->settings->system->put(
+		'plugins_allow_multi_install', false, 'boolean', 'Allow multi-installation for plugins', true, true
+	);
+}
+if ($core->blog->settings->system->store_plugin_url === null) {
+	$core->blog->settings->system->put(
+		'store_plugin_url', 'http://update.dotaddict.org/dc2/plugins.xml', 'string', 'Plugins XML feed location', true, true
+	);
+}
+
+# -- Page helper --
+$list = new adminModulesList(
+	$core->plugins, 
+	DC_PLUGINS_ROOT, 
+	$core->blog->settings->system->store_plugin_url
+);
+
+$list::$allow_multi_install = $core->blog->settings->system->plugins_allow_multi_install;
+$list::$distributed_modules = array(
+	'aboutConfig',
+	'akismet',
+	'antispam',
+	'attachments',
+	'blogroll',
+	'blowupConfig',
+	'daInstaller',
+	'fairTrackbacks',
+	'importExport',
+	'maintenance',
+	'pages',
+	'pings',
+	'simpleMenu',
+	'tags',
+	'themeEditor',
+	'userPref',
+	'widgets'
+);
+
+# -- Display module configuration page --
+if ($list->setConfiguration()) {
+
+	# Get content before page headers
+	include $list->includeConfiguration();
+
+	# Gather content
+	$list->getConfiguration();
+
+	# Display page
+	dcPage::open(__('Plugins management'),
+
+		# --BEHAVIOR-- pluginsToolsHeaders
+		$core->callBehavior('pluginsToolsHeaders', $core, true),
+
+		dcPage::breadcrumb(
+			array(
+				html::escapeHTML($core->blog->name) => '',
+				__('Plugins management') => $list->getURL('',false),
+				'<span class="page-title">'.__('Plugin configuration').'</span>' => ''
+			))
+	);
+
+	# Display previously gathered content
+	$list->displayConfiguration();
+
+	dcPage::close();
+
+	# Stop reading code here
+	return;
+}
+
+# -- Execute actions --
+try {
+	$list->doActions('plugins');
+}
+catch (Exception $e) {
+	$core->error->add($e->getMessage());
+}
+
+# -- Plugin install --
+$plugins_install = null;
+if (!$core->error->flag()) {
+	$plugins_install = $core->plugins->installModules();
+}
+
+# -- Page header --
 dcPage::open(__('Plugins management'),
 	dcPage::jsLoad('js/_plugins.js').
-	dcPage::jsPageTabs($default_tab),
+	dcPage::jsPageTabs().
+
+	# --BEHAVIOR-- pluginsToolsHeaders
+	$core->callBehavior('pluginsToolsHeaders', $core, false),
+
 	dcPage::breadcrumb(
 		array(
@@ -204,196 +116,161 @@
 );
 
-if (!empty($_GET['removed'])) {
-	dcPage::success(__('Plugin has been successfully deleted.'));
-}
-if (!empty($_GET['added'])) {
-	dcPage::success(($_GET['added'] == 2 ? __('Plugin has been successfully upgraded') : __('Plugin has been successfully installed.')));
-}
-
-# Plugins install messages
-if (!empty($plugins_install['success']))
-{
-	echo '<div class="static-msg">'.__('Following plugins have been installed:').'<ul>';
+# -- Plugins install messages --
+if (!empty($plugins_install['success'])) {
+	echo 
+	'<div class="static-msg">'.__('Following plugins have been installed:').'<ul>';
+
 	foreach ($plugins_install['success'] as $k => $v) {
-		echo '<li>'.$k.'</li>';
-	}
-	echo '</ul></div>';
-}
-if (!empty($plugins_install['failure']))
-{
-	echo '<div class="error">'.__('Following plugins have not been installed:').'<ul>';
+		echo 
+		'<li>'.$k.'</li>';
+	}
+
+	echo 
+	'</ul></div>';
+}
+if (!empty($plugins_install['failure'])) {
+	echo 
+	'<div class="error">'.__('Following plugins have not been installed:').'<ul>';
+
 	foreach ($plugins_install['failure'] as $k => $v) {
-		echo '<li>'.$k.' ('.$v.')</li>';
-	}
-	echo '</ul></div>';
-}
-
-# List all active plugins
-echo '<p>'.__('Plugins add new functionalities to Dotclear. '.
-'Here you can activate or deactivate installed plugins.').'</p>';
-
-echo (!$core->plugins->moduleExists('daInstaller') ?
-	sprintf('<p><strong>'.__('You can find additional plugins for your blog on %s.').'</strong></p>',
-		'<a href="http://plugins.dotaddict.org/dc2/">Dotaddict</a>') :
-	sprintf('<p><strong>'.__('You can find additional plugins for your blog on %s or using the %s.').'</strong></p>',
-		'<a href="http://plugins.dotaddict.org/dc2/">Dotaddict</a>',
-		'<a href="plugin.php?p=daInstaller">'.__('DotAddict.org Installer').'</a>'));
-
-if ($is_writable) {
-	echo '<p>'.__('To install or upgrade a plugin you generally just need to upload it '.
-	'in "Install or upgrade a plugin" section.');
-} else {
-	echo '<p>'.__('To install or upgrade a plugin you just need to extract it in your plugins directory.');
-}
-echo '</p>';
+		echo 
+		'<li>'.$k.' ('.$v.')</li>';
+	}
+
+	echo 
+	'</ul></div>';
+}
+
+# -- Display modules lists --
+if ($core->auth->isSuperAdmin() && $list->isWritablePath()) {
+
+	# Updated modules from repo
+	$modules = $list->store->get(true);
+	if (!empty($modules)) {
+		echo 
+		'<div class="multi-part" id="update" title="'.html::escapeHTML(__('Update plugins')).'">'.
+		'<h3>'.html::escapeHTML(__('Update plugins')).'</h3>'.
+		'<p>'.sprintf(
+			__('There is one plugin to update available from repository.', 'There are %s plugins to update available from repository.', count($modules)),
+			count($modules)
+		).'</p>';
+
+		$list
+			->setList('plugin-update')
+			->setTab('update')
+			->setModules($modules)
+			->displayModules(
+				/*cols */		array('icon', 'name', 'version', 'current_version', 'desc'),
+				/* actions */	array('update')
+			);
+
+		echo
+		'<p class="info vertical-separator">'.sprintf(
+			__("Visit %s repository, the resources center for Dotclear."),
+			'<a href="http://dotaddict.org/dc2/plugins">Dotaddict</a>'
+			).
+		'</p>'.
+
+		'</div>';
+	}
+}
 
 echo
-'<div class="multi-part" id="plugins" title="'.__('Plugins').'">';
-
-$p_available = $core->plugins->getModules();
-uasort($p_available,create_function('$a,$b','return strcasecmp($a["name"],$b["name"]);'));
-if (!empty($p_available)) 
-{
+'<div class="multi-part" id="plugins" title="'.__('Installed plugins').'">';
+
+# Activated modules
+$modules = $list->modules->getModules();
+if (!empty($modules)) {
+	
+	echo 
+	'<h3>'.($core->auth->isSuperAdmin() ?__('Activated plugins') : __('Installed plugins')).'</h3>'.
+	'<p>'.__('You can configure and manage installed plugins from this list.').'</p>';
+
+	$list
+		->setList('plugin-activate')
+		->setTab('plugins')
+		->setModules($modules)
+		->displayModules(
+			/* cols */		array('expander', 'icon', 'name', 'config', 'version', 'desc', 'distrib'),
+			/* actions */	array('deactivate', 'delete', 'behavior')
+		);
+}
+
+# Deactivated modules
+if ($core->auth->isSuperAdmin()) {
+	$modules = $list->modules->getDisabledModules();
+	if (!empty($modules)) {
+		echo
+		'<h3>'.__('Deactivated plugins').'</h3>'.
+		'<p>'.__('Deactivated plugins are installed but not usable. You can activate them from here.').'</p>';
+
+		$list
+			->setList('plugin-deactivate')
+			->setTab('plugins')
+			->setModules($modules)
+			->displayModules(
+				/* cols */		array('icon', 'name', 'distrib'),
+				/* actions */	array('activate', 'delete')
+			);
+	}
+}
+
+echo 
+'</div>';
+
+if ($core->auth->isSuperAdmin() && $list->isWritablePath()) {
+
+	# New modules from repo
+	$search = $list->getSearch();
+	$modules = $search ? $list->store->search($search) : $list->store->get();
+
+	if (!empty($search) || !empty($modules)) {
+		echo
+		'<div class="multi-part" id="new" title="'.__('Add plugins').'">'.
+		'<h3>'.__('Add plugins from repository').'</h3>'.
+		'<p>'.__('Search and install plugins directly from repository.').'</p>';
+
+		$list
+			->setList('plugin-new')
+			->setTab('new')
+			->setModules($modules)
+			->displaySearch()
+			->displayIndex()
+			->displayModules(
+				/* cols */		array('expander', 'name', 'score', 'version', 'desc'),
+				/* actions */	array('install'),
+				/* nav limit */	true
+			);
+
+		echo
+		'<p class="info vertical-separator">'.sprintf(
+			__("Visit %s repository, the resources center for Dotclear."),
+			'<a href="http://dotaddict.org/dc2/plugins">Dotaddict</a>'
+			).
+		'</p>'.
+
+		'</div>';
+	}
+
+	# Add a new plugin
 	echo
-	'<h3>'.__('Activated plugins').'</h3>'.
-	'<div class="table-outer clear">'.
-	'<table class="plugins"><tr>'.
-	'<th>'.__('Plugin').'</th>'.
-	'<th class="nowrap">'.__('Version').'</th>'.
-	'<th class="nowrap">'.__('Details').'</th>'.
-	'<th class="nowrap">'.__('Action').'</th>'.
-	'</tr>';
-	
-	$distrib_plugins = array('aboutConfig','akismet','antispam','attachments','blogroll','blowupConfig','daInstaller',
-		'fairTrackbacks','importExport','maintenance','pages','pings','simpleMenu','tags','themeEditor','userPref','widgets');
-	$distrib_img = '<img src="images/dotclear_pw.png"'.
-		' alt="'.__('Plugin from official distribution').'" title="'.__('Plugin from official distribution').'" />';
-
-	foreach ($p_available as $k => $v)
-	{
-		$is_deletable = $is_writable && preg_match('!^'.$p_path_pat.'!',$v['root']);
-		$is_deactivable = $v['root_writable'];
-		$is_distrib = in_array($k, $distrib_plugins);
-		
-		echo
-		'<tr class="line wide">'.
-		'<td class="minimal nowrap"><strong>'.html::escapeHTML($k).'</strong></td>'.
-		'<td class="minimal">'.html::escapeHTML($v['version']).'</td>'.
-		'<td class="maximal'.($is_distrib ? ' distrib' : '').'"><strong>'.html::escapeHTML(__($v['name'])).'</strong> '.
-		'<br />'.html::escapeHTML(__($v['desc'])).($is_distrib ? ' '.$distrib_img : '').'</td>'.
-		'<td class="nowrap action">';
-		
-		if ($is_deletable || $is_deactivable)
-		{
-			echo
-			'<form action="plugins.php" method="post">'.
-			'<div>'.
-			$core->formNonce().
-			form::hidden(array('plugin_id'),html::escapeHTML($k)).
-			($is_deactivable ? '<input type="submit" name="deactivate" value="'.__('Deactivate').'" /> ' : '').
-			($is_deletable ? '<input type="submit" class="delete" name="delete" value="'.__('Delete').'" /> ' : '').
-			'</div>'.
-			'</form>';
-		}
-		
-		echo
-		'</td>'.
-		'</tr>';
-	}
+	'<div class="multi-part" id="addplugin" title="'.__('Install or upgrade manually').'">'.
+	'<h3>'.__('Add plugins from a package').'</h3>'.
+	'<p>'.__('You can install plugins by uploading or downloading zip files.').'</p>';
+
+	$list->displayManualForm();
+
 	echo
-	'</table></div>';
-}
-
-$p_disabled = $core->plugins->getDisabledModules();
-uksort($p_disabled,create_function('$a,$b','return strcasecmp($a,$b);'));
-if (!empty($p_disabled))
-{
-	echo
-	'<h3>'.__('Deactivated plugins').'</h3>'.
-	'<div class="clear table-outer">'.
-	'<table class="plugins"><tr>'.
-	'<th>'.__('Plugin').'</th>'.
-	'<th class="nowrap">'.__('Action').'</th>'.
-	'</tr>';
-	
-	foreach ($p_disabled as $k => $v)
-	{
-		$is_deletable = $is_writable && preg_match('!^'.$p_path_pat.'!',$v['root']);
-		$is_activable = $v['root_writable'];
-		
-		echo
-		'<tr class="line wide">'.
-		'<td class="maximal nowrap"><strong>'.html::escapeHTML($k).'</strong></td>'.
-		'<td class="nowrap action">';
-		
-		if ($is_deletable || $is_activable)
-		{
-			echo
-			'<form action="plugins.php" method="post">'.
-			'<div>'.
-			$core->formNonce().
-			form::hidden(array('plugin_id'),html::escapeHTML($k)).
-			form::hidden(array('deactivated'),1).
-			($is_activable ? '<input type="submit" name="activate" value="'.__('Activate').'" /> ' : '').
-			($is_deletable ? '<input type="submit" class="delete" name="delete" value="'.__('Delete').'" /> ' : '').
-			'</div>'.
-			'</form>';
-		}
-		
-		echo
-		'</td>'.
-		'</tr>';
-	}
-	echo
-	'</table></div>';
-}
-
-echo '</div>';
-
-# Add a new plugin
-echo
-'<div class="multi-part" id="addplugin" title="'.__('Install or upgrade a plugin').'">';
-
-if ($is_writable)
-{
-	echo '<p>'.__('You can install plugins by uploading or downloading zip files.').'</p>';
-	
-	# 'Upload plugin' form
-	echo
-	'<form method="post" action="plugins.php" id="uploadpkg" enctype="multipart/form-data" class="fieldset">'.
-	'<h3>'.__('Upload a zip file').'</h3>'.
-	'<p class="field"><label for="pkg_file" class="classic required"><abbr title="'.__('Required field').'">*</abbr> '.__('Plugin zip file:').'</label> '.
-	'<input type="file" id="pkg_file" name="pkg_file" /></p>'.
-	'<p class="field"><label for="your_pwd1" class="classic required"><abbr title="'.__('Required field').'">*</abbr> '.__('Your password:').'</label> '.
-	form::password(array('your_pwd','your_pwd1'),20,255).'</p>'.
-	'<p><input type="submit" name="upload_pkg" value="'.__('Upload plugin').'" />'.
-	$core->formNonce().
-	'</p>'.
-	'</form>';
-	
-	# 'Fetch plugin' form
-	echo
-	'<form method="post" action="plugins.php" id="fetchpkg" class="fieldset">'.
-	'<h3>'.__('Download a zip file').'</h3>'.
-	'<p class="field"><label for="pkg_url" class="classic required"><abbr title="'.__('Required field').'">*</abbr> '.__('Plugin zip file URL:').'</label> '.
-	form::field(array('pkg_url','pkg_url'),40,255).'</p>'.
-	'<p class="field"><label for="your_pwd2" class="classic required"><abbr title="'.__('Required field').'">*</abbr> '.__('Your password:').'</label> '.
-	form::password(array('your_pwd','your_pwd2'),20,255).'</p>'.
-	'<p><input type="submit" name="fetch_pkg" value="'.__('Download plugin').'" />'.
-	$core->formNonce().'</p>'.
-	'</form>';
-}
-else
-{
-	echo
-	'<p class="static-msg">'.
-	__('To enable this function, please give write access to your plugins directory.').
-	'</p>';
-}
-echo '</div>';
+	'</div>';
+}
 
 # --BEHAVIOR-- pluginsToolsTabs
-$core->callBehavior('pluginsToolsTabs',$core);
+$core->callBehavior('pluginsToolsTabs', $core);
+
+# -- Notice for super admin --
+if ($core->auth->isSuperAdmin() && !$list->isWritablePath()) {
+	echo 
+	'<p class="warning">'.__('Some functions are disabled, please give write access to your plugins directory to enable them.').'</p>';
+}
 
 dcPage::close();
-?>
Index: admin/post.php
===================================================================
--- admin/post.php	(revision 2256)
+++ admin/post.php	(revision 2225)
@@ -173,6 +173,5 @@
 		
 		if (!$core->error->flag()) {
-			dcPage::addSuccessNotice(__('All pings sent.'));
-			http::redirect('post.php?id='.$post_id.'&tb=1');
+			http::redirect('post.php?id='.$post_id.'&tbsent=1&tb=1');
 		}
 	}
@@ -320,7 +319,6 @@
 			# --BEHAVIOR-- adminAfterPostCreate
 			$core->callBehavior('adminAfterPostCreate',$cur,$return_id);
-
-			dcPage::addSuccessNotice(__('Entry has been successfully created.'));
-			http::redirect('post.php?id='.$return_id);
+			
+			http::redirect('post.php?id='.$return_id.'&crea=1');
 		}
 		catch (Exception $e)
Index: admin/post_media.php
===================================================================
--- admin/post_media.php	(revision 2256)
+++ admin/post_media.php	(revision 1537)
@@ -51,7 +51,5 @@
 	{
 		$core->media->removePostMedia($post_id,$media_id);
-		
-		dcPage::addSuccessNotice(__('Attachment has been successfully removed.'));
-		http::redirect($core->getPostAdminURL($rs->post_type,$post_id,false));
+		http::redirect($core->getPostAdminURL($rs->post_type,$post_id,false).'&rmattach=1');
 	}
 	elseif (isset($_POST['post_id'])) {
Index: admin/posts_actions.php
===================================================================
--- admin/posts_actions.php	(revision 2243)
+++ admin/posts_actions.php	(revision 1999)
@@ -18,18 +18,6 @@
 dcPage::check('usage,contentadmin');
 
-if (isset($_REQUEST['redir'])) {
-	$u = explode('?',$_REQUEST['redir']);
-	$uri = $u[0];
-	if (isset($u[1])) {
-		parse_str($u[1],$args);
-	}
-	$args['redir'] = $_REQUEST['redir'];
-} else {
-	$uri = 'posts.php';
-	$args=array();
-}
+$posts_actions_page = new dcPostsActionsPage($core,'posts.php');
 
-$posts_actions_page = new dcPostsActionsPage($core,$uri,$args);
-$posts_actions_page->setEnableRedirSelection(false);
 $posts_actions_page->process();
 
Index: admin/preferences.php
===================================================================
--- admin/preferences.php	(revision 2256)
+++ admin/preferences.php	(revision 2229)
@@ -123,7 +123,5 @@
 		$core->callBehavior('adminAfterUserProfileUpdate',$cur,$core->auth->userID());
 		
-		dcPage::addSuccessNotice(__('Personal information has been successfully updated.'));
-
-		http::redirect('preferences.php');
+		http::redirect('preferences.php?upd=1');
 	}
 	catch (Exception $e)
@@ -177,6 +175,5 @@
 		$core->callBehavior('adminAfterUserOptionsUpdate',$cur,$core->auth->userID());
 		
-		dcPage::addSuccessNotice(__('Personal options has been successfully updated.'));
-		http::redirect('preferences.php');
+		http::redirect('preferences.php?updated=1');
 	}
 	catch (Exception $e)
@@ -203,6 +200,5 @@
 		$core->callBehavior('adminAfterDashboardOptionsUpdate',$core->auth->userID());
 		
-		dcPage::addSuccessNotice(__('Dashboard options has been successfully updated.'));
-		http::redirect('preferences.php');
+		http::redirect('preferences.php?db-updated=1');
 	}
 	catch (Exception $e)
@@ -229,6 +225,5 @@
 
 		if (!$core->error->flag()) {
-			dcPage::addSuccessNotice(__('Favorites have been successfully added.'));
-			http::redirect('preferences.php');
+			http::redirect('preferences.php?append=1');
 		}
 	} catch (Exception $e) {
@@ -256,6 +251,5 @@
 		$core->favs->setFavoriteIDs(array_keys($user_fav_ids),false);
 		if (!$core->error->flag()) {
-			dcPage::addSuccessNotice(__('Favorites have been successfully removed.'));
-			http::redirect('preferences.php');
+			http::redirect('preferences.php?removed=1');
 		}
 	} catch (Exception $e) {
@@ -283,6 +277,5 @@
 	$core->favs->setFavoriteIDs($order,false);
 	if (!$core->error->flag()) {
-		dcPage::addSuccessNotice(__('Favorites have been successfully updated.'));
-		http::redirect('preferences.php');
+		http::redirect('preferences.php?&neworder=1');
 	}
 }
@@ -294,6 +287,5 @@
 
 	if (!$core->error->flag()) {
-		dcPage::addSuccessNotice(__('Default favorites have been successfully updated.'));
-		http::redirect('preferences.php');
+		http::redirect('preferences.php?&replaced=1');
 	}
 }
Index: admin/services.php
===================================================================
--- admin/services.php	(revision 1699)
+++ admin/services.php	(revision 2227)
@@ -27,4 +27,5 @@
 $core->rest->addFunction('searchMeta',array('dcRestMethods','searchMeta'));
 $core->rest->addFunction('setSectionFold',array('dcRestMethods','setSectionFold'));
+$core->rest->addFunction('getModuleById',array('dcRestMethods','getModuleById'));
 
 $core->rest->serve();
@@ -442,6 +443,57 @@
 		return true;
 	}
-		
-	
+	
+	public static function getModuleById($core, $get, $post)
+	{
+		if (empty($get['id'])) {
+			throw new Exception('No module ID');
+		}
+		if (empty($get['list'])) {
+			throw new Exception('No list ID');
+		}
+
+		$id = $get['id'];
+		$list = $get['list'];
+		$module = array();
+
+		if ($list == 'plugin-activate') {
+			$modules = $core->plugins->getModules();
+			if (empty($modules) || !isset($modules[$id])) {
+				throw new Exception('Unknow module ID');
+			}
+			$module = $modules[$id];
+		}
+		elseif ($list == 'plugin-new') {
+			$store = new dcStore(
+				$core->plugins, 
+				$core->blog->settings->system->store_plugin_url
+			);
+			$store->check();
+
+			$modules = $store->get();
+			if (empty($modules) || !isset($modules[$id])) {
+				throw new Exception('Unknow module ID');
+			}
+			$module = $modules[$id];
+		}
+		else {
+			// behavior not implemented yet
+		}
+
+		if (empty($module)) {
+			throw new Exception('Unknow module ID');
+		}
+
+		$module = adminModulesList::sanitizeModule($id, $module);
+
+		$rsp = new xmlTag('module');
+		$rsp->id = $id;
+
+		foreach($module as $k => $v) {
+			$rsp->{$k}((string) $v);
+		}
+
+		return $rsp;
+	}
 }
 ?>
Index: admin/style/default.css
===================================================================
--- admin/style/default.css	(revision 2225)
+++ admin/style/default.css	(revision 2252)
@@ -158,5 +158,6 @@
 	-moz-box-sizing: border-box; 
 	-webkit-box-sizing: border-box; 
-	box-sizing: border-box;	
+	box-sizing: border-box;
+	text-align: left;
 	}
 .two-boxes {
@@ -1108,5 +1109,5 @@
 		}
 #help-button {
-	background: transparent url(../images/page_help.png) no-repeat 6px center;
+	background: transparent url(help-mini.png) no-repeat 6px center;
 	position: absolute;
 	top: 0;
@@ -1539,115 +1540,50 @@
 				}
 /* ------------------------------------------------------------------- blog_theme.php */
-#themes {
-	margin: 0;
-	width: 100%;
-	padding: 0;
-	}
-	.theme-details {
-		border-top: 1px solid #ccc;
-		padding: 12px;
-		display: inline-block;
-		vertical-align: top;
-		width: 284px;
-		}
-		.theme-details.current-theme {
-			background: #eef;
-			}
-		.theme-details:hover {
-			background: #f3f3f3;
-			}
-		.theme-shot img {
-			display: block;
-			border: 1px solid #ccc;
-			margin-bottom: 1.5em;
-			}
-		span.theme-desc {
-			display: block;
-			}
-		span.theme-version {
-			color: #676e78;
-			}
-		.theme-css {
-			display: block;
-			}
-	#themes-actions {
-		border-bottom: 1px solid #999;
-		margin-bottom: 3em;
-		}
-/* Themes list, JS version */
-#themes-wrapper {
-	display: table;
-	}
-	#themes-wrapper #themes {
-		display: table-cell;
-		vertical-align: top;
-		padding-left: 1em;
-		}
-	#theme-box {
-		display: table-cell;
-		vertical-align: top;
-		padding: 0;
-		width: 312px;
-		border: 1px solid #ccc;
-		border-radius: 3px;
-		}
-		#theme-box .theme-shot,
-		#theme-box .theme-info,
-		#theme-box .theme-actions {
-			background: #eef;
-			padding: 1em 16px;
-			margin: 0;
-			}
-		#theme-box .theme-shot img {
-			display: block;
-			width: 280px;
-			height: 245px;
-			border: 1px solid #ccc;
-			}
-		#theme-box h4 {
-			color: #000;
-			background: #eef;
-			}
-		#theme-box span.theme-version {
-			color: #676e78;
-			}
-		#theme-box span.theme-parent-ok {
-			color: #676e78;
-			}
-		#theme-box span.theme-parent-missing {
-			color: #c00;
-			font-weight:bold;
-			}
-		#theme-box .theme-actions {
-			border-bottom: 1px solid #ccc;
-			}
-#themes .theme-details-js {
+.box.theme {
+	margin: .5em;
+	padding: 1em 1em .5em 1em;
+	border: 1px solid #ccc;
+	}
+#theme-new .box.theme {
+	width: 280px;
+	}
+.module-name {
+	margin-bottom: .5em;
+	}
+.module-sshot img {
+	border: 1px solid #ddd;
+	padding: .5em;
+	background: #f7f7f7;
+	box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.2);
+	}
+.module-actions {
+	margin-top: 1em;
+	}
+.bloc-toggler {
+	text-align: right;
+	}
+.box.current-theme {
+	width: 652px;
+	margin: .5em;
+	padding: 1em 0 .5em 1em;
+	background: #FCFDFD;
+	border: 1px solid #9AC123;
+	-webkit-border-radius: .5em;
+	border-radius: .5em;
+	min-height: 330px;	
+	}
+.current-theme .module-sshot img {
 	float: left;
-	width: 120px;
-	height: 150px;
-	margin: 0 12px 24px;
-	padding: 12px 12px 0;
-	text-align: center;
-	background: #f3f3f3;
-	border: 1px solid #ddd;
-	cursor: pointer;
-	border-radius: 4px;
-	}
-	#themes .theme-details-js label {
-		cursor: pointer;
-		}
-	#themes .theme-details-js.theme-selected {
-		background: #e7e7e7;
-		border: 1px solid #999;
-		}
-	#themes .theme-details-js .theme-shot img {
-		width: 120px;
-		height: 105px;
-		border: 1px solid #fff;
-		}
-	#themes a:focus div, #themes a:hover div,
-	#themes a:focus div.current-theme, #themes a:hover div.current-theme {
-		background: #bee74b;
-		}
+	margin-right: 2em;
+	margin-bottom: 1em;
+	}
+.current-theme .module-name {
+	color: #D33800;
+	margin-bottom: 1em;
+	font-size: 1.33em;
+	}
+.box.theme input {
+	margin-bottom: 1em;
+	}
 /* ------------------------------------------------------------------ categories.php */
 #categories {
@@ -1954,11 +1890,51 @@
 		}
 /* -------------------------------------------------------------------- plugins.php */
-#plugins td.action {
+.modules td.module-actions, .modules td.module-icon {
 	vertical-align: middle;
 	}
-.distrib img {
+.modules td.module-icon img:last-child {
+	width: 16px;
+	height: 16px;
+	}
+.modules td.module-icon img.expand {
+	margin-bottom: 3px;
+	}
+.modules td.module-distrib img {
 	display: block;
 	float: right;
-	margin-top: -1em;
+	}
+.modules dt {
+	font-weight: bold;
+	}
+.modules a.module-details {
+	background: transparent url(search.png) no-repeat 2px 2px;
+	padding: 4px 4px 0 20px;
+	}
+.modules a.module-support {
+	background: transparent url(help12.png) no-repeat 2px 2px;
+	padding: 4px 4px 0 20px;
+	}
+#m_search {	
+	background: transparent url(search.png) no-repeat 4px center;
+	padding-left: 20px;
+	}
+.modules tr.expand, .modules td.expand {
+	background: #f7f7f7;
+	border-color: #bee74b;
+	}
+.modules tr.expand td:first-child {
+	font-weight: bold;
+	background: #DFE5E7;
+	}
+.modules td.expand {
+	padding: 0;
+	}
+.mod-more, .mod-more li {
+	margin: .25em 0 0 1em;
+	padding: 0;
+	list-style-type: none;
+	}
+.mod-more {
+	padding-top: .5em;
 	}
 /* ---------------------------------------------------------- post.php, page.php */
@@ -2383,7 +2359,10 @@
 	}
 .debug {
- 	background: #FF6;
+	background: #ff6;
 	padding: 3px 0.5em 2px;
- 	}
+	}
+input[type=submit].delete.debug, a.delete.debug {
+	background: #ff6;
+	}
 /* ---------------------------------------------- Couleurs ajoutées via javascript	
 /* color-picker.js */
Index: admin/user.php
===================================================================
--- admin/user.php	(revision 2256)
+++ admin/user.php	(revision 2166)
@@ -130,6 +130,5 @@
 			}
 			
-			dcPage::addSuccessNotice(__('User has been successfully updated.'));
-			http::redirect('user.php?id='.$new_id);
+			http::redirect('user.php?id='.$new_id.'&upd=1');
 		}
 		# Add user
@@ -148,9 +147,8 @@
 			$core->callBehavior('adminAfterUserCreate',$cur,$new_id);
 			
-			dcPage::addSuccessNotice(__('User has been successfully created.'));
 			if (!empty($_POST['saveplus'])) {
-				http::redirect('user.php');
+				http::redirect('user.php?add=1');
 			} else {
-				http::redirect('user.php?id='.$new_id);
+				http::redirect('user.php?id='.$new_id.'&add=1');
 			}
 		}
Index: admin/users_actions.php
===================================================================
--- admin/users_actions.php	(revision 2256)
+++ admin/users_actions.php	(revision 2212)
@@ -86,6 +86,5 @@
 		}
 		if (!$core->error->flag()) {
-			dcPage::addSuccessNotice(__('User has been successfully deleted.'));
-			http::redirect($redir);
+			http::redirect($redir.'&del=1');
 		}
 	}
@@ -125,6 +124,5 @@
 		}
 		if (!$core->error->flag()) {
-			dcPage::addSuccessNotice(__('User has been successfully updated.'));
-			http::redirect($redir);
+			http::redirect($redir.'&upd=1');
 		}
 	}
Index: inc/admin/actions/class.dcaction.php
===================================================================
--- inc/admin/actions/class.dcaction.php	(revision 2243)
+++ inc/admin/actions/class.dcaction.php	(revision 2169)
@@ -52,7 +52,4 @@
 	/** @var boolean true if we are acting inside a plugin (different handling of begin/endpage) */
 	protected $in_plugin;	
-	
-	/** @var boolean true if we enable to keep selection when redirecting */
-	protected $enable_redir_selection;	
 
     /**
@@ -87,17 +84,4 @@
 		$u=explode('?',$_SERVER['REQUEST_URI']);
 		$this->in_plugin = (strpos($u[0],'plugin.php') !== false);
-		$this->enable_redir_selection = true;
-	}
-	
-    /**
-     * setEnableRedirSelection - define whether to keep selection when redirecting
-	 *							Can be usefull to be disabled to preserve some compatibility.
-     *
-     * @param boolean $enable true to enable, false otherwise
-	 *
-     * @access public
-     */
-	public function setEnableRedirSelection($enable) {
-		$this->enable_redir_selection = $enable;
 	}
 	
@@ -243,9 +227,5 @@
 	public function getRedirection($with_selected_entries=false,$params=array()) {
 		$redir_args = array_merge($params,$this->redir_args);
-		if (isset($redir_args['redir'])) {
-			unset($redir_args['redir']);
-		}
-		
-		if ($with_selected_entries && $this->enable_redir_selection) {
+		if ($with_selected_entries) {
 			$redir_args[$this->field_entries] = array_keys($this->entries);
 		}
Index: inc/admin/actions/class.dcactioncomments.php
===================================================================
--- inc/admin/actions/class.dcactioncomments.php	(revision 2256)
+++ inc/admin/actions/class.dcactioncomments.php	(revision 2169)
@@ -149,7 +149,5 @@
 		
 		$core->blog->updCommentsStatus($co_ids,$status);
-
-		dcPage::addSuccessNotice(__('Selected comments have been successfully updated.'));
-		$ap->redirect(true);
+		$ap->redirect(true,array('upd'=>1));
 	}
 
@@ -170,6 +168,5 @@
 		
 		$core->blog->delComments($co_ids);
-		dcPage::addSuccessNotice(__('Selected comments have been successfully deleted.'));
-		$ap->redirect(false);
+		$ap->redirect(false,array('del'=>1));
 	}
 }
Index: inc/admin/class.dc.favorites.php
===================================================================
--- inc/admin/class.dc.favorites.php	(revision 2247)
+++ inc/admin/class.dc.favorites.php	(revision 2234)
@@ -406,5 +406,6 @@
 				'small-icon' => 'images/menu/edit.png',
 				'large-icon' => 'images/menu/edit-b.png',
-				'permissions' =>'usage,contentadmin'),
+				'permissions' =>'usage,contentadmin',
+				'id' => 'menu-new-post'),
 			'posts' => array(
 				'title' => __('Entries'),
@@ -466,5 +467,5 @@
 				'url' => 'plugins.php',
 				'small-icon' => 'images/menu/plugins.png',
-				'large-icon' => 'images/menu/plugins-b.png'),
+				'large-icon' => 'images/menu/plugins-b.png'), 
 			'langs' => array(
 				'title' => __('Languages'),
@@ -479,17 +480,17 @@
 		));
 	}
-
-	public static function postsDashboard($core,$v)
-	{
+	
+	public static function postsDashboard($core,$v) {
 		$post_count = $core->blog->getPosts(array(),true)->f(0);
 		$str_entries = __('%d entry', '%d entries',$post_count);
 		$v['title'] = sprintf($str_entries,$post_count);
 	}
-
-	public static function commentsDashboard($core,$v)
-	{
+	
+	public static function commentsDashboard($core,$v) {
 		$comment_count = $core->blog->getComments(array(),true)->f(0);
 		$str_comments = __('%d comments', '%d comments',$comment_count);
 		$v['title']= sprintf($str_comments,$comment_count);
 	}
+
+
 }
Index: inc/admin/lib.dc.page.php
===================================================================
--- inc/admin/lib.dc.page.php	(revision 2225)
+++ inc/admin/lib.dc.page.php	(revision 2240)
@@ -580,4 +580,9 @@
 		self::jsVar('dotclear.img_menu_on','images/menu_on.png').
 		self::jsVar('dotclear.img_menu_off','images/menu_off.png').
+		
+		self::jsVar('dotclear.img_plus_theme_src','images/plus-theme.png').
+		self::jsVar('dotclear.img_plus_theme_alt',__('uncover')).
+		self::jsVar('dotclear.img_minus_theme_src','images/minus-theme.png').
+		self::jsVar('dotclear.img_minus_theme_alt',__('hide')).
 
 		self::jsVar('dotclear.msg.help',
@@ -667,4 +672,17 @@
 		self::jsVar('dotclear.msg.load_enhanced_uploader',
 			__('Loading enhanced uploader, please wait.')).
+
+		self::jsVar('dotclear.msg.module_author',
+			__('Author:')).
+		self::jsVar('dotclear.msg.module_details',
+			__('Details')).
+		self::jsVar('dotclear.msg.module_support',
+			__('Support')).
+		self::jsVar('dotclear.msg.module_help',
+			__('Help:')).
+		self::jsVar('dotclear.msg.module_section',
+			__('Section:')).
+		self::jsVar('dotclear.msg.module_tags',
+			__('Tags:')).
 			"\n//]]>\n".
 		"</script>\n";
Index: inc/admin/lib.moduleslist.php
===================================================================
--- inc/admin/lib.moduleslist.php	(revision 2259)
+++ inc/admin/lib.moduleslist.php	(revision 2259)
@@ -0,0 +1,1334 @@
+<?php
+# -- BEGIN LICENSE BLOCK ---------------------------------------
+#
+# This file is part of Dotclear 2.
+#
+# Copyright (c) 2003-2013 Olivier Meunier & Association Dotclear
+# Licensed under the GPL version 2.0 license.
+# See LICENSE file or
+# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
+#
+# -- END LICENSE BLOCK -----------------------------------------
+if (!defined('DC_ADMIN_CONTEXT')) { return; }
+
+/**
+ * @ingroup DC_CORE
+ * @brief Helper for admin list of modules.
+ * @since 2.6
+
+ * Provides an object to parse XML feed of modules from a repository.
+ */
+class adminModulesList
+{
+	public $core;		/**< @var	object	dcCore instance */
+	public $modules;	/**< @var	object	dcModules instance */
+	public $store;		/**< @var	object	dcStore instance */
+
+	public static $allow_multi_install = false;		/**< @var	boolean	Work with multiple root directories */
+	public static $distributed_modules = array();	/**< @var	array	List of modules distributed with Dotclear */
+
+	protected $list_id = 'unknow';	/**< @var	string	Current list ID */
+	protected $data = array();		/**< @var	array	Current modules */
+
+	protected $config_module = '';	/**< @var	string	Module ID to configure */
+	protected $config_file = '';	/**< @var	string	Module path to configure */
+	protected $config_content = '';	/**< @var	string	Module configuration page content */
+
+	protected $path = false;			/**< @var	string	Modules root directory */
+	protected $path_writable = false;	/**< @var	boolean	Indicate if modules root directory is writable */
+	protected $path_pattern = false;	/**< @var	string	Directory pattern to work on */
+
+	protected $page_url = 'plugins.php';	/**< @var	string	Page URL */
+	protected $page_qs = '?';				/**< @var	string	Page query string */
+	protected $page_tab = '';				/**< @var	string	Page tab */
+	protected $page_redir = '';				/**< @var	string	Page redirection */
+
+	public static $nav_indexes = 'abcdefghijklmnopqrstuvwxyz0123456789'; /**< @var	string	Index list */
+	protected $nav_list = array();		/**< @var	array	Index list with special index */
+	protected $nav_special = 'other';	/**< @var	string	Text for other special index */
+
+	protected $sort_field = 'sname';	/**< @var	string	Field used to sort modules */
+	protected $sort_asc = true;			/**< @var	boolean	Sort order asc */
+
+	/**
+	 * Constructor.
+	 *
+	 * Note that this creates dcStore instance.
+	 *
+	 * @param	object	$modules		dcModules instance
+	 * @param	string	$modules_root	Modules root directories
+	 * @param	string	$xml_url		URL of modules feed from repository
+	 */
+	public function __construct(dcModules $modules, $modules_root, $xml_url)
+	{
+		$this->core = $modules->core;
+		$this->modules = $modules;
+		$this->store = new dcStore($modules, $xml_url);
+
+		$this->setPath($modules_root);
+		$this->setIndex(__('other'));
+	}
+
+	/**
+	 * Begin a new list.
+	 *
+	 * @param	string	$id		New list ID
+	 * @return	adminModulesList self instance
+	 */
+	public function setList($id)
+	{
+		$this->data = array();
+		$this->page_tab = '';
+		$this->list_id = $id;
+
+		return $this;
+	}
+
+	/**
+	 * Get list ID.
+	 *
+	 * @return	List ID
+	 */
+	public function getList()
+	{
+		return $this->list_id;
+	}
+
+	/// @name Modules root directory methods
+	//@{
+	/**
+	 * Set path info.
+	 *
+	 * @param	string	$root		Modules root directories
+	 * @return	adminModulesList self instance
+	 */
+	protected function setPath($root)
+	{
+		$paths = explode(PATH_SEPARATOR, $root);
+		$path = array_pop($paths);
+		unset($paths);
+
+		$this->path = $path;
+		if (is_dir($path) && is_writeable($path)) {
+			$this->path_writable = true;
+			$this->path_pattern = preg_quote($path,'!');
+		}
+
+		return $this;
+	}
+
+	/**
+	 * Get modules root directory.
+	 *
+	 * @return	Path to work on
+	 */
+	public function getPath()
+	{
+		return $this->path;
+	}
+
+	/**
+	 * Check if modules root directory is writable.
+	 *
+	 * @return	True if directory is writable
+	 */
+	public function isWritablePath()
+	{
+		return $this->path_writable;
+	}
+
+	/**
+	 * Check if root directory of a module is deletable.
+	 *
+	 * @param	string	$root		Module root directory
+	 * @return	True if directory is delatable
+	 */
+	public function isDeletablePath($root)
+	{
+		return $this->path_writable 
+			&& (preg_match('!^'.$this->path_pattern.'!', $root) || defined('DC_DEV') && DC_DEV) 
+			&& $this->core->auth->isSuperAdmin();
+	}
+	//@}
+
+	/// @name Page methods
+	//@{
+	/**
+	 * Set page base URL.
+	 *
+	 * @param	string	$url		Page base URL
+	 * @return	adminModulesList self instance
+	 */
+	public function setURL($url)
+	{
+		$this->page_qs = strpos('?', $url) ? '&' : '?';
+		$this->page_url = $url;
+
+		return $this;
+	}
+
+	/**
+	 * Get page URL.
+	 *
+	 * @param	string|array	$queries	Additionnal query string
+	 * @param	booleany	$with_tab		Add current tab to URL end
+	 * @return	Clean page URL
+	 */
+	public function getURL($queries='', $with_tab=true)
+	{
+		return $this->page_url.
+			(!empty($queries) ? $this->page_qs : '').
+			(is_array($queries) ? http_build_query($queries) : $queries).
+			($with_tab && !empty($this->page_tab) ? '#'.$this->page_tab : '');
+	}
+
+	/**
+	 * Set page tab.
+	 *
+	 * @param	string	$tab		Page tab
+	 * @return	adminModulesList self instance
+	 */
+	public function setTab($tab)
+	{
+		$this->page_tab = $tab;
+
+		return $this;
+	}
+
+	/**
+	 * Get page tab.
+	 *
+	 * @return	Page tab
+	 */
+	public function getTab()
+	{
+		return $this->page_tab;
+	}
+
+	/**
+	 * Set page redirection.
+	 *
+	 * @param	string	$default		Default redirection
+	 * @return	adminModulesList self instance
+	 */
+	public function setRedir($default='')
+	{
+		$this->page_redir = empty($_REQUEST['redir']) ? $default : $_REQUEST['redir'];
+
+		return $this;
+	}
+
+	/**
+	 * Get page redirection.
+	 *
+	 * @return	Page redirection
+	 */
+	public function getRedir()
+	{
+		return empty($this->page_redir) ? $this->getURL() : $this->page_redir;
+	}
+	//@}
+
+	/// @name Search methods
+	//@{
+	/**
+	 * Get search query.
+	 *
+	 * @return	Search query
+	 */
+	public function getSearch()
+	{
+		$query = !empty($_REQUEST['m_search']) ? trim($_REQUEST['m_search']) : null;
+		return strlen($query) > 2 ? $query : null;
+	}
+
+	/**
+	 * Display searh form.
+	 *
+	 * @return	adminModulesList self instance
+	 */
+	public function displaySearch()
+	{
+		$query = $this->getSearch();
+
+		if (empty($this->data) && $query === null) {
+			return $this;
+		}
+
+		echo 
+		'<form action="'.$this->getURL().'" method="get" class="fieldset">'.
+		'<p><label for="m_search" class="classic">'.__('Search in repository:').'&nbsp;</label><br />'.
+		form::field(array('m_search','m_search'), 30, 255, html::escapeHTML($query)).
+		'<input type="submit" value="'.__('Search').'" /> ';
+		if ($query) { echo ' <a href="'.$this->getURL().'" class="button">'.__('Reset search').'</a>'; }
+		echo '</p>'.
+		'</form>';
+
+		if ($query) {
+			echo 
+			'<p class="message">'.sprintf(
+				__('Found %d result for search "%s":', 'Found %d results for search "%s":', count($this->data)), 
+				count($this->data), html::escapeHTML($query)
+				).
+			'</p>';
+		}
+		return $this;
+	}
+	//@}
+
+	/// @name Navigation menu methods
+	//@{
+	/**
+	 * Set navigation special index.
+	 *
+	 * @return	adminModulesList self instance
+	 */
+	public function setIndex($str)
+	{
+		$this->nav_special = (string) $str;
+		$this->nav_list = array_merge(str_split(self::$nav_indexes), array($this->nav_special));
+
+		return $this;
+	}
+
+	/**
+	 * Get index from query.
+	 *
+	 * @return	Query index or default one
+	 */
+	public function getIndex()
+	{
+		return isset($_REQUEST['m_nav']) && in_array($_REQUEST['m_nav'], $this->nav_list) ? $_REQUEST['m_nav'] : $this->nav_list[0];
+	}
+
+	/**
+	 * Display navigation by index menu.
+	 *
+	 * @return	adminModulesList self instance
+	 */
+	public function displayIndex()
+	{
+		if (empty($this->data) || $this->getSearch() !== null) {
+			return $this;
+		}
+
+		# Fetch modules required field
+		$indexes = array();
+		foreach ($this->data as $id => $module) {
+			if (!isset($module[$this->sort_field])) {
+				continue;
+			}
+			$char = substr($module[$this->sort_field], 0, 1);
+			if (!in_array($char, $this->nav_list)) {
+				$char = $this->nav_special;
+			}
+			if (!isset($indexes[$char])) {
+				$indexes[$char] = 0;
+			}
+			$indexes[$char]++;
+		}
+
+		$buttons = array();
+		foreach($this->nav_list as $char) {
+			# Selected letter
+			if ($this->getIndex() == $char) {
+				$buttons[] = '<li class="active" title="'.__('current selection').'"><strong> '.$char.' </strong></li>';
+			}
+			# Letter having modules
+			elseif (!empty($indexes[$char])) {
+				$title = sprintf(__('%d module', '%d modules', $indexes[$char]), $indexes[$char]);
+				$buttons[] = '<li class="btn" title="'.$title.'"><a href="'.$this->getURL('m_nav='.$char).'" title="'.$title.'"> '.$char.' </a></li>';
+			}
+			# Letter without modules
+			else {
+				$buttons[] = '<li class="btn no-link" title="'.__('no module').'"> '.$char.' </li>';
+			}
+		}
+		# Parse navigation menu
+		echo '<div class="pager">'.__('Browse index:').' <ul>'.implode('',$buttons).'</ul></div>';
+
+		return $this;
+	}
+	//@}
+
+	/// @name Sort methods
+	//@{
+	/**
+	 * Set default sort field.
+	 *
+	 * @return	adminModulesList self instance
+	 */
+	public function setSort($field, $asc=true)
+	{
+		$this->sort_field = $field;
+		$this->sort_asc = (boolean) $asc;
+
+		return $this;
+	}
+
+	/**
+	 * Get sort field from query.
+	 *
+	 * @return	Query sort field or default one
+	 */
+	public function getSort()
+	{
+		return !empty($_REQUEST['m_sort']) ? $_REQUEST['m_sort'] : $this->sort_field;
+	}
+
+	/**
+	 * Display sort field form.
+	 *
+	 * @note	This method is not implemented yet
+	 * @return	adminModulesList self instance
+	 */
+	public function displaySort()
+	{
+		//
+
+		return $this;
+	}
+	//@}
+
+	/// @name Modules methods
+	//@{
+	/**
+	 * Set modules and sanitize them.
+	 *
+	 * @return	adminModulesList self instance
+	 */
+	public function setModules($modules)
+	{
+		$this->data = array();
+		if (!empty($modules) && is_array($modules)) {
+			foreach($modules as $id => $module) {
+				$this->data[$id] = self::sanitizeModule($id, $module);
+			}
+		}
+		return $this;
+	}
+
+	/**
+	 * Get modules currently set.
+	 *
+	 * @return	Array of modules
+	 */
+	public function getModules()
+	{
+		return $this->data;
+	}
+
+	/**
+	 * Sanitize a module.
+	 *
+	 * This clean infos of a module by adding default keys 
+	 * and clean some of them, sanitize module can safely 
+	 * be used in lists.
+	 *
+	 * @return	Array of the module informations
+	 */
+	public static function sanitizeModule($id, $module)
+	{
+		$label = empty($module['label']) ? $id : $module['label'];
+		$name = __(empty($module['name']) ? $label : $module['name']);
+		
+		return array_merge(
+			# Default values
+			array(
+				'desc' 				=> '',
+				'author' 			=> '',
+				'version' 			=> 0,
+				'current_version' 	=> 0,
+				'root' 				=> '',
+				'root_writable' 	=> false,
+				'permissions' 		=> null,
+				'parent' 			=> null,
+				'priority' 			=> 1000,
+				'standalone_config' => false,
+				'support' 			=> '',
+				'section' 			=> '',
+				'tags' 				=> '',
+				'details' 			=> '',
+				'sshot' 			=> '',
+				'score'				=> 0
+			),
+			# Module's values
+			$module,
+			# Clean up values
+			array(
+				'id' 				=> $id,
+				'sid' 				=> self::sanitizeString($id),
+				'label' 			=> $label,
+				'name' 				=> $name,
+				'sname' 			=> self::sanitizeString($name)
+			)
+		);
+	}
+
+	/**
+	 * Check if a module is part of the distribution.
+	 *
+	 * @param	string	$id		Module root directory
+	 * @return	True if module is part of the distribution
+	 */
+	public static function isDistributedModule($id)
+	{
+		$distributed_modules = self::$distributed_modules;
+
+		return is_array($distributed_modules) && in_array($id, $distributed_modules);
+	}
+
+	/**
+	 * Sort modules list by specific field.
+	 *
+	 * @param	string	$module		Array of modules
+	 * @param	string	$field		Field to sort from
+	 * @param	bollean	$asc		Sort asc if true, else decs
+	 * @return	Array of sorted modules
+	 */
+	public static function sortModules($modules, $field, $asc=true)
+	{
+		$sorter = array();
+		foreach($modules as $id => $module) {
+			$sorter[$id] = isset($module[$field]) ? $module[$field] : $field;
+		}
+		array_multisort($sorter, $asc ? SORT_ASC : SORT_DESC, $modules);
+
+		return $modules;
+	}
+
+	/**
+	 * Display list of modules.
+	 *
+	 * @param	array	$cols		List of colones (module field) to display
+	 * @param	array	$actions	List of predefined actions to show on form
+	 * @param	boolean	$nav_limit	Limit list to previously selected index
+	 * @return	adminModulesList self instance
+	 */
+	public function displayModules($cols=array('name', 'version', 'desc'), $actions=array(), $nav_limit=false)
+	{
+		echo 
+		'<div class="table-outer">'.
+		'<table id="'.html::escapeHTML($this->list_id).'" class="modules'.(in_array('expander', $cols) ? ' expandable' : '').'">'.
+		'<caption class="hidden">'.html::escapeHTML(__('Modules list')).'</caption><tr>';
+
+		if (in_array('name', $cols)) {
+			echo 
+			'<th class="first nowrap"'.(in_array('icon', $cols) ? ' colspan="2"' : '').'>'.__('Name').'</th>';
+		}
+
+		if (in_array('score', $cols) && $this->getSearch() !== null && defined('DC_DEBUG') && DC_DEBUG) {
+			echo 
+			'<th class="nowrap">'.__('Score').'</th>';
+		}
+
+		if (in_array('version', $cols)) {
+			echo 
+			'<th class="nowrap count" scope="col">'.__('Version').'</th>';
+		}
+
+		if (in_array('current_version', $cols)) {
+			echo 
+			'<th class="nowrap count" scope="col">'.__('Current version').'</th>';
+		}
+
+		if (in_array('desc', $cols)) {
+			echo 
+			'<th class="nowrap" scope="col">'.__('Details').'</th>';
+		}
+
+		if (in_array('distrib', $cols)) {
+			echo '<th'.(in_array('desc', $cols) ? '' : ' class="maximal"').'></th>';
+		}
+
+		if (!empty($actions) && $this->core->auth->isSuperAdmin()) {
+			echo 
+			'<th class="minimal nowrap">'.__('Action').'</th>';
+		}
+
+		echo 
+		'</tr>';
+
+		$sort_field = $this->getSort();
+
+		# Sort modules by $sort_field (default sname)
+		$modules = $this->getSearch() === null ?
+			self::sortModules($this->data, $sort_field, $this->sort_asc) :
+			$this->data;
+
+		$count = 0;
+		foreach ($modules as $id => $module)
+		{
+			# Show only requested modules
+			if ($nav_limit && $this->getSearch() === null) {
+				$char = substr($module[$sort_field], 0, 1);
+				if (!in_array($char, $this->nav_list)) {
+					$char = $this->nav_special;
+				}
+				if ($this->getIndex() != $char) {
+					continue;
+				}
+			}
+
+			echo 
+			'<tr class="line" id="'.html::escapeHTML($this->list_id).'_m_'.html::escapeHTML($id).'">';
+
+			if (in_array('icon', $cols)) {
+				echo 
+				'<td class="module-icon nowrap">'.sprintf(
+					'<img alt="%1$s" title="%1$s" src="%2$s" />', 
+					html::escapeHTML($id), file_exists($module['root'].'/icon.png') ? 'index.php?pf='.$id.'/icon.png' : 'images/module.png'
+				).'</td>';
+			}
+
+			# Link to config file
+			$config = in_array('config', $cols) && !empty($module['root']) && file_exists(path::real($module['root'].'/_config.php'));
+
+			echo 
+			'<td class="module-name nowrap" scope="row">'.($config ? 
+				'<a href="'.$this->getURL('module='.$id.'&conf=1').'" title"'.sprintf(__('Configure module "%s"'), html::escapeHTML($module['name'])).'">'.html::escapeHTML($module['name']).'</a>' : 
+				html::escapeHTML($module['name'])
+			).'</td>';
+
+			# Display score only for debug purpose
+			if (in_array('score', $cols) && $this->getSearch() !== null && defined('DC_DEBUG') && DC_DEBUG) {
+				echo 
+				'<td class="module-version nowrap count"><span class="debug">'.$module['score'].'</span></td>';
+			}
+
+			if (in_array('version', $cols)) {
+				echo 
+				'<td class="module-version nowrap count">'.html::escapeHTML($module['version']).'</td>';
+			}
+
+			if (in_array('current_version', $cols)) {
+				echo 
+				'<td class="module-current-version nowrap count">'.html::escapeHTML($module['current_version']).'</td>';
+			}
+
+			if (in_array('desc', $cols)) {
+				echo 
+				'<td class="module-desc maximal">'.html::escapeHTML($module['desc']).'</td>';
+			}
+
+			if (in_array('distrib', $cols)) {
+				echo 
+				'<td class="module-distrib">'.(self::isDistributedModule($id) ? 
+					'<img src="images/dotclear_pw.png" alt="'.
+					__('Module from official distribution').'" title="'.
+					__('module from official distribution').'" />' 
+				: '').'</td>';
+			}
+
+			if (!empty($actions) && $this->core->auth->isSuperAdmin()) {
+				$buttons = $this->getActions($id, $module, $actions);
+
+				echo 
+				'<td class="module-actions nowrap">'.
+
+				'<form action="'.$this->getURL().'" method="post">'.
+				'<div>'.
+				$this->core->formNonce().
+				form::hidden(array('module'), html::escapeHTML($id)).
+
+				implode(' ', $buttons).
+
+				'</div>'.
+				'</form>'.
+
+				'</td>';
+			}
+
+			echo 
+			'</tr>';
+
+			$count++;
+		}
+		echo 
+		'</table></div>';
+
+		if(!$count && $this->getSearch() === null) {
+			echo 
+			'<p class="message">'.__('No module matches your search.').'</p>';
+		}
+
+		return $this;
+	}
+
+	/**
+	 * Get action buttons to add to modules list.
+	 *
+	 * @param	string	$id			Module ID
+	 * @param	array	$module		Module info
+	 * @param	array	$actions	Actions keys
+	 * @return	Array of actions buttons
+	 */
+	protected function getActions($id, $module, $actions)
+	{
+		$submits = array();
+
+		# Use loop to keep requested order
+		foreach($actions as $action) {
+			switch($action) {
+
+				# Deactivate
+				case 'activate': if ($module['root_writable']) {
+					$submits[] = 
+					'<input type="submit" name="activate" value="'.__('Activate').'" />';
+				} break;
+
+				# Activate
+				case 'deactivate': if ($module['root_writable']) {
+					$submits[] = 
+					'<input type="submit" name="deactivate" value="'.__('Deactivate').'" class="reset" />';
+				} break;
+
+				# Delete
+				case 'delete': if ($this->isDeletablePath($module['root'])) {
+					$dev = !preg_match('!^'.$this->path_pattern.'!', $module['root']) && defined('DC_DEV') && DC_DEV ? ' debug' : '';
+					$submits[] = 
+					'<input type="submit" class="delete '.$dev.'" name="delete" value="'.__('Delete').'" />';
+				} break;
+
+				# Install (from store)
+				case 'install': if ($this->path_writable) {
+					$submits[] = 
+					'<input type="submit" name="install" value="'.__('Install').'" />';
+				} break;
+
+				# Update (from store)
+				case 'update': if ($this->path_writable) {
+					$submits[] = 
+					'<input type="submit" name="update" value="'.__('Update').'" />';
+				} break;
+
+				# Behavior
+				case 'behavior':
+
+					# --BEHAVIOR-- adminModulesListGetActions
+					$tmp = $this->core->callBehavior('adminModulesListGetActions', $this, $id, $module);
+
+					if (!empty($tmp)) {
+						$submits[] = $tmp;
+					}
+				break;
+			}
+		}
+
+
+		return $submits;
+	}
+
+	/**
+	 * Execute POST action.
+	 *
+	 * @note	Set a notice on success through dcPage::addSuccessNotice
+	 * @throw	Exception	Module not find or command failed
+	 * @param	string	$prefix		Prefix used on behaviors
+	 * @return	Null
+	 */
+	public function doActions($prefix)
+	{
+		if (empty($_POST) || !empty($_REQUEST['conf']) 
+		|| !$this->core->auth->isSuperAdmin() || !$this->isWritablePath()) {
+			return null;
+		}
+
+		# List actions
+		if (!empty($_POST['module'])) {
+
+			$id = $_POST['module'];
+
+			if (!empty($_POST['activate'])) {
+
+				$enabled = $this->modules->getDisabledModules();
+				if (!isset($enabled[$id])) {
+					throw new Exception(__('No such module.'));
+				}
+
+				# --BEHAVIOR-- moduleBeforeActivate
+				$this->core->callBehavior($prefix.'BeforeActivate', $id);
+
+				$this->modules->activateModule($id);
+
+				# --BEHAVIOR-- moduleAfterActivate
+				$this->core->callBehavior($prefix.'AfterActivate', $id);
+
+				dcPage::addSuccessNotice(__('Module has been successfully activated.'));
+				http::redirect($this->getURL());
+			}
+
+			elseif (!empty($_POST['deactivate'])) {
+
+				if (!$this->modules->moduleExists($id)) {
+					throw new Exception(__('No such module.'));
+				}
+
+				$module = $this->modules->getModules($id);
+				$module['id'] = $id;
+
+				if (!$module['root_writable']) {
+					throw new Exception(__('You don\'t have permissions to deactivate this module.'));
+				}
+
+				# --BEHAVIOR-- moduleBeforeDeactivate
+				$this->core->callBehavior($prefix.'BeforeDeactivate', $module);
+
+				$this->modules->deactivateModule($id);
+
+				# --BEHAVIOR-- moduleAfterDeactivate
+				$this->core->callBehavior($prefix.'AfterDeactivate', $module);
+
+				dcPage::addSuccessNotice(__('Module has been successfully deactivated.'));
+				http::redirect($this->getURL());
+			}
+
+			elseif (!empty($_POST['delete'])) {
+
+				$disabled = $this->modules->getDisabledModules();
+				if (!isset($disabled[$id])) {
+
+					if (!$this->modules->moduleExists($id)) {
+						throw new Exception(__('No such module.'));
+					}
+
+					$module = $this->modules->getModules($id);
+					$module['id'] = $id;
+
+					if (!$this->isDeletablePath($module['root'])) {
+						throw new Exception(__("You don't have permissions to delete this module."));
+					}
+
+					# --BEHAVIOR-- moduleBeforeDelete
+					$this->core->callBehavior($prefix.'BeforeDelete', $module);
+
+					$this->modules->deleteModule($id);
+
+					# --BEHAVIOR-- moduleAfterDelete
+					$this->core->callBehavior($prefix.'AfterDelete', $module);
+				}
+				else {
+					$this->modules->deleteModule($id, true);
+				}
+
+				dcPage::addSuccessNotice(__('Module has been successfully deleted.'));
+				http::redirect($this->getURL());
+			}
+
+			elseif (!empty($_POST['install'])) {
+
+				$updated = $this->store->get();
+				if (!isset($updated[$id])) {
+					throw new Exception(__('No such module.'));
+				}
+
+				$module = $updated[$id];
+				$module['id'] = $id;
+
+				$dest = $this->getPath().'/'.basename($module['file']);
+
+				# --BEHAVIOR-- moduleBeforeAdd
+				$this->core->callBehavior($prefix.'BeforeAdd', $module);
+
+				$ret_code = $this->store->process($module['file'], $dest);
+
+				# --BEHAVIOR-- moduleAfterAdd
+				$this->core->callBehavior($prefix.'AfterAdd', $module);
+
+				dcPage::addSuccessNotice($ret_code == 2 ?
+					__('Module has been successfully updated.') :
+					__('Module has been successfully installed.')
+				);
+				http::redirect($this->getURL());
+			}
+
+			elseif (!empty($_POST['update'])) {
+
+				$updated = $this->store->get();
+				if (!isset($updated[$id])) {
+					throw new Exception(__('No such module.'));
+				}
+
+				if (!$this->modules->moduleExists($id)) {
+					throw new Exception(__('No such module.'));
+				}
+
+				$module = $updated[$id];
+				$module['id'] = $id;
+
+				if (!self::$allow_multi_install) {
+					$dest = $module['root'].'/../'.basename($module['file']);
+				}
+				else {
+					$dest = $this->getPath().'/'.basename($module['file']);
+					if ($module['root'] != $dest) {
+						@file_put_contents($module['root'].'/_disabled', '');
+					}
+				}
+
+				# --BEHAVIOR-- moduleBeforeUpdate
+				$this->core->callBehavior($prefix.'BeforeUpdate', $module);
+
+				$this->store->process($module['file'], $dest);
+
+				# --BEHAVIOR-- moduleAfterUpdate
+				$this->core->callBehavior($prefix.'AfterUpdate', $module);
+
+				dcPage::addSuccessNotice(__('Module has been successfully updated.'));
+				http::redirect($this->getURL());
+			}
+			else {
+
+				# --BEHAVIOR-- adminModulesListDoActions
+				$this->core->callBehavior('adminModulesListDoActions', $this, $id, $prefix);
+
+			}
+		}
+		# Manual actions
+		elseif (!empty($_POST['upload_pkg']) && !empty($_FILES['pkg_file']) 
+			|| !empty($_POST['fetch_pkg']) && !empty($_POST['pkg_url']))
+		{
+			if (empty($_POST['your_pwd']) || !$this->core->auth->checkPassword(crypt::hmac(DC_MASTER_KEY, $_POST['your_pwd']))) {
+				throw new Exception(__('Password verification failed'));
+			}
+
+			if (!empty($_POST['upload_pkg'])) {
+				files::uploadStatus($_FILES['pkg_file']);
+				
+				$dest = $this->getPath().'/'.$_FILES['pkg_file']['name'];
+				if (!move_uploaded_file($_FILES['pkg_file']['tmp_name'], $dest)) {
+					throw new Exception(__('Unable to move uploaded file.'));
+				}
+			}
+			else {
+				$url = urldecode($_POST['pkg_url']);
+				$dest = $this->getPath().'/'.basename($url);
+				$this->store->download($url, $dest);
+			}
+
+			# --BEHAVIOR-- moduleBeforeAdd
+			$this->core->callBehavior($prefix.'BeforeAdd', null);
+
+			$ret_code = $this->store->install($dest);
+
+			# --BEHAVIOR-- moduleAfterAdd
+			$this->core->callBehavior($prefix.'AfterAdd', null);
+
+			dcPage::addSuccessNotice($ret_code == 2 ?
+				__('Module has been successfully updated.') :
+				__('Module has been successfully installed.')
+			);
+			http::redirect($this->getURL().'#'.$prefix);
+		}
+
+		return null;
+	}
+
+	/**
+	 * Display tab for manual installation.
+	 *
+	 * @return	adminModulesList self instance
+	 */
+	public function displayManualForm()
+	{
+		if (!$this->core->auth->isSuperAdmin() || !$this->isWritablePath()) {
+			return null;
+		}
+
+		# 'Upload module' form
+		echo
+		'<form method="post" action="'.$this->getURL().'" id="uploadpkg" enctype="multipart/form-data" class="fieldset">'.
+		'<h4>'.__('Upload a zip file').'</h4>'.
+		'<p class="field"><label for="pkg_file" class="classic required"><abbr title="'.__('Required field').'">*</abbr> '.__('Zip file path:').'</label> '.
+		'<input type="file" name="pkg_file" id="pkg_file" /></p>'.
+		'<p class="field"><label for="your_pwd1" class="classic required"><abbr title="'.__('Required field').'">*</abbr> '.__('Your password:').'</label> '.
+		form::password(array('your_pwd','your_pwd1'),20,255).'</p>'.
+		'<p><input type="submit" name="upload_pkg" value="'.__('Upload').'" />'.
+		$this->core->formNonce().'</p>'.
+		'</form>';
+
+		# 'Fetch module' form
+		echo
+		'<form method="post" action="'.$this->getURL().'" id="fetchpkg" class="fieldset">'.
+		'<h4>'.__('Download a zip file').'</h4>'.
+		'<p class="field"><label for="pkg_url" class="classic required"><abbr title="'.__('Required field').'">*</abbr> '.__('Zip file URL:').'</label> '.
+		form::field(array('pkg_url','pkg_url'),40,255).'</p>'.
+		'<p class="field"><label for="your_pwd2" class="classic required"><abbr title="'.__('Required field').'">*</abbr> '.__('Your password:').'</label> '.
+		form::password(array('your_pwd','your_pwd2'),20,255).'</p>'.
+		'<p><input type="submit" name="fetch_pkg" value="'.__('Download').'" />'.
+		$this->core->formNonce().'</p>'.
+		'</form>';
+
+		return $this;
+	}
+	//@}
+
+	/// @name Module configuration methods
+	//@{
+	/**
+	 * Prepare module configuration.
+	 *
+	 * We need to get configuration content in three steps
+	 * and out of this class to keep backward compatibility.
+	 *
+	 * if ($xxx->setConfiguration()) {
+	 *	include $xxx->includeConfiguration();
+	 * }
+	 * $xxx->getConfiguration();
+	 * ... [put here page headers and other stuff]
+	 * $xxx->displayConfiguration();
+	 *
+	 * @param	string	$id		Module to work on or it gather through REQUEST
+	 * @return	True if config set
+	 */
+	public function setConfiguration($id=null)
+	{
+		if (empty($_REQUEST['conf']) || empty($_REQUEST['module']) && !$id) {
+			return false;
+		}
+		
+		if (!empty($_REQUEST['module']) && empty($id)) {
+			$id = $_REQUEST['module'];
+		}
+
+		if (!$this->modules->moduleExists($id)) {
+			$core->error->add(__('Unknow module ID'));
+			return false;
+		}
+
+		$module = $this->modules->getModules($id);
+		$module = self::sanitizeModule($id, $module);
+		$file = path::real($module['root'].'/_config.php');
+
+		if (!file_exists($file)) {
+			$core->error->add(__('This module has no configuration file.'));
+			return false;
+		}
+
+		$this->config_module = $module;
+		$this->config_file = $file;
+		$this->config_content = '';
+
+		if (!defined('DC_CONTEXT_MODULE')) {
+			define('DC_CONTEXT_MODULE', true);
+		}
+
+		return true;
+	}
+
+	/**
+	 * Get path of module configuration file.
+	 *
+	 * @note Required previously set file info
+	 * @return Full path of config file or null
+	 */
+	public function includeConfiguration()
+	{
+		if (!$this->config_file) {
+			return null;
+		}
+		$this->setRedir($this->getURL().'#plugins');
+
+		ob_start();
+
+		return $this->config_file;
+	}
+
+	/**
+	 * Gather module configuration file content.
+	 *
+	 * @note Required previously file inclusion
+	 * @return True if content has been captured
+	 */
+	public function getConfiguration()
+	{
+		if ($this->config_file) {
+			$this->config_content = ob_get_contents();
+		}
+
+		ob_end_clean();
+
+		return !empty($this->file_content);
+	}
+
+	/**
+	 * Display module configuration form.
+	 *
+	 * @note Required previously gathered content
+	 * @return	adminModulesList self instance
+	 */
+	public function displayConfiguration()
+	{
+		if ($this->config_file) {
+
+			if (!$this->config_module['standalone_config']) {
+				echo
+				'<form id="module_config" action="'.$this->getURL('conf=1').'" method="post" enctype="multipart/form-data">'.
+				'<h3>'.sprintf(__('Configure plugin "%s"'), html::escapeHTML($this->config_module['name'])).'</h3>'.
+				'<p><a class="back" href="'.$this->getRedir().'">'.__('Back').'</a></p>';
+			}
+
+			echo $this->config_content;
+
+			if (!$this->config_module['standalone_config']) {
+				echo
+				'<p class="clear"><input type="submit" name="save" value="'.__('Save').'" />'.
+				form::hidden('module', $this->config_module['id']).
+				form::hidden('redir', $this->getRedir()).
+				$this->core->formNonce().'</p>'.
+				'</form>';
+			}
+		}
+
+		return $this;
+	}
+	//@}
+
+	/**
+	 * Helper to sanitize a string.
+	 *
+	 * Used for search or id.
+	 *
+	 * @param	string	$str		String to sanitize
+	 * @return	Sanitized string
+	 */
+	public static function sanitizeString($str)
+	{
+		return preg_replace('/[^A-Za-z0-9\@\#+_-]/', '', strtolower($str));
+	}
+}
+
+/**
+ * @ingroup DC_CORE
+ * @brief Helper to manage list of themes.
+ * @since 2.6
+ */
+class adminThemesList extends adminModulesList
+{
+	protected $page_url = 'blog_theme.php';
+
+	public function displayModules($cols=array('name', 'config', 'version', 'desc'), $actions=array(), $nav_limit=false)
+	{
+		echo 
+		'<div id="'.html::escapeHTML($this->list_id).'" class="modules'.(in_array('expander', $cols) ? ' expandable' : '').' one-box">';
+
+		$sort_field = $this->getSort();
+
+		# Sort modules by id
+		$modules = $this->getSearch() === null ?
+			self::sortModules($this->data, $sort_field, $this->sort_asc) :
+			$this->data;
+
+		$res = '';
+		$count = 0;
+		foreach ($modules as $id => $module)
+		{
+			# Show only requested modules
+			if ($nav_limit && $this->getSearch() === null) {
+				$char = substr($module[$sort_field], 0, 1);
+				if (!in_array($char, $this->nav_list)) {
+					$char = $this->nav_special;
+				}
+				if ($this->getIndex() != $char) {
+					continue;
+				}
+			}
+
+			$current = $this->core->blog->settings->system->theme == $id && $this->modules->moduleExists($id);
+			$distrib = self::isDistributedModule($id) ? ' dc-box' : '';
+
+			$line = 
+			'<div class="box '.($current ? 'medium current-theme' : 'small theme').$distrib.'">';
+
+			if (in_array('name', $cols)) {
+				$line .= 
+				'<h4 class="module-name">'.html::escapeHTML($module['name']).'</h4>';
+			}
+
+			# Display score only for debug purpose
+			if (in_array('score', $cols) && $this->getSearch() !== null && defined('DC_DEBUG') && DC_DEBUG) {
+				$line .= 
+				'<p class="module-score debug">'.sprintf(__('Score: %s'), $module['score']).'</p>';
+			}
+
+			if (in_array('sshot', $cols)) {
+				# Screenshot from url
+				if (preg_match('#^http(s)?://#', $module['sshot'])) {
+					$sshot = $module['sshot'];
+				}
+				# Screenshot from installed module
+				elseif (file_exists($this->core->blog->themes_path.'/'.$id.'/screenshot.jpg')) {
+					$sshot = $this->getURL('shot='.rawurlencode($id));
+				}
+				# Default screenshot
+				else {
+					$sshot = 'images/noscreenshot.png';
+				}
+
+				$line .= 
+				'<div class="module-sshot"><img src="'.$sshot.'" alt="'.
+				sprintf(__('%s screenshot.'), html::escapeHTML($module['name'])).'" /></div>';
+			}
+
+			$line .= 
+			'<div class="module-infos toggle-bloc">'.
+			'<p>';
+
+			if (in_array('desc', $cols)) {
+				$line .= 
+				'<span class="module-desc">'.html::escapeHTML($module['desc']).'</span> ';
+			}
+
+			if (in_array('author', $cols)) {
+				$line .= 
+				'<span class="module-author">'.sprintf(__('by %s'),html::escapeHTML($module['author'])).'</span> ';
+			}
+
+			if (in_array('version', $cols)) {
+				$line .= 
+				'<span class="module-version">'.sprintf(__('version %s'),html::escapeHTML($module['version'])).'</span> ';
+			}
+
+			if (in_array('current_version', $cols)) {
+				$line .= 
+				'<span class="module-current-version">'.sprintf(__('(current version %s)'),html::escapeHTML($module['current_version'])).'</span> ';
+			}
+
+			if (in_array('parent', $cols) && !empty($module['parent'])) {
+				if ($this->modules->moduleExists($module['parent'])) {
+					$line .= 
+					'<span class="module-parent-ok">'.sprintf(__('(built on "%s")'),html::escapeHTML($module['parent'])).'</span> ';
+				}
+				else {
+					$line .= 
+					'<span class="module-parent-missing">'.sprintf(__('(requires "%s")'),html::escapeHTML($module['parent'])).'</span> ';
+				}
+			}
+
+			$has_details = in_array('details', $cols) && !empty($module['details']);
+			$has_support = in_array('support', $cols) && !empty($module['support']);
+			if ($has_details || $has_support) {
+				$line .=
+				'<span class="mod-more">'.__('Help:').' ';
+
+				if ($has_details) {
+					$line .= 
+					'<a class="module-details" href="'.$module['details'].'">'.__('Details').'</a>';
+				}
+
+				if ($has_support) {
+					$line .= 
+					' - <a class="module-support" href="'.$module['support'].'">'.__('Support').'</a>';
+				}
+
+				$line .=
+				'</span>';
+			}
+
+			$line .= 
+			'</p>'.
+			'</div>';
+
+			$line .= 
+			'<div class="module-actions toggle-bloc">';
+			
+			# Plugins actions
+			if ($current) {
+
+				# _GET actions
+				if (file_exists(path::real($this->core->blog->themes_path.'/'.$id).'/style.css')) {
+					$theme_url = preg_match('#^http(s)?://#', $this->core->blog->settings->system->themes_url) ?
+						http::concatURL($this->core->blog->settings->system->themes_url, '/'.$id) :
+						http::concatURL($this->core->blog->url, $this->core->blog->settings->system->themes_url.'/'.$id);
+					$line .= 
+					'<p><a href="'.$theme_url.'/style.css">'.__('View stylesheet').'</a></p>';
+				}
+
+				if (file_exists(path::real($this->core->blog->themes_path.'/'.$id).'/_config.php')) {
+					$line .= 
+					'<p><a href="'.$this->getURL('module='.$id.'&conf=1', false).'" class="button">'.__('Configure theme').'</a></p>';
+				}
+
+				# --BEHAVIOR-- adminCurrentThemeDetails
+				$line .= 
+				$this->core->callBehavior('adminCurrentThemeDetails', $this->core, $id, $module);
+			}
+
+			# _POST actions
+			if (!empty($actions)) {
+				$line .=
+				'<form action="'.$this->getURL().'" method="post">'.
+				'<div>'.
+				$this->core->formNonce().
+				form::hidden(array('module'), html::escapeHTML($id)).
+
+				implode(' ', $this->getActions($id, $module, $actions)).
+ 
+				'</div>'.
+				'</form>';
+			}
+
+			$line .= 
+			'</div>';
+
+			$line .=
+			'</div>';
+
+			$count++;
+
+			$res = $current ? $line.$res : $res.$line;
+		}
+		echo 
+		$res.
+		'</div>';
+
+		if(!$count && $this->getSearch() === null) {
+			echo 
+			'<p class="message">'.__('No module matches your search.').'</p>';
+		}
+	}
+
+	protected function getActions($id, $module, $actions)
+	{
+		$submits = array();
+
+		$this->core->blog->settings->addNamespace('system');
+		if ($id != $this->core->blog->settings->system->theme) {
+
+			# Select theme to use on curent blog
+			if (in_array('select', $actions) && $this->path_writable) {
+				$submits[] = 
+				'<input type="submit" name="select" value="'.__('Use this one').'" />';
+			}
+		}
+
+		return array_merge(
+			$submits,
+			parent::getActions($id, $module, $actions)
+		);
+	}
+
+	public function doActions($prefix)
+	{
+		if (!empty($_POST) && empty($_REQUEST['conf']) && $this->isWritablePath()) {
+
+			# Select theme to use on curent blog
+			if (!empty($_POST['module']) && !empty($_POST['select'])) {
+				$id = $_POST['module'];
+
+				if (!$this->modules->moduleExists($id)) {
+					throw new Exception(__('No such module.'));
+				}
+
+				$this->core->blog->settings->addNamespace('system');
+				$this->core->blog->settings->system->put('theme',$id);
+				$this->core->blog->triggerBlog();
+
+				dcPage::addSuccessNotice(__('Module has been successfully selected.'));
+				http::redirect($this->getURL().'#themes');
+			}
+		}
+
+		return parent::doActions($prefix);
+	}
+}
Index: inc/admin/prepend.php
===================================================================
--- inc/admin/prepend.php	(revision 2247)
+++ inc/admin/prepend.php	(revision 2229)
@@ -262,5 +262,5 @@
 	$_menu['Blog']->prependItem(__('New entry'),'post.php','images/menu/edit.png',
 		preg_match('/post.php$/',$_SERVER['REQUEST_URI']),
-		$core->auth->check('usage,contentadmin',$core->blog->id));
+		$core->auth->check('usage,contentadmin',$core->blog->id),'menu-new-post');
 	
 	$_menu['System']->prependItem(__('Update'),'update.php','images/menu/update.png',
Index: inc/core/class.dc.modules.php
===================================================================
--- inc/core/class.dc.modules.php	(revision 2245)
+++ inc/core/class.dc.modules.php	(revision 2239)
@@ -244,5 +244,5 @@
 	{
 		$zip = new fileUnzip($zip_file);
-		$zip->getList(false,'#(^|/)(__MACOSX|\.svn|\.hg|\.git|\.DS_Store|\.directory|Thumbs\.db)(/|$)#');
+		$zip->getList(false,'#(^|/)(__MACOSX|\.svn|\.DS_Store|\.directory|Thumbs\.db)(/|$)#');
 		
 		$zip_root_dir = $zip->getRootDir();
Index: inc/core/class.dc.store.parser.php
===================================================================
--- inc/core/class.dc.store.parser.php	(revision 2222)
+++ inc/core/class.dc.store.parser.php	(revision 2222)
@@ -0,0 +1,106 @@
+<?php
+# -- BEGIN LICENSE BLOCK ---------------------------------------
+#
+# This file is part of Dotclear 2.
+#
+# Copyright (c) 2003-2013 Olivier Meunier & Association Dotclear
+# Licensed under the GPL version 2.0 license.
+# See LICENSE file or
+# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
+#
+# -- END LICENSE BLOCK -----------------------------------------
+if (!defined('DC_RC_PATH')) { return; }
+
+/**
+@ingroup DC_CORE
+@brief Repository modules XML feed parser
+@since 2.6
+
+Provides an object to parse XML feed of modules from a repository.
+*/
+class dcStoreParser
+{
+	/** @var	object	XML object of feed contents */
+	protected $xml;
+	/** @var	array	Array of feed contents */
+	protected $items;
+	/** @var	string	XML bloc tag */
+	protected static $bloc = 'http://dotaddict.org/da/';
+
+	/**
+	 * Constructor.
+	 *
+	 * @param	string	$data		Feed content
+	 */
+	public function __construct($data)
+	{
+		if (!is_string($data)) {
+			throw new Exception(__('Failed to read data feed'));
+		}
+
+		$this->xml = simplexml_load_string($data);
+		$this->items = array();
+
+		if ($this->xml === false) {
+			throw new Exception(__('Wrong data feed'));
+		}
+
+		$this->_parse();
+
+		unset($data);
+		unset($this->xml);
+	}
+
+	/**
+	 * Parse XML into array
+	 */
+	protected function _parse()
+	{
+		if (empty($this->xml->module)) {
+			return;
+		}
+
+		foreach ($this->xml->module as $i) {
+			$attrs = $i->attributes();
+
+			$item = array();
+
+			# DC/DA shared markers
+			$item['id']		= (string) $attrs['id'];
+			$item['file']		= (string) $i->file;
+			$item['label']		= (string) $i->name; // deprecated
+			$item['name']		= (string) $i->name;
+			$item['version']	= (string) $i->version;
+			$item['author']	= (string) $i->author;
+			$item['desc']		= (string) $i->desc;
+
+			# DA specific markers
+			$item['dc_min'] 	= (string) $i->children(self::$bloc)->dcmin;
+			$item['details'] 	= (string) $i->children(self::$bloc)->details;
+			$item['section'] 	= (string) $i->children(self::$bloc)->section;
+			$item['support'] 	= (string) $i->children(self::$bloc)->support;
+			$item['sshot']		= (string) $i->children(self::$bloc)->sshot;
+
+			$tags = array();
+			foreach($i->children(self::$bloc)->tags as $t) {
+				$tags[] = (string) $t->tag;
+			}
+			$item['tags']		= implode(', ',$tags);
+			
+			# First filter right now. If DC_DEV is set all modules are parse
+			if (defined('DC_DEV') && DC_DEV === true || version_compare(DC_VERSION,$item['dc_min'],'>=')) {
+				$this->items[$item['id']] = $item;
+			}
+		}
+	}
+
+	/**
+	 * Get modules.
+	 *
+	 * @return	array		Modules list
+	 */
+	public function getModules()
+	{
+		return $this->items;
+	}
+}
Index: inc/core/class.dc.store.php
===================================================================
--- inc/core/class.dc.store.php	(revision 2222)
+++ inc/core/class.dc.store.php	(revision 2222)
@@ -0,0 +1,287 @@
+<?php
+# -- BEGIN LICENSE BLOCK ---------------------------------------
+#
+# This file is part of Dotclear 2.
+#
+# Copyright (c) 2003-2013 Olivier Meunier & Association Dotclear
+# Licensed under the GPL version 2.0 license.
+# See LICENSE file or
+# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
+#
+# -- END LICENSE BLOCK -----------------------------------------
+if (!defined('DC_RC_PATH')) { return; }
+
+/**
+@ingroup DC_CORE
+@brief Repository modules XML feed reader
+@since 2.6
+
+Provides an object to parse XML feed of modules from repository.
+*/
+class dcStore
+{
+	/** @var	object	dcCore instance */
+	public $core;
+	/** @var	object	dcModules instance */
+	public $modules;
+
+	/** @var	array	Modules fields to search on and their weighting */
+	public static $weighting = array('id' => 10, 'name' => 8, 'author' => 6, 'tags' => 4, 'desc' => 2);
+
+	/** @var	string	User agent used to query repository */
+	protected $user_agent = 'DotClear.org RepoBrowser/0.1';
+	/** @var	string	XML feed URL */
+	protected $xml_url;
+	/** @var	array	Array of new/update modules from repository */
+	protected $data;
+
+	/**
+	 * Constructor.
+	 *
+	 * @param	object	$modules		dcModules instance
+	 * @param	string	$xml_url		XML feed URL
+	 */
+	public function __construct(dcModules $modules, $xml_url)
+	{
+		$this->core = $modules->core;
+		$this->modules = $modules;
+		$this->xml_url = $xml_url;
+		$this->user_agent = sprintf('Dotclear/%s)', DC_VERSION);
+
+		$this->check();
+	}
+
+	/**
+	 * Check repository.
+	 *
+	 * @param	boolean	$force		Force query repository
+	 * @return	boolean	True if get feed or cache
+	 */
+	public function check($force=false)
+	{
+		if (!$this->xml_url) {
+			return false;
+		}
+		if (($parser = dcStoreReader::quickParse($this->xml_url, DC_TPL_CACHE, $force)) === false) {
+			return false;
+		}
+
+		$raw_datas = $parser->getModules();
+
+		uasort($raw_datas, array('self','sort'));
+
+		$skipped = array_keys($this->modules->getDisabledModules());
+		foreach ($skipped as $p_id) {
+			if (isset($raw_datas[$p_id])) {
+				unset($raw_datas[$p_id]);
+			}
+		}
+
+		$updates = array();
+		$current = $this->modules->getModules();
+		foreach ($current as $p_id => $p_infos) {
+			if (isset($raw_datas[$p_id])) {
+				if (self::compare($raw_datas[$p_id]['version'],$p_infos['version'],'>')) {
+					$updates[$p_id] = $raw_datas[$p_id];
+					$updates[$p_id]['root'] = $p_infos['root'];
+					$updates[$p_id]['root_writable'] = $p_infos['root_writable'];
+					$updates[$p_id]['current_version'] = $p_infos['version'];
+				}
+				unset($raw_datas[$p_id]);
+			}
+		}
+
+		$this->data = array(
+			'new'	=> $raw_datas,
+			'update'	=> $updates
+		);
+
+		return true;
+	}
+
+	/**
+	 * Get a list of modules.
+	 *
+	 * @param	boolean	$update	True to get update modules, false for new ones
+	 * @return	array	List of update/new modules
+	 */
+	public function get($update=false)
+	{
+		return $this->data[$update ? 'update' : 'new'];
+	}
+
+	/**
+	 * Search a module.
+	 *
+	 * Search string is cleaned, split and compare to split:
+	 * - module id and clean id,
+	 * - module name, clean name,
+	 * - module desccription.
+	 *
+	 * Every time a part of query is find on module,
+	 * result accuracy grow. Result is sorted by accuracy.
+	 *
+	 * @param	string	$pattern	String to search
+	 * @return	array	Match modules
+	 */
+	public function search($pattern)
+	{
+		$result = array();
+
+		# Split query into small clean words
+		if (!($patterns = self::patternize($pattern))) {
+			return $result;
+		}
+
+		# For each modules
+		foreach ($this->data['new'] as $id => $module) {
+			$module['id'] = $id;
+
+			# Loop through required module fields
+			foreach(self::$weighting as $field => $weight) {
+
+				# Skip fields which not exsist on module
+				if (empty($module[$field])) {
+					continue;
+				}
+
+				# Split field value into small clean word
+				if (!($subjects = self::patternize($module[$field]))) {
+					continue;
+				}
+
+				# Check contents
+				if (!($nb = preg_match_all('/('.implode('|', $patterns).')/', implode(' ', $subjects), $_))) {
+					continue;
+				}
+
+				# Add module to result
+				if (!isset($sorter[$id])) {
+					$sorter[$id] = 0;
+					$result[$id] = $module;
+				}
+
+				# Increment score by matches count * field weight
+				$sorter[$id] += $nb * $weight;
+				$result[$id]['score'] = $sorter[$id];
+			}
+		}
+		# Sort response by matches count
+		if (!empty($result)) {
+			array_multisort($sorter, SORT_DESC, $result);
+		}
+		return $result;
+	}
+
+	/**
+	 * Quick download and install module.
+	 *
+	 * @param	string	$url	Module package URL
+	 * @param	string	$dest	Path to install module
+	 * @return	integer		1 = installed, 2 = update
+	 */
+	public function process($url, $dest)
+	{
+		$this->download($url, $dest);
+		return $this->install($dest);
+	}
+
+	/**
+	 * Download a module.
+	 *
+	 * @param	string	$url	Module package URL
+	 * @param	string	$dest	Path to put module package
+	 */
+	public function download($url, $dest)
+	{
+		try {
+			$client = netHttp::initClient($url, $path);
+			$client->setUserAgent(self::agent());
+			$client->useGzip(false);
+			$client->setPersistReferers(false);
+			$client->setOutput($dest);
+			$client->get($path);
+			unset($client);
+		}
+		catch (Exception $e) {
+			unset($client);
+			throw new Exception(__('An error occurred while downloading the file.'));
+		}
+	}
+
+	/**
+	 * Install a previously downloaded module.
+	 *
+	 * @param	string	$path	Module package URL
+	 * @param	string	$path	Path to module package
+	 * @return	integer		1 = installed, 2 = update
+	 */
+	public function install($path)
+	{
+		return dcModules::installPackage($path, $this->modules);
+	}
+
+	/**
+	 * User Agent String.
+	 *
+	 * @param	string	$str		User agent string
+	 */
+	public function agent($str)
+	{
+		$this->user_agent = $str;
+	}
+
+	/**
+	 * Split and clean pattern.
+	 *
+	 * @param	string	$str		String to sanitize
+	 * @return	array	Array of cleaned pieces of string or false if none
+	 */
+	public static function patternize($str)
+	{
+		$arr = array();
+
+		foreach(explode(' ', $str) as $_) {
+			$_ = strtolower(preg_replace('/[^A-Za-z0-9]/', '', $_));
+			if (strlen($_) > 2) {
+				$arr[] = $_;
+			}
+		}
+
+		return empty($arr) ? false : $arr;
+	}
+
+	/**
+	 * Compare version.
+	 *
+	 * @param	string	$v1		Version
+	 * @param	string	$v2		Version
+	 * @param	string	$op		Comparison operator
+	 * @return	boolean	True is comparison is true, dude!
+	 */
+	private static function compare($v1, $v2, $op)
+	{
+		return version_compare(
+			preg_replace('!-r(\d+)$!', '-p$1', $v1), 
+			preg_replace('!-r(\d+)$!', '-p$1', $v2), 
+			$op
+		);
+	}
+
+	/** 
+	 * Sort modules list.
+	 *
+	 * @param	array	$a		A module
+	 * @param	array	$b		A module
+	 * @return	integer
+	 */
+	private static function sort($a,$b)
+	{
+		$c = strtolower($a['id']); 
+		$d = strtolower($b['id']); 
+		if ($c == $d) { 
+			return 0; 
+		} 
+		return ($c < $d) ? -1 : 1; 
+	}
+}
Index: inc/core/class.dc.store.reader.php
===================================================================
--- inc/core/class.dc.store.reader.php	(revision 2222)
+++ inc/core/class.dc.store.reader.php	(revision 2222)
@@ -0,0 +1,267 @@
+<?php
+# -- BEGIN LICENSE BLOCK ---------------------------------------
+#
+# This file is part of Dotclear 2.
+#
+# Copyright (c) 2003-2013 Olivier Meunier & Association Dotclear
+# Licensed under the GPL version 2.0 license.
+# See LICENSE file or
+# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
+#
+# -- END LICENSE BLOCK -----------------------------------------
+if (!defined('DC_RC_PATH')) { return; }
+
+/**
+@ingroup DC_CORE
+@brief Repository modules XML feed reader
+@since 2.6
+
+Provides an object to parse XML feed of modules from repository.
+This class extends clearbricks netHttp class.
+*/
+class dcStoreReader extends netHttp
+{
+	/** @var	string	User agent used to query repository */
+	protected $user_agent = 'DotClear.org RepoBrowser/0.1';
+	/** @var	integer	User agent used to query repository */
+	protected $timeout = 5;
+	/** @var	array	 HTTP Cache validators */
+	protected $validators = null;
+	/** @var	string	Cache temporary directory */
+	protected $cache_dir = null;
+	/** @var	string	Cache file prefix */
+	protected $cache_file_prefix = 'dcrepo';
+	/** @var	integer	Cache TTL */
+	protected $cache_ttl = '-30 minutes';
+	/** @var	boolean	'Cache' TTL on server failed */
+	protected $cache_touch_on_fail = true;
+	/** @var	boolean	Force query server */
+	protected $force = false;
+
+	/**
+	 * Constructor.
+	 *
+	 * Bypass first argument of clearbricks netHttp constructor.
+	 */
+	public function __construct()
+	{
+		parent::__construct('');
+		$this->setUserAgent(sprintf('Dotclear/%s)', DC_VERSION));
+	}
+
+	/**
+	 * Parse modules feed.
+	 *
+	 * @param	string	$url		XML feed URL
+	 * @return	object	dcStore instance
+	 */
+	public function parse($url)
+	{
+		$this->validators = array();
+
+		if ($this->cache_dir) {
+			return $this->withCache($url);
+		}
+		elseif (!$this->getModulesXML($url) || $this->getStatus() != '200') {
+			return false;
+		}
+
+		return new dcStoreParser($this->getContent());
+	}
+
+	/**
+	 * Quick parse modules feed.
+	 *
+	 * @param	string	$url		XML feed URL
+	 * @param	string	$cache_dir	Cache directoy or null for no cache
+	 * @param	boolean	$force		Force query repository
+	 * @return	object	Self instance
+	 */
+	public static function quickParse($url, $cache_dir=null, $force=false)
+	{
+		$parser = new self();
+		if ($cache_dir) {
+			$parser->setCacheDir($cache_dir);
+		}
+		if ($force) {
+			$parser->setForce($force);
+		}
+
+		return $parser->parse($url);
+	}
+
+	/**
+	 * Set cache directory.
+	 *
+	 * @param	string	$dir		Cache directory
+	 * @return	boolean	True if cache dierctory is useable
+	 */
+	public function setCacheDir($dir)
+	{
+		$this->cache_dir = null;
+
+		if (!empty($dir) && is_dir($dir) && is_writeable($dir)) {
+			$this->cache_dir = $dir;
+			return true;
+		}
+
+		return false;
+	}
+
+	/**
+	 * Set cache TTL.
+	 *
+	 * @param	string	$str		Cache TTL
+	 */
+	public function setCacheTTL($str)
+	{
+		$str = trim($str);
+
+		if (!empty($str)) {
+			$this->cache_ttl = substr($str, 0, 1) == '-' ? $str : '-'.$str;
+		}
+	}
+
+	/**
+	 * Set force query repository.
+	 *
+	 * @param	boolean	$force	True to force query
+	 */
+	public function setForce($force)
+	{
+		$this->force = $force;
+	}
+
+	/**
+	 * Get repository XML feed URL content.
+	 *
+	 * @param	string	$url		XML feed URL
+	 * @return	string	Feed content
+	 */
+	protected function getModulesXML($url)
+	{
+		if (!self::readURL($url, $ssl, $host, $port, $path, $user, $pass)) {
+			return false;
+		}
+		$this->setHost($host, $port);
+		$this->useSSL($ssl);
+		$this->setAuthorization($user, $pass);
+
+		return $this->get($path);
+	}
+
+	/**
+	 * Get repository modules list using cache.
+	 *
+	 * @param	string	$url		XML feed URL
+	 * @return	array	Feed content or False on fail
+	 */
+	protected function withCache($url)
+	{
+		$url_md5 = md5($url);
+		$cached_file = sprintf('%s/%s/%s/%s/%s.ser',
+			$this->cache_dir,
+			$this->cache_file_prefix,
+			substr($url_md5,0,2),
+			substr($url_md5,2,2),
+			$url_md5
+		);
+
+		$may_use_cached = false;
+
+		# Use cache file ?
+		if (@file_exists($cached_file) && !$this->force) {
+			$may_use_cached = true;
+			$ts = @filemtime($cached_file);
+			if ($ts > strtotime($this->cache_ttl)) {
+				# Direct cache
+				return unserialize(file_get_contents($cached_file));
+			}
+			$this->setValidator('IfModifiedSince', $ts);
+		}
+
+		# Query repository
+		if (!$this->getModulesXML($url)) {
+			if ($may_use_cached) {
+				# Touch cache TTL even if query failed ?
+				if ($this->cache_touch_on_fail) {
+					@files::touch($cached_file);
+				}
+				# Connection failed - fetched from cache
+				return unserialize(file_get_contents($cached_file));
+			}
+			return false;
+		}
+
+		# Parse response
+		switch ($this->getStatus())
+		{
+			# Not modified, use cache
+			case '304':
+				@files::touch($cached_file);
+				return unserialize(file_get_contents($cached_file));
+			# Ok, parse feed
+			case '200':
+				if ($modules = new dcStoreParser($this->getContent())) {
+					try {
+						files::makeDir(dirname($cached_file), true);
+					}
+					catch (Exception $e) {
+						return $modules;
+					}
+
+					if (($fp = @fopen($cached_file, 'wb'))) {
+						fwrite($fp, serialize($modules));
+						fclose($fp);
+						files::inheritChmod($cached_file);
+					}
+					return $modules;
+				}
+		}
+
+		return false;
+	}
+
+	/**
+	 * Prepare query.
+	 *
+	 * @return	array	Query headers
+	 */
+	protected function buildRequest()
+	{
+		$headers = parent::buildRequest();
+
+		# Cache validators
+		if (!empty($this->validators)) {
+			if (isset($this->validators['IfModifiedSince'])) {
+				$headers[] = 'If-Modified-Since: '.$this->validators['IfModifiedSince'];
+			}
+			if (isset($this->validators['IfNoneMatch'])) {
+				if (is_array($this->validators['IfNoneMatch'])) {
+					$etags = implode(',', $this->validators['IfNoneMatch']);
+				}
+				else {
+					$etags = $this->validators['IfNoneMatch'];
+				}
+				$headers[] = '';
+			}
+		}
+
+		return $headers;
+	}
+
+	/**
+	 * Tweak query cache validator.
+	 *
+	 * @param	string	$key		Validator key
+	 * @param	string	$value		Validator value
+	 */
+	private function setValidator($key, $value)
+	{
+		if ($key == 'IfModifiedSince') {
+			$value = gmdate('D, d M Y H:i:s', $value).' GMT';
+		}
+
+		$this->validators[$key] = $value;
+	}
+}
Index: inc/dbschema/upgrade.php
===================================================================
--- inc/dbschema/upgrade.php	(revision 2247)
+++ inc/dbschema/upgrade.php	(revision 2144)
@@ -152,5 +152,5 @@
 				$init_fav['new_post'] = array('new_post','New entry','post.php',
 					'images/menu/edit.png','images/menu/edit-b.png',
-					'usage,contentadmin',null,null);
+					'usage,contentadmin',null,'menu-new-post');
 				$init_fav['newpage'] = array('newpage','New page','plugin.php?p=pages&amp;act=page',
 					'index.php?pf=pages/icon-np.png','index.php?pf=pages/icon-np-big.png',
Index: inc/prepend.php
===================================================================
--- inc/prepend.php	(revision 2236)
+++ inc/prepend.php	(revision 2240)
@@ -46,4 +46,7 @@
 $__autoload['dcWorkspace']			= dirname(__FILE__).'/core/class.dc.workspace.php';
 $__autoload['dcPrefs']				= dirname(__FILE__).'/core/class.dc.prefs.php';
+$__autoload['dcStore']			= dirname(__FILE__).'/core/class.dc.store.php';
+$__autoload['dcStoreReader']		= dirname(__FILE__).'/core/class.dc.store.reader.php';
+$__autoload['dcStoreParser']		= dirname(__FILE__).'/core/class.dc.store.parser.php';
 $__autoload['dcFavorites']			= dirname(__FILE__).'/admin/class.dc.favorites.php';
 
@@ -62,4 +65,6 @@
 $__autoload['dcPager']		= dirname(__FILE__).'/admin/lib.pager.php';
 $__autoload['dcAdminCombos']			= dirname(__FILE__).'/admin/lib.admincombos.php';
+$__autoload['adminModulesList']			= dirname(__FILE__).'/admin/lib.moduleslist.php';
+$__autoload['adminThemesList']			= dirname(__FILE__).'/admin/lib.moduleslist.php';
 
 $__autoload['dcTemplate']			= dirname(__FILE__).'/public/class.dc.template.php';
Index: locales/_pot/main.pot
===================================================================
--- locales/_pot/main.pot	(revision 2258)
+++ locales/_pot/main.pot	(revision 2133)
@@ -8,5 +8,5 @@
 "Project-Id-Version: Dotclear 2\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-04 13:51+0000\n"
+"POT-Creation-Date: 2013-09-24 07:51+0000\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
@@ -18,4 +18,192 @@
 "Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
 
+#: admin/_fake_l10n.php:4
+msgid "medium"
+msgstr ""
+
+#: admin/_fake_l10n.php:5
+msgid "small"
+msgstr ""
+
+#: admin/_fake_l10n.php:6
+msgid "thumbnail"
+msgstr ""
+
+#: admin/_fake_l10n.php:7
+msgid "square"
+msgstr ""
+
+#: admin/_fake_l10n.php:11
+msgid "Manage every blog configuration directive"
+msgstr ""
+
+#: admin/_fake_l10n.php:12
+msgid "Akismet interface for Dotclear"
+msgstr ""
+
+#: admin/_fake_l10n.php:13
+msgid "Generic antispam plugin for Dotclear"
+msgstr ""
+
+#: admin/_fake_l10n.php:14
+msgid "Manage post attachments"
+msgstr ""
+
+#: admin/_fake_l10n.php:15
+msgid "Manage your blogroll"
+msgstr ""
+
+#: admin/_fake_l10n.php:16
+msgid "Configure your Blowup Theme"
+msgstr ""
+
+#: admin/_fake_l10n.php:17
+msgid "Install and update your plugins live from DotAddict.org"
+msgstr ""
+
+#: admin/_fake_l10n.php:18
+msgid "Trackback validity check"
+msgstr ""
+
+#: admin/_fake_l10n.php:19
+msgid "Import and Export your blog"
+msgstr ""
+
+#: admin/_fake_l10n.php:20
+msgid "Maintain your installation"
+msgstr ""
+
+#: admin/_fake_l10n.php:21
+msgid "Serve entries as simple web pages"
+msgstr ""
+
+#: admin/_fake_l10n.php:22
+msgid "Ping services"
+msgstr ""
+
+#: admin/_fake_l10n.php:23
+msgid "Simple menu for Dotclear"
+msgstr ""
+
+#: admin/_fake_l10n.php:24
+msgid "Tags for posts"
+msgstr ""
+
+#: admin/_fake_l10n.php:25
+msgid "Theme Editor"
+msgstr ""
+
+#: admin/_fake_l10n.php:26
+msgid "Manage every user preference directive"
+msgstr ""
+
+#: admin/_fake_l10n.php:27
+msgid "Widgets for your blog sidebars"
+msgstr ""
+
+#: admin/_fake_l10n.php:31
+msgid "Search engine form"
+msgstr ""
+
+#: admin/_fake_l10n.php:32
+msgid "List of navigation links"
+msgstr ""
+
+#: admin/_fake_l10n.php:33
+msgid "List of selected entries"
+msgstr ""
+
+#: admin/_fake_l10n.php:34
+msgid "List of available languages"
+msgstr ""
+
+#: admin/_fake_l10n.php:35
+msgid "List of categories"
+msgstr ""
+
+#: admin/_fake_l10n.php:36
+msgid "RSS or Atom feed subscription links"
+msgstr ""
+
+#: admin/_fake_l10n.php:37
+msgid "Last entries from feed"
+msgstr ""
+
+#: admin/_fake_l10n.php:38
+msgid "Simple text"
+msgstr ""
+
+#: admin/_fake_l10n.php:39
+msgid "List of last entries published"
+msgstr ""
+
+#: admin/_fake_l10n.php:40
+msgid "List of last comments posted"
+msgstr ""
+
+#: admin/_fake_l10n.php:41
+msgid "Tags cloud"
+msgstr ""
+
+#: admin/_fake_l10n.php:42
+msgid "List of published pages"
+msgstr ""
+
+#: admin/_fake_l10n.php:43
+msgid "Blogroll list"
+msgstr ""
+
+#: admin/_fake_l10n.php:44
+msgid "List of simple menu items"
+msgstr ""
+
+#: admin/_fake_l10n.php:52
+msgid "Posts"
+msgstr ""
+
+#: admin/_fake_l10n.php:53 admin/_fake_l10n.php:63
+msgid "Pages"
+msgstr ""
+
+#: admin/_fake_l10n.php:57 admin/index.php:122 admin/index.php:356
+#: admin/post.php:35 admin/post.php:554 admin/posts.php:232
+#: inc/admin/prepend.php:327 inc/admin/prepend.php:378
+msgid "New entry"
+msgstr ""
+
+#: admin/_fake_l10n.php:58 admin/post.php:361 admin/post.php:375
+#: admin/posts.php:217 admin/posts.php:221 admin/users_actions.php:216
+#: inc/admin/actions/class.dcaction.php:71
+#: inc/admin/actions/class.dcactionposts.php:33 inc/admin/prepend.php:324
+msgid "Entries"
+msgstr ""
+
+#: admin/_fake_l10n.php:59 admin/post.php:641 admin/post.php:654
+#: inc/admin/actions/class.dcactioncomments.php:21
+#: inc/admin/actions/class.dcactioncomments.php:34
+#: inc/admin/actions/class.dcactioncomments.php:52 inc/admin/lib.pager.php:175
+#: inc/admin/prepend.php:321
+msgid "Comments"
+msgstr ""
+
+#: admin/_fake_l10n.php:60 admin/index.php:124 admin/media.php:440
+#: admin/preferences.php:17 inc/admin/lib.dc.page.php:143
+msgid "My preferences"
+msgstr ""
+
+#: admin/_fake_l10n.php:61 admin/blog_pref.php:272 admin/blog_pref.php:279
+#: admin/blog_pref.php:283 inc/admin/prepend.php:309
+msgid "Blog settings"
+msgstr ""
+
+#: admin/_fake_l10n.php:62 admin/blog_theme.php:214 admin/blog_theme.php:220
+#: admin/blog_theme.php:225 inc/admin/prepend.php:306
+msgid "Blog appearance"
+msgstr ""
+
+#: admin/_fake_l10n.php:64
+msgid "Blogroll"
+msgstr ""
+
 #: admin/auth.php:46 inc/libs/clearbricks/tests/unit/common/lib.l10n.php:49
 #: inc/libs/clearbricks/tests/unit/common/lib.l10n.php:183
@@ -31,6 +219,6 @@
 msgstr ""
 
-#: admin/auth.php:89 admin/auth.php:113 admin/auth.php:338 admin/auth.php:388
-#: admin/install/index.php:333 admin/install/index.php:382
+#: admin/auth.php:89 admin/auth.php:113 admin/auth.php:335 admin/auth.php:385
+#: admin/install/index.php:329 admin/install/index.php:378
 msgid "Username:"
 msgstr ""
@@ -49,6 +237,6 @@
 msgstr ""
 
-#: admin/auth.php:114 admin/auth.php:391 admin/blog_pref.php:442
-#: admin/install/index.php:383 admin/user.php:225
+#: admin/auth.php:114 admin/auth.php:388 admin/blog_pref.php:439
+#: admin/install/index.php:379 admin/user.php:223
 msgid "Password:"
 msgstr ""
@@ -83,82 +271,77 @@
 msgstr ""
 
-#: admin/auth.php:332 admin/auth.php:349
+#: admin/auth.php:329 admin/auth.php:346
 msgid "Back to login screen"
 msgstr ""
 
-#: admin/auth.php:337
+#: admin/auth.php:334
 msgid "Request a new password"
 msgstr ""
 
-#: admin/auth.php:341 admin/blog_pref.php:669 admin/comment.php:222
-#: admin/install/index.php:328 admin/post.php:683 admin/preferences.php:371
-#: admin/user.php:264 inc/admin/lib.dc.page.php:600
+#: admin/auth.php:338 admin/blog_pref.php:662 admin/comment.php:218
+#: admin/install/index.php:324 admin/post.php:687 admin/preferences.php:426
+#: admin/user.php:262 inc/admin/lib.dc.page.php:539
 msgid "Email:"
 msgstr ""
 
-#: admin/auth.php:344
+#: admin/auth.php:341
 msgid "recover"
 msgstr ""
 
-#: admin/auth.php:355
+#: admin/auth.php:352
 msgid "Change your password"
 msgstr ""
 
-#: admin/auth.php:356 admin/install/index.php:337 admin/preferences.php:390
-#: admin/user.php:225
+#: admin/auth.php:353 admin/install/index.php:333 admin/preferences.php:445
+#: admin/user.php:223
 msgid "New password:"
 msgstr ""
 
-#: admin/auth.php:359 admin/install/index.php:345 admin/user.php:236
+#: admin/auth.php:356 admin/install/index.php:341 admin/user.php:234
 msgid "Confirm password:"
 msgstr ""
 
-#: admin/auth.php:363
+#: admin/auth.php:360
 msgid "change"
 msgstr ""
 
+#: admin/auth.php:373
+msgid "Safe mode login"
+msgstr ""
+
 #: admin/auth.php:376
-msgid "Safe mode login"
-msgstr ""
-
-#: admin/auth.php:379
 msgid "This mode allows you to login without activating any of your plugins. This may be useful to solve compatibility problems"
 msgstr ""
 
-#: admin/auth.php:380
+#: admin/auth.php:377
 msgid "Disable or delete any plugin suspected to cause trouble, then log out and log back in normally."
 msgstr ""
 
-#: admin/auth.php:397
+#: admin/auth.php:394
 msgid "Remember my ID on this computer"
 msgstr ""
 
-#: admin/auth.php:399
+#: admin/auth.php:396
 msgid "log in"
 msgstr ""
 
-#: admin/auth.php:413
+#: admin/auth.php:410
 msgid "You must accept cookies in order to use the private area."
 msgstr ""
 
-#: admin/auth.php:419
+#: admin/auth.php:416
 msgid "Get back to normal authentication"
 msgstr ""
 
-#: admin/auth.php:421
+#: admin/auth.php:418
 msgid "Connection issue?"
 msgstr ""
 
-#: admin/auth.php:423
+#: admin/auth.php:420
 msgid "I forgot my password"
 msgstr ""
 
-#: admin/auth.php:425
+#: admin/auth.php:422
 msgid "I want to log in in safe mode"
-msgstr ""
-
-#: admin/blog.php:53
-#, php-format
-msgid "Blog \"%s\" successfully created"
 msgstr ""
 
@@ -167,57 +350,57 @@
 msgstr ""
 
-#: admin/blog.php:72 admin/blog_del.php:56 admin/blog_pref.php:280
-#: admin/blogs.php:89 admin/langs.php:145 admin/plugin.php:86
-#: admin/plugins.php:201 admin/update.php:179 admin/user.php:188
-#: admin/users.php:110 admin/users_actions.php:138 admin/users_actions.php:145
+#: admin/blog.php:72 admin/blog_del.php:54 admin/blog_pref.php:277
+#: admin/blogs.php:78 admin/langs.php:134 admin/plugin.php:86
+#: admin/plugins.php:196 admin/update.php:179 admin/user.php:186
+#: admin/users.php:99 admin/users_actions.php:136 admin/users_actions.php:143
 msgid "System"
 msgstr ""
 
-#: admin/blog.php:73 admin/blog_del.php:57 admin/blog_pref.php:281
-#: inc/admin/class.dc.favorites.php:454 inc/admin/prepend.php:278
+#: admin/blog.php:73 admin/blog_del.php:55 admin/blog_pref.php:278
+#: inc/admin/prepend.php:343
 msgid "Blogs"
 msgstr ""
 
-#: admin/blog.php:82 admin/blog_pref.php:328 admin/blog_pref.php:443
+#: admin/blog.php:82 admin/blog_pref.php:325 admin/blog_pref.php:440
 msgid "Blog ID:"
 msgstr ""
 
 #: admin/blog.php:82 admin/blog.php:92 admin/blog.php:95
-#: admin/blog_pref.php:328 admin/blog_pref.php:335 admin/blog_pref.php:341
-#: admin/blog_theme.php:314 admin/blog_theme.php:316 admin/blog_theme.php:326
-#: admin/blog_theme.php:328 admin/category.php:190 admin/comment.php:218
-#: admin/index.php:309 admin/index.php:313 admin/install/index.php:333
-#: admin/install/index.php:337 admin/install/index.php:345
+#: admin/blog_pref.php:325 admin/blog_pref.php:332 admin/blog_pref.php:338
+#: admin/blog_theme.php:303 admin/blog_theme.php:305 admin/blog_theme.php:315
+#: admin/blog_theme.php:317 admin/category.php:184 admin/comment.php:214
+#: admin/index.php:357 admin/index.php:361 admin/install/index.php:329
+#: admin/install/index.php:333 admin/install/index.php:341
 #: admin/install/wizard.php:180 admin/install/wizard.php:190
-#: admin/langs.php:242 admin/langs.php:257 admin/langs.php:259
-#: admin/plugins.php:365 admin/plugins.php:367 admin/plugins.php:378
-#: admin/plugins.php:380 admin/popup_link.php:31 admin/post.php:540
-#: admin/post.php:552 admin/post.php:679 admin/post.php:691 admin/user.php:209
-#: admin/user.php:224 admin/user.php:236 admin/user.php:308
-#: admin/users_actions.php:308
+#: admin/langs.php:231 admin/langs.php:246 admin/langs.php:248
+#: admin/plugins.php:360 admin/plugins.php:362 admin/plugins.php:373
+#: admin/plugins.php:375 admin/popup_link.php:31 admin/post.php:527
+#: admin/post.php:539 admin/post.php:683 admin/post.php:695 admin/user.php:207
+#: admin/user.php:222 admin/user.php:234 admin/user.php:306
+#: admin/users_actions.php:290
 msgid "Required field"
 msgstr ""
 
-#: admin/blog.php:84 admin/blog_pref.php:330 admin/user.php:212
+#: admin/blog.php:84 admin/blog_pref.php:327 admin/user.php:210
 msgid "At least 2 characters using letters, numbers or symbols."
 msgstr ""
 
-#: admin/blog.php:88 admin/blog_pref.php:331
+#: admin/blog.php:88 admin/blog_pref.php:328
 msgid "Please note that changing your blog ID may require changes in your public index.php file."
 msgstr ""
 
-#: admin/blog.php:92 admin/blog_pref.php:335
+#: admin/blog.php:92 admin/blog_pref.php:332
 msgid "Blog name:"
 msgstr ""
 
-#: admin/blog.php:95 admin/blog_pref.php:341
+#: admin/blog.php:95 admin/blog_pref.php:338
 msgid "Blog URL:"
 msgstr ""
 
-#: admin/blog.php:98 admin/blog_pref.php:391
+#: admin/blog.php:98 admin/blog_pref.php:388
 msgid "Blog description:"
 msgstr ""
 
-#: admin/blog.php:101 admin/media.php:442
+#: admin/blog.php:101 admin/media.php:380
 msgid "Create"
 msgstr ""
@@ -227,39 +410,34 @@
 msgstr ""
 
-#: admin/blog_del.php:40 admin/blog_theme.php:101 admin/langs.php:66
-#: admin/langs.php:109 admin/plugins.php:135 admin/user.php:75
-#: admin/users_actions.php:99
+#: admin/blog_del.php:40 admin/blog_theme.php:95 admin/langs.php:65
+#: admin/langs.php:103 admin/plugins.php:134 admin/user.php:75
+#: admin/users_actions.php:98
 msgid "Password verification failed"
 msgstr ""
 
-#: admin/blog_del.php:44
-#, php-format
-msgid "Blog \"%s\" successfully deleted"
-msgstr ""
-
-#: admin/blog_del.php:53 admin/blog_del.php:58
+#: admin/blog_del.php:51 admin/blog_del.php:56
 msgid "Delete a blog"
 msgstr ""
 
-#: admin/blog_del.php:65
+#: admin/blog_del.php:63
 msgid "Warning"
 msgstr ""
 
+#: admin/blog_del.php:64
+#, php-format
+msgid "You are about to delete the blog %s. Every entry, comment and category will be deleted."
+msgstr ""
+
 #: admin/blog_del.php:66
-#, php-format
-msgid "You are about to delete the blog %s. Every entry, comment and category will be deleted."
-msgstr ""
-
-#: admin/blog_del.php:68
 msgid "Please give your password to confirm the blog deletion."
 msgstr ""
 
-#: admin/blog_del.php:73 admin/blog_theme.php:316 admin/blog_theme.php:328
-#: admin/langs.php:242 admin/langs.php:259 admin/plugins.php:367
-#: admin/plugins.php:380 admin/user.php:308 admin/users_actions.php:308
+#: admin/blog_del.php:71 admin/blog_theme.php:305 admin/blog_theme.php:317
+#: admin/langs.php:231 admin/langs.php:248 admin/plugins.php:362
+#: admin/plugins.php:375 admin/user.php:306 admin/users_actions.php:290
 msgid "Your password:"
 msgstr ""
 
-#: admin/blog_del.php:75 admin/blog_pref.php:611
+#: admin/blog_del.php:73 admin/blog_pref.php:604
 msgid "Delete this blog"
 msgstr ""
@@ -309,12 +487,11 @@
 msgstr ""
 
-#: admin/blog_pref.php:111 admin/blog_pref.php:670 admin/category.php:199
+#: admin/blog_pref.php:111 admin/blog_pref.php:663 admin/category.php:193
 msgid "(none)"
 msgstr ""
 
 #: admin/blog_pref.php:112 admin/posts.php:91
-#: inc/admin/actions/class.dcaction.php:76
-#: inc/admin/actions/class.dcactioncomments.php:78 inc/admin/lib.pager.php:183
-#: inc/admin/lib.pager.php:296
+#: inc/admin/actions/class.dcaction.php:67 inc/admin/lib.pager.php:171
+#: inc/admin/lib.pager.php:284
 msgid "Title"
 msgstr ""
@@ -332,25 +509,25 @@
 msgstr ""
 
-#: admin/blog_pref.php:125 admin/media_item.php:288 admin/media_item.php:447
+#: admin/blog_pref.php:125 admin/media_item.php:241 admin/media_item.php:383
 msgid "original"
 msgstr ""
 
-#: admin/blog_pref.php:135 admin/media_item.php:294 admin/media_item.php:324
-#: admin/media_item.php:358
+#: admin/blog_pref.php:135 admin/media_item.php:247 admin/media_item.php:277
+#: admin/media_item.php:311
 msgid "None"
 msgstr ""
 
-#: admin/blog_pref.php:136 admin/media_item.php:295 admin/media_item.php:325
-#: admin/media_item.php:359
+#: admin/blog_pref.php:136 admin/media_item.php:248 admin/media_item.php:278
+#: admin/media_item.php:312
 msgid "Left"
 msgstr ""
 
-#: admin/blog_pref.php:137 admin/media_item.php:296 admin/media_item.php:326
-#: admin/media_item.php:360
+#: admin/blog_pref.php:137 admin/media_item.php:249 admin/media_item.php:279
+#: admin/media_item.php:313
 msgid "Right"
 msgstr ""
 
-#: admin/blog_pref.php:138 admin/media_item.php:297 admin/media_item.php:327
-#: admin/media_item.php:361
+#: admin/blog_pref.php:138 admin/media_item.php:250 admin/media_item.php:280
+#: admin/media_item.php:314
 msgid "Center"
 msgstr ""
@@ -376,474 +553,445 @@
 msgstr ""
 
-#: admin/blog_pref.php:260 admin/blog_pref.php:313
+#: admin/blog_pref.php:287
+msgid "Warning: except for special configurations, it is generally advised to have a trailing \"/\" in your blog URL in PATH_INFO mode."
+msgstr ""
+
+#: admin/blog_pref.php:289
+msgid "Warning: except for special configurations, it is generally advised to have a trailing \"?\" in your blog URL in QUERY_STRING mode."
+msgstr ""
+
+#: admin/blog_pref.php:306
+msgid "Blog has been successfully created."
+msgstr ""
+
+#: admin/blog_pref.php:310
 msgid "Blog has been successfully updated."
 msgstr ""
 
-#: admin/blog_pref.php:274 admin/blog_pref.php:282 admin/blog_pref.php:286
-#: inc/admin/class.dc.favorites.php:442 inc/admin/prepend.php:244
-msgid "Blog settings"
-msgstr ""
-
-#: admin/blog_pref.php:290
-msgid "Warning: except for special configurations, it is generally advised to have a trailing \"/\" in your blog URL in PATH_INFO mode."
-msgstr ""
-
-#: admin/blog_pref.php:292
-msgid "Warning: except for special configurations, it is generally advised to have a trailing \"?\" in your blog URL in QUERY_STRING mode."
-msgstr ""
-
-#: admin/blog_pref.php:309
-msgid "Blog has been successfully created."
-msgstr ""
-
-#: admin/blog_pref.php:317 admin/blog_pref.php:318
+#: admin/blog_pref.php:314 admin/blog_pref.php:315
 msgid "Parameters"
 msgstr ""
 
-#: admin/blog_pref.php:322
+#: admin/blog_pref.php:319
 msgid "Blog details"
 msgstr ""
 
-#: admin/blog_pref.php:344
+#: admin/blog_pref.php:341
 msgid "URL scan method:"
 msgstr ""
 
-#: admin/blog_pref.php:367
+#: admin/blog_pref.php:364
 #, php-format
 msgid "The URL of blog or the URL scan method might not be well set (<code>%s</code> return a <strong>%s</strong> status)."
 msgstr ""
 
-#: admin/blog_pref.php:375
+#: admin/blog_pref.php:372
 #, php-format
 msgid "The URL of blog or the URL scan method might not be well set (<code>%s</code> does not return an ATOM feed)."
 msgstr ""
 
-#: admin/blog_pref.php:386
+#: admin/blog_pref.php:383
 msgid "Blog status:"
 msgstr ""
 
+#: admin/blog_pref.php:394
+msgid "Blog configuration"
+msgstr ""
+
 #: admin/blog_pref.php:397
-msgid "Blog configuration"
-msgstr ""
-
-#: admin/blog_pref.php:400
 msgid "Blog editor name:"
 msgstr ""
 
-#: admin/blog_pref.php:404
+#: admin/blog_pref.php:401
 msgid "Default language:"
 msgstr ""
 
-#: admin/blog_pref.php:408
+#: admin/blog_pref.php:405
 msgid "Blog timezone:"
 msgstr ""
 
-#: admin/blog_pref.php:412
+#: admin/blog_pref.php:409
 msgid "Copyright notice:"
 msgstr ""
 
-#: admin/blog_pref.php:418
+#: admin/blog_pref.php:415
 msgid "New post URL format:"
 msgstr ""
 
-#: admin/blog_pref.php:422
+#: admin/blog_pref.php:419
 msgid "HTML tag for the title of the notes on the blog:"
 msgstr ""
 
+#: admin/blog_pref.php:425
+msgid "Enable XML/RPC interface"
+msgstr ""
+
 #: admin/blog_pref.php:428
-msgid "Enable XML/RPC interface"
-msgstr ""
-
-#: admin/blog_pref.php:431
 msgid "XML/RPC interface allows you to edit your blog with an external client."
 msgstr ""
 
-#: admin/blog_pref.php:435
+#: admin/blog_pref.php:432
 msgid "XML/RPC interface is active. You should set the following parameters on your XML/RPC client:"
 msgstr ""
 
+#: admin/blog_pref.php:434
+msgid "Server URL:"
+msgstr ""
+
 #: admin/blog_pref.php:437
-msgid "Server URL:"
-msgstr ""
-
-#: admin/blog_pref.php:440
 msgid "Blogging system:"
 msgstr ""
 
-#: admin/blog_pref.php:441
+#: admin/blog_pref.php:438
 msgid "User name:"
 msgstr ""
 
-#: admin/blog_pref.php:442
+#: admin/blog_pref.php:439
 msgid "your password"
 msgstr ""
 
-#: admin/blog_pref.php:454 admin/comments.php:167 admin/comments.php:171
+#: admin/blog_pref.php:451 admin/comments.php:159 admin/comments.php:163
 msgid "Comments and trackbacks"
 msgstr ""
 
-#: admin/blog_pref.php:461 admin/post.php:505
+#: admin/blog_pref.php:458 admin/post.php:492
 msgid "Accept comments"
 msgstr ""
 
-#: admin/blog_pref.php:464
+#: admin/blog_pref.php:461
 msgid "Moderate comments"
 msgstr ""
 
-#: admin/blog_pref.php:465
+#: admin/blog_pref.php:462
 #, php-format
 msgid "Leave comments open for %s days"
 msgstr ""
 
-#: admin/blog_pref.php:468 admin/blog_pref.php:483
+#: admin/blog_pref.php:465 admin/blog_pref.php:480
 msgid "No limit: leave blank."
 msgstr ""
 
-#: admin/blog_pref.php:471
+#: admin/blog_pref.php:468
 msgid "Wiki syntax for comments"
 msgstr ""
 
-#: admin/blog_pref.php:477 admin/post.php:515
+#: admin/blog_pref.php:474 admin/post.php:502
 msgid "Accept trackbacks"
 msgstr ""
 
-#: admin/blog_pref.php:480
+#: admin/blog_pref.php:477
 msgid "Moderate trackbacks"
 msgstr ""
 
-#: admin/blog_pref.php:481
+#: admin/blog_pref.php:478
 #, php-format
 msgid "Leave trackbacks open for %s days"
 msgstr ""
 
-#: admin/blog_pref.php:486
+#: admin/blog_pref.php:483
 msgid "Add \"nofollow\" relation on comments and trackbacks links"
 msgstr ""
 
+#: admin/blog_pref.php:492
+msgid "Blog presentation"
+msgstr ""
+
 #: admin/blog_pref.php:495
-msgid "Blog presentation"
-msgstr ""
-
-#: admin/blog_pref.php:498
 msgid "Date format:"
 msgstr ""
 
-#: admin/blog_pref.php:500
+#: admin/blog_pref.php:497
 msgid "Pattern of date"
 msgstr ""
 
-#: admin/blog_pref.php:502 admin/blog_pref.php:508
+#: admin/blog_pref.php:499 admin/blog_pref.php:505
 msgid "Sample:"
 msgstr ""
 
-#: admin/blog_pref.php:504
+#: admin/blog_pref.php:501
 msgid "Time format:"
 msgstr ""
 
-#: admin/blog_pref.php:506
+#: admin/blog_pref.php:503
 msgid "Pattern of time"
 msgstr ""
 
-#: admin/blog_pref.php:512
+#: admin/blog_pref.php:509
 msgid "Display smilies on entries and comments"
 msgstr ""
 
-#: admin/blog_pref.php:516
+#: admin/blog_pref.php:513
 #, php-format
 msgid "Display %s entries per page"
 msgstr ""
 
-#: admin/blog_pref.php:520
+#: admin/blog_pref.php:517
 #, php-format
 msgid "Display %s entries per feed"
 msgstr ""
 
-#: admin/blog_pref.php:524
+#: admin/blog_pref.php:521
 #, php-format
 msgid "Display %s comments per feed"
 msgstr ""
 
-#: admin/blog_pref.php:530
+#: admin/blog_pref.php:527
 msgid "Truncate feeds"
 msgstr ""
 
 #: admin/blog_pref.php:534
-msgid "Include sub-categories in category page and category posts feed"
+msgid "Media and images"
+msgstr ""
+
+#: admin/blog_pref.php:536
+msgid "Please note that if you change current settings bellow, they will now apply to all new images in the media manager."
+msgstr ""
+
+#: admin/blog_pref.php:537
+msgid "Be carefull if you share it with other blogs in your installation."
 msgstr ""
 
 #: admin/blog_pref.php:541
-msgid "Media and images"
-msgstr ""
-
-#: admin/blog_pref.php:543
-msgid "Please note that if you change current settings bellow, they will now apply to all new images in the media manager."
-msgstr ""
-
-#: admin/blog_pref.php:544
-msgid "Be carefull if you share it with other blogs in your installation."
-msgstr ""
-
-#: admin/blog_pref.php:548
 msgid "Generated image sizes (in pixels)"
 msgstr ""
 
-#: admin/blog_pref.php:560
+#: admin/blog_pref.php:553
 msgid "Default image insertion attributes"
 msgstr ""
 
+#: admin/blog_pref.php:554
+msgid "Inserted image title"
+msgstr ""
+
+#: admin/blog_pref.php:558
+msgid "Use original media date if possible"
+msgstr ""
+
+#: admin/blog_pref.php:559
+msgid "It is retrieved from the picture's metadata."
+msgstr ""
+
 #: admin/blog_pref.php:561
-msgid "Inserted image title"
+msgid "Size of inserted image:"
 msgstr ""
 
 #: admin/blog_pref.php:565
-msgid "Use original media date if possible"
-msgstr ""
-
-#: admin/blog_pref.php:566
-msgid "It is retrieved from the picture's metadata."
-msgstr ""
-
-#: admin/blog_pref.php:568
-msgid "Size of inserted image:"
-msgstr ""
-
-#: admin/blog_pref.php:572
 msgid "Image alignment:"
 msgstr ""
 
-#: admin/blog_pref.php:577
+#: admin/blog_pref.php:570
 msgid "Insert a link to the original image"
 msgstr ""
 
-#: admin/blog_pref.php:585
+#: admin/blog_pref.php:578
 msgid "Search engines robots policy"
 msgstr ""
 
-#: admin/blog_pref.php:602 admin/blog_theme.php:364 admin/category.php:221
-#: admin/category.php:238 admin/category.php:251 admin/comment.php:244
-#: admin/index.php:329 admin/install/index.php:349 admin/media_item.php:614
-#: admin/post.php:584 admin/post.php:699 admin/user.php:310
-#: admin/users_actions.php:310 inc/admin/actions/class.dcactionposts.php:305
-#: inc/admin/actions/class.dcactionposts.php:374
-#: inc/admin/actions/class.dcactionposts.php:433
+#: admin/blog_pref.php:595 admin/blog_theme.php:353 admin/category.php:215
+#: admin/category.php:232 admin/category.php:245 admin/comment.php:240
+#: admin/index.php:377 admin/install/index.php:345 admin/media_item.php:550
+#: admin/post.php:571 admin/post.php:702 admin/user.php:308
+#: admin/users_actions.php:292 inc/admin/actions/class.dcactionposts.php:249
+#: inc/admin/actions/class.dcactionposts.php:308
+#: inc/admin/actions/class.dcactionposts.php:359
 msgid "Save"
 msgstr ""
 
-#: admin/blog_pref.php:617
+#: admin/blog_pref.php:610
 msgid "The current blog cannot be deleted."
 msgstr ""
 
-#: admin/blog_pref.php:619
+#: admin/blog_pref.php:612
 msgid "Only superadmin can delete a blog."
 msgstr ""
 
-#: admin/blog_pref.php:632 admin/user.php:189 admin/users.php:107
-#: admin/users.php:111 admin/users_actions.php:139 admin/users_actions.php:146
-#: admin/users_actions.php:152 inc/admin/actions/class.dcactionusers.php:21
+#: admin/blog_pref.php:625 admin/user.php:187 admin/users.php:96
+#: admin/users.php:100 admin/users_actions.php:137 admin/users_actions.php:144
+#: admin/users_actions.php:150 inc/admin/actions/class.dcactionusers.php:21
 #: inc/admin/actions/class.dcactionusers.php:34
-#: inc/admin/actions/class.dcactionusers.php:52
-#: inc/admin/class.dc.favorites.php:460 inc/admin/prepend.php:275
+#: inc/admin/actions/class.dcactionusers.php:52 inc/admin/prepend.php:340
 msgid "Users"
 msgstr ""
 
-#: admin/blog_pref.php:633
+#: admin/blog_pref.php:626
 msgid "Users on this blog"
 msgstr ""
 
-#: admin/blog_pref.php:637
+#: admin/blog_pref.php:630
 msgid "No users"
 msgstr ""
 
+#: admin/blog_pref.php:668
+msgid "Publications on this blog:"
+msgstr ""
+
 #: admin/blog_pref.php:675
-msgid "Publications on this blog:"
-msgstr ""
-
-#: admin/blog_pref.php:682
 #, php-format
 msgid "%1$s: %2$s"
 msgstr ""
 
-#: admin/blog_pref.php:688
+#: admin/blog_pref.php:681
 msgid "Permissions:"
 msgstr ""
 
-#: admin/blog_pref.php:691 admin/user.php:250
+#: admin/blog_pref.php:684 admin/user.php:248
 msgid "Super administrator"
 msgstr ""
 
-#: admin/blog_pref.php:692
+#: admin/blog_pref.php:685
 msgid "All rights on all blogs."
 msgstr ""
 
-#: admin/blog_pref.php:698 admin/users_actions.php:300
-#, php-format
-msgid "[%s] (unreferenced permission)"
-msgstr ""
-
-#: admin/blog_pref.php:702
+#: admin/blog_pref.php:691
 msgid "All rights on this blog."
 msgstr ""
 
-#: admin/blog_pref.php:713 admin/user.php:361
+#: admin/blog_pref.php:702 admin/user.php:359
 msgid "Change permissions"
 msgstr ""
 
-#: admin/blog_theme.php:57
-#, php-format
-msgid "Current theme has been successfully changed to \"%s\"."
-msgstr ""
-
-#: admin/blog_theme.php:69
+#: admin/blog_theme.php:63
 msgid "You can't remove default theme."
 msgstr ""
 
-#: admin/blog_theme.php:73
+#: admin/blog_theme.php:67
 msgid "Theme does not exist."
 msgstr ""
 
-#: admin/blog_theme.php:110 admin/langs.php:115 admin/plugins.php:144
+#: admin/blog_theme.php:104 admin/langs.php:109 admin/plugins.php:143
 msgid "Unable to move uploaded file."
 msgstr ""
 
-#: admin/blog_theme.php:129 admin/plugins.php:163
+#: admin/blog_theme.php:123 admin/plugins.php:162
 msgid "An error occurred while downloading the file."
 msgstr ""
 
-#: admin/blog_theme.php:137
-msgid "Theme has been successfully upgraded."
-msgstr ""
-
-#: admin/blog_theme.php:139 admin/blog_theme.php:250
+#: admin/blog_theme.php:179
+#, php-format
+msgid "by %s"
+msgstr ""
+
+#: admin/blog_theme.php:180
+#, php-format
+msgid "version %s"
+msgstr ""
+
+#: admin/blog_theme.php:183
+#, php-format
+msgid "(built on \"%s\")"
+msgstr ""
+
+#: admin/blog_theme.php:185
+#, php-format
+msgid "(requires \"%s\")"
+msgstr ""
+
+#: admin/blog_theme.php:189
+msgid "Stylesheet"
+msgstr ""
+
+#: admin/blog_theme.php:196
+msgid "Configure theme"
+msgstr ""
+
+#: admin/blog_theme.php:221
+msgid "Theme configuration"
+msgstr ""
+
+#: admin/blog_theme.php:235
+msgid "Theme has been successfully changed."
+msgstr ""
+
+#: admin/blog_theme.php:239
 msgid "Theme has been successfully installed."
 msgstr ""
 
-#: admin/blog_theme.php:190
-#, php-format
-msgid "by %s"
-msgstr ""
-
-#: admin/blog_theme.php:191
-#, php-format
-msgid "version %s"
-msgstr ""
-
-#: admin/blog_theme.php:194
-#, php-format
-msgid "(built on \"%s\")"
-msgstr ""
-
-#: admin/blog_theme.php:196
-#, php-format
-msgid "(requires \"%s\")"
-msgstr ""
-
-#: admin/blog_theme.php:200
-msgid "Stylesheet"
-msgstr ""
-
-#: admin/blog_theme.php:207
-msgid "Configure theme"
-msgstr ""
-
-#: admin/blog_theme.php:225 admin/blog_theme.php:231 admin/blog_theme.php:236
-#: inc/admin/class.dc.favorites.php:448 inc/admin/prepend.php:241
-msgid "Blog appearance"
-msgstr ""
-
-#: admin/blog_theme.php:232
-msgid "Theme configuration"
-msgstr ""
-
-#: admin/blog_theme.php:246
-msgid "Theme has been successfully changed."
-msgstr ""
-
-#: admin/blog_theme.php:250
+#: admin/blog_theme.php:239
 msgid "Theme has been successfully upgraded"
 msgstr ""
 
-#: admin/blog_theme.php:254
+#: admin/blog_theme.php:243
 msgid "Theme has been successfully deleted."
 msgstr ""
 
-#: admin/blog_theme.php:258
+#: admin/blog_theme.php:247
 msgid "Themes"
 msgstr ""
 
-#: admin/blog_theme.php:259
+#: admin/blog_theme.php:248
 msgid "Available themes in your installation"
 msgstr ""
 
-#: admin/blog_theme.php:263
+#: admin/blog_theme.php:252
 #, php-format
 msgid "You are currently using <strong>%s</strong>"
 msgstr ""
 
-#: admin/blog_theme.php:287
+#: admin/blog_theme.php:276
 msgid "Use selected theme"
 msgstr ""
 
-#: admin/blog_theme.php:289
+#: admin/blog_theme.php:278
 msgid "Delete selected theme"
 msgstr ""
 
-#: admin/blog_theme.php:301
+#: admin/blog_theme.php:290
 msgid "Install or upgrade a theme"
 msgstr ""
 
-#: admin/blog_theme.php:302
+#: admin/blog_theme.php:291
 msgid "Add themes to your installation"
 msgstr ""
 
+#: admin/blog_theme.php:292
+#, php-format
+msgid "You can find additional themes for your blog on %s."
+msgstr ""
+
+#: admin/blog_theme.php:297
+msgid "You can also install themes by uploading or downloading zip files."
+msgstr ""
+
+#: admin/blog_theme.php:302 admin/langs.php:244 admin/plugins.php:359
+msgid "Upload a zip file"
+msgstr ""
+
 #: admin/blog_theme.php:303
-#, php-format
-msgid "You can find additional themes for your blog on %s."
-msgstr ""
-
-#: admin/blog_theme.php:308
-msgid "You can also install themes by uploading or downloading zip files."
-msgstr ""
-
-#: admin/blog_theme.php:313 admin/langs.php:255 admin/plugins.php:364
-msgid "Upload a zip file"
-msgstr ""
-
-#: admin/blog_theme.php:314
 msgid "Theme zip file:"
 msgstr ""
 
-#: admin/blog_theme.php:318
+#: admin/blog_theme.php:307
 msgid "Upload theme"
 msgstr ""
 
-#: admin/blog_theme.php:325 admin/plugins.php:377
+#: admin/blog_theme.php:314 admin/plugins.php:372
 msgid "Download a zip file"
 msgstr ""
 
-#: admin/blog_theme.php:326
+#: admin/blog_theme.php:315
 msgid "Theme zip file URL:"
 msgstr ""
 
-#: admin/blog_theme.php:330
+#: admin/blog_theme.php:319
 msgid "Download theme"
 msgstr ""
 
-#: admin/blog_theme.php:338
+#: admin/blog_theme.php:327
 msgid "To enable this function, please give write access to your themes directory."
 msgstr ""
 
-#: admin/blog_theme.php:350
+#: admin/blog_theme.php:339
 msgid "Back to Blog appearance"
 msgstr ""
 
-#: admin/blogs.php:19 admin/blogs.php:160
+#: admin/blogs.php:19 admin/blogs.php:140
 msgid "Last update"
 msgstr ""
 
-#: admin/blogs.php:20 admin/blogs.php:158 admin/users_actions.php:217
+#: admin/blogs.php:20 admin/blogs.php:138 admin/users_actions.php:215
 msgid "Blog name"
 msgstr ""
 
-#: admin/blogs.php:21 admin/users_actions.php:216
+#: admin/blogs.php:21 admin/users_actions.php:214
 msgid "Blog ID"
 msgstr ""
@@ -859,145 +1007,104 @@
 msgstr ""
 
-#: admin/blogs.php:75 admin/comments.php:155 admin/posts.php:215
-#: admin/users.php:95
-msgid "Show filters and display options"
-msgstr ""
-
-#: admin/blogs.php:82 admin/comments.php:163 admin/posts.php:223
-#: admin/users.php:103
-msgid "Cancel filters and display options"
-msgstr ""
-
-#: admin/blogs.php:86 admin/blogs.php:90
+#: admin/blogs.php:75 admin/blogs.php:79
 msgid "List of blogs"
 msgstr ""
 
-#: admin/blogs.php:95
+#: admin/blogs.php:84
 msgid "Blog has been successfully deleted."
 msgstr ""
 
-#: admin/blogs.php:101
+#: admin/blogs.php:90
 msgid "Create a new blog"
 msgstr ""
 
-#: admin/blogs.php:106
+#: admin/blogs.php:94 admin/blogs.php:99
 msgid "Filter blogs list"
 msgstr ""
 
-#: admin/blogs.php:110 admin/comments.php:220 admin/posts.php:248
-#: admin/users.php:131
+#: admin/blogs.php:103 admin/comments.php:218 admin/posts.php:245
+#: admin/users.php:126
 msgid "Filters"
 msgstr ""
 
-#: admin/blogs.php:111 admin/users.php:132 inc/admin/lib.dc.page.php:250
+#: admin/blogs.php:104 admin/users.php:127 inc/admin/lib.dc.page.php:197
 msgid "Search:"
 msgstr ""
 
-#: admin/blogs.php:116 admin/comments.php:235 admin/posts.php:267
-#: admin/users.php:137
+#: admin/blogs.php:109 admin/comments.php:233 admin/posts.php:264
+#: admin/users.php:132
 msgid "Display options"
 msgstr ""
 
-#: admin/blogs.php:117 admin/comments.php:236 admin/posts.php:268
-#: admin/users.php:138
+#: admin/blogs.php:110 admin/comments.php:234 admin/posts.php:265
+#: admin/users.php:133
 msgid "Order by:"
 msgstr ""
 
-#: admin/blogs.php:119 admin/comments.php:238 admin/posts.php:270
-#: admin/users.php:140
+#: admin/blogs.php:112 admin/comments.php:236 admin/posts.php:267
+#: admin/users.php:135
 msgid "Sort:"
 msgstr ""
 
-#: admin/blogs.php:121 admin/posts.php:272 admin/users.php:142
+#: admin/blogs.php:114 admin/posts.php:269 admin/users.php:137
 msgid "Show"
 msgstr ""
 
-#: admin/blogs.php:122
+#: admin/blogs.php:115
 msgid "blogs per page"
 msgstr ""
 
-#: admin/blogs.php:126 admin/comments.php:246 admin/posts.php:278
-#: admin/users.php:147
+#: admin/blogs.php:119 admin/comments.php:244 admin/posts.php:275
+#: admin/users.php:142
 msgid "Apply filters and display options"
 msgstr ""
 
-#: admin/blogs.php:134
-msgid "No blog matches the filter"
-msgstr ""
-
-#: admin/blogs.php:136 admin/users_actions.php:208
+#: admin/blogs.php:126 admin/users_actions.php:206
 msgid "No blog"
 msgstr ""
 
-#: admin/blogs.php:150
-#, php-format
-msgid "List of %s blogs match the filter."
-msgstr ""
-
-#: admin/blogs.php:152
+#: admin/blogs.php:136
 msgid "Blogs list"
 msgstr ""
 
-#: admin/blogs.php:157
+#: admin/blogs.php:137
 msgid "Blog id"
 msgstr ""
 
-#: admin/blogs.php:159 inc/admin/lib.pager.php:532
+#: admin/blogs.php:139 inc/admin/lib.pager.php:496
 msgid "Entries (all types)"
 msgstr ""
 
-#: admin/blogs.php:161 admin/comments.php:46 admin/post.php:451
-#: admin/post.php:834 admin/posts.php:94 admin/users_actions.php:219
-#: inc/admin/actions/class.dcactionposts.php:104 inc/admin/lib.pager.php:189
-#: inc/admin/lib.pager.php:299 inc/admin/lib.pager.php:410
+#: admin/blogs.php:141 admin/comments.php:46 admin/post.php:438
+#: admin/post.php:852 admin/posts.php:94 admin/users_actions.php:217
+#: inc/admin/actions/class.dcactionposts.php:93 inc/admin/lib.pager.php:177
+#: inc/admin/lib.pager.php:287 inc/admin/lib.pager.php:386
 msgid "Status"
 msgstr ""
 
-#: admin/blogs.php:185
+#: admin/blogs.php:165
 #, php-format
 msgid "Edit blog settings for %s"
 msgstr ""
 
-#: admin/blogs.php:186
+#: admin/blogs.php:166
 msgid "Edit blog settings"
 msgstr ""
 
-#: admin/blogs.php:201
+#: admin/blogs.php:179
 #, php-format
 msgid "Switch to blog %s"
 msgstr ""
 
-#: admin/categories.php:25 inc/core/class.dc.xmlrpc.php:1136
-msgid "This category does not exist."
-msgstr ""
-
-#: admin/categories.php:34
-#, php-format
-msgid "The category \"%s\" has been successfully deleted."
-msgstr ""
-
-#: admin/categories.php:53
+#: admin/categories.php:50
 msgid "Category where to move posts does not exist"
 msgstr ""
 
-#: admin/categories.php:62
-#, php-format
-msgid "The entries have been successfully moved to category \"%s\""
-msgstr ""
-
-#: admin/categories.php:80 admin/categories.php:125
-msgid "Categories have been successfully reordered."
-msgstr ""
-
-#: admin/categories.php:90
-msgid "Categories order has been successfully reset."
-msgstr ""
-
-#: admin/categories.php:113 admin/categories.php:117 admin/category.php:167
-#: inc/admin/class.dc.favorites.php:430 inc/admin/prepend.php:250
+#: admin/categories.php:105 admin/categories.php:109 admin/category.php:161
+#: inc/admin/prepend.php:315
 msgid "Categories"
 msgstr ""
 
-#: admin/categories.php:122
+#: admin/categories.php:114
 #: inc/libs/clearbricks/tests/unit/common/lib.l10n.php:66
 #: inc/libs/clearbricks/tests/unit/common/lib.l10n.php:76
@@ -1011,59 +1118,64 @@
 msgstr[1] ""
 
-#: admin/categories.php:128
+#: admin/categories.php:117
+msgid "Categories have been successfully reordered."
+msgstr ""
+
+#: admin/categories.php:120 inc/core/class.dc.xmlrpc.php:1136
+msgid "This category does not exist."
+msgstr ""
+
+#: admin/categories.php:123
 msgid "Entries have been successfully moved to the category you choose."
 msgstr ""
 
-#: admin/categories.php:134 admin/category.php:163
+#: admin/categories.php:129 admin/category.php:157
 msgid "New category"
 msgstr ""
 
-#: admin/categories.php:140
+#: admin/categories.php:135
 msgid "No category so far."
 msgstr ""
 
-#: admin/categories.php:166
+#: admin/categories.php:161 admin/index.php:78
 #, php-format
 msgid "%d entries"
 msgstr ""
 
-#: admin/categories.php:166 inc/admin/class.dc.favorites.php:485
+#: admin/categories.php:161 admin/index.php:78
 #, php-format
 msgid "%d entry"
-msgid_plural "%d entries"
-msgstr[0] ""
-msgstr[1] ""
-
-#: admin/categories.php:167
+msgstr ""
+
+#: admin/categories.php:162
 msgid "total:"
 msgstr ""
 
-#: admin/categories.php:168 admin/category.php:210 admin/preferences.php:374
-#: admin/user.php:269
+#: admin/categories.php:163 admin/category.php:204 admin/preferences.php:429
+#: admin/user.php:267
 msgid "URL:"
 msgstr ""
 
-#: admin/categories.php:175
+#: admin/categories.php:170
 msgid "Move entries to"
 msgstr ""
 
-#: admin/categories.php:177 admin/media.php:388 admin/media_item.php:398
-#: inc/admin/lib.dc.page.php:251
+#: admin/categories.php:172 inc/admin/lib.dc.page.php:198
 msgid "OK"
 msgstr ""
 
-#: admin/categories.php:186
+#: admin/categories.php:181
 msgid "Delete category"
 msgstr ""
 
+#: admin/categories.php:197
+msgid "To rearrange categories order, move items by drag and drop, then click on “Save categories order” button."
+msgstr ""
+
 #: admin/categories.php:202
-msgid "To rearrange categories order, move items by drag and drop, then click on “Save categories order” button."
-msgstr ""
-
-#: admin/categories.php:207
 msgid "Save categories order"
 msgstr ""
 
-#: admin/categories.php:214
+#: admin/categories.php:209
 msgid "Reorder all categories on the top level"
 msgstr ""
@@ -1073,67 +1185,56 @@
 msgstr ""
 
-#: admin/category.php:86 admin/category.php:99
-msgid "The category has been successfully moved"
-msgstr ""
-
-#: admin/category.php:136
-msgid "The category has been successfully updated."
-msgstr ""
-
-#: admin/category.php:151
-#, php-format
-msgid "The category \"%s\" has been successfully created."
-msgstr ""
-
-#: admin/category.php:184
+#: admin/category.php:178
 msgid "Category has been successfully updated."
 msgstr ""
 
-#: admin/category.php:189
+#: admin/category.php:183
 msgid "Category information"
 msgstr ""
 
-#: admin/category.php:190 admin/post.php:679
-msgid "Name:"
-msgstr ""
-
-#: admin/category.php:197 admin/category.php:236 admin/index.php:323
-#: admin/post.php:491 inc/admin/actions/class.dcactionposts.php:295
+#: admin/category.php:184 admin/index.php:357 admin/index.php:369
+#: admin/media.php:433 admin/post.php:476 admin/post.php:527
+#: inc/admin/actions/class.dcactionposts.php:237
+msgid "Title:"
+msgstr ""
+
+#: admin/category.php:191 admin/category.php:230 admin/index.php:371
+#: admin/post.php:478 inc/admin/actions/class.dcactionposts.php:239
 msgid "Parent:"
 msgstr ""
 
-#: admin/category.php:214
+#: admin/category.php:208
 msgid "Warning: If you set the URL manually, it may conflict with another category."
 msgstr ""
 
-#: admin/category.php:217
+#: admin/category.php:211
 msgid "Description:"
 msgstr ""
 
-#: admin/category.php:230
+#: admin/category.php:224
 msgid "Move this category"
 msgstr ""
 
-#: admin/category.php:235
+#: admin/category.php:229
 msgid "Category parent"
 msgstr ""
 
-#: admin/category.php:247
+#: admin/category.php:241
 msgid "Category sibling"
 msgstr ""
 
-#: admin/category.php:248
+#: admin/category.php:242
 msgid "Move current category"
 msgstr ""
 
-#: admin/category.php:249
+#: admin/category.php:243
 msgid "after"
 msgstr ""
 
-#: admin/category.php:249
+#: admin/category.php:243
 msgid "before"
 msgstr ""
 
-#: admin/category.php:249
+#: admin/category.php:243
 msgid "position: "
 msgstr ""
@@ -1143,34 +1244,26 @@
 msgstr ""
 
-#: admin/comment.php:59 admin/post.php:407
-msgid "Comment has been successfully created."
-msgstr ""
-
-#: admin/comment.php:93 admin/post.php:653 inc/admin/lib.pager.php:383
+#: admin/comment.php:92 admin/post.php:658 inc/admin/lib.pager.php:368
 msgid "No comment"
 msgstr ""
 
-#: admin/comment.php:134 admin/comment.php:193
+#: admin/comment.php:155
+msgid "You can't edit this comment."
+msgstr ""
+
+#: admin/comment.php:166 admin/comment.php:173 admin/comment.php:177
+msgid "Edit comment"
+msgstr ""
+
+#: admin/comment.php:189
 msgid "Comment has been successfully updated."
 msgstr ""
 
-#: admin/comment.php:151
-msgid "Comment has been successfully deleted."
-msgstr ""
-
-#: admin/comment.php:159
-msgid "You can't edit this comment."
-msgstr ""
-
-#: admin/comment.php:170 admin/comment.php:177 admin/comment.php:181
-msgid "Edit comment"
-msgstr ""
-
-#: admin/comment.php:200
+#: admin/comment.php:196
 #, php-format
 msgid "Your comment on my blog %s"
 msgstr ""
 
-#: admin/comment.php:202
+#: admin/comment.php:198
 #, php-format
 msgid ""
@@ -1183,45 +1276,47 @@
 msgstr ""
 
-#: admin/comment.php:203
+#: admin/comment.php:199
 msgid "Send an e-mail"
 msgstr ""
 
+#: admin/comment.php:205
+msgid "Information collected"
+msgstr ""
+
+#: admin/comment.php:206 admin/comments.php:228 inc/admin/lib.dc.page.php:541
+msgid "IP address:"
+msgstr ""
+
 #: admin/comment.php:209
-msgid "Information collected"
-msgstr ""
-
-#: admin/comment.php:210 admin/comments.php:230 inc/admin/lib.dc.page.php:602
-msgid "IP address:"
+msgid "Date:"
 msgstr ""
 
 #: admin/comment.php:213
-msgid "Date:"
-msgstr ""
-
-#: admin/comment.php:217
 msgid "Comment submitted"
 msgstr ""
 
-#: admin/comment.php:218 admin/comments.php:228 admin/posts.php:249
+#: admin/comment.php:214 admin/comments.php:226 admin/posts.php:246
 msgid "Author:"
 msgstr ""
 
-#: admin/comment.php:227 admin/post.php:687 inc/admin/lib.dc.page.php:598
+#: admin/comment.php:223 admin/post.php:691 inc/admin/lib.dc.page.php:537
 msgid "Web site:"
 msgstr ""
 
-#: admin/comment.php:231 admin/comments.php:223 admin/posts.php:253
+#: admin/comment.php:227 admin/comments.php:221 admin/posts.php:250
 msgid "Status:"
 msgstr ""
 
-#: admin/comment.php:238 admin/post.php:692
+#: admin/comment.php:234 admin/post.php:696
 msgid "Comment:"
 msgstr ""
 
-#: admin/comment.php:247 admin/langs.php:209 admin/media.php:608
-#: admin/plugins.php:294 admin/plugins.php:338 admin/post.php:598
-#: admin/users.php:34 inc/admin/actions/class.dcactioncomments.php:132
-#: inc/admin/actions/class.dcactionposts.php:142
-#: inc/admin/actions/class.dcactionposts.php:143
+#: admin/comment.php:243 admin/langs.php:198 admin/media.php:534
+#: admin/plugins.php:289 admin/plugins.php:333 admin/post.php:585
+#: admin/post.php:637 admin/post.php:730 admin/search.php:112
+#: admin/search.php:155 admin/users.php:34
+#: inc/admin/actions/class.dcactioncomments.php:100
+#: inc/admin/actions/class.dcactionposts.php:131
+#: inc/admin/actions/class.dcactionposts.php:132
 #: inc/admin/actions/class.dcactionusers.php:100
 msgid "Delete"
@@ -1236,76 +1331,76 @@
 msgstr ""
 
-#: admin/comments.php:43 admin/post.php:832 admin/posts.php:90
-#: inc/admin/lib.pager.php:184 inc/admin/lib.pager.php:297
-#: inc/admin/lib.pager.php:409
+#: admin/comments.php:43 admin/post.php:850 admin/posts.php:90
+#: inc/admin/lib.pager.php:172 inc/admin/lib.pager.php:285
+#: inc/admin/lib.pager.php:385
 msgid "Date"
 msgstr ""
 
-#: admin/comments.php:44
+#: admin/comments.php:44 inc/admin/lib.pager.php:387
 msgid "Entry title"
 msgstr ""
 
-#: admin/comments.php:45 admin/post.php:831 admin/posts.php:93
-#: inc/admin/actions/class.dcactioncomments.php:78 inc/admin/lib.pager.php:186
-#: inc/admin/lib.pager.php:298 inc/admin/lib.pager.php:408
+#: admin/comments.php:45 admin/post.php:849 admin/posts.php:93
+#: inc/admin/lib.pager.php:174 inc/admin/lib.pager.php:286
+#: inc/admin/lib.pager.php:384
 msgid "Author"
 msgstr ""
 
-#: admin/comments.php:175 inc/admin/actions/class.dcactioncomments.php:152
+#: admin/comments.php:167
 msgid "Selected comments have been successfully updated."
 msgstr ""
 
-#: admin/comments.php:177 inc/admin/actions/class.dcactioncomments.php:172
+#: admin/comments.php:169
 msgid "Selected comments have been successfully deleted."
 msgstr ""
 
-#: admin/comments.php:183
+#: admin/comments.php:175
 msgid "Spam comments have been successfully deleted."
 msgstr ""
 
-#: admin/comments.php:195
+#: admin/comments.php:187
 msgid "You have one spam comment."
 msgstr ""
 
-#: admin/comments.php:196
+#: admin/comments.php:188
 msgid "Show it."
 msgstr ""
 
+#: admin/comments.php:190
+#, php-format
+msgid "You have %s spam comments."
+msgstr ""
+
+#: admin/comments.php:191
+msgid "Show them."
+msgstr ""
+
 #: admin/comments.php:198
-#, php-format
-msgid "You have %s spam comments."
-msgstr ""
-
-#: admin/comments.php:199
-msgid "Show them."
-msgstr ""
-
-#: admin/comments.php:206
 msgid "Delete all spams"
 msgstr ""
 
-#: admin/comments.php:216
+#: admin/comments.php:209 admin/comments.php:214
 msgid "Filter comments and trackbacks list"
 msgstr ""
 
-#: admin/comments.php:221
+#: admin/comments.php:219
 msgid "Type:"
 msgstr ""
 
-#: admin/comments.php:242
+#: admin/comments.php:240
 msgid "comments per page"
 msgstr ""
 
-#: admin/comments.php:259 admin/post.php:661 admin/search.php:153
+#: admin/comments.php:257 admin/post.php:666 admin/search.php:172
 msgid "Selected comments action:"
 msgstr ""
 
-#: admin/comments.php:260 admin/users_actions.php:147
+#: admin/comments.php:258 admin/users_actions.php:145
 msgid "Actions"
 msgstr ""
 
-#: admin/comments.php:262 admin/post.php:666 admin/post.php:750
-#: admin/posts.php:293 admin/search.php:127 admin/search.php:155
-#: admin/users.php:164 inc/admin/lib.dc.page.php:79
+#: admin/comments.php:260 admin/post.php:670 admin/post.php:768
+#: admin/posts.php:290 admin/search.php:134 admin/search.php:174
+#: admin/users.php:159 inc/admin/lib.dc.page.php:79
 #: inc/admin/lib.pager.php:114
 msgid "ok"
@@ -1313,124 +1408,126 @@
 
 #: admin/help.php:78 admin/help.php:84 admin/help.php:90
-#: inc/admin/class.dc.favorites.php:475 inc/admin/lib.dc.page.php:238
 msgid "Global help"
 msgstr ""
 
-#: admin/index.php:98
+#: admin/index.php:81
+#, php-format
+msgid "%d comment"
+msgstr ""
+
+#: admin/index.php:81
+#, php-format
+msgid "%d comments"
+msgstr ""
+
+#: admin/index.php:146
 msgid "Dotclear news"
 msgstr ""
 
-#: admin/index.php:108 admin/index.php:113
+#: admin/index.php:150 admin/index.php:181 admin/post.php:411
+#: inc/admin/lib.dc.page.php:138
+msgid "new window"
+msgstr ""
+
+#: admin/index.php:156 admin/index.php:161
 msgid "%d %B %Y:"
 msgstr ""
 
-#: admin/index.php:130
+#: admin/index.php:178
 msgid "Documentation and support"
 msgstr ""
 
-#: admin/index.php:152 admin/index.php:159
+#: admin/index.php:200 admin/index.php:207
 msgid "Dashboard"
 msgstr ""
 
-#: admin/index.php:174
+#: admin/index.php:221
 #, php-format
 msgid "Dotclear %s is available!"
 msgstr ""
 
-#: admin/index.php:175
+#: admin/index.php:222
 msgid "Upgrade now"
 msgstr ""
 
-#: admin/index.php:176
+#: admin/index.php:223
 msgid "Remind me later"
 msgstr ""
 
-#: admin/index.php:178 admin/update.php:205
+#: admin/index.php:225 admin/update.php:205
 msgid "Information about this version"
 msgstr ""
 
-#: admin/index.php:185
+#: admin/index.php:232
 msgid "Make this blog my default blog"
 msgstr ""
 
-#: admin/index.php:189
+#: admin/index.php:236
 msgid "This blog is offline"
 msgstr ""
 
-#: admin/index.php:191
+#: admin/index.php:238
 msgid "This blog is removed"
 msgstr ""
 
-#: admin/index.php:197 admin/index.php:205
+#: admin/index.php:244 admin/index.php:252
 #, php-format
 msgid "%s is not defined, you should edit your configuration file."
 msgstr ""
 
-#: admin/index.php:198 admin/index.php:206
+#: admin/index.php:245 admin/index.php:253
 msgid "See <a href=\"http://dotclear.org/documentation/2.0/admin/config\">documentation</a> for more information."
 msgstr ""
 
-#: admin/index.php:215
+#: admin/index.php:262
 msgid "The cache directory does not exist or is not writable. You must create this directory with sufficient rights and affect this location to \"DC_TPL_CACHE\" in inc/config.php file."
 msgstr ""
 
-#: admin/index.php:219
+#: admin/index.php:266
 msgid "The cache directory does not exist or is not writable. You should contact your administrator."
 msgstr ""
 
-#: admin/index.php:226 inc/core/class.dc.media.php:78
+#: admin/index.php:273 inc/core/class.dc.media.php:78
 msgid "There is no writable directory /public/ at the location set in about:config \"public_path\". You must create this directory with sufficient rights (or change this setting)."
 msgstr ""
 
-#: admin/index.php:230 inc/core/class.dc.media.php:80
+#: admin/index.php:277 inc/core/class.dc.media.php:80
 msgid "There is no writable root directory for the media manager. You should contact your administrator."
 msgstr ""
 
-#: admin/index.php:243 admin/install/index.php:358 admin/plugins.php:216
+#: admin/index.php:290 admin/install/index.php:354 admin/plugins.php:211
 msgid "Following plugins have been installed:"
 msgstr ""
 
-#: admin/index.php:251 admin/install/index.php:366 admin/plugins.php:224
+#: admin/index.php:298 admin/install/index.php:362 admin/plugins.php:219
 msgid "Following plugins have not been installed:"
 msgstr ""
 
-#: admin/index.php:263
-msgid "Errors have occured with following plugins:"
-msgstr ""
-
-#: admin/index.php:306
+#: admin/index.php:314
+msgid "Some plugins are installed twice:"
+msgstr ""
+
+#: admin/index.php:354
 msgid "Quick entry"
 msgstr ""
 
-#: admin/index.php:308 admin/post.php:35 admin/post.php:567
-#: admin/posts.php:242 inc/admin/class.dc.favorites.php:404
-#: inc/admin/prepend.php:262
-msgid "New entry"
-msgstr ""
-
-#: admin/index.php:309 admin/index.php:321 admin/media.php:495
-#: admin/post.php:489 admin/post.php:540
-#: inc/admin/actions/class.dcactionposts.php:293
-msgid "Title:"
-msgstr ""
-
-#: admin/index.php:313 admin/post.php:552
+#: admin/index.php:361 admin/post.php:539
 msgid "Content:"
 msgstr ""
 
-#: admin/index.php:316 admin/post.php:483 admin/posts.php:251
-#: inc/admin/actions/class.dcactionposts.php:286
+#: admin/index.php:364 admin/post.php:470 admin/posts.php:248
+#: inc/admin/actions/class.dcactionposts.php:230
 msgid "Category:"
 msgstr ""
 
-#: admin/index.php:320 admin/post.php:488
+#: admin/index.php:368 admin/post.php:475
 msgid "Add a new category"
 msgstr ""
 
-#: admin/index.php:326
+#: admin/index.php:374
 msgid "This category will be created when you will save your post."
 msgstr ""
 
-#: admin/index.php:331
+#: admin/index.php:379
 msgid "Save and publish"
 msgstr ""
@@ -1511,5 +1608,5 @@
 msgstr ""
 
-#: admin/install/index.php:87 admin/user.php:233
+#: admin/install/index.php:87 admin/user.php:231
 #: inc/core/class.dc.core.php:766
 msgid "Password must contain at least 6 characters."
@@ -1524,17 +1621,17 @@
 msgstr ""
 
-#: admin/install/index.php:167
+#: admin/install/index.php:163
 msgid "Welcome to Dotclear!"
 msgstr ""
 
-#: admin/install/index.php:168
+#: admin/install/index.php:164
 msgid "This is your first entry. When you're ready to blog, log in to edit or delete it."
 msgstr ""
 
-#: admin/install/index.php:180
+#: admin/install/index.php:176
 msgid "Dotclear Team"
 msgstr ""
 
-#: admin/install/index.php:183
+#: admin/install/index.php:179
 msgid ""
 "<p>This is a comment.</p>\n"
@@ -1542,114 +1639,114 @@
 msgstr ""
 
-#: admin/install/index.php:258
+#: admin/install/index.php:254
 msgid "Dotclear Install"
 msgstr ""
 
-#: admin/install/index.php:277 admin/install/index.php:278
-#: admin/install/index.php:279 admin/install/index.php:280
-#: admin/install/index.php:281 admin/preferences.php:312
-#: admin/preferences.php:313 admin/preferences.php:314
-#: admin/preferences.php:315 admin/preferences.php:316 admin/user.php:174
-#: admin/user.php:175 admin/user.php:176 admin/user.php:177 admin/user.php:178
+#: admin/install/index.php:273 admin/install/index.php:274
+#: admin/install/index.php:275 admin/install/index.php:276
+#: admin/install/index.php:277 admin/preferences.php:367
+#: admin/preferences.php:368 admin/preferences.php:369
+#: admin/preferences.php:370 admin/preferences.php:371 admin/user.php:172
+#: admin/user.php:173 admin/user.php:174 admin/user.php:175 admin/user.php:176
 #, php-format
 msgid "Password strength: %s"
 msgstr ""
 
-#: admin/install/index.php:277 admin/preferences.php:312 admin/user.php:174
+#: admin/install/index.php:273 admin/preferences.php:367 admin/user.php:172
 msgid "very weak"
 msgstr ""
 
-#: admin/install/index.php:278 admin/preferences.php:313 admin/user.php:175
+#: admin/install/index.php:274 admin/preferences.php:368 admin/user.php:173
 msgid "weak"
 msgstr ""
 
-#: admin/install/index.php:279 admin/preferences.php:314 admin/user.php:176
+#: admin/install/index.php:275 admin/preferences.php:369 admin/user.php:174
 msgid "mediocre"
 msgstr ""
 
-#: admin/install/index.php:280 admin/preferences.php:315 admin/user.php:177
+#: admin/install/index.php:276 admin/preferences.php:370 admin/user.php:175
 msgid "strong"
 msgstr ""
 
-#: admin/install/index.php:281 admin/preferences.php:316 admin/user.php:178
+#: admin/install/index.php:277 admin/preferences.php:371 admin/user.php:176
 msgid "very strong"
 msgstr ""
 
-#: admin/install/index.php:285
+#: admin/install/index.php:281
 msgid "show"
 msgstr ""
 
+#: admin/install/index.php:296
+msgid "Dotclear installation"
+msgstr ""
+
 #: admin/install/index.php:300
-msgid "Dotclear installation"
-msgstr ""
-
-#: admin/install/index.php:304
 #, php-format
 msgid "Cache directory %s is not writable."
 msgstr ""
 
-#: admin/install/index.php:308 admin/install/index.php:402
-#: admin/install/wizard.php:161 inc/admin/lib.dc.page.php:173
-#: inc/admin/lib.dc.page.php:342
+#: admin/install/index.php:304 admin/install/index.php:398
+#: admin/install/wizard.php:161 inc/admin/lib.dc.page.php:172
+#: inc/admin/lib.dc.page.php:289
 msgid "Errors:"
 msgstr ""
 
-#: admin/install/index.php:312
+#: admin/install/index.php:308
 msgid "Configuration file has been successfully created."
 msgstr ""
 
-#: admin/install/index.php:318 admin/install/index.php:323
+#: admin/install/index.php:314 admin/install/index.php:319
 msgid "User information"
 msgstr ""
 
-#: admin/install/index.php:320
+#: admin/install/index.php:316
 msgid "Please provide the following information needed to create the first user."
 msgstr ""
 
-#: admin/install/index.php:324 admin/preferences.php:365 admin/user.php:256
+#: admin/install/index.php:320 admin/preferences.php:420 admin/user.php:254
 msgid "First Name:"
 msgstr ""
 
-#: admin/install/index.php:326 admin/preferences.php:362 admin/user.php:252
+#: admin/install/index.php:322 admin/preferences.php:417 admin/user.php:250
 msgid "Last Name:"
 msgstr ""
 
-#: admin/install/index.php:332
+#: admin/install/index.php:328
 msgid "Username and password"
 msgstr ""
 
+#: admin/install/index.php:370
+msgid "All done!"
+msgstr ""
+
 #: admin/install/index.php:374
-msgid "All done!"
-msgstr ""
-
-#: admin/install/index.php:378
 msgid "Dotclear has been successfully installed. Here is some useful information you should keep."
 msgstr ""
 
-#: admin/install/index.php:380
+#: admin/install/index.php:376
 msgid "Your account"
 msgstr ""
 
-#: admin/install/index.php:386
+#: admin/install/index.php:382
 msgid "Your blog"
 msgstr ""
 
-#: admin/install/index.php:388
+#: admin/install/index.php:384
 msgid "Blog address:"
 msgstr ""
 
+#: admin/install/index.php:385
+msgid "Administration interface:"
+msgstr ""
+
 #: admin/install/index.php:389
-msgid "Administration interface:"
-msgstr ""
-
-#: admin/install/index.php:393
 msgid "Manage your blog now"
 msgstr ""
 
-#: admin/install/index.php:401
+#: admin/install/index.php:397
 msgid "Installation can not be completed"
 msgstr ""
 
-#: admin/install/index.php:403
+#: admin/install/index.php:399
 msgid "For the said reasons, Dotclear can not be installed. Please refer to <a href=\"http://dotclear.org/documentation/2.0/admin/install\">the documentation</a> to learn how to correct the problem."
 msgstr ""
@@ -1754,96 +1851,96 @@
 msgstr ""
 
-#: admin/langs.php:51 admin/langs.php:151
+#: admin/langs.php:71
+msgid "Invalid language file URL."
+msgstr ""
+
+#: admin/langs.php:130 admin/langs.php:135
+msgid "Languages management"
+msgstr ""
+
+#: admin/langs.php:140
 msgid "Language has been successfully deleted."
 msgstr ""
 
-#: admin/langs.php:72
-msgid "Invalid language file URL."
-msgstr ""
-
-#: admin/langs.php:91 admin/langs.php:127 admin/langs.php:155
+#: admin/langs.php:144
+msgid "Language has been successfully installed."
+msgstr ""
+
+#: admin/langs.php:144
 msgid "Language has been successfully upgraded"
 msgstr ""
 
-#: admin/langs.php:93 admin/langs.php:129 admin/langs.php:155
-msgid "Language has been successfully installed."
-msgstr ""
-
-#: admin/langs.php:141 admin/langs.php:146
-msgid "Languages management"
-msgstr ""
-
-#: admin/langs.php:159
+#: admin/langs.php:148
 msgid "Here you can install, upgrade or remove languages for your Dotclear installation."
 msgstr ""
 
-#: admin/langs.php:161
+#: admin/langs.php:150
 #, php-format
 msgid "You can change your user language in your <a href=\"%1$s\">preferences</a> or change your blog's main language in your <a href=\"%2$s\">blog settings</a>."
 msgstr ""
 
-#: admin/langs.php:166
+#: admin/langs.php:155
 msgid "Installed languages"
 msgstr ""
 
-#: admin/langs.php:181
+#: admin/langs.php:170
 msgid "No additional language is installed."
 msgstr ""
 
-#: admin/langs.php:188
+#: admin/langs.php:177
 msgid "Language"
 msgstr ""
 
-#: admin/langs.php:189 admin/plugins.php:264 admin/plugins.php:316
+#: admin/langs.php:178 admin/plugins.php:259 admin/plugins.php:311
 msgid "Action"
 msgstr ""
 
-#: admin/langs.php:219
+#: admin/langs.php:208
 msgid "Install or upgrade languages"
 msgstr ""
 
-#: admin/langs.php:222
+#: admin/langs.php:211
 #, php-format
 msgid "You can install or remove a language by adding or removing the relevant directory in your %s folder."
 msgstr ""
 
-#: admin/langs.php:237
+#: admin/langs.php:226
 msgid "Available languages"
 msgstr ""
 
-#: admin/langs.php:238
+#: admin/langs.php:227
 #, php-format
 msgid "You can download and install a additional language directly from Dotclear.net. Proposed languages are based on your version: %s."
 msgstr ""
 
-#: admin/langs.php:240 admin/user.php:277
+#: admin/langs.php:229 admin/user.php:275
 msgid "Language:"
 msgstr ""
 
-#: admin/langs.php:244
+#: admin/langs.php:233
 msgid "Install language"
 msgstr ""
 
-#: admin/langs.php:256
+#: admin/langs.php:245
 msgid "You can install languages by uploading zip files."
 msgstr ""
 
-#: admin/langs.php:257
+#: admin/langs.php:246
 msgid "Language zip file:"
 msgstr ""
 
-#: admin/langs.php:261
+#: admin/langs.php:250
 msgid "Upload language"
 msgstr ""
 
-#: admin/langs.php:277
+#: admin/langs.php:266
 msgid "Invalid language zip file."
 msgstr ""
 
-#: admin/langs.php:281
+#: admin/langs.php:270
 msgid "The zip file does not appear to be a valid Dotclear language pack."
 msgstr ""
 
-#: admin/langs.php:291
+#: admin/langs.php:280
 msgid "An error occurred during language upgrade."
 msgstr ""
@@ -1865,191 +1962,164 @@
 msgstr ""
 
-#: admin/media.php:132
-#, php-format
-msgid "Directory \"%s\" has been successfully created."
-msgstr ""
-
-#: admin/media.php:180 admin/media.php:321
+#: admin/media.php:205 admin/media.php:209 admin/media.php:238
+#: admin/media.php:246 admin/media.php:252 admin/media.php:258
+#: admin/media.php:360 admin/media.php:391 admin/media_item.php:174
+#: admin/media_item.php:181 inc/admin/prepend.php:312
+msgid "Media manager"
+msgstr ""
+
+#: admin/media.php:210 admin/post_media.php:63
+msgid "confirm removal"
+msgstr ""
+
+#: admin/media.php:216
+#, php-format
+msgid "Are you sure you want to remove %s?"
+msgstr ""
+
+#: admin/media.php:218 admin/media_item.php:335 admin/popup_link.php:41
+#: admin/post.php:581 admin/post_media.php:68 inc/admin/lib.dc.page.php:827
+msgid "Cancel"
+msgstr ""
+
+#: admin/media.php:219 admin/post_media.php:69
+msgid "Yes"
+msgstr ""
+
+#: admin/media.php:265
+msgid "You do not have sufficient permissions to write to this folder."
+msgstr ""
+
+#: admin/media.php:269
+msgid "Directory has been successfully created."
+msgstr ""
+
+#: admin/media.php:273
 msgid "Files have been successfully uploaded."
 msgstr ""
 
-#: admin/media.php:195
-#, php-format
-msgid "Successfully delete one media."
-msgid_plural "Successfully delete %d medias."
-msgstr[0] ""
-msgstr[1] ""
-
-#: admin/media.php:216 admin/media.php:325
+#: admin/media.php:277
 msgid "File has been successfully removed."
 msgstr ""
 
-#: admin/media.php:230
-#, php-format
-msgid "Directory \"%s\" has been successfully rebuilt."
-msgstr ""
-
-#: admin/media.php:242 admin/media.php:246 admin/media.php:277
-#: admin/media.php:287 admin/media.php:295 admin/media.php:306
-#: admin/media.php:422 admin/media.php:453 admin/media_item.php:213
-#: admin/media_item.php:220 inc/admin/class.dc.favorites.php:436
-#: inc/admin/prepend.php:247
-msgid "Media manager"
-msgstr ""
-
-#: admin/media.php:247 admin/post_media.php:65
-msgid "confirm removal"
-msgstr ""
-
-#: admin/media.php:255
-#, php-format
-msgid "Are you sure you want to remove %s?"
-msgstr ""
-
-#: admin/media.php:257 admin/media_item.php:384 admin/popup_link.php:41
-#: admin/post.php:594 admin/post_media.php:70 inc/admin/lib.dc.page.php:898
-msgid "Cancel"
-msgstr ""
-
-#: admin/media.php:258 admin/post_media.php:71
-msgid "Yes"
+#: admin/media.php:281
+msgid "Directory has been successfully removed."
+msgstr ""
+
+#: admin/media.php:285
+msgid "Directory has been successfully rebuilt."
+msgstr ""
+
+#: admin/media.php:289
+msgid "Zip file has been successfully extracted."
+msgstr ""
+
+#: admin/media.php:298
+#, php-format
+msgid "Choose a file to attach to entry %s by clicking on %s."
+msgstr ""
+
+#: admin/media.php:300 admin/media.php:304 admin/media.php:516
+#: admin/media.php:517
+msgid "Attach this file to entry"
+msgstr ""
+
+#: admin/media.php:303
+#, php-format
+msgid "Choose a file to insert into entry by clicking on %s."
 msgstr ""
 
 #: admin/media.php:313
-msgid "You do not have sufficient permissions to write to this folder."
-msgstr ""
-
-#: admin/media.php:317
-msgid "Directory has been successfully created."
-msgstr ""
-
-#: admin/media.php:329
-msgid "Directory has been successfully removed."
-msgstr ""
-
-#: admin/media.php:333
-msgid "Directory has been successfully rebuilt."
-msgstr ""
-
-#: admin/media.php:337 admin/media_item.php:140
-msgid "Zip file has been successfully extracted."
-msgstr ""
-
-#: admin/media.php:346
-#, php-format
-msgid "Choose a file to attach to entry %s by clicking on %s."
-msgstr ""
-
-#: admin/media.php:348 admin/media.php:352 admin/media.php:587
-#: admin/media.php:588
-msgid "Attach this file to entry"
-msgstr ""
-
-#: admin/media.php:351
-#, php-format
-msgid "Choose a file to insert into entry by clicking on %s."
-msgstr ""
-
-#: admin/media.php:365
-msgid "Remove selected medias"
-msgstr ""
-
-#: admin/media.php:375
 msgid "No file."
 msgstr ""
 
-#: admin/media.php:384
+#: admin/media.php:322
 msgid "Sort files:"
 msgstr ""
 
-#: admin/media.php:386
-msgid "Number of elements displayed per page:"
-msgstr ""
-
-#: admin/media.php:422
+#: admin/media.php:326
+msgid "Sort"
+msgstr ""
+
+#: admin/media.php:354
+#, php-format
+msgid "Current settings for medias and images are defined in %s"
+msgstr ""
+
+#: admin/media.php:355
+msgid "Blog parameters"
+msgstr ""
+
+#: admin/media.php:360
 #, php-format
 msgid "In %s:"
 msgstr ""
 
-#: admin/media.php:438
+#: admin/media.php:376
 msgid "Create new directory"
 msgstr ""
 
-#: admin/media.php:440
+#: admin/media.php:378
 msgid "Directory Name:"
 msgstr ""
 
-#: admin/media.php:453
+#: admin/media.php:391
 #, php-format
 msgid "Backup content of %s"
 msgstr ""
 
-#: admin/media.php:455
+#: admin/media.php:393
 msgid "Download zip file"
 msgstr ""
 
-#: admin/media.php:476
+#: admin/media.php:414
 msgid "Add files"
 msgstr ""
 
-#: admin/media.php:477
+#: admin/media.php:415
 msgid "Please take care to publish media that you own and that are not protected by copyright."
 msgstr ""
 
-#: admin/media.php:487 inc/admin/lib.dc.page.php:896
+#: admin/media.php:425 inc/admin/lib.dc.page.php:825
 msgid "Choose file"
 msgstr ""
 
-#: admin/media.php:488 inc/admin/lib.dc.page.php:897
+#: admin/media.php:426 inc/admin/lib.dc.page.php:826
 msgid "Choose files"
 msgstr ""
 
-#: admin/media.php:492
+#: admin/media.php:430
 msgid "Maximum file size allowed:"
 msgstr ""
 
-#: admin/media.php:496 admin/media_item.php:611
+#: admin/media.php:434 admin/media_item.php:547
 msgid "Private"
 msgstr ""
 
-#: admin/media.php:501
+#: admin/media.php:439
 msgid "To send several files at the same time, you can activate the enhanced uploader in"
 msgstr ""
 
-#: admin/media.php:502 admin/preferences.php:17
-#: inc/admin/class.dc.favorites.php:399 inc/admin/lib.dc.page.php:144
-msgid "My preferences"
-msgstr ""
-
-#: admin/media.php:506
+#: admin/media.php:444
 msgid "Refresh"
 msgstr ""
 
+#: admin/media.php:445
+msgid "Clear all"
+msgstr ""
+
+#: admin/media.php:446 inc/admin/lib.dc.page.php:829
+msgid "Upload"
+msgstr ""
+
 #: admin/media.php:507
-msgid "Clear all"
-msgstr ""
-
-#: admin/media.php:508 inc/admin/lib.dc.page.php:900
-msgid "Upload"
+msgid "open"
+msgstr ""
+
+#: admin/media.php:526 admin/media.php:527
+msgid "Insert this file into entry"
 msgstr ""
 
 #: admin/media.php:534
-#, php-format
-msgid "Current settings for medias and images are defined in %s"
-msgstr ""
-
-#: admin/media.php:535
-msgid "Blog parameters"
-msgstr ""
-
-#: admin/media.php:578
-msgid "open"
-msgstr ""
-
-#: admin/media.php:597 admin/media.php:598
-msgid "Insert this file into entry"
-msgstr ""
-
-#: admin/media.php:608
 msgid "delete"
 msgstr ""
@@ -2059,222 +2129,214 @@
 msgstr ""
 
-#: admin/media_item.php:84 admin/media_item.php:113 admin/media_item.php:236
+#: admin/media_item.php:166
+msgid "Are you sure to delete this media?"
+msgstr ""
+
+#: admin/media_item.php:192
 msgid "File has been successfully updated."
 msgstr ""
 
-#: admin/media_item.php:127 admin/media_item.php:239
+#: admin/media_item.php:195
 msgid "Thumbnails have been successfully updated."
 msgstr ""
 
-#: admin/media_item.php:165 admin/media_item.php:242
-msgid "Default media insertion settings have been successfully updated."
-msgstr ""
-
-#: admin/media_item.php:205
-msgid "Are you sure to delete this media?"
-msgstr ""
-
-#: admin/media_item.php:251 admin/media_item.php:252
+#: admin/media_item.php:204 admin/media_item.php:205
 msgid "Insert media item"
 msgstr ""
 
-#: admin/media_item.php:276
+#: admin/media_item.php:229
 msgid "Image size:"
 msgstr ""
 
-#: admin/media_item.php:292
+#: admin/media_item.php:245
 msgid "Image alignment"
 msgstr ""
 
+#: admin/media_item.php:261
+msgid "Image insertion"
+msgstr ""
+
+#: admin/media_item.php:264
+msgid "As a single image"
+msgstr ""
+
+#: admin/media_item.php:266
+msgid "As a link to the original image"
+msgstr ""
+
+#: admin/media_item.php:273
+msgid "MP3 disposition"
+msgstr ""
+
+#: admin/media_item.php:274
+msgid "Please note that you cannot insert mp3 files with visual editor."
+msgstr ""
+
+#: admin/media_item.php:298
+msgid "Please note that you cannot insert video files with visual editor."
+msgstr ""
+
+#: admin/media_item.php:301
+msgid "Video size"
+msgstr ""
+
+#: admin/media_item.php:302
+msgid "Width:"
+msgstr ""
+
+#: admin/media_item.php:304
+msgid "Height:"
+msgstr ""
+
 #: admin/media_item.php:308
-msgid "Image insertion"
-msgstr ""
-
-#: admin/media_item.php:311
-msgid "As a single image"
-msgstr ""
-
-#: admin/media_item.php:313
-msgid "As a link to the original image"
-msgstr ""
-
-#: admin/media_item.php:320
-msgid "MP3 disposition"
-msgstr ""
-
-#: admin/media_item.php:321
-msgid "Please note that you cannot insert mp3 files with visual editor."
-msgstr ""
-
-#: admin/media_item.php:345
-msgid "Please note that you cannot insert video files with visual editor."
-msgstr ""
-
-#: admin/media_item.php:348
-msgid "Video size"
-msgstr ""
-
-#: admin/media_item.php:349
-msgid "Width:"
-msgstr ""
-
-#: admin/media_item.php:351
-msgid "Height:"
-msgstr ""
-
-#: admin/media_item.php:355
 msgid "Video disposition"
 msgstr ""
 
-#: admin/media_item.php:378
+#: admin/media_item.php:331
 msgid "Media item will be inserted as a link."
 msgstr ""
 
-#: admin/media_item.php:383 admin/popup_link.php:42
+#: admin/media_item.php:336 admin/popup_link.php:42
 msgid "Insert"
 msgstr ""
 
-#: admin/media_item.php:397
-msgid "Make current settings as default"
-msgstr ""
-
-#: admin/media_item.php:412 admin/media_item.php:414 admin/media_item.php:462
+#: admin/media_item.php:348 admin/media_item.php:350 admin/media_item.php:398
 msgid "Media details"
 msgstr ""
 
-#: admin/media_item.php:440
+#: admin/media_item.php:376
 msgid "Available sizes:"
 msgstr ""
 
-#: admin/media_item.php:464
+#: admin/media_item.php:400
 msgid "File owner:"
 msgstr ""
 
-#: admin/media_item.php:465
+#: admin/media_item.php:401
 msgid "File type:"
 msgstr ""
 
-#: admin/media_item.php:466
+#: admin/media_item.php:402
 msgid "File size:"
 msgstr ""
 
-#: admin/media_item.php:467
+#: admin/media_item.php:403
 msgid "File URL:"
 msgstr ""
 
-#: admin/media_item.php:474
+#: admin/media_item.php:410
 msgid "Show entries containing this media"
 msgstr ""
 
-#: admin/media_item.php:478
+#: admin/media_item.php:414
 msgid "Entries containing this media"
 msgstr ""
 
-#: admin/media_item.php:508
+#: admin/media_item.php:444
 msgid "No entry seems contain this media."
 msgstr ""
 
-#: admin/media_item.php:517
+#: admin/media_item.php:453
 msgid "published"
 msgstr ""
 
-#: admin/media_item.php:520
+#: admin/media_item.php:456
 msgid "unpublished"
 msgstr ""
 
-#: admin/media_item.php:523
+#: admin/media_item.php:459
 msgid "scheduled"
 msgstr ""
 
-#: admin/media_item.php:526
+#: admin/media_item.php:462
 msgid "pending"
 msgstr ""
 
+#: admin/media_item.php:476
+msgid "Image details"
+msgstr ""
+
+#: admin/media_item.php:480
+msgid "No detail"
+msgstr ""
+
+#: admin/media_item.php:497
+msgid "Updates and modifications"
+msgstr ""
+
+#: admin/media_item.php:505 admin/media_item.php:507
+msgid "Update thumbnails"
+msgstr ""
+
+#: admin/media_item.php:506
+msgid "This will create or update thumbnails for this image."
+msgstr ""
+
+#: admin/media_item.php:516 admin/media_item.php:524
+msgid "Extract in a new directory"
+msgstr ""
+
+#: admin/media_item.php:517 admin/media_item.php:526
+msgid "Extract in current directory"
+msgstr ""
+
+#: admin/media_item.php:522
+msgid "Extract archive"
+msgstr ""
+
+#: admin/media_item.php:525
+msgid "This will extract archive in a new directory that should not exist yet."
+msgstr ""
+
+#: admin/media_item.php:527
+msgid "This will extract archive in current directory and will overwrite existing files or directory."
+msgstr ""
+
+#: admin/media_item.php:529
+msgid "Extract mode:"
+msgstr ""
+
+#: admin/media_item.php:531
+msgid "Extract"
+msgstr ""
+
+#: admin/media_item.php:539
+msgid "Change media properties"
+msgstr ""
+
 #: admin/media_item.php:540
-msgid "Image details"
-msgstr ""
-
-#: admin/media_item.php:555
-msgid "No detail"
-msgstr ""
-
-#: admin/media_item.php:561
-msgid "Updates and modifications"
-msgstr ""
-
-#: admin/media_item.php:569 admin/media_item.php:571
-msgid "Update thumbnails"
-msgstr ""
-
-#: admin/media_item.php:570
-msgid "This will create or update thumbnails for this image."
-msgstr ""
-
-#: admin/media_item.php:580 admin/media_item.php:588
-msgid "Extract in a new directory"
-msgstr ""
-
-#: admin/media_item.php:581 admin/media_item.php:590
-msgid "Extract in current directory"
-msgstr ""
-
-#: admin/media_item.php:586
-msgid "Extract archive"
-msgstr ""
-
-#: admin/media_item.php:589
-msgid "This will extract archive in a new directory that should not exist yet."
-msgstr ""
-
-#: admin/media_item.php:591
-msgid "This will extract archive in current directory and will overwrite existing files or directory."
-msgstr ""
-
-#: admin/media_item.php:593
-msgid "Extract mode:"
-msgstr ""
-
-#: admin/media_item.php:595
-msgid "Extract"
-msgstr ""
-
-#: admin/media_item.php:603
-msgid "Change media properties"
-msgstr ""
-
-#: admin/media_item.php:604
 msgid "File name:"
 msgstr ""
 
-#: admin/media_item.php:606
+#: admin/media_item.php:542
 msgid "File title:"
 msgstr ""
 
-#: admin/media_item.php:608
+#: admin/media_item.php:544
 msgid "File date:"
 msgstr ""
 
-#: admin/media_item.php:612
+#: admin/media_item.php:548
 msgid "New directory:"
 msgstr ""
 
-#: admin/media_item.php:621
+#: admin/media_item.php:557
 msgid "Change file"
 msgstr ""
 
-#: admin/media_item.php:623
+#: admin/media_item.php:559
 msgid "Choose a file:"
 msgstr ""
 
-#: admin/media_item.php:624
+#: admin/media_item.php:560
 #, php-format
 msgid "Maximum size %s"
 msgstr ""
 
-#: admin/media_item.php:627 inc/admin/lib.dc.page.php:901
+#: admin/media_item.php:563 inc/admin/lib.dc.page.php:830
 msgid "Send"
 msgstr ""
 
-#: admin/media_item.php:637
+#: admin/media_item.php:573
 msgid "Delete this media"
 msgstr ""
@@ -2292,5 +2354,5 @@
 msgstr ""
 
-#: admin/plugins.php:41 admin/plugins.php:78 admin/plugins.php:110
+#: admin/plugins.php:41 admin/plugins.php:77 admin/plugins.php:109
 msgid "No such plugin."
 msgstr ""
@@ -2300,112 +2362,111 @@
 msgstr ""
 
-#: admin/plugins.php:64 admin/plugins.php:207
+#: admin/plugins.php:84
+msgid "You don't have permissions to deactivate this plugin."
+msgstr ""
+
+#: admin/plugins.php:191 admin/plugins.php:197 inc/admin/prepend.php:337
+msgid "Plugins management"
+msgstr ""
+
+#: admin/plugins.php:202
 msgid "Plugin has been successfully deleted."
 msgstr ""
 
-#: admin/plugins.php:85
-msgid "You don't have permissions to deactivate this plugin."
-msgstr ""
-
-#: admin/plugins.php:177 admin/plugins.php:210
+#: admin/plugins.php:205
+msgid "Plugin has been successfully installed."
+msgstr ""
+
+#: admin/plugins.php:205
 msgid "Plugin has been successfully upgraded"
 msgstr ""
 
-#: admin/plugins.php:179 admin/plugins.php:210
-msgid "Plugin has been successfully installed."
-msgstr ""
-
-#: admin/plugins.php:196 admin/plugins.php:202
-#: inc/admin/class.dc.favorites.php:465 inc/admin/prepend.php:272
-msgid "Plugins management"
-msgstr ""
-
-#: admin/plugins.php:232
+#: admin/plugins.php:227
 msgid "Plugins add new functionalities to Dotclear. Here you can activate or deactivate installed plugins."
 msgstr ""
 
-#: admin/plugins.php:236
+#: admin/plugins.php:231
 #, php-format
 msgid "You can find additional plugins for your blog on %s."
 msgstr ""
 
+#: admin/plugins.php:233
+#, php-format
+msgid "You can find additional plugins for your blog on %s or using the %s."
+msgstr ""
+
+#: admin/plugins.php:235
+msgid "DotAddict.org Installer"
+msgstr ""
+
 #: admin/plugins.php:238
-#, php-format
-msgid "You can find additional plugins for your blog on %s or using the %s."
-msgstr ""
-
-#: admin/plugins.php:240
-msgid "DotAddict.org Installer"
-msgstr ""
-
-#: admin/plugins.php:243
 msgid "To install or upgrade a plugin you generally just need to upload it in \"Install or upgrade a plugin\" section."
 msgstr ""
 
-#: admin/plugins.php:246
+#: admin/plugins.php:241
 msgid "To install or upgrade a plugin you just need to extract it in your plugins directory."
 msgstr ""
 
-#: admin/plugins.php:251 inc/admin/prepend.php:231
+#: admin/plugins.php:246 inc/admin/prepend.php:295
 msgid "Plugins"
 msgstr ""
 
+#: admin/plugins.php:253
+msgid "Activated plugins"
+msgstr ""
+
+#: admin/plugins.php:256 admin/plugins.php:310
+msgid "Plugin"
+msgstr ""
+
+#: admin/plugins.php:257
+msgid "Version"
+msgstr ""
+
 #: admin/plugins.php:258
-msgid "Activated plugins"
-msgstr ""
-
-#: admin/plugins.php:261 admin/plugins.php:315
-msgid "Plugin"
-msgstr ""
-
-#: admin/plugins.php:262
-msgid "Version"
-msgstr ""
-
-#: admin/plugins.php:263
 msgid "Details"
 msgstr ""
 
-#: admin/plugins.php:270
+#: admin/plugins.php:265
 msgid "Plugin from official distribution"
 msgstr ""
 
-#: admin/plugins.php:293
+#: admin/plugins.php:288
 msgid "Deactivate"
 msgstr ""
 
-#: admin/plugins.php:312
+#: admin/plugins.php:307
 msgid "Deactivated plugins"
 msgstr ""
 
-#: admin/plugins.php:337
+#: admin/plugins.php:332
 msgid "Activate"
 msgstr ""
 
-#: admin/plugins.php:355
+#: admin/plugins.php:350
 msgid "Install or upgrade a plugin"
 msgstr ""
 
-#: admin/plugins.php:359
+#: admin/plugins.php:354
 msgid "You can install plugins by uploading or downloading zip files."
 msgstr ""
 
-#: admin/plugins.php:365
+#: admin/plugins.php:360
 msgid "Plugin zip file:"
 msgstr ""
 
-#: admin/plugins.php:369
+#: admin/plugins.php:364
 msgid "Upload plugin"
 msgstr ""
 
-#: admin/plugins.php:378
+#: admin/plugins.php:373
 msgid "Plugin zip file URL:"
 msgstr ""
 
-#: admin/plugins.php:382
+#: admin/plugins.php:377
 msgid "Download plugin"
 msgstr ""
 
-#: admin/plugins.php:390
+#: admin/plugins.php:385
 msgid "To enable this function, please give write access to your plugins directory."
 msgstr ""
@@ -2443,7 +2504,6 @@
 msgstr ""
 
-#: admin/popup_posts.php:62 admin/search.php:85 admin/search.php:89
-#: admin/search.php:99 inc/admin/class.dc.favorites.php:424
-#: inc/admin/prepend.php:253
+#: admin/popup_posts.php:62 admin/search.php:72 admin/search.php:76
+#: admin/search.php:86 inc/admin/prepend.php:318
 msgid "Search"
 msgstr ""
@@ -2453,5 +2513,5 @@
 msgstr ""
 
-#: admin/post.php:78 admin/post.php:567 inc/admin/lib.dc.page.php:608
+#: admin/post.php:78 admin/post.php:554 inc/admin/lib.dc.page.php:547
 msgid "Edit entry"
 msgstr ""
@@ -2469,237 +2529,251 @@
 msgstr ""
 
-#: admin/post.php:175 admin/post.php:410
-msgid "All pings sent."
-msgstr ""
-
-#: admin/post.php:204
+#: admin/post.php:192
 msgid "Invalid publication date"
 msgstr ""
 
-#: admin/post.php:323 admin/post.php:397 inc/admin/lib.dc.page.php:606
-msgid "Entry has been successfully created."
-msgstr ""
-
-#: admin/post.php:353 admin/post.php:851 inc/admin/lib.pager.php:231
-#: inc/admin/lib.pager.php:328 inc/admin/lib.pager.php:457
+#: admin/post.php:340 admin/post.php:863 inc/admin/lib.pager.php:219
+#: inc/admin/lib.pager.php:316 inc/admin/lib.pager.php:433
 #: inc/core/class.dc.blog.php:96 inc/core/class.dc.blog.php:101
 msgid "Published"
 msgstr ""
 
-#: admin/post.php:356 admin/post.php:854 inc/admin/lib.pager.php:234
-#: inc/admin/lib.pager.php:331 inc/admin/lib.pager.php:460
+#: admin/post.php:343 admin/post.php:866 inc/admin/lib.pager.php:222
+#: inc/admin/lib.pager.php:319 inc/admin/lib.pager.php:436
 #: inc/core/class.dc.blog.php:95 inc/core/class.dc.blog.php:100
 msgid "Unpublished"
 msgstr ""
 
-#: admin/post.php:359 inc/admin/lib.pager.php:237 inc/admin/lib.pager.php:334
+#: admin/post.php:346 inc/admin/lib.pager.php:225 inc/admin/lib.pager.php:322
 #: inc/core/class.dc.blog.php:94
 msgid "Scheduled"
 msgstr ""
 
-#: admin/post.php:362 admin/post.php:857 inc/admin/lib.pager.php:240
-#: inc/admin/lib.pager.php:337 inc/admin/lib.pager.php:463
+#: admin/post.php:349 admin/post.php:869 inc/admin/lib.pager.php:228
+#: inc/admin/lib.pager.php:325 inc/admin/lib.pager.php:439
 #: inc/core/class.dc.blog.php:93 inc/core/class.dc.blog.php:99
 msgid "Pending"
 msgstr ""
 
-#: admin/post.php:367
+#: admin/post.php:354
 #, php-format
 msgid "&ldquo;%s&rdquo;"
 msgstr ""
 
-#: admin/post.php:374 admin/post.php:388 admin/posts.php:227
-#: admin/posts.php:231 admin/users_actions.php:218
-#: inc/admin/actions/class.dcaction.php:80
-#: inc/admin/actions/class.dcactionposts.php:33
-#: inc/admin/actions/class.dcactionposts.php:40
-#: inc/admin/class.dc.favorites.php:410 inc/admin/prepend.php:259
-msgid "Entries"
+#: admin/post.php:381
+msgid "Entry has been successfully updated."
+msgstr ""
+
+#: admin/post.php:384 inc/admin/lib.dc.page.php:545
+msgid "Entry has been successfully created."
+msgstr ""
+
+#: admin/post.php:387
+msgid "File has been successfully attached."
+msgstr ""
+
+#: admin/post.php:390
+msgid "Attachment has been successfully removed."
 msgstr ""
 
 #: admin/post.php:394
-msgid "Entry has been successfully updated."
-msgstr ""
-
-#: admin/post.php:400
-msgid "File has been successfully attached."
-msgstr ""
-
-#: admin/post.php:403 admin/post_media.php:54
-msgid "Attachment has been successfully removed."
-msgstr ""
-
-#: admin/post.php:420
+msgid "Comment has been successfully created."
+msgstr ""
+
+#: admin/post.php:397
+msgid "All pings sent."
+msgstr ""
+
+#: admin/post.php:407
 msgid "Don't forget to validate your XHTML conversion by saving your post."
 msgstr ""
 
-#: admin/post.php:424
+#: admin/post.php:411
 msgid "Go to this entry on the site"
 msgstr ""
 
+#: admin/post.php:441
+msgid "Entry status"
+msgstr ""
+
+#: admin/post.php:445
+msgid "Publication date and hour"
+msgstr ""
+
+#: admin/post.php:449
+msgid "Entry language"
+msgstr ""
+
 #: admin/post.php:454
-msgid "Entry status"
-msgstr ""
-
-#: admin/post.php:458
-msgid "Publication date and hour"
-msgstr ""
-
-#: admin/post.php:462
-msgid "Entry language"
-msgstr ""
-
-#: admin/post.php:467
 msgid "Text formatting"
 msgstr ""
 
-#: admin/post.php:472
+#: admin/post.php:459
 msgid "Convert to XHTML"
 msgstr ""
 
-#: admin/post.php:474
+#: admin/post.php:461
 msgid "Filing"
 msgstr ""
 
-#: admin/post.php:479
+#: admin/post.php:466
 msgid "Selected entry"
 msgstr ""
 
-#: admin/post.php:482 admin/posts.php:92 inc/admin/lib.pager.php:185
+#: admin/post.php:469 admin/posts.php:92 inc/admin/lib.pager.php:173
 msgid "Category"
 msgstr ""
 
-#: admin/post.php:498 admin/user.php:275
+#: admin/post.php:485 admin/user.php:273
 msgid "Options"
 msgstr ""
 
-#: admin/post.php:502 inc/admin/lib.pager.php:403
+#: admin/post.php:489 inc/admin/lib.pager.php:382
 msgid "Comments and trackbacks list"
 msgstr ""
 
-#: admin/post.php:510
+#: admin/post.php:497
 msgid "Warning: Comments are not more accepted for this entry."
 msgstr ""
 
-#: admin/post.php:512
+#: admin/post.php:499
 msgid "Comments are not accepted on this blog so far."
 msgstr ""
 
+#: admin/post.php:507
+msgid "Warning: Trackbacks are not more accepted for this entry."
+msgstr ""
+
+#: admin/post.php:508
+msgid "Trackbacks are not accepted on this blog so far."
+msgstr ""
+
+#: admin/post.php:511
+msgid "Password"
+msgstr ""
+
+#: admin/post.php:516
+msgid "Edit basename"
+msgstr ""
+
 #: admin/post.php:520
-msgid "Warning: Trackbacks are not more accepted for this entry."
-msgstr ""
-
-#: admin/post.php:521
-msgid "Trackbacks are not accepted on this blog so far."
-msgstr ""
-
-#: admin/post.php:524
-msgid "Password"
-msgstr ""
-
-#: admin/post.php:529
-msgid "Edit basename"
+msgid "Warning: If you set the URL manually, it may conflict with another entry."
+msgstr ""
+
+#: admin/post.php:532
+msgid "Excerpt:"
 msgstr ""
 
 #: admin/post.php:533
-msgid "Warning: If you set the URL manually, it may conflict with another entry."
+msgid "Introduction to the post."
+msgstr ""
+
+#: admin/post.php:544
+msgid "Personal notes:"
 msgstr ""
 
 #: admin/post.php:545
-msgid "Excerpt:"
-msgstr ""
-
-#: admin/post.php:546
-msgid "Introduction to the post."
-msgstr ""
-
-#: admin/post.php:557
-msgid "Personal notes:"
-msgstr ""
-
-#: admin/post.php:558
 msgid "Unpublished notes."
 msgstr ""
 
-#: admin/post.php:572
+#: admin/post.php:559
 msgid "Edit post"
 msgstr ""
 
-#: admin/post.php:591
+#: admin/post.php:578
 msgid "Preview"
 msgstr ""
 
-#: admin/post.php:639 admin/post.php:649
-#: inc/admin/actions/class.dcactioncomments.php:21
-#: inc/admin/actions/class.dcactioncomments.php:34
-#: inc/admin/actions/class.dcactioncomments.php:41
-#: inc/admin/actions/class.dcactioncomments.php:60
-#: inc/admin/class.dc.favorites.php:417 inc/admin/lib.pager.php:187
-#: inc/admin/prepend.php:256
-msgid "Comments"
-msgstr ""
-
-#: admin/post.php:643 admin/post.php:675
+#: admin/post.php:629 admin/post.php:722
+#: inc/admin/actions/class.dcactioncomments.php:91
+#: inc/admin/actions/class.dcactioncomments.php:92
+#: inc/admin/actions/class.dcactionposts.php:94
+#: inc/admin/actions/class.dcactionusers.php:91
+#: inc/admin/actions/class.dcactionusers.php:92
+msgid "Publish"
+msgstr ""
+
+#: admin/post.php:630 admin/post.php:723
+#: inc/admin/actions/class.dcactioncomments.php:93
+#: inc/admin/actions/class.dcactionposts.php:95
+#: inc/admin/actions/class.dcactionusers.php:93
+msgid "Unpublish"
+msgstr ""
+
+#: admin/post.php:631 admin/post.php:724
+#: inc/admin/actions/class.dcactioncomments.php:94
+#: inc/admin/actions/class.dcactionposts.php:97
+#: inc/admin/actions/class.dcactionusers.php:94
+msgid "Mark as pending"
+msgstr ""
+
+#: admin/post.php:632 admin/post.php:725
+#: inc/admin/actions/class.dcactioncomments.php:95
+#: inc/admin/actions/class.dcactionusers.php:95
+msgid "Mark as junk"
+msgstr ""
+
+#: admin/post.php:648 admin/post.php:679
 msgid "Add a comment"
 msgstr ""
 
-#: admin/post.php:725 inc/admin/lib.pager.php:188
+#: admin/post.php:683
+msgid "Name:"
+msgstr ""
+
+#: admin/post.php:744 admin/post.php:751 inc/admin/lib.pager.php:176
 msgid "Trackbacks"
 msgstr ""
 
-#: admin/post.php:732
-msgid "Trackbacks received"
-msgstr ""
-
-#: admin/post.php:737
+#: admin/post.php:756
 msgid "No trackback"
 msgstr ""
 
-#: admin/post.php:745
+#: admin/post.php:764
 msgid "Selected trackbacks action:"
 msgstr ""
 
-#: admin/post.php:762 admin/post.php:773
+#: admin/post.php:780 admin/post.php:791
 msgid "Ping blogs"
 msgstr ""
 
-#: admin/post.php:764
+#: admin/post.php:782
 msgid "URLs to ping:"
 msgstr ""
 
-#: admin/post.php:768
-msgid "Excerpt to send:"
-msgstr ""
-
-#: admin/post.php:777
+#: admin/post.php:786
+msgid "Send excerpt:"
+msgstr ""
+
+#: admin/post.php:795
 msgid "Auto discover ping URLs"
 msgstr ""
 
-#: admin/post.php:786
+#: admin/post.php:804
 msgid "Previously sent pings"
 msgstr ""
 
-#: admin/post.php:833
+#: admin/post.php:851
 msgid "IP address"
 msgstr ""
 
-#: admin/post.php:835 admin/post.php:875 inc/admin/lib.pager.php:486
+#: admin/post.php:853 admin/post.php:887 inc/admin/lib.pager.php:462
 msgid "Edit"
 msgstr ""
 
-#: admin/post.php:860 inc/admin/lib.pager.php:466
+#: admin/post.php:872 inc/admin/lib.pager.php:442
 #: inc/core/class.dc.blog.php:98
 msgid "Junk"
 msgstr ""
 
-#: admin/post.php:869
+#: admin/post.php:881
 msgid "select this comment"
 msgstr ""
 
-#: admin/post.php:869
+#: admin/post.php:881
 msgid "select this trackback"
 msgstr ""
 
-#: admin/post.php:875
+#: admin/post.php:887
 msgid "Edit this comment"
 msgstr ""
@@ -2709,23 +2783,23 @@
 msgstr ""
 
+#: admin/post_media.php:61
+msgid "Remove attachment"
+msgstr ""
+
 #: admin/post_media.php:63
-msgid "Remove attachment"
-msgstr ""
-
-#: admin/post_media.php:65
 msgid "Attachment"
 msgstr ""
 
-#: admin/post_media.php:69
+#: admin/post_media.php:67
 msgid "Are you sure you want to remove this attachment?"
 msgstr ""
 
 #: admin/posts.php:57 inc/admin/lib.admincombos.php:35
-#: inc/admin/lib.pager.php:225
+#: inc/admin/lib.pager.php:213
 msgid "(No cat)"
 msgstr ""
 
-#: admin/posts.php:74 admin/posts.php:95 inc/admin/lib.pager.php:251
-#: inc/admin/lib.pager.php:348
+#: admin/posts.php:74 admin/posts.php:95 inc/admin/lib.pager.php:239
+#: inc/admin/lib.pager.php:336
 msgid "Selected"
 msgstr ""
@@ -2735,29 +2809,33 @@
 msgstr ""
 
-#: admin/posts.php:235
+#: admin/posts.php:225
 msgid "Selected entries have been successfully updated."
 msgstr ""
 
-#: admin/posts.php:237
+#: admin/posts.php:227
 msgid "Selected entries have been successfully deleted."
 msgstr ""
 
-#: admin/posts.php:258
+#: admin/posts.php:236 admin/posts.php:241
+msgid "Filter posts list"
+msgstr ""
+
+#: admin/posts.php:255
 msgid "Selected:"
 msgstr ""
 
-#: admin/posts.php:260
+#: admin/posts.php:257
 msgid "Month:"
 msgstr ""
 
-#: admin/posts.php:262
+#: admin/posts.php:259
 msgid "Lang:"
 msgstr ""
 
-#: admin/posts.php:274
+#: admin/posts.php:271
 msgid "entries per page"
 msgstr ""
 
-#: admin/posts.php:291 admin/search.php:125
+#: admin/posts.php:288 admin/search.php:132
 msgid "Selected entries action:"
 msgstr ""
@@ -2771,250 +2849,278 @@
 msgstr ""
 
-#: admin/preferences.php:125 admin/preferences.php:334
+#: admin/preferences.php:215 admin/preferences.php:258
+msgid "No favorite selected"
+msgstr ""
+
+#: admin/preferences.php:389
 msgid "Personal information has been successfully updated."
 msgstr ""
 
-#: admin/preferences.php:179 admin/preferences.php:337
+#: admin/preferences.php:392
 msgid "Personal options has been successfully updated."
 msgstr ""
 
-#: admin/preferences.php:205 admin/preferences.php:340
+#: admin/preferences.php:395
 msgid "Dashboard options has been successfully updated."
 msgstr ""
 
-#: admin/preferences.php:219 admin/preferences.php:244
-msgid "No favorite selected"
-msgstr ""
-
-#: admin/preferences.php:231 admin/preferences.php:343
+#: admin/preferences.php:398
 msgid "Favorites have been successfully added."
 msgstr ""
 
-#: admin/preferences.php:258 admin/preferences.php:349
+#: admin/preferences.php:401
+msgid "Favorites have been successfully updated."
+msgstr ""
+
+#: admin/preferences.php:404
 msgid "Favorites have been successfully removed."
 msgstr ""
 
-#: admin/preferences.php:285 admin/preferences.php:346
-msgid "Favorites have been successfully updated."
-msgstr ""
-
-#: admin/preferences.php:296 admin/preferences.php:352
+#: admin/preferences.php:407
 msgid "Default favorites have been successfully updated."
 msgstr ""
 
-#: admin/preferences.php:356 admin/preferences.php:359
+#: admin/preferences.php:411 admin/preferences.php:414
 msgid "My profile"
 msgstr ""
 
-#: admin/preferences.php:368 admin/user.php:260
+#: admin/preferences.php:423 admin/user.php:258
 msgid "Display name:"
 msgstr ""
 
-#: admin/preferences.php:377
+#: admin/preferences.php:432
 msgid "Language for my interface:"
 msgstr ""
 
-#: admin/preferences.php:380
+#: admin/preferences.php:435
 msgid "My timezone:"
 msgstr ""
 
-#: admin/preferences.php:387
+#: admin/preferences.php:442
 msgid "Change my password"
 msgstr ""
 
-#: admin/preferences.php:398
+#: admin/preferences.php:453
 msgid "Confirm new password:"
 msgstr ""
 
-#: admin/preferences.php:401
+#: admin/preferences.php:456
 msgid "Your current password:"
 msgstr ""
 
-#: admin/preferences.php:404
+#: admin/preferences.php:459
 msgid "If you have changed your email or password you must provide your current password to save these modifications."
 msgstr ""
 
-#: admin/preferences.php:411
+#: admin/preferences.php:466
 msgid "Update my profile"
 msgstr ""
 
-#: admin/preferences.php:417 admin/preferences.php:421
+#: admin/preferences.php:472 admin/preferences.php:476
 msgid "My options"
 msgstr ""
 
-#: admin/preferences.php:425 admin/user.php:276
+#: admin/preferences.php:480 admin/user.php:274
 msgid "Interface"
 msgstr ""
 
-#: admin/preferences.php:429
+#: admin/preferences.php:484
 msgid "Activate enhanced uploader in media manager"
 msgstr ""
 
-#: admin/preferences.php:433
+#: admin/preferences.php:488
 msgid "Disable javascript powered drag and drop for ordering items"
 msgstr ""
 
-#: admin/preferences.php:434
+#: admin/preferences.php:489
 msgid "If checked, numeric fields will allow to type the elements' ordering number."
 msgstr ""
 
-#: admin/preferences.php:437
-msgid "Number of elements displayed per page in media manager:"
-msgstr ""
-
-#: admin/preferences.php:444
+#: admin/preferences.php:492
+msgid "Number of media displayed per page:"
+msgstr ""
+
+#: admin/preferences.php:499
 msgid "Do not use standard favicon"
 msgstr ""
 
-#: admin/preferences.php:445
+#: admin/preferences.php:500
 msgid "This will be applied for all users"
 msgstr ""
 
-#: admin/preferences.php:454 admin/user.php:285
+#: admin/preferences.php:509 admin/user.php:283
 msgid "Edition"
 msgstr ""
 
-#: admin/preferences.php:456 admin/user.php:286
+#: admin/preferences.php:511 admin/user.php:284
 msgid "Preferred format:"
 msgstr ""
 
-#: admin/preferences.php:459 admin/user.php:290
+#: admin/preferences.php:514 admin/user.php:288
 msgid "Default entry status:"
 msgstr ""
 
-#: admin/preferences.php:462 admin/user.php:294
+#: admin/preferences.php:517 admin/user.php:292
 msgid "Entry edit field height:"
 msgstr ""
 
-#: admin/preferences.php:467
+#: admin/preferences.php:522
 msgid "Enable WYSIWYG mode"
 msgstr ""
 
-#: admin/preferences.php:472
+#: admin/preferences.php:527
 msgid "Other options"
 msgstr ""
 
-#: admin/preferences.php:480
+#: admin/preferences.php:535
 msgid "Save my options"
 msgstr ""
 
-#: admin/preferences.php:486 admin/preferences.php:488
-#: inc/admin/lib.dc.page.php:142
+#: admin/preferences.php:541 admin/preferences.php:543
+#: inc/admin/lib.dc.page.php:141
 msgid "My dashboard"
 msgstr ""
 
-#: admin/preferences.php:492 inc/admin/class.dc.favorites.php:296
+#: admin/preferences.php:547 inc/admin/prepend.php:297
 msgid "My favorites"
 msgstr ""
 
-#: admin/preferences.php:504
+#: admin/preferences.php:560
 #, php-format
 msgid "position of %s"
 msgstr ""
 
-#: admin/preferences.php:516
+#: admin/preferences.php:574
 msgid "Save order"
 msgstr ""
 
-#: admin/preferences.php:519
+#: admin/preferences.php:577
 msgid "Delete selected favorites"
 msgstr ""
 
-#: admin/preferences.php:521
+#: admin/preferences.php:579
 msgid "Are you sure you want to remove selected favorites?"
 msgstr ""
 
-#: admin/preferences.php:525
+#: admin/preferences.php:583
 msgid "If you are a super administrator, you may define this set of favorites to be used by default on all blogs of this installation."
 msgstr ""
 
-#: admin/preferences.php:526
+#: admin/preferences.php:584
 msgid "Define as default favorites"
 msgstr ""
 
-#: admin/preferences.php:534
+#: admin/preferences.php:592
 msgid "Currently no personal favorites."
 msgstr ""
 
-#: admin/preferences.php:546
+#: admin/preferences.php:610
 msgid "Other available favorites"
 msgstr ""
 
-#: admin/preferences.php:569
+#: admin/preferences.php:631
 msgid "(default favorite)"
 msgstr ""
 
-#: admin/preferences.php:576
+#: admin/preferences.php:640
 msgid "Add to my favorites"
 msgstr ""
 
-#: admin/preferences.php:585
+#: admin/preferences.php:649
 msgid "Menu"
 msgstr ""
 
-#: admin/preferences.php:588
+#: admin/preferences.php:652
 msgid "Display favorites at the top of the menu"
 msgstr ""
 
-#: admin/preferences.php:593
+#: admin/preferences.php:657
 msgid "Dashboard icons"
 msgstr ""
 
-#: admin/preferences.php:594
+#: admin/preferences.php:658
 msgid "Iconset:"
 msgstr ""
 
-#: admin/preferences.php:603
+#: admin/preferences.php:667
 msgid "Dashboard modules"
 msgstr ""
 
-#: admin/preferences.php:607
+#: admin/preferences.php:671
 msgid "Display documentation links"
 msgstr ""
 
-#: admin/preferences.php:611
+#: admin/preferences.php:675
 msgid "Display Dotclear news"
 msgstr ""
 
-#: admin/preferences.php:615
+#: admin/preferences.php:679
 msgid "Display quick entry form"
 msgstr ""
 
-#: admin/preferences.php:626
+#: admin/preferences.php:690
 msgid "Save my dashboard options"
 msgstr ""
 
-#: admin/search.php:95
+#: admin/search.php:82
 msgid "Search options"
 msgstr ""
 
-#: admin/search.php:96
+#: admin/search.php:83
 msgid "Query:"
 msgstr ""
 
-#: admin/search.php:97
+#: admin/search.php:84
 msgid "Search in entries"
 msgstr ""
 
-#: admin/search.php:98
+#: admin/search.php:85
 msgid "Search in comments"
 msgstr ""
 
-#: admin/search.php:113
+#: admin/search.php:101 admin/search.php:148
+msgid "publish"
+msgstr ""
+
+#: admin/search.php:102 admin/search.php:149
+msgid "unpublish"
+msgstr ""
+
+#: admin/search.php:103
+msgid "schedule"
+msgstr ""
+
+#: admin/search.php:104 admin/search.php:150
+msgid "mark as pending"
+msgstr ""
+
+#: admin/search.php:106
+msgid "change category"
+msgstr ""
+
+#: admin/search.php:108
+msgid "change author"
+msgstr ""
+
+#: admin/search.php:120
 #, php-format
 msgid "%d entries found"
 msgstr ""
 
-#: admin/search.php:113
+#: admin/search.php:120
 #, php-format
 msgid "%d entry found"
 msgstr ""
 
-#: admin/search.php:141
+#: admin/search.php:151
+msgid "mark as junk"
+msgstr ""
+
+#: admin/search.php:160
 #, php-format
 msgid "%d comment found"
 msgstr ""
 
-#: admin/search.php:141
+#: admin/search.php:160
 #, php-format
 msgid "%d comments found"
@@ -3115,87 +3221,87 @@
 msgstr ""
 
-#: admin/user.php:17 admin/users.php:125
+#: admin/user.php:17 admin/users.php:114
 msgid "New user"
 msgstr ""
 
-#: admin/user.php:132 admin/user.php:195 admin/users_actions.php:127
+#: admin/user.php:138
+#, php-format
+msgid "User \"%s\" already exists."
+msgstr ""
+
+#: admin/user.php:193
 msgid "User has been successfully updated."
 msgstr ""
 
-#: admin/user.php:139
-#, php-format
-msgid "User \"%s\" already exists."
-msgstr ""
-
-#: admin/user.php:150 admin/user.php:199
+#: admin/user.php:197
 msgid "User has been successfully created."
 msgstr ""
 
+#: admin/user.php:205
+msgid "User profile"
+msgstr ""
+
 #: admin/user.php:207
-msgid "User profile"
-msgstr ""
-
-#: admin/user.php:209
 msgid "User ID:"
 msgstr ""
 
-#: admin/user.php:216
+#: admin/user.php:214
 msgid "Warning:"
 msgstr ""
 
-#: admin/user.php:217
+#: admin/user.php:215
 msgid "If you change your username, you will have to log in again."
 msgstr ""
 
-#: admin/user.php:244
+#: admin/user.php:242
 msgid "Password change required to connect"
 msgstr ""
 
-#: admin/user.php:267
+#: admin/user.php:265
 msgid "Mandatory for password recovering procedure."
 msgstr ""
 
-#: admin/user.php:281
+#: admin/user.php:279
 msgid "Timezone:"
 msgstr ""
 
-#: admin/user.php:311
+#: admin/user.php:309
 msgid "Save and create another"
 msgstr ""
 
-#: admin/user.php:321 admin/users_actions.php:140
+#: admin/user.php:319 admin/users_actions.php:138
 msgid "Permissions"
 msgstr ""
 
-#: admin/user.php:327
+#: admin/user.php:325
 msgid "Add new permissions"
 msgstr ""
 
-#: admin/user.php:340
+#: admin/user.php:338
 msgid "No permissions so far."
 msgstr ""
 
-#: admin/user.php:350 inc/admin/lib.dc.page.php:59
+#: admin/user.php:348 inc/admin/lib.dc.page.php:59
 msgid "Blog:"
 msgstr ""
 
-#: admin/user.php:375
+#: admin/user.php:373
 #, php-format
 msgid "%s is super admin (all rights on all blogs)."
 msgstr ""
 
-#: admin/users.php:19 inc/admin/lib.pager.php:528
+#: admin/users.php:19 inc/admin/lib.pager.php:492
 msgid "Username"
 msgstr ""
 
-#: admin/users.php:20 inc/admin/lib.pager.php:530
+#: admin/users.php:20 inc/admin/lib.pager.php:494
 msgid "Last Name"
 msgstr ""
 
-#: admin/users.php:21 inc/admin/lib.pager.php:529
+#: admin/users.php:21 inc/admin/lib.pager.php:493
 msgid "First Name"
 msgstr ""
 
-#: admin/users.php:22 inc/admin/lib.pager.php:531
+#: admin/users.php:22 inc/admin/lib.pager.php:495
 msgid "Display name"
 msgstr ""
@@ -3205,21 +3311,25 @@
 msgstr ""
 
-#: admin/users.php:33 admin/users_actions.php:242
+#: admin/users.php:33 admin/users_actions.php:240
 msgid "Set permissions"
 msgstr ""
 
-#: admin/users.php:118
+#: admin/users.php:107
 msgid "User has been successfully removed."
 msgstr ""
 
-#: admin/users.php:121
+#: admin/users.php:110
 msgid "The permissions have been successfully updated."
 msgstr ""
 
-#: admin/users.php:143
+#: admin/users.php:117 admin/users.php:122
+msgid "Filter users list"
+msgstr ""
+
+#: admin/users.php:138
 msgid "users per page"
 msgstr ""
 
-#: admin/users.php:161
+#: admin/users.php:156
 msgid "Selected users action:"
 msgstr ""
@@ -3233,194 +3343,114 @@
 msgstr ""
 
-#: admin/users_actions.php:88
-msgid "User has been successfully deleted."
-msgstr ""
-
-#: admin/users_actions.php:183
+#: admin/users_actions.php:181
 msgid "Back to user profile"
 msgstr ""
 
-#: admin/users_actions.php:202
+#: admin/users_actions.php:200
 #, php-format
 msgid "Choose one or more blogs to which you want to give permissions to users %s."
 msgstr ""
 
-#: admin/users_actions.php:231
+#: admin/users_actions.php:229
 msgid "select"
 msgstr ""
 
-#: admin/users_actions.php:263
+#: admin/users_actions.php:261
 #, php-format
 msgid "You are about to change permissions on the following blogs for users %s."
 msgstr ""
 
-#: admin/users_actions.php:307
+#: admin/users_actions.php:289
 msgid "Validate permissions"
 msgstr ""
 
-#: inc/admin/actions/class.dcactioncomments.php:48
-msgid "Back to comments list"
-msgstr ""
-
-#: inc/admin/actions/class.dcactioncomments.php:61
-msgid "Comments actions"
-msgstr ""
-
-#: inc/admin/actions/class.dcactioncomments.php:124
-#: inc/admin/actions/class.dcactionposts.php:105
-#: inc/admin/actions/class.dcactionusers.php:91
-#: inc/admin/actions/class.dcactionusers.php:92
-msgid "Publish"
-msgstr ""
-
-#: inc/admin/actions/class.dcactioncomments.php:125
-#: inc/admin/actions/class.dcactionposts.php:106
-#: inc/admin/actions/class.dcactionusers.php:93
-msgid "Unpublish"
-msgstr ""
-
-#: inc/admin/actions/class.dcactioncomments.php:126
-#: inc/admin/actions/class.dcactionposts.php:108
-#: inc/admin/actions/class.dcactionusers.php:94
-msgid "Mark as pending"
-msgstr ""
-
-#: inc/admin/actions/class.dcactioncomments.php:127
-#: inc/admin/actions/class.dcactionusers.php:95
-msgid "Mark as junk"
-msgstr ""
-
-#: inc/admin/actions/class.dcactioncomments.php:141
-#: inc/admin/actions/class.dcactioncomments.php:159
-msgid "No comment selected"
-msgstr ""
-
-#: inc/admin/actions/class.dcactionposts.php:46
+#: inc/admin/actions/class.dcactioncomments.php:40
+#: inc/admin/actions/class.dcactionposts.php:39
 #: inc/admin/actions/class.dcactionusers.php:40
 msgid "Back to entries list"
 msgstr ""
 
-#: inc/admin/actions/class.dcactionposts.php:63
+#: inc/admin/actions/class.dcactioncomments.php:53
+msgid "Comments actions"
+msgstr ""
+
+#: inc/admin/actions/class.dcactioncomments.php:109
+#: inc/admin/actions/class.dcactioncomments.php:125
+msgid "No comment selected"
+msgstr ""
+
+#: inc/admin/actions/class.dcactionposts.php:52
 msgid "Entries actions"
 msgstr ""
 
-#: inc/admin/actions/class.dcactionposts.php:107
+#: inc/admin/actions/class.dcactionposts.php:96
 msgid "Schedule"
 msgstr ""
 
-#: inc/admin/actions/class.dcactionposts.php:114
+#: inc/admin/actions/class.dcactionposts.php:103
 msgid "Mark"
 msgstr ""
 
-#: inc/admin/actions/class.dcactionposts.php:115
+#: inc/admin/actions/class.dcactionposts.php:104
 msgid "Mark as selected"
 msgstr ""
 
+#: inc/admin/actions/class.dcactionposts.php:105
+msgid "Mark as unselected"
+msgstr ""
+
+#: inc/admin/actions/class.dcactionposts.php:110
 #: inc/admin/actions/class.dcactionposts.php:116
-msgid "Mark as unselected"
-msgstr ""
-
-#: inc/admin/actions/class.dcactionposts.php:121
-#: inc/admin/actions/class.dcactionposts.php:127
-#: inc/admin/actions/class.dcactionposts.php:135
+#: inc/admin/actions/class.dcactionposts.php:124
 msgid "Change"
 msgstr ""
 
-#: inc/admin/actions/class.dcactionposts.php:122
+#: inc/admin/actions/class.dcactionposts.php:111
 msgid "Change category"
 msgstr ""
 
-#: inc/admin/actions/class.dcactionposts.php:128
+#: inc/admin/actions/class.dcactionposts.php:117
 msgid "Change language"
 msgstr ""
 
-#: inc/admin/actions/class.dcactionposts.php:136
+#: inc/admin/actions/class.dcactionposts.php:125
 msgid "Change author"
 msgstr ""
 
-#: inc/admin/actions/class.dcactionposts.php:158
-#: inc/admin/actions/class.dcactionposts.php:176
-#: inc/admin/actions/class.dcactionposts.php:206
-#: inc/admin/actions/class.dcactionposts.php:235
-#: inc/admin/actions/class.dcactionposts.php:317
-#: inc/admin/actions/class.dcactionposts.php:382
+#: inc/admin/actions/class.dcactionposts.php:147
+#: inc/admin/actions/class.dcactionposts.php:157
+#: inc/admin/actions/class.dcactionposts.php:169
+#: inc/admin/actions/class.dcactionposts.php:190
+#: inc/admin/actions/class.dcactionposts.php:261
+#: inc/admin/actions/class.dcactionposts.php:316
 msgid "No entry selected"
 msgstr ""
 
-#: inc/admin/actions/class.dcactionposts.php:163
-#, php-format
-msgid "%d entry has been successfully updated to status : \"%s\""
-msgid_plural "%d entries have been successfully updated to status : \"%s\""
-msgstr[0] ""
-msgstr[1] ""
-
-#: inc/admin/actions/class.dcactionposts.php:183
-#, php-format
-msgid "%d entry has been successfully marked as selected"
-msgid_plural "%d entries have been successfully marked as selected"
-msgstr[0] ""
-msgstr[1] ""
-
-#: inc/admin/actions/class.dcactionposts.php:192
-#, php-format
-msgid "%d entry has been successfully marked as unselected"
-msgid_plural "%d entries have been successfully marked as unselected"
-msgstr[0] ""
-msgstr[1] ""
-
-#: inc/admin/actions/class.dcactionposts.php:221
-#, php-format
-msgid "%d entry has been successfully deleted"
-msgid_plural "%d entries have been successfully deleted"
-msgstr[0] ""
-msgstr[1] ""
-
-#: inc/admin/actions/class.dcactionposts.php:260
-#, php-format
-msgid "%d entry has been successfully moved to category \"%s\""
-msgid_plural "%d entries have been successfully moved to category \"%s\""
-msgstr[0] ""
-msgstr[1] ""
-
-#: inc/admin/actions/class.dcactionposts.php:276
+#: inc/admin/actions/class.dcactionposts.php:220
 msgid "Change category for this selection"
 msgstr ""
 
-#: inc/admin/actions/class.dcactionposts.php:292
+#: inc/admin/actions/class.dcactionposts.php:236
 msgid "Create a new category for the post(s)"
 msgstr ""
 
-#: inc/admin/actions/class.dcactionposts.php:320
+#: inc/admin/actions/class.dcactionposts.php:264
 msgid "This user does not exist"
 msgstr ""
 
-#: inc/admin/actions/class.dcactionposts.php:328
-#, php-format
-msgid "%d entry has been successfully set to user \"%s\""
-msgid_plural "%d entries have been successfully set to user \"%s\""
-msgstr[0] ""
-msgstr[1] ""
-
-#: inc/admin/actions/class.dcactionposts.php:356
+#: inc/admin/actions/class.dcactionposts.php:290
 msgid "Change author for this selection"
 msgstr ""
 
-#: inc/admin/actions/class.dcactionposts.php:368
+#: inc/admin/actions/class.dcactionposts.php:302
 msgid "New author (author ID):"
 msgstr ""
 
-#: inc/admin/actions/class.dcactionposts.php:391
-#, php-format
-msgid "%d entry has been successfully set to language \"%s\""
-msgid_plural "%d entries have been successfully set to language \"%s\""
-msgstr[0] ""
-msgstr[1] ""
-
-#: inc/admin/actions/class.dcactionposts.php:405
+#: inc/admin/actions/class.dcactionposts.php:331
 msgid "Change language for this selection"
 msgstr ""
 
-#: inc/admin/actions/class.dcactionposts.php:411
-#: inc/admin/actions/class.dcactionposts.php:415
+#: inc/admin/actions/class.dcactionposts.php:337
+#: inc/admin/actions/class.dcactionposts.php:341
 #: inc/admin/class.admincombos.php:64 inc/admin/class.admincombos.php:68
 #: inc/admin/lib.admincombos.php:107 inc/admin/lib.admincombos.php:111
@@ -3428,7 +3458,7 @@
 msgstr ""
 
-#: inc/admin/actions/class.dcactionposts.php:411
-#: inc/admin/actions/class.dcactionposts.php:414
-#: inc/admin/actions/class.dcactionposts.php:417
+#: inc/admin/actions/class.dcactionposts.php:337
+#: inc/admin/actions/class.dcactionposts.php:340
+#: inc/admin/actions/class.dcactionposts.php:343
 #: inc/admin/class.admincombos.php:64 inc/admin/class.admincombos.php:67
 #: inc/admin/class.admincombos.php:70 inc/admin/lib.admincombos.php:107
@@ -3437,5 +3467,5 @@
 msgstr ""
 
-#: inc/admin/actions/class.dcactionposts.php:427
+#: inc/admin/actions/class.dcactionposts.php:353
 msgid "Entry language:"
 msgstr ""
@@ -3454,15 +3484,4 @@
 msgstr ""
 
-#: inc/admin/class.dc.favorites.php:470 inc/admin/prepend.php:269
-msgid "Languages"
-msgstr ""
-
-#: inc/admin/class.dc.favorites.php:492
-#, php-format
-msgid "%d comments"
-msgid_plural "%d comments"
-msgstr[0] ""
-msgstr[1] ""
-
 #: inc/admin/lib.dc.page.php:63
 msgid "Change blog"
@@ -3473,413 +3492,404 @@
 msgstr ""
 
+#: inc/admin/lib.dc.page.php:127
+msgid "Go to the content"
+msgstr ""
+
 #: inc/admin/lib.dc.page.php:128
-msgid "Go to the content"
+msgid "Go to the menu"
 msgstr ""
 
 #: inc/admin/lib.dc.page.php:129
-msgid "Go to the menu"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:130
 msgid "Go to search"
 msgstr ""
 
-#: inc/admin/lib.dc.page.php:138 inc/admin/lib.dc.page.php:139
+#: inc/admin/lib.dc.page.php:137 inc/admin/lib.dc.page.php:138
 msgid "Go to site"
 msgstr ""
 
-#: inc/admin/lib.dc.page.php:145
+#: inc/admin/lib.dc.page.php:144
 #, php-format
 msgid "Logout %s"
 msgstr ""
 
+#: inc/admin/lib.dc.page.php:152
+msgid "Hide main menu"
+msgstr ""
+
 #: inc/admin/lib.dc.page.php:153
-msgid "Hide main menu"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:154
 msgid "Show main menu"
 msgstr ""
 
+#: inc/admin/lib.dc.page.php:162
+msgid "Safe mode"
+msgstr ""
+
 #: inc/admin/lib.dc.page.php:163
-msgid "Safe mode"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:164
 msgid "You are in safe mode. All plugins have been temporarily disabled. Remind to log out then log in again normally to get back all functionalities"
 msgstr ""
 
-#: inc/admin/lib.dc.page.php:173 inc/admin/lib.dc.page.php:604
-#: inc/admin/lib.dc.page.php:895
+#: inc/admin/lib.dc.page.php:172 inc/admin/lib.dc.page.php:543
+#: inc/admin/lib.dc.page.php:824
 msgid "Error:"
 msgstr ""
 
-#: inc/admin/lib.dc.page.php:227 inc/admin/lib.dc.page.php:390
-msgid "[%H:%M:%S]"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:238 inc/admin/lib.dc.page.php:586
-msgid "new window"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:258
+#: inc/admin/lib.dc.page.php:185 inc/admin/lib.dc.page.php:525
+msgid "Need help?"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:205
 #, php-format
 msgid "Thank you for using %s."
 msgstr ""
 
-#: inc/admin/lib.dc.page.php:365
+#: inc/admin/lib.dc.page.php:309
 msgid "Go to dashboard"
 msgstr ""
 
-#: inc/admin/lib.dc.page.php:507
+#: inc/admin/lib.dc.page.php:331
+msgid "%H:%M:%S:"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:448
 msgid "Help about this page"
 msgstr ""
 
-#: inc/admin/lib.dc.page.php:512
+#: inc/admin/lib.dc.page.php:453
 #, php-format
 msgid "See also %s"
 msgstr ""
 
-#: inc/admin/lib.dc.page.php:512
+#: inc/admin/lib.dc.page.php:453
 msgid "the global help"
 msgstr ""
 
+#: inc/admin/lib.dc.page.php:518
+msgid "uncover"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:520
+msgid "hide"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:527
+msgid "Hide"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:529
+msgid "Select:"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:531
+msgid "no selection"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:533
+msgid "select all"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:535
+msgid "Invert selection"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:549
+msgid "view entry"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:551
+#, php-format
+msgid "Are you sure you want to delete selected entries (%s)?"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:553
+#, php-format
+msgid "Are you sure you want to delete selected categories (%s)?"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:555
+msgid "Are you sure you want to delete this entry?"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:557
+msgid "Click here to unlock the field"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:559
+msgid "Are you sure you want to delete all spams?"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:561
+#, php-format
+msgid "Are you sure you want to delete selected comments (%s)?"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:563
+msgid "Are you sure you want to delete this comment?"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:565
+msgid "Users with posts cannot be deleted."
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:567
+#, php-format
+msgid "Are you sure you want to delete selected users (%s)?"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:569
+#, php-format
+msgid "Are you sure you want to delete category \"%s\"?"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:571
+msgid "Are you sure you want to reorder all categories?"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:573
+#, php-format
+msgid "Are you sure you want to remove media \"%s\"?"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:575
+msgid "Are you sure you want to extract archive in current directory?"
+msgstr ""
+
 #: inc/admin/lib.dc.page.php:577
-msgid "uncover"
+#, php-format
+msgid "Are you sure you want to remove attachment \"%s\"?"
 msgstr ""
 
 #: inc/admin/lib.dc.page.php:579
-msgid "hide"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:584
-msgid "Need help?"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:588
-msgid "Hide"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:590
-msgid "Select:"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:592
-msgid "no selection"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:594
-msgid "select all"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:596
-msgid "Invert selection"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:610
-msgid "view entry"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:612
-#, php-format
-msgid "Are you sure you want to delete selected entries (%s)?"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:614
-#, php-format
-msgid "Are you sure you want to delete selected medias (%d)?"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:616
-#, php-format
-msgid "Are you sure you want to delete selected categories (%s)?"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:618
-msgid "Are you sure you want to delete this entry?"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:620
-msgid "Click here to unlock the field"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:622
-msgid "Are you sure you want to delete all spams?"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:624
-#, php-format
-msgid "Are you sure you want to delete selected comments (%s)?"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:626
-msgid "Are you sure you want to delete this comment?"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:628
-msgid "Users with posts cannot be deleted."
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:630
-#, php-format
-msgid "Are you sure you want to delete selected users (%s)?"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:632
-#, php-format
-msgid "Are you sure you want to delete category \"%s\"?"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:634
-msgid "Are you sure you want to reorder all categories?"
+#, php-format
+msgid "Are you sure you want to delete \"%s\" language?"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:581
+#, php-format
+msgid "Are you sure you want to delete \"%s\" plugin?"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:583
+msgid "Use this theme"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:585
+msgid "Remove this theme"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:587
+#, php-format
+msgid "Are you sure you want to delete \"%s\" theme?"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:589
+msgid "Are you sure you want to delete this backup?"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:591
+msgid "Zip file content"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:593
+msgid "XHTML markup validator"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:595
+msgid "XHTML content is valid."
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:597
+msgid "There are XHTML markup errors."
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:599
+msgid "Attention: an audit of a content not yet registered."
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:601
+msgid "You have unsaved changes. Switch post format will loose these changes. Proceed anyway?"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:603
+msgid "Warning: post format change will not convert existing content. You will need to apply new format by yourself. Proceed anyway?"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:605
+msgid "Loading enhanced uploader, please wait."
 msgstr ""
 
 #: inc/admin/lib.dc.page.php:636
-#, php-format
-msgid "Are you sure you want to remove media \"%s\"?"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:638
-msgid "Are you sure you want to extract archive in current directory?"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:640
-#, php-format
-msgid "Are you sure you want to remove attachment \"%s\"?"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:642
-#, php-format
-msgid "Are you sure you want to delete \"%s\" language?"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:644
-#, php-format
-msgid "Are you sure you want to delete \"%s\" plugin?"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:646
-msgid "Use this theme"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:648
-msgid "Remove this theme"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:650
-#, php-format
-msgid "Are you sure you want to delete \"%s\" theme?"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:652
-msgid "Are you sure you want to delete this backup?"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:654
-msgid "Zip file content"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:656
-msgid "XHTML markup validator"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:658
-msgid "XHTML content is valid."
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:660
-msgid "There are XHTML markup errors."
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:662
-msgid "Attention: an audit of a content not yet registered."
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:664
-msgid "You have unsaved changes. Switch post format will loose these changes. Proceed anyway?"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:666
-msgid "Warning: post format change will not convert existing content. You will need to apply new format by yourself. Proceed anyway?"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:668
-msgid "Loading enhanced uploader, please wait."
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:699
 msgid "You have unsaved changes."
 msgstr ""
 
-#: inc/admin/lib.dc.page.php:781
+#: inc/admin/lib.dc.page.php:710
 msgid "close"
 msgstr ""
 
+#: inc/admin/lib.dc.page.php:711
+msgid "now"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:755
+msgid "visual"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:756
+msgid "source"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:758
+msgid "You can use the following shortcuts to format your text."
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:759
+msgid "-- none --"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:760
+msgid "-- block format --"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:761
+msgid "Paragraph"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:762
+msgid "Level 1 header"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:763
+msgid "Level 2 header"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:764
+msgid "Level 3 header"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:765
+msgid "Level 4 header"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:766
+msgid "Level 5 header"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:767
+msgid "Level 6 header"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:768
+msgid "Strong emphasis"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:769
+msgid "Emphasis"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:770
+msgid "Inserted"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:771
+msgid "Deleted"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:772
+msgid "Inline quote"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:773
+msgid "Code"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:774
+msgid "Line break"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:775
+msgid "Blockquote"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:776
+msgid "Preformated text"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:777
+msgid "Unordered list"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:778
+msgid "Ordered list"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:780
+msgid "Link"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:781 inc/admin/lib.dc.page.php:785
+msgid "URL?"
+msgstr ""
+
 #: inc/admin/lib.dc.page.php:782
-msgid "now"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:826
-msgid "visual"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:827
-msgid "source"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:829
-msgid "You can use the following shortcuts to format your text."
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:830
-msgid "-- none --"
+msgid "Language?"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:784
+msgid "External image"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:787
+msgid "Media chooser"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:788
+msgid "Link to an entry"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:818
+msgid "Temporarily activate enhanced uploader"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:819
+msgid "Temporarily disable enhanced uploader"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:820
+msgid "Limit exceeded."
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:821
+msgid "File size exceeds allowed limit."
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:822
+msgid "Canceled."
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:823
+msgid "HTTP Error:"
+msgstr ""
+
+#: inc/admin/lib.dc.page.php:828
+msgid "Clean"
 msgstr ""
 
 #: inc/admin/lib.dc.page.php:831
-msgid "-- block format --"
+msgid "File successfully uploaded."
 msgstr ""
 
 #: inc/admin/lib.dc.page.php:832
-msgid "Paragraph"
+msgid "No file in queue."
 msgstr ""
 
 #: inc/admin/lib.dc.page.php:833
-msgid "Level 1 header"
+msgid "1 file in queue."
 msgstr ""
 
 #: inc/admin/lib.dc.page.php:834
-msgid "Level 2 header"
+#, php-format
+msgid "%d files in queue."
 msgstr ""
 
 #: inc/admin/lib.dc.page.php:835
-msgid "Level 3 header"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:836
-msgid "Level 4 header"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:837
-msgid "Level 5 header"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:838
-msgid "Level 6 header"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:839
-msgid "Strong emphasis"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:840
-msgid "Emphasis"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:841
-msgid "Inserted"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:842
-msgid "Deleted"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:843
-msgid "Inline quote"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:844
-msgid "Code"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:845
-msgid "Line break"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:846
-msgid "Blockquote"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:847
-msgid "Preformated text"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:848
-msgid "Unordered list"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:849
-msgid "Ordered list"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:851
-msgid "Link"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:852 inc/admin/lib.dc.page.php:856
-msgid "URL?"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:853
-msgid "Language?"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:855
-msgid "External image"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:858
-msgid "Media chooser"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:859
-msgid "Link to an entry"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:889
-msgid "Temporarily activate enhanced uploader"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:890
-msgid "Temporarily disable enhanced uploader"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:891
-msgid "Limit exceeded."
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:892
-msgid "File size exceeds allowed limit."
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:893
-msgid "Canceled."
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:894
-msgid "HTTP Error:"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:899
-msgid "Clean"
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:902
-msgid "File successfully uploaded."
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:903
-msgid "No file in queue."
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:904
-msgid "1 file in queue."
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:905
-#, php-format
-msgid "%d files in queue."
-msgstr ""
-
-#: inc/admin/lib.dc.page.php:906
 msgid "Queue error:"
 msgstr ""
@@ -3919,136 +3929,85 @@
 msgstr ""
 
-#: inc/admin/lib.pager.php:158
-msgid "No entry matches the filter"
-msgstr ""
-
-#: inc/admin/lib.pager.php:160 inc/admin/lib.pager.php:287
+#: inc/admin/lib.pager.php:157 inc/admin/lib.pager.php:275
 msgid "No entry"
 msgstr ""
 
-#: inc/admin/lib.pager.php:177
-#, php-format
-msgid "List of %s entries match the filter."
-msgstr ""
-
-#: inc/admin/lib.pager.php:179 inc/admin/lib.pager.php:295
+#: inc/admin/lib.pager.php:170 inc/admin/lib.pager.php:283
 msgid "Entries list"
 msgstr ""
 
-#: inc/admin/lib.pager.php:246 inc/admin/lib.pager.php:343
+#: inc/admin/lib.pager.php:234 inc/admin/lib.pager.php:331
 msgid "Protected"
 msgstr ""
 
-#: inc/admin/lib.pager.php:257 inc/admin/lib.pager.php:354
+#: inc/admin/lib.pager.php:245 inc/admin/lib.pager.php:342
 #, php-format
 msgid "%d attachment"
 msgstr ""
 
-#: inc/admin/lib.pager.php:257 inc/admin/lib.pager.php:354
+#: inc/admin/lib.pager.php:245 inc/admin/lib.pager.php:342
 #, php-format
 msgid "%d attachments"
 msgstr ""
 
-#: inc/admin/lib.pager.php:381
-msgid "No comments or trackbacks matches the filter"
-msgstr ""
-
-#: inc/admin/lib.pager.php:401
-#, php-format
-msgid "List of %s Comments or trackbacks match the filter."
-msgstr ""
-
-#: inc/admin/lib.pager.php:407
+#: inc/admin/lib.pager.php:383
 msgid "Type"
 msgstr ""
 
-#: inc/admin/lib.pager.php:411
-msgid "Entry"
-msgstr ""
-
-#: inc/admin/lib.pager.php:474
+#: inc/admin/lib.pager.php:450
 #, php-format
 msgid "Edit the %1$s from %2$s"
 msgstr ""
 
-#: inc/admin/lib.pager.php:475 inc/admin/lib.pager.php:487
+#: inc/admin/lib.pager.php:451 inc/admin/lib.pager.php:463
 msgid "comment"
 msgstr ""
 
-#: inc/admin/lib.pager.php:475 inc/admin/lib.pager.php:487
+#: inc/admin/lib.pager.php:451 inc/admin/lib.pager.php:463
 msgid "trackback"
 msgstr ""
 
-#: inc/admin/lib.pager.php:484
+#: inc/admin/lib.pager.php:460
 msgid "Type and author"
 msgstr ""
 
-#: inc/admin/lib.pager.php:508
-msgid "No user matches the filter"
-msgstr ""
-
-#: inc/admin/lib.pager.php:510
+#: inc/admin/lib.pager.php:483
 msgid "No user"
 msgstr ""
 
-#: inc/admin/lib.pager.php:522
-#, php-format
-msgid "List of %s users match the filter."
-msgstr ""
-
-#: inc/admin/lib.pager.php:524
+#: inc/admin/lib.pager.php:491
 msgid "Users list"
 msgstr ""
 
-#: inc/admin/lib.pager.php:564
+#: inc/admin/lib.pager.php:528
 msgid "admin"
 msgstr ""
 
-#: inc/admin/lib.pager.php:567
+#: inc/admin/lib.pager.php:531
 msgid "superadmin"
 msgstr ""
 
-#: inc/admin/prepend.php:106
+#: inc/admin/prepend.php:129
 msgid "Database error"
 msgstr ""
 
-#: inc/admin/prepend.php:107
+#: inc/admin/prepend.php:130
 msgid "There seems to be no Session table in your database. Is Dotclear completly installed?"
 msgstr ""
 
-#: inc/admin/prepend.php:229
+#: inc/admin/prepend.php:293
 msgid "System settings"
 msgstr ""
 
-#: inc/admin/prepend.php:230
+#: inc/admin/prepend.php:294
 msgid "Blog"
 msgstr ""
 
-#: inc/admin/prepend.php:266
+#: inc/admin/prepend.php:331
 msgid "Update"
 msgstr ""
 
-#: inc/core/_fake_l10n.php:4
-msgid "moyenne"
-msgstr ""
-
-#: inc/core/_fake_l10n.php:5
-msgid "petite"
-msgstr ""
-
-#: inc/core/_fake_l10n.php:6
-msgid "vignettes"
-msgstr ""
-
-#: inc/core/_fake_l10n.php:7
-msgid "carrée"
-msgstr ""
-
-#: inc/core/_fake_l10n.php:11
-msgid "Posts"
-msgstr ""
-
-#: inc/core/_fake_l10n.php:12
-msgid "Pages"
+#: inc/admin/prepend.php:334
+msgid "Languages"
 msgstr ""
 
@@ -4085,9 +4044,9 @@
 msgstr ""
 
-#: inc/core/class.dc.auth.php:557
+#: inc/core/class.dc.auth.php:553
 msgid "That user does not exist in the database."
 msgstr ""
 
-#: inc/core/class.dc.auth.php:589
+#: inc/core/class.dc.auth.php:585
 msgid "That key does not exist in the database."
 msgstr ""
@@ -4258,88 +4217,83 @@
 msgstr ""
 
-#: inc/core/class.dc.media.php:579
+#: inc/core/class.dc.media.php:570
 msgid "You are not a super administrator."
 msgstr ""
 
-#: inc/core/class.dc.media.php:648 inc/core/class.dc.media.php:730
-#: inc/core/class.dc.media.php:790 inc/core/class.dc.media.php:809
-#: inc/core/class.dc.media.php:827
+#: inc/core/class.dc.media.php:639 inc/core/class.dc.media.php:721
+#: inc/core/class.dc.media.php:781 inc/core/class.dc.media.php:800
+#: inc/core/class.dc.media.php:818
 msgid "Permission denied."
 msgstr ""
 
-#: inc/core/class.dc.media.php:741
+#: inc/core/class.dc.media.php:732
 msgid "You are not the file owner."
 msgstr ""
 
-#: inc/core/class.dc.media.php:756
+#: inc/core/class.dc.media.php:747
 msgid "This file is not allowed."
 msgstr ""
 
-#: inc/core/class.dc.media.php:760
+#: inc/core/class.dc.media.php:751
 msgid "New file already exists."
 msgstr ""
 
-#: inc/core/class.dc.media.php:844
+#: inc/core/class.dc.media.php:835
 msgid "File does not exist in the database."
 msgstr ""
 
-#: inc/core/class.dc.media.php:900
+#: inc/core/class.dc.media.php:891
 #, php-format
 msgid "Extract destination directory %s already exists."
 msgstr ""
 
-#: inc/core/class.dc.media.php:1102
+#: inc/core/class.dc.media.php:1093
 msgid "Embedded Audio Player"
 msgstr ""
 
-#: inc/core/class.dc.media.php:1148
+#: inc/core/class.dc.media.php:1139
 msgid "Embedded Video Player"
 msgstr ""
 
-#: inc/core/class.dc.modules.php:189 inc/core/class.dc.themes.php:69
-#, php-format
-msgid "Module \"%s\" has type \"%s\" that mismatch required module type \"%s\"."
-msgstr ""
-
-#: inc/core/class.dc.modules.php:227
-#, php-format
-msgid "Module \"%s\" is installed twice in \"%s\" and \"%s\"."
-msgstr ""
-
-#: inc/core/class.dc.modules.php:265
+#: inc/core/class.dc.modules.php:212
+#, php-format
+msgid "%s: in [%s] and [%s]"
+msgstr ""
+
+#: inc/core/class.dc.modules.php:249
 msgid "Empty module zip file."
 msgstr ""
 
-#: inc/core/class.dc.modules.php:271
+#: inc/core/class.dc.modules.php:255
 msgid "The zip file does not appear to be a valid Dotclear module."
 msgstr ""
 
-#: inc/core/class.dc.modules.php:324
+#: inc/core/class.dc.modules.php:280
 msgid "An error occurred during module deletion."
 msgstr ""
 
-#: inc/core/class.dc.modules.php:332
+#: inc/core/class.dc.modules.php:288
 #, php-format
 msgid "Unable to upgrade \"%s\". (same version)"
 msgstr ""
 
-#: inc/core/class.dc.modules.php:339
+#: inc/core/class.dc.modules.php:295
 msgid "Unable to read new _define.php file"
 msgstr ""
 
-#: inc/core/class.dc.modules.php:404 inc/core/class.dc.modules.php:415
-#: inc/core/class.dc.modules.php:430
+#: inc/core/class.dc.modules.php:360 inc/core/class.dc.modules.php:371
+#: inc/core/class.dc.modules.php:386
 msgid "No such module."
 msgstr ""
 
-#: inc/core/class.dc.modules.php:408
+#: inc/core/class.dc.modules.php:364
 msgid "Cannot remove module files"
 msgstr ""
 
-#: inc/core/class.dc.modules.php:419 inc/core/class.dc.modules.php:423
+#: inc/core/class.dc.modules.php:375 inc/core/class.dc.modules.php:379
 msgid "Cannot deactivate plugin."
 msgstr ""
 
-#: inc/core/class.dc.modules.php:434 inc/core/class.dc.modules.php:438
+#: inc/core/class.dc.modules.php:390 inc/core/class.dc.modules.php:394
 msgid "Cannot activate plugin."
 msgstr ""
@@ -4482,11 +4436,11 @@
 msgstr ""
 
-#: inc/core/class.dc.workspace.php:210
+#: inc/core/class.dc.workspace.php:181
 #, php-format
 msgid "%s is not a valid pref id"
 msgstr ""
 
-#: inc/core/class.dc.workspace.php:305 inc/core/class.dc.workspace.php:334
-#: inc/core/class.dc.workspace.php:371
+#: inc/core/class.dc.workspace.php:276 inc/core/class.dc.workspace.php:305
+#: inc/core/class.dc.workspace.php:342
 msgid "No workspace specified"
 msgstr ""
@@ -4504,9 +4458,9 @@
 msgstr ""
 
-#: inc/dbschema/upgrade.php:28
+#: inc/dbschema/upgrade.php:27
 msgid "SQLite Database Schema cannot be upgraded."
 msgstr ""
 
-#: inc/dbschema/upgrade.php:361
+#: inc/dbschema/upgrade.php:358
 msgid "Something went wrong with auto upgrade:"
 msgstr ""
@@ -4697,22 +4651,22 @@
 msgstr ""
 
+#: inc/prepend.php:170
+msgid "Site temporarily unavailable"
+msgstr ""
+
 #: inc/prepend.php:171
-msgid "Site temporarily unavailable"
-msgstr ""
-
-#: inc/prepend.php:172
 msgid "<p>We apologize for this temporary unavailability.<br />Thank you for your understanding.</p>"
 msgstr ""
 
-#: inc/prepend.php:176
+#: inc/prepend.php:175
 msgid "Unable to connect to database"
 msgstr ""
 
-#: inc/prepend.php:178
+#: inc/prepend.php:177
 #, php-format
 msgid "<p>This either means that the username and password information in your <strong>config.php</strong> file is incorrect or we can't contact the database server at \"<em>%s</em>\". This could mean your host's database server is down.</p> <ul><li>Are you sure you have the correct username and password?</li><li>Are you sure that you have typed the correct hostname?</li><li>Are you sure that the database server is running?</li></ul><p>If you're unsure what these terms mean you should probably contact your host. If you still need help you can always visit the <a href=\"http://forum.dotclear.net/\">Dotclear Support Forums</a>.</p>"
 msgstr ""
 
-#: inc/prepend.php:189
+#: inc/prepend.php:188
 msgid "The following error was encountered while trying to read the database:"
 msgstr ""
Index: locales/_pot/plugins.pot
===================================================================
--- locales/_pot/plugins.pot	(revision 2258)
+++ locales/_pot/plugins.pot	(revision 2133)
@@ -8,5 +8,5 @@
 "Project-Id-Version: Dotclear 2\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-04 13:51+0000\n"
+"POT-Creation-Date: 2013-09-24 07:51+0000\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
@@ -18,166 +18,46 @@
 "Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
 
-#: plugins/_fake_plugin/_fake_l10n.php:5
-msgid "Manage every blog configuration directive"
-msgstr ""
-
-#: plugins/_fake_plugin/_fake_l10n.php:6
-msgid "Akismet interface for Dotclear"
-msgstr ""
-
-#: plugins/_fake_plugin/_fake_l10n.php:7
-msgid "Generic antispam plugin for Dotclear"
-msgstr ""
-
-#: plugins/_fake_plugin/_fake_l10n.php:8
-msgid "Manage post attachments"
-msgstr ""
-
-#: plugins/_fake_plugin/_fake_l10n.php:9
-msgid "Manage your blogroll"
-msgstr ""
-
-#: plugins/_fake_plugin/_fake_l10n.php:10
-msgid "Configure your Blowup Theme"
-msgstr ""
-
-#: plugins/_fake_plugin/_fake_l10n.php:11 plugins/daInstaller/index.php:267
-msgid "Install and update your plugins live from DotAddict.org"
-msgstr ""
-
-#: plugins/_fake_plugin/_fake_l10n.php:12
-msgid "Trackback validity check"
-msgstr ""
-
-#: plugins/_fake_plugin/_fake_l10n.php:13
-msgid "Import and Export your blog"
-msgstr ""
-
-#: plugins/_fake_plugin/_fake_l10n.php:14
-msgid "Maintain your installation"
-msgstr ""
-
-#: plugins/_fake_plugin/_fake_l10n.php:15
-msgid "Serve entries as simple web pages"
-msgstr ""
-
-#: plugins/_fake_plugin/_fake_l10n.php:16
-msgid "Ping services"
-msgstr ""
-
-#: plugins/_fake_plugin/_fake_l10n.php:17
-msgid "Simple menu for Dotclear"
-msgstr ""
-
-#: plugins/_fake_plugin/_fake_l10n.php:18
-msgid "Tags for posts"
-msgstr ""
-
-#: plugins/_fake_plugin/_fake_l10n.php:19
-msgid "Theme Editor"
-msgstr ""
-
-#: plugins/_fake_plugin/_fake_l10n.php:20
-msgid "Manage every user preference directive"
-msgstr ""
-
-#: plugins/_fake_plugin/_fake_l10n.php:21
-msgid "Widgets for your blog sidebars"
-msgstr ""
-
-#: plugins/_fake_plugin/_fake_l10n.php:25
-msgid "Search engine form"
-msgstr ""
-
-#: plugins/_fake_plugin/_fake_l10n.php:26
-msgid "List of navigation links"
-msgstr ""
-
-#: plugins/_fake_plugin/_fake_l10n.php:27
-msgid "List of selected entries"
-msgstr ""
-
-#: plugins/_fake_plugin/_fake_l10n.php:28
-msgid "List of available languages"
-msgstr ""
-
-#: plugins/_fake_plugin/_fake_l10n.php:29
-msgid "List of categories"
-msgstr ""
-
-#: plugins/_fake_plugin/_fake_l10n.php:30
-msgid "RSS or Atom feed subscription links"
-msgstr ""
-
-#: plugins/_fake_plugin/_fake_l10n.php:31
-msgid "Last entries from feed"
-msgstr ""
-
-#: plugins/_fake_plugin/_fake_l10n.php:32
-msgid "Simple text"
-msgstr ""
-
-#: plugins/_fake_plugin/_fake_l10n.php:33
-msgid "List of last entries published"
-msgstr ""
-
-#: plugins/_fake_plugin/_fake_l10n.php:34
-msgid "List of last comments posted"
-msgstr ""
-
-#: plugins/_fake_plugin/_fake_l10n.php:35
-msgid "Tags cloud"
-msgstr ""
-
-#: plugins/_fake_plugin/_fake_l10n.php:36
-msgid "List of published pages"
-msgstr ""
-
-#: plugins/_fake_plugin/_fake_l10n.php:37
-msgid "Blogroll list"
-msgstr ""
-
-#: plugins/_fake_plugin/_fake_l10n.php:38
-msgid "List of simple menu items"
-msgstr ""
-
-#: plugins/aboutConfig/index.php:40 plugins/aboutConfig/index.php:65
+#: plugins/aboutConfig/index.php:78 plugins/userPref/index.php:74
+msgid "no"
+msgstr ""
+
+#: plugins/aboutConfig/index.php:78 plugins/userPref/index.php:74
+msgid "yes"
+msgstr ""
+
+#: plugins/aboutConfig/index.php:121
+msgid "about:config"
+msgstr ""
+
+#: plugins/aboutConfig/index.php:124
 msgid "Configuration successfully updated"
 msgstr ""
 
-#: plugins/aboutConfig/index.php:80 plugins/userPref/index.php:76
-msgid "no"
-msgstr ""
-
-#: plugins/aboutConfig/index.php:80 plugins/userPref/index.php:76
-msgid "yes"
-msgstr ""
-
-#: plugins/aboutConfig/index.php:123
-msgid "about:config"
-msgstr ""
-
-#: plugins/aboutConfig/index.php:128 plugins/aboutConfig/index.php:129
+#: plugins/aboutConfig/index.php:128
+msgid "Settings definition successfully updated"
+msgstr ""
+
+#: plugins/aboutConfig/index.php:132 plugins/aboutConfig/index.php:133
 #, php-format
 msgid "Settings for %s"
 msgstr ""
 
-#: plugins/aboutConfig/index.php:136 plugins/userPref/index.php:133
+#: plugins/aboutConfig/index.php:140 plugins/userPref/index.php:137
 msgid "Value"
 msgstr ""
 
-#: plugins/aboutConfig/index.php:138 plugins/antispam/index.php:199
-#: plugins/blogroll/index.php:205 plugins/blogroll/index.php:330
-#: plugins/simpleMenu/index.php:143 plugins/simpleMenu/index.php:488
-#: plugins/userPref/index.php:135
+#: plugins/aboutConfig/index.php:142 plugins/antispam/index.php:195
+#: plugins/blogroll/index.php:219 plugins/blogroll/index.php:344
+#: plugins/simpleMenu/index.php:143 plugins/simpleMenu/index.php:474
+#: plugins/userPref/index.php:139
 msgid "Description"
 msgstr ""
 
-#: plugins/aboutConfig/index.php:159 plugins/aboutConfig/index.php:209
-#: plugins/userPref/index.php:156 plugins/userPref/index.php:206
+#: plugins/aboutConfig/index.php:163 plugins/aboutConfig/index.php:213
+#: plugins/userPref/index.php:160 plugins/userPref/index.php:210
 msgid "Goto:"
 msgstr ""
 
-#: plugins/aboutConfig/index.php:187 plugins/aboutConfig/index.php:188
+#: plugins/aboutConfig/index.php:191 plugins/aboutConfig/index.php:192
 msgid "Global settings"
 msgstr ""
@@ -192,48 +72,47 @@
 msgstr ""
 
-#: plugins/akismet/class.dc.filter.akismet.php:119
+#: plugins/akismet/class.dc.filter.akismet.php:139
 msgid "Filter configuration have been successfully saved."
 msgstr ""
 
-#: plugins/akismet/class.dc.filter.akismet.php:142
+#: plugins/akismet/class.dc.filter.akismet.php:144
 msgid "Akismet API key:"
 msgstr ""
 
-#: plugins/akismet/class.dc.filter.akismet.php:147
+#: plugins/akismet/class.dc.filter.akismet.php:149
 msgid "API key verified"
 msgstr ""
 
-#: plugins/akismet/class.dc.filter.akismet.php:149
+#: plugins/akismet/class.dc.filter.akismet.php:151
 msgid "API key not verified"
 msgstr ""
 
-#: plugins/akismet/class.dc.filter.akismet.php:156
+#: plugins/akismet/class.dc.filter.akismet.php:158
 msgid "Get your own API key"
 msgstr ""
 
-#: plugins/antispam/_admin.php:18 plugins/antispam/_admin.php:32
-#: plugins/antispam/index.php:18
+#: plugins/antispam/_admin.php:18 plugins/antispam/index.php:18
 msgid "Antispam"
 msgstr ""
 
-#: plugins/antispam/_admin.php:64 plugins/antispam/index.php:175
+#: plugins/antispam/_admin.php:60 plugins/antispam/index.php:171
 #, php-format
 msgid "All spam comments older than %s day(s) will be automatically deleted."
 msgstr ""
 
-#: plugins/antispam/_admin.php:65 plugins/antispam/index.php:176
+#: plugins/antispam/_admin.php:61 plugins/antispam/index.php:172
 #, php-format
 msgid "You can modify this duration in the %s"
 msgstr ""
 
+#: plugins/antispam/_admin.php:71
+msgid "Delete junk comments older than"
+msgstr ""
+
+#: plugins/antispam/_admin.php:73
+msgid "days"
+msgstr ""
+
 #: plugins/antispam/_admin.php:75
-msgid "Delete junk comments older than"
-msgstr ""
-
-#: plugins/antispam/_admin.php:77
-msgid "days"
-msgstr ""
-
-#: plugins/antispam/_admin.php:79
 msgid "Set spam filters."
 msgstr ""
@@ -248,46 +127,46 @@
 msgstr ""
 
-#: plugins/antispam/filters/class.dc.filter.ip.php:77
+#: plugins/antispam/filters/class.dc.filter.ip.php:101
 msgid "IP address has been successfully added."
 msgstr ""
 
-#: plugins/antispam/filters/class.dc.filter.ip.php:91
+#: plugins/antispam/filters/class.dc.filter.ip.php:104
 msgid "IP addresses have been successfully removed."
 msgstr ""
 
-#: plugins/antispam/filters/class.dc.filter.ip.php:103
+#: plugins/antispam/filters/class.dc.filter.ip.php:108
 msgid "Blacklist"
 msgstr ""
 
-#: plugins/antispam/filters/class.dc.filter.ip.php:104
+#: plugins/antispam/filters/class.dc.filter.ip.php:109
 msgid "Whitelist"
 msgstr ""
 
-#: plugins/antispam/filters/class.dc.filter.ip.php:120
+#: plugins/antispam/filters/class.dc.filter.ip.php:125
 msgid "Add an IP address: "
 msgstr ""
 
-#: plugins/antispam/filters/class.dc.filter.ip.php:124
+#: plugins/antispam/filters/class.dc.filter.ip.php:129
 msgid "Global IP (used for all blogs)"
 msgstr ""
 
-#: plugins/antispam/filters/class.dc.filter.ip.php:130
-#: plugins/antispam/filters/class.dc.filter.words.php:121
+#: plugins/antispam/filters/class.dc.filter.ip.php:135
+#: plugins/antispam/filters/class.dc.filter.words.php:128
 msgid "Add"
 msgstr ""
 
-#: plugins/antispam/filters/class.dc.filter.ip.php:137
+#: plugins/antispam/filters/class.dc.filter.ip.php:142
 msgid "No IP address in list."
 msgstr ""
 
-#: plugins/antispam/filters/class.dc.filter.ip.php:143
+#: plugins/antispam/filters/class.dc.filter.ip.php:148
 msgid "IP list"
 msgstr ""
 
-#: plugins/antispam/filters/class.dc.filter.ip.php:171
+#: plugins/antispam/filters/class.dc.filter.ip.php:176
 msgid "Local IPs (used only for this blog)"
 msgstr ""
 
-#: plugins/antispam/filters/class.dc.filter.ip.php:177
+#: plugins/antispam/filters/class.dc.filter.ip.php:182
 msgid "Global IPs (used for all blogs)"
 msgstr ""
@@ -303,13 +182,9 @@
 msgstr ""
 
-#: plugins/antispam/filters/class.dc.filter.iplookup.php:67
-msgid "The list of DNSBL servers has been succesfully updated."
+#: plugins/antispam/filters/class.dc.filter.iplookup.php:79
+msgid "IP Lookup servers"
 msgstr ""
 
 #: plugins/antispam/filters/class.dc.filter.iplookup.php:80
-msgid "IP Lookup servers"
-msgstr ""
-
-#: plugins/antispam/filters/class.dc.filter.iplookup.php:81
 msgid "Add here a coma separated list of servers."
 msgstr ""
@@ -328,49 +203,49 @@
 msgstr ""
 
-#: plugins/antispam/filters/class.dc.filter.words.php:72
+#: plugins/antispam/filters/class.dc.filter.words.php:107
 msgid "Words have been successfully added."
 msgstr ""
 
-#: plugins/antispam/filters/class.dc.filter.words.php:86
+#: plugins/antispam/filters/class.dc.filter.words.php:110
 msgid "Word has been successfully added."
 msgstr ""
 
-#: plugins/antispam/filters/class.dc.filter.words.php:98
+#: plugins/antispam/filters/class.dc.filter.words.php:113
 msgid "Words have been successfully removed."
 msgstr ""
 
-#: plugins/antispam/filters/class.dc.filter.words.php:111
+#: plugins/antispam/filters/class.dc.filter.words.php:118
 msgid "Add a word "
 msgstr ""
 
-#: plugins/antispam/filters/class.dc.filter.words.php:115
+#: plugins/antispam/filters/class.dc.filter.words.php:122
 msgid "Global word (used for all blogs)"
 msgstr ""
 
-#: plugins/antispam/filters/class.dc.filter.words.php:127
+#: plugins/antispam/filters/class.dc.filter.words.php:134
 msgid "No word in list."
 msgstr ""
 
-#: plugins/antispam/filters/class.dc.filter.words.php:133
+#: plugins/antispam/filters/class.dc.filter.words.php:140
 msgid "List of bad words"
 msgstr ""
 
-#: plugins/antispam/filters/class.dc.filter.words.php:157
+#: plugins/antispam/filters/class.dc.filter.words.php:164
 msgid "Local words (used only for this blog)"
 msgstr ""
 
-#: plugins/antispam/filters/class.dc.filter.words.php:163
+#: plugins/antispam/filters/class.dc.filter.words.php:170
 msgid "Global words (used for all blogs)"
 msgstr ""
 
-#: plugins/antispam/filters/class.dc.filter.words.php:174
+#: plugins/antispam/filters/class.dc.filter.words.php:181
 msgid "Delete selected words"
 msgstr ""
 
-#: plugins/antispam/filters/class.dc.filter.words.php:182
+#: plugins/antispam/filters/class.dc.filter.words.php:189
 msgid "Create default wordlist"
 msgstr ""
 
-#: plugins/antispam/filters/class.dc.filter.words.php:212
+#: plugins/antispam/filters/class.dc.filter.words.php:219
 msgid "This word exists"
 msgstr ""
@@ -425,71 +300,67 @@
 msgstr ""
 
-#: plugins/antispam/index.php:94 plugins/antispam/index.php:187
+#: plugins/antispam/index.php:101
+#, php-format
+msgid "%s configuration"
+msgstr ""
+
+#: plugins/antispam/index.php:129
+#, php-format
+msgid "%s filter configuration"
+msgstr ""
+
+#: plugins/antispam/index.php:149
+msgid "Information"
+msgstr ""
+
+#: plugins/antispam/index.php:157
+msgid "Junk comments:"
+msgstr ""
+
+#: plugins/antispam/index.php:159
+msgid "Published comments:"
+msgstr ""
+
+#: plugins/antispam/index.php:183
 msgid "Filters configuration has been successfully saved."
 msgstr ""
 
-#: plugins/antispam/index.php:105
-#, php-format
-msgid "%s configuration"
-msgstr ""
-
-#: plugins/antispam/index.php:133
-#, php-format
-msgid "%s filter configuration"
-msgstr ""
-
-#: plugins/antispam/index.php:137
-msgid "Back to filters list"
-msgstr ""
-
-#: plugins/antispam/index.php:157
-msgid "Information"
-msgstr ""
-
-#: plugins/antispam/index.php:161
-msgid "Junk comments:"
-msgstr ""
-
-#: plugins/antispam/index.php:163
-msgid "Published comments:"
-msgstr ""
-
-#: plugins/antispam/index.php:193
+#: plugins/antispam/index.php:189
 msgid "Available spam filters"
 msgstr ""
 
-#: plugins/antispam/index.php:195
+#: plugins/antispam/index.php:191
 msgid "Order"
 msgstr ""
 
-#: plugins/antispam/index.php:196 plugins/antispam/index.php:217
+#: plugins/antispam/index.php:192 plugins/antispam/index.php:213
 msgid "Active"
 msgstr ""
 
-#: plugins/antispam/index.php:197 plugins/antispam/index.php:218
+#: plugins/antispam/index.php:193 plugins/antispam/index.php:214
 msgid "Auto Del."
 msgstr ""
 
-#: plugins/antispam/index.php:198
+#: plugins/antispam/index.php:194
 msgid "Filter name"
 msgstr ""
 
-#: plugins/antispam/index.php:210 plugins/antispam/index.php:211
+#: plugins/antispam/index.php:206 plugins/antispam/index.php:207
 msgid "Filter configuration"
 msgstr ""
 
-#: plugins/antispam/index.php:216 plugins/blogroll/index.php:218
+#: plugins/antispam/index.php:212 plugins/blogroll/index.php:232
 msgid "position"
 msgstr ""
 
-#: plugins/antispam/index.php:246
+#: plugins/antispam/index.php:242
 msgid "Syndication"
 msgstr ""
 
-#: plugins/antispam/index.php:248
+#: plugins/antispam/index.php:244
 msgid "Junk comments RSS feed"
 msgstr ""
 
-#: plugins/antispam/index.php:249
+#: plugins/antispam/index.php:245
 msgid "Published comments RSS feed"
 msgstr ""
@@ -516,16 +387,9 @@
 msgstr ""
 
-#: plugins/blogroll/_admin.php:20 plugins/blogroll/_admin.php:25
-#: plugins/blogroll/_admin.php:37 plugins/blogroll/_widgets.php:21
-#: plugins/blogroll/edit.php:103 plugins/blogroll/index.php:172
-#: plugins/blogroll/index.php:190 plugins/blogroll/index.php:195
-msgid "Blogroll"
-msgstr ""
-
-#: plugins/blogroll/_admin.php:41
+#: plugins/blogroll/_admin.php:37
 msgid "manage blogroll"
 msgstr ""
 
-#: plugins/blogroll/_widgets.php:22 plugins/blowupConfig/index.php:273
+#: plugins/blogroll/_widgets.php:22 plugins/blowupConfig/index.php:276
 msgid "Links"
 msgstr ""
@@ -541,4 +405,19 @@
 #: plugins/widgets/_default_widgets.php:37
 #: plugins/widgets/_default_widgets.php:44
+#: plugins/widgets/_default_widgets.php:53
+#: plugins/widgets/_default_widgets.php:61
+#: plugins/widgets/_default_widgets.php:70
+#: plugins/widgets/_default_widgets.php:78
+#: plugins/widgets/_default_widgets.php:96
+#: plugins/widgets/_default_widgets.php:104
+msgid "Display on:"
+msgstr ""
+
+#: plugins/blogroll/_widgets.php:38 plugins/pages/_widgets.php:25
+#: plugins/simpleMenu/_widgets.php:24 plugins/tags/_widgets.php:33
+#: plugins/widgets/_default_widgets.php:23
+#: plugins/widgets/_default_widgets.php:30
+#: plugins/widgets/_default_widgets.php:38
+#: plugins/widgets/_default_widgets.php:45
 #: plugins/widgets/_default_widgets.php:54
 #: plugins/widgets/_default_widgets.php:62
@@ -547,13 +426,43 @@
 #: plugins/widgets/_default_widgets.php:97
 #: plugins/widgets/_default_widgets.php:105
-msgid "Display on:"
-msgstr ""
-
-#: plugins/blogroll/_widgets.php:38 plugins/pages/_widgets.php:25
-#: plugins/simpleMenu/_widgets.php:24 plugins/tags/_widgets.php:33
+msgid "All pages"
+msgstr ""
+
+#: plugins/blogroll/_widgets.php:39 plugins/pages/_widgets.php:26
+#: plugins/simpleMenu/_widgets.php:25 plugins/tags/_widgets.php:34
 #: plugins/widgets/_default_widgets.php:23
 #: plugins/widgets/_default_widgets.php:30
 #: plugins/widgets/_default_widgets.php:38
 #: plugins/widgets/_default_widgets.php:45
+#: plugins/widgets/_default_widgets.php:54
+#: plugins/widgets/_default_widgets.php:62
+#: plugins/widgets/_default_widgets.php:71
+#: plugins/widgets/_default_widgets.php:79
+#: plugins/widgets/_default_widgets.php:97
+#: plugins/widgets/_default_widgets.php:105
+msgid "Home page only"
+msgstr ""
+
+#: plugins/blogroll/_widgets.php:40 plugins/pages/_widgets.php:27
+#: plugins/simpleMenu/_widgets.php:26 plugins/tags/_widgets.php:35
+#: plugins/widgets/_default_widgets.php:23
+#: plugins/widgets/_default_widgets.php:30
+#: plugins/widgets/_default_widgets.php:38
+#: plugins/widgets/_default_widgets.php:45
+#: plugins/widgets/_default_widgets.php:54
+#: plugins/widgets/_default_widgets.php:62
+#: plugins/widgets/_default_widgets.php:71
+#: plugins/widgets/_default_widgets.php:79
+#: plugins/widgets/_default_widgets.php:97
+#: plugins/widgets/_default_widgets.php:105
+msgid "Except on home page"
+msgstr ""
+
+#: plugins/blogroll/_widgets.php:43 plugins/pages/_widgets.php:40
+#: plugins/simpleMenu/_widgets.php:29 plugins/tags/_widgets.php:38
+#: plugins/widgets/_default_widgets.php:24
+#: plugins/widgets/_default_widgets.php:31
+#: plugins/widgets/_default_widgets.php:39
+#: plugins/widgets/_default_widgets.php:46
 #: plugins/widgets/_default_widgets.php:55
 #: plugins/widgets/_default_widgets.php:63
@@ -562,43 +471,13 @@
 #: plugins/widgets/_default_widgets.php:98
 #: plugins/widgets/_default_widgets.php:106
-msgid "All pages"
-msgstr ""
-
-#: plugins/blogroll/_widgets.php:39 plugins/pages/_widgets.php:26
-#: plugins/simpleMenu/_widgets.php:25 plugins/tags/_widgets.php:34
-#: plugins/widgets/_default_widgets.php:23
-#: plugins/widgets/_default_widgets.php:30
-#: plugins/widgets/_default_widgets.php:38
-#: plugins/widgets/_default_widgets.php:45
-#: plugins/widgets/_default_widgets.php:55
-#: plugins/widgets/_default_widgets.php:63
-#: plugins/widgets/_default_widgets.php:72
-#: plugins/widgets/_default_widgets.php:80
-#: plugins/widgets/_default_widgets.php:98
-#: plugins/widgets/_default_widgets.php:106
-msgid "Home page only"
-msgstr ""
-
-#: plugins/blogroll/_widgets.php:40 plugins/pages/_widgets.php:27
-#: plugins/simpleMenu/_widgets.php:26 plugins/tags/_widgets.php:35
-#: plugins/widgets/_default_widgets.php:23
-#: plugins/widgets/_default_widgets.php:30
-#: plugins/widgets/_default_widgets.php:38
-#: plugins/widgets/_default_widgets.php:45
-#: plugins/widgets/_default_widgets.php:55
-#: plugins/widgets/_default_widgets.php:63
-#: plugins/widgets/_default_widgets.php:72
-#: plugins/widgets/_default_widgets.php:80
-#: plugins/widgets/_default_widgets.php:98
-#: plugins/widgets/_default_widgets.php:106
-msgid "Except on home page"
-msgstr ""
-
-#: plugins/blogroll/_widgets.php:43 plugins/pages/_widgets.php:40
-#: plugins/simpleMenu/_widgets.php:29 plugins/tags/_widgets.php:38
-#: plugins/widgets/_default_widgets.php:24
-#: plugins/widgets/_default_widgets.php:31
-#: plugins/widgets/_default_widgets.php:39
-#: plugins/widgets/_default_widgets.php:46
+msgid "Content only"
+msgstr ""
+
+#: plugins/blogroll/_widgets.php:44 plugins/pages/_widgets.php:41
+#: plugins/simpleMenu/_widgets.php:30 plugins/tags/_widgets.php:39
+#: plugins/widgets/_default_widgets.php:25
+#: plugins/widgets/_default_widgets.php:32
+#: plugins/widgets/_default_widgets.php:40
+#: plugins/widgets/_default_widgets.php:47
 #: plugins/widgets/_default_widgets.php:56
 #: plugins/widgets/_default_widgets.php:64
@@ -607,19 +486,4 @@
 #: plugins/widgets/_default_widgets.php:99
 #: plugins/widgets/_default_widgets.php:107
-msgid "Content only"
-msgstr ""
-
-#: plugins/blogroll/_widgets.php:44 plugins/pages/_widgets.php:41
-#: plugins/simpleMenu/_widgets.php:30 plugins/tags/_widgets.php:39
-#: plugins/widgets/_default_widgets.php:25
-#: plugins/widgets/_default_widgets.php:32
-#: plugins/widgets/_default_widgets.php:40
-#: plugins/widgets/_default_widgets.php:47
-#: plugins/widgets/_default_widgets.php:57
-#: plugins/widgets/_default_widgets.php:65
-#: plugins/widgets/_default_widgets.php:74
-#: plugins/widgets/_default_widgets.php:82
-#: plugins/widgets/_default_widgets.php:100
-#: plugins/widgets/_default_widgets.php:108
 msgid "CSS class:"
 msgstr ""
@@ -648,202 +512,202 @@
 msgstr ""
 
-#: plugins/blogroll/edit.php:70
+#: plugins/blogroll/edit.php:105
+msgid "Return to blogroll"
+msgstr ""
+
+#: plugins/blogroll/edit.php:111
+msgid "Category has been successfully updated"
+msgstr ""
+
+#: plugins/blogroll/edit.php:116
+msgid "Edit category"
+msgstr ""
+
+#: plugins/blogroll/edit.php:130
 msgid "Link has been successfully updated"
 msgstr ""
 
-#: plugins/blogroll/edit.php:85
-msgid "Category has been successfully updated"
-msgstr ""
-
-#: plugins/blogroll/edit.php:108
-msgid "Return to blogroll"
-msgstr ""
-
-#: plugins/blogroll/edit.php:115
-msgid "Edit category"
-msgstr ""
-
-#: plugins/blogroll/edit.php:133
+#: plugins/blogroll/edit.php:137
 msgid "Edit link"
 msgstr ""
 
-#: plugins/blogroll/edit.php:151
+#: plugins/blogroll/edit.php:155
 msgid "XFN information"
 msgstr ""
 
-#: plugins/blogroll/edit.php:156
+#: plugins/blogroll/edit.php:160
 msgid "_xfn_Me"
 msgstr ""
 
-#: plugins/blogroll/edit.php:159
+#: plugins/blogroll/edit.php:163
 msgid "_xfn_Another link for myself"
 msgstr ""
 
-#: plugins/blogroll/edit.php:163
+#: plugins/blogroll/edit.php:167
 msgid "_xfn_Friendship"
 msgstr ""
 
-#: plugins/blogroll/edit.php:166
+#: plugins/blogroll/edit.php:170
 msgid "_xfn_Contact"
 msgstr ""
 
-#: plugins/blogroll/edit.php:168
+#: plugins/blogroll/edit.php:172
 msgid "_xfn_Acquaintance"
 msgstr ""
 
-#: plugins/blogroll/edit.php:170
+#: plugins/blogroll/edit.php:174
 msgid "_xfn_Friend"
 msgstr ""
 
-#: plugins/blogroll/edit.php:176
+#: plugins/blogroll/edit.php:180
 msgid "_xfn_Physical"
 msgstr ""
 
-#: plugins/blogroll/edit.php:179
+#: plugins/blogroll/edit.php:183
 msgid "_xfn_Met"
 msgstr ""
 
-#: plugins/blogroll/edit.php:184
+#: plugins/blogroll/edit.php:188
 msgid "_xfn_Professional"
 msgstr ""
 
-#: plugins/blogroll/edit.php:187
+#: plugins/blogroll/edit.php:191
 msgid "_xfn_Co-worker"
 msgstr ""
 
-#: plugins/blogroll/edit.php:189
+#: plugins/blogroll/edit.php:193
 msgid "_xfn_Colleague"
 msgstr ""
 
-#: plugins/blogroll/edit.php:194
+#: plugins/blogroll/edit.php:198
 msgid "_xfn_Geographical"
 msgstr ""
 
-#: plugins/blogroll/edit.php:197
+#: plugins/blogroll/edit.php:201
 msgid "_xfn_Co-resident"
 msgstr ""
 
-#: plugins/blogroll/edit.php:199
+#: plugins/blogroll/edit.php:203
 msgid "_xfn_Neighbor"
 msgstr ""
 
-#: plugins/blogroll/edit.php:205
+#: plugins/blogroll/edit.php:209
 msgid "_xfn_Family"
 msgstr ""
 
-#: plugins/blogroll/edit.php:208
+#: plugins/blogroll/edit.php:212
 msgid "_xfn_Child"
 msgstr ""
 
-#: plugins/blogroll/edit.php:210
+#: plugins/blogroll/edit.php:214
 msgid "_xfn_Parent"
 msgstr ""
 
-#: plugins/blogroll/edit.php:212
+#: plugins/blogroll/edit.php:216
 msgid "_xfn_Sibling"
 msgstr ""
 
-#: plugins/blogroll/edit.php:214
+#: plugins/blogroll/edit.php:218
 msgid "_xfn_Spouse"
 msgstr ""
 
-#: plugins/blogroll/edit.php:216
+#: plugins/blogroll/edit.php:220
 msgid "_xfn_Kin"
 msgstr ""
 
-#: plugins/blogroll/edit.php:222
+#: plugins/blogroll/edit.php:226
 msgid "_xfn_Romantic"
 msgstr ""
 
-#: plugins/blogroll/edit.php:225
+#: plugins/blogroll/edit.php:229
 msgid "_xfn_Muse"
 msgstr ""
 
-#: plugins/blogroll/edit.php:227
+#: plugins/blogroll/edit.php:231
 msgid "_xfn_Crush"
 msgstr ""
 
-#: plugins/blogroll/edit.php:229
+#: plugins/blogroll/edit.php:233
 msgid "_xfn_Date"
 msgstr ""
 
-#: plugins/blogroll/edit.php:231
+#: plugins/blogroll/edit.php:235
 msgid "_xfn_Sweetheart"
 msgstr ""
 
-#: plugins/blogroll/index.php:50 plugins/blogroll/index.php:324
+#: plugins/blogroll/index.php:50 plugins/blogroll/index.php:338
 msgid "Nothing to import"
 msgstr ""
 
-#: plugins/blogroll/index.php:72
+#: plugins/blogroll/index.php:75
+msgid "Import operation cancelled."
+msgstr ""
+
+#: plugins/blogroll/index.php:189
+msgid "Items order has been successfully updated"
+msgstr ""
+
+#: plugins/blogroll/index.php:193
+msgid "Items have been successfully removed."
+msgstr ""
+
+#: plugins/blogroll/index.php:197
+msgid "Link has been successfully created."
+msgstr ""
+
+#: plugins/blogroll/index.php:201
+msgid "category has been successfully created."
+msgstr ""
+
+#: plugins/blogroll/index.php:205
 msgid "links have been successfully imported."
 msgstr ""
 
-#: plugins/blogroll/index.php:77
-msgid "Import operation cancelled."
-msgstr ""
-
-#: plugins/blogroll/index.php:92
-msgid "Link has been successfully created."
-msgstr ""
-
-#: plugins/blogroll/index.php:107
-msgid "category has been successfully created."
-msgstr ""
-
-#: plugins/blogroll/index.php:128
-msgid "Items have been successfully removed."
-msgstr ""
-
-#: plugins/blogroll/index.php:156
-msgid "Items order has been successfully updated"
-msgstr ""
-
-#: plugins/blogroll/index.php:206 plugins/simpleMenu/index.php:489
+#: plugins/blogroll/index.php:220 plugins/simpleMenu/index.php:475
 msgid "URL"
 msgstr ""
 
-#: plugins/blogroll/index.php:207
+#: plugins/blogroll/index.php:221
 msgid "Lang"
 msgstr ""
 
-#: plugins/blogroll/index.php:219
+#: plugins/blogroll/index.php:233
 msgid "select this link"
 msgstr ""
 
-#: plugins/blogroll/index.php:254
+#: plugins/blogroll/index.php:268
 msgid "Delete selected links"
 msgstr ""
 
-#: plugins/blogroll/index.php:256
+#: plugins/blogroll/index.php:270
 msgid "Are you sure you want to delete selected links?"
 msgstr ""
 
-#: plugins/blogroll/index.php:262
+#: plugins/blogroll/index.php:276
 msgid "The link list is empty."
 msgstr ""
 
-#: plugins/blogroll/index.php:272
+#: plugins/blogroll/index.php:286
 msgid "Add a new link"
 msgstr ""
 
-#: plugins/blogroll/index.php:295
+#: plugins/blogroll/index.php:309
 msgid "Add a category"
 msgstr ""
 
-#: plugins/blogroll/index.php:307 plugins/blogroll/index.php:311
-#: plugins/blogroll/index.php:322
+#: plugins/blogroll/index.php:321 plugins/blogroll/index.php:325
+#: plugins/blogroll/index.php:336
 msgid "Import links"
 msgstr ""
 
-#: plugins/blogroll/index.php:312
+#: plugins/blogroll/index.php:326
 msgid "OPML or XBEL File:"
 msgstr ""
 
-#: plugins/blogroll/index.php:316 plugins/blogroll/index.php:359
+#: plugins/blogroll/index.php:330 plugins/blogroll/index.php:373
 #: plugins/importExport/inc/class.dc.import.feed.php:92
 #: plugins/importExport/inc/class.dc.import.flat.php:203
 #: plugins/importExport/inc/class.dc.import.flat.php:234
-#: plugins/importExport/index.php:99
+#: plugins/importExport/index.php:97
 msgid "Import"
 msgstr ""
@@ -869,274 +733,274 @@
 msgstr ""
 
-#: plugins/blowupConfig/index.php:202
+#: plugins/blowupConfig/index.php:212 plugins/blowupConfig/index.php:233
+msgid "Blowup configuration"
+msgstr ""
+
+#: plugins/blowupConfig/index.php:219
+msgid "Predefined styles"
+msgstr ""
+
+#: plugins/blowupConfig/index.php:220
+msgid "Apply code"
+msgstr ""
+
+#: plugins/blowupConfig/index.php:221
+msgid "Choose a predefined style"
+msgstr ""
+
+#: plugins/blowupConfig/index.php:241
+msgid "For the following reasons, images cannot be created. You won't be able to change some background properties."
+msgstr ""
+
+#: plugins/blowupConfig/index.php:246
 msgid "Theme configuration has been successfully updated."
 msgstr ""
 
-#: plugins/blowupConfig/index.php:213 plugins/blowupConfig/index.php:234
-msgid "Blowup configuration"
-msgstr ""
-
-#: plugins/blowupConfig/index.php:220
-msgid "Predefined styles"
-msgstr ""
-
-#: plugins/blowupConfig/index.php:221
-msgid "Apply code"
-msgstr ""
-
-#: plugins/blowupConfig/index.php:222
-msgid "Choose a predefined style"
-msgstr ""
-
-#: plugins/blowupConfig/index.php:242
-msgid "For the following reasons, images cannot be created. You won't be able to change some background properties."
-msgstr ""
-
-#: plugins/blowupConfig/index.php:248
+#: plugins/blowupConfig/index.php:251
 msgid "Customization"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:249
+#: plugins/blowupConfig/index.php:252
 msgid "General"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:253
+#: plugins/blowupConfig/index.php:256
 msgid "Background color:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:256
+#: plugins/blowupConfig/index.php:259
 msgid "Background color fill:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:261
+#: plugins/blowupConfig/index.php:264
 msgid "Main text font:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:264
+#: plugins/blowupConfig/index.php:267
 msgid "Main text font size:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:267
+#: plugins/blowupConfig/index.php:270
 msgid "Main text color:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:270
+#: plugins/blowupConfig/index.php:273
 msgid "Text line height:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:274
+#: plugins/blowupConfig/index.php:277
 msgid "Links color:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:277
+#: plugins/blowupConfig/index.php:280
 msgid "Visited links color:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:280
+#: plugins/blowupConfig/index.php:283
 msgid "Focus links color:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:283
+#: plugins/blowupConfig/index.php:286
 msgid "Page top"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:287
+#: plugins/blowupConfig/index.php:290
 msgid "Prelude color:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:292
+#: plugins/blowupConfig/index.php:295
 msgid "Hide main title"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:295
+#: plugins/blowupConfig/index.php:298
 msgid "Main title font:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:298
+#: plugins/blowupConfig/index.php:301
 msgid "Main title font size:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:301
+#: plugins/blowupConfig/index.php:304
 msgid "Main title color:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:304
+#: plugins/blowupConfig/index.php:307
 msgid "Main title alignment:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:305
+#: plugins/blowupConfig/index.php:308
 msgid "center"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:305 plugins/blowupConfig/index.php:337
+#: plugins/blowupConfig/index.php:308 plugins/blowupConfig/index.php:340
 msgid "left"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:305 plugins/blowupConfig/index.php:337
+#: plugins/blowupConfig/index.php:308 plugins/blowupConfig/index.php:340
 msgid "right"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:307
+#: plugins/blowupConfig/index.php:310
 msgid "Main title position (x:y)"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:318 plugins/blowupConfig/index.php:319
+#: plugins/blowupConfig/index.php:321 plugins/blowupConfig/index.php:322
 msgid "Top image"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:321
+#: plugins/blowupConfig/index.php:324
 msgid "Choose \"Custom...\" to upload your own image."
 msgstr ""
 
-#: plugins/blowupConfig/index.php:323
+#: plugins/blowupConfig/index.php:326
 msgid "Add your image:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:324
+#: plugins/blowupConfig/index.php:327
 #, php-format
 msgid "JPEG or PNG file, 800 pixels wide, maximum size %s"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:335
+#: plugins/blowupConfig/index.php:338
 msgid "Sidebar"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:336
+#: plugins/blowupConfig/index.php:339
 msgid "Sidebar position:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:339
+#: plugins/blowupConfig/index.php:342
 msgid "Sidebar text font:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:342
+#: plugins/blowupConfig/index.php:345
 msgid "Sidebar text font size:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:345
+#: plugins/blowupConfig/index.php:348
 msgid "Sidebar text color:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:348
+#: plugins/blowupConfig/index.php:351
 msgid "Sidebar titles font:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:351
+#: plugins/blowupConfig/index.php:354
 msgid "Sidebar titles font size:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:354
+#: plugins/blowupConfig/index.php:357
 msgid "Sidebar titles color:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:357
+#: plugins/blowupConfig/index.php:360
 msgid "Sidebar 2nd level titles font:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:360
+#: plugins/blowupConfig/index.php:363
 msgid "Sidebar 2nd level titles font size:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:363
+#: plugins/blowupConfig/index.php:366
 msgid "Sidebar 2nd level titles color:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:366
+#: plugins/blowupConfig/index.php:369
 msgid "Sidebar lines color:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:369
+#: plugins/blowupConfig/index.php:372
 msgid "Sidebar links color:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:372
+#: plugins/blowupConfig/index.php:375
 msgid "Sidebar visited links color:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:375
+#: plugins/blowupConfig/index.php:378
 msgid "Sidebar focus links color:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:379
+#: plugins/blowupConfig/index.php:382
 msgid "Date title font:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:382
+#: plugins/blowupConfig/index.php:385
 msgid "Date title font size:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:385
+#: plugins/blowupConfig/index.php:388
 msgid "Date title color:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:388
+#: plugins/blowupConfig/index.php:391
 msgid "Entry title font:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:391
+#: plugins/blowupConfig/index.php:394
 msgid "Entry title font size:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:394
+#: plugins/blowupConfig/index.php:397
 msgid "Entry title color:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:399
+#: plugins/blowupConfig/index.php:402
 msgid "Comment background color:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:404
+#: plugins/blowupConfig/index.php:407
 msgid "Comment text color:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:409
+#: plugins/blowupConfig/index.php:412
 msgid "My comment background color:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:414
+#: plugins/blowupConfig/index.php:417
 msgid "My comment text color:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:417
+#: plugins/blowupConfig/index.php:420
 msgid "Footer"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:418
+#: plugins/blowupConfig/index.php:421
 msgid "Footer font:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:421
+#: plugins/blowupConfig/index.php:424
 msgid "Footer font size:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:424
+#: plugins/blowupConfig/index.php:427
 msgid "Footer color:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:427
+#: plugins/blowupConfig/index.php:430
 msgid "Footer links color:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:430
+#: plugins/blowupConfig/index.php:433
 msgid "Footer background color:"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:434 plugins/blowupConfig/index.php:436
+#: plugins/blowupConfig/index.php:437 plugins/blowupConfig/index.php:439
 msgid "Additional CSS"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:435
+#: plugins/blowupConfig/index.php:438
 msgid "Any additional CSS styles (must be written using the CSS syntax):"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:455
+#: plugins/blowupConfig/index.php:458
 msgid "Configuration import / export"
 msgstr ""
 
-#: plugins/blowupConfig/index.php:457
+#: plugins/blowupConfig/index.php:460
 msgid "You can share your configuration using the following code. To apply a configuration, paste the code, click on \"Apply code\" and save."
 msgstr ""
 
-#: plugins/blowupConfig/index.php:458
+#: plugins/blowupConfig/index.php:461
 msgid "Copy this code:"
 msgstr ""
@@ -1336,5 +1200,5 @@
 msgstr ""
 
-#: plugins/importExport/_admin.php:15 plugins/importExport/_admin.php:27
+#: plugins/importExport/_admin.php:15 plugins/importExport/_admin.php:28
 #: plugins/importExport/index.php:59
 msgid "Import/Export"
@@ -1405,5 +1269,5 @@
 
 #: plugins/importExport/inc/class.dc.ieModule.php:77
-#: plugins/widgets/index.php:289
+#: plugins/widgets/index.php:288
 msgid "or"
 msgstr ""
@@ -1531,5 +1395,5 @@
 
 #: plugins/importExport/inc/class.dc.import.feed.php:86
-#: plugins/widgets/_default_widgets.php:69
+#: plugins/widgets/_default_widgets.php:68
 msgid "Feed URL:"
 msgstr ""
@@ -1687,11 +1551,11 @@
 msgstr ""
 
-#: plugins/importExport/index.php:105
+#: plugins/importExport/index.php:103
 #, php-format
 msgid "Export functions are in the page %s."
 msgstr ""
 
-#: plugins/importExport/index.php:106 plugins/maintenance/_admin.php:16
-#: plugins/maintenance/_admin.php:173 plugins/maintenance/_admin.php:195
+#: plugins/importExport/index.php:104 plugins/maintenance/_admin.php:16
+#: plugins/maintenance/_admin.php:172 plugins/maintenance/_admin.php:194
 #: plugins/maintenance/index.php:111 plugins/maintenance/index.php:135
 #: plugins/maintenance/index.php:160 plugins/maintenance/index.php:195
@@ -1762,14 +1626,14 @@
 msgstr[1] ""
 
-#: plugins/maintenance/_admin.php:158 plugins/maintenance/index.php:227
+#: plugins/maintenance/_admin.php:157 plugins/maintenance/index.php:227
 msgid "This task has never been executed."
 msgstr ""
 
-#: plugins/maintenance/_admin.php:160 plugins/maintenance/index.php:233
+#: plugins/maintenance/_admin.php:159 plugins/maintenance/index.php:233
 #, php-format
 msgid "Last execution of this task was on %s."
 msgstr ""
 
-#: plugins/maintenance/_admin.php:174
+#: plugins/maintenance/_admin.php:173
 #, php-format
 msgid "There is a task to execute."
@@ -1778,13 +1642,13 @@
 msgstr[1] ""
 
-#: plugins/maintenance/_admin.php:176
+#: plugins/maintenance/_admin.php:175
 msgid "Manage tasks"
 msgstr ""
 
-#: plugins/maintenance/_admin.php:199
+#: plugins/maintenance/_admin.php:198
 msgid "Display count of late tasks on maintenance dashboard icon"
 msgstr ""
 
-#: plugins/maintenance/_admin.php:203
+#: plugins/maintenance/_admin.php:202
 msgid "Display list of late tasks on dashboard items"
 msgstr ""
@@ -2041,20 +1905,15 @@
 msgstr ""
 
-#: plugins/pages/_admin.php:31 plugins/pages/list.php:84
-#: plugins/pages/page.php:37 plugins/pages/page.php:491
-msgid "New page"
-msgstr ""
-
-#: plugins/pages/_admin.php:46
+#: plugins/pages/_admin.php:40
 #, php-format
 msgid "%d page"
 msgstr ""
 
-#: plugins/pages/_admin.php:46
+#: plugins/pages/_admin.php:40
 #, php-format
 msgid "%d pages"
 msgstr ""
 
-#: plugins/pages/_admin.php:76
+#: plugins/pages/_admin.php:54
 msgid "manage pages"
 msgstr ""
@@ -2104,8 +1963,4 @@
 msgstr ""
 
-#: plugins/pages/class.actionpage.php:83 plugins/pages/list.php:81
-msgid "Selected pages have been successfully reordered."
-msgstr ""
-
 #: plugins/pages/class.listpage.php:21
 msgid "No page"
@@ -2120,29 +1975,38 @@
 msgstr ""
 
-#: plugins/pages/list.php:61
+#: plugins/pages/list.php:61 plugins/pages/list.php:67
 msgid "Are you sure you want to delete selected pages?"
 msgstr ""
 
-#: plugins/pages/list.php:77
+#: plugins/pages/list.php:81
 msgid "Selected pages have been successfully updated."
 msgstr ""
 
-#: plugins/pages/list.php:79
+#: plugins/pages/list.php:83
 msgid "Selected pages have been successfully deleted."
 msgstr ""
 
-#: plugins/pages/list.php:97
+#: plugins/pages/list.php:85
+msgid "Selected pages have been successfully reordered."
+msgstr ""
+
+#: plugins/pages/list.php:88 plugins/pages/page.php:37
+#: plugins/pages/page.php:491
+msgid "New page"
+msgstr ""
+
+#: plugins/pages/list.php:101
 msgid "Selected pages action:"
 msgstr ""
 
-#: plugins/pages/list.php:106
+#: plugins/pages/list.php:110
 msgid "To rearrange pages order, change number at the begining of the line, then click on “Save pages order” button."
 msgstr ""
 
-#: plugins/pages/list.php:108
+#: plugins/pages/list.php:112
 msgid "To rearrange pages order, move items by drag and drop, then click on “Save pages order” button."
 msgstr ""
 
-#: plugins/pages/list.php:109
+#: plugins/pages/list.php:113
 msgid "Save pages order"
 msgstr ""
@@ -2197,34 +2061,34 @@
 msgstr ""
 
-#: plugins/pings/_admin.php:14 plugins/pings/_admin.php:44
-#: plugins/pings/index.php:49 plugins/pings/lib.pings.php:61
+#: plugins/pings/_admin.php:14 plugins/pings/index.php:48
+#: plugins/pings/lib.pings.php:61
 msgid "Pings"
 msgstr ""
 
-#: plugins/pings/index.php:38
+#: plugins/pings/index.php:57
+msgid "Pings configuration"
+msgstr ""
+
+#: plugins/pings/index.php:61
 msgid "Settings have been successfully updated."
 msgstr ""
 
-#: plugins/pings/index.php:58
-msgid "Pings configuration"
-msgstr ""
-
-#: plugins/pings/index.php:64
+#: plugins/pings/index.php:67
 msgid "Activate pings extension"
 msgstr ""
 
-#: plugins/pings/index.php:70 plugins/pings/index.php:90
+#: plugins/pings/index.php:73 plugins/pings/index.php:93
 msgid "Service name:"
 msgstr ""
 
-#: plugins/pings/index.php:72 plugins/pings/index.php:92
+#: plugins/pings/index.php:75 plugins/pings/index.php:95
 msgid "Service URI:"
 msgstr ""
 
-#: plugins/pings/index.php:81
+#: plugins/pings/index.php:84
 msgid "Error"
 msgstr ""
 
-#: plugins/pings/index.php:100
+#: plugins/pings/index.php:103
 msgid "Test ping services"
 msgstr ""
@@ -2262,9 +2126,9 @@
 
 #: plugins/simpleMenu/index.php:92 plugins/tags/_admin.php:14
-#: plugins/tags/_admin.php:46 plugins/tags/_admin.php:84
-#: plugins/tags/_admin.php:107 plugins/tags/_admin.php:113
-#: plugins/tags/_widgets.php:21 plugins/tags/_widgets.php:22
-#: plugins/tags/tag_posts.php:74 plugins/tags/tag_posts.php:94
-#: plugins/tags/tags.php:17 plugins/tags/tags.php:26
+#: plugins/tags/_admin.php:80 plugins/tags/_admin.php:103
+#: plugins/tags/_admin.php:109 plugins/tags/_widgets.php:21
+#: plugins/tags/_widgets.php:22 plugins/tags/tag_posts.php:95
+#: plugins/tags/tag_posts.php:115 plugins/tags/tags.php:17
+#: plugins/tags/tags.php:26
 msgid "Tags"
 msgstr ""
@@ -2274,5 +2138,5 @@
 msgstr ""
 
-#: plugins/simpleMenu/index.php:142 plugins/simpleMenu/index.php:487
+#: plugins/simpleMenu/index.php:142 plugins/simpleMenu/index.php:473
 msgid "Label"
 msgstr ""
@@ -2305,210 +2169,186 @@
 msgstr ""
 
-#: plugins/simpleMenu/index.php:219
+#: plugins/simpleMenu/index.php:221
+msgid "Label and URL of menu item are mandatory."
+msgstr ""
+
+#: plugins/simpleMenu/index.php:256
+msgid "No menu items selected."
+msgstr ""
+
+#: plugins/simpleMenu/index.php:269
+msgid "Label is mandatory."
+msgstr ""
+
+#: plugins/simpleMenu/index.php:272
+msgid "URL is mandatory."
+msgstr ""
+
+#: plugins/simpleMenu/index.php:359
+msgid "Add item"
+msgstr ""
+
+#: plugins/simpleMenu/index.php:370
 msgid "Menu item has been successfully added."
 msgstr ""
 
-#: plugins/simpleMenu/index.php:222
-msgid "Label and URL of menu item are mandatory."
-msgstr ""
-
-#: plugins/simpleMenu/index.php:255
+#: plugins/simpleMenu/index.php:373
 msgid "Menu items have been successfully removed."
 msgstr ""
 
-#: plugins/simpleMenu/index.php:258
-msgid "No menu items selected."
-msgstr ""
-
-#: plugins/simpleMenu/index.php:271
-msgid "Label is mandatory."
-msgstr ""
-
-#: plugins/simpleMenu/index.php:274
-msgid "URL is mandatory."
-msgstr ""
-
-#: plugins/simpleMenu/index.php:290 plugins/simpleMenu/index.php:328
+#: plugins/simpleMenu/index.php:376 plugins/simpleMenu/index.php:379
 msgid "Menu items have been successfully updated."
 msgstr ""
 
-#: plugins/simpleMenu/index.php:361
-msgid "Step #1"
-msgstr ""
-
-#: plugins/simpleMenu/index.php:365 plugins/simpleMenu/index.php:372
-msgid "Step #2"
-msgstr ""
-
-#: plugins/simpleMenu/index.php:370
-msgid "Step #3"
-msgstr ""
-
-#: plugins/simpleMenu/index.php:380
-msgid "Add item"
-msgstr ""
-
-#: plugins/simpleMenu/index.php:402
+#: plugins/simpleMenu/index.php:388
 msgid "Select type"
 msgstr ""
 
-#: plugins/simpleMenu/index.php:403
+#: plugins/simpleMenu/index.php:389
 msgid "Type of item menu:"
 msgstr ""
 
-#: plugins/simpleMenu/index.php:404 plugins/simpleMenu/index.php:441
+#: plugins/simpleMenu/index.php:390 plugins/simpleMenu/index.php:427
 msgid "Continue..."
 msgstr ""
 
-#: plugins/simpleMenu/index.php:415
+#: plugins/simpleMenu/index.php:401
 msgid "Select language:"
 msgstr ""
 
-#: plugins/simpleMenu/index.php:419
+#: plugins/simpleMenu/index.php:405
 msgid "Select category:"
 msgstr ""
 
-#: plugins/simpleMenu/index.php:423
+#: plugins/simpleMenu/index.php:409
 msgid "Select month (if necessary):"
 msgstr ""
 
-#: plugins/simpleMenu/index.php:427
+#: plugins/simpleMenu/index.php:413
 msgid "Select page:"
 msgstr ""
 
-#: plugins/simpleMenu/index.php:431
+#: plugins/simpleMenu/index.php:417
 msgid "Select tag (if necessary):"
 msgstr ""
 
-#: plugins/simpleMenu/index.php:451
+#: plugins/simpleMenu/index.php:437
 msgid "Label of item menu:"
 msgstr ""
 
+#: plugins/simpleMenu/index.php:439
+msgid "Description of item menu:"
+msgstr ""
+
+#: plugins/simpleMenu/index.php:441
+msgid "URL of item menu:"
+msgstr ""
+
+#: plugins/simpleMenu/index.php:443
+msgid "Add this item"
+msgstr ""
+
 #: plugins/simpleMenu/index.php:453
-msgid "Description of item menu:"
-msgstr ""
-
-#: plugins/simpleMenu/index.php:455
-msgid "URL of item menu:"
-msgstr ""
-
-#: plugins/simpleMenu/index.php:457
-msgid "Add this item"
-msgstr ""
-
-#: plugins/simpleMenu/index.php:467
 msgid "Add an item"
 msgstr ""
 
-#: plugins/simpleMenu/index.php:479
+#: plugins/simpleMenu/index.php:465
 msgid "Menu items list"
 msgstr ""
 
-#: plugins/simpleMenu/index.php:516
+#: plugins/simpleMenu/index.php:502
 msgid "Update menu"
 msgstr ""
 
-#: plugins/simpleMenu/index.php:518
+#: plugins/simpleMenu/index.php:504
 msgid "Delete selected menu items"
 msgstr ""
 
-#: plugins/simpleMenu/index.php:519
+#: plugins/simpleMenu/index.php:505
 msgid "Are you sure you want to remove selected menu items?"
 msgstr ""
 
-#: plugins/simpleMenu/index.php:526
+#: plugins/simpleMenu/index.php:512
 msgid "No menu items so far."
 msgstr ""
 
-#: plugins/tags/_admin.php:107
+#: plugins/tags/_admin.php:103
 msgid "Add tags"
 msgstr ""
 
-#: plugins/tags/_admin.php:113
+#: plugins/tags/_admin.php:109
 msgid "Remove tags"
 msgstr ""
 
-#: plugins/tags/_admin.php:144
-msgid "Tag has been successfully added to selected entries"
-msgid_plural "Tags have been successfully added to selected entries"
-msgstr[0] ""
-msgstr[1] ""
-
-#: plugins/tags/_admin.php:164
+#: plugins/tags/_admin.php:154
 msgid "Add tags to this selection"
 msgstr ""
 
-#: plugins/tags/_admin.php:174 plugins/tags/_admin.php:293
+#: plugins/tags/_admin.php:164 plugins/tags/_admin.php:276
 #, php-format
 msgid "Are you sure you want to remove this %s?"
 msgstr ""
 
-#: plugins/tags/_admin.php:175 plugins/tags/_admin.php:294
+#: plugins/tags/_admin.php:165 plugins/tags/_admin.php:277
 #, php-format
 msgid "Add a %s to this entry"
 msgstr ""
 
-#: plugins/tags/_admin.php:176 plugins/tags/_admin.php:295
+#: plugins/tags/_admin.php:166 plugins/tags/_admin.php:278
 msgid "Choose from list"
 msgstr ""
 
-#: plugins/tags/_admin.php:177 plugins/tags/_admin.php:296
+#: plugins/tags/_admin.php:167 plugins/tags/_admin.php:279
 msgid "all"
 msgstr ""
 
-#: plugins/tags/_admin.php:178
+#: plugins/tags/_admin.php:168
 msgid "Enter tags separated by coma"
 msgstr ""
 
-#: plugins/tags/_admin.php:179 plugins/tags/_admin.php:300
+#: plugins/tags/_admin.php:169 plugins/tags/_admin.php:283
 msgid "used in %e - frequency %p%"
 msgstr ""
 
-#: plugins/tags/_admin.php:180 plugins/tags/_admin.php:301
-#: plugins/tags/tags.php:56
+#: plugins/tags/_admin.php:170 plugins/tags/_admin.php:284
+#: plugins/tags/tags.php:58
 msgid "entry"
 msgstr ""
 
-#: plugins/tags/_admin.php:181 plugins/tags/_admin.php:302
-#: plugins/tags/tags.php:56
+#: plugins/tags/_admin.php:171 plugins/tags/_admin.php:285
+#: plugins/tags/tags.php:58
 msgid "entries"
 msgstr ""
 
-#: plugins/tags/_admin.php:189
+#: plugins/tags/_admin.php:179
 msgid "Tags to add:"
 msgstr ""
 
-#: plugins/tags/_admin.php:216
-msgid "Tag has been successfully removed from selected entries"
-msgid_plural "Tags have been successfully removed from selected entries"
-msgstr[0] ""
-msgstr[1] ""
-
-#: plugins/tags/_admin.php:241
+#: plugins/tags/_admin.php:224
 msgid "No tags for selected entries"
 msgstr ""
 
-#: plugins/tags/_admin.php:248
+#: plugins/tags/_admin.php:231
 msgid "Remove selected tags from this selection"
 msgstr ""
 
-#: plugins/tags/_admin.php:255
+#: plugins/tags/_admin.php:238
 msgid "Following tags have been found in selected entries:"
 msgstr ""
 
-#: plugins/tags/_admin.php:298 plugins/tags/_public.php:373
-#: plugins/tags/tag_posts.php:95
+#: plugins/tags/_admin.php:281 plugins/tags/_public.php:373
+#: plugins/tags/tag_posts.php:116
 msgid "Tag"
 msgstr ""
 
-#: plugins/tags/_admin.php:321
+#: plugins/tags/_admin.php:304
 msgid "Short"
 msgstr ""
 
-#: plugins/tags/_admin.php:322
+#: plugins/tags/_admin.php:305
 msgid "Extended"
 msgstr ""
 
-#: plugins/tags/_admin.php:327
+#: plugins/tags/_admin.php:310
 msgid "Tags list format:"
 msgstr ""
@@ -2538,35 +2378,39 @@
 msgstr ""
 
-#: plugins/tags/tag_posts.php:28
+#: plugins/tags/tag_posts.php:100
+#, php-format
+msgid "Are you sure you want to remove tag: “%s”?"
+msgstr ""
+
+#: plugins/tags/tag_posts.php:122
 msgid "Tag has been successfully renamed"
 msgstr ""
 
-#: plugins/tags/tag_posts.php:41
+#: plugins/tags/tag_posts.php:125
+msgid "Back to tags list"
+msgstr ""
+
+#: plugins/tags/tag_posts.php:135
+msgid "Edit tag name:"
+msgstr ""
+
+#: plugins/tags/tag_posts.php:137
+msgid "Rename"
+msgstr ""
+
+#: plugins/tags/tag_posts.php:144
+msgid "Delete this tag:"
+msgstr ""
+
+#: plugins/tags/tag_posts.php:153
+#, php-format
+msgid "List of entries with the tag “%s”"
+msgstr ""
+
+#: plugins/tags/tags.php:32
 msgid "Tag has been successfully removed"
 msgstr ""
 
-#: plugins/tags/tag_posts.php:79
-#, php-format
-msgid "Are you sure you want to remove tag: “%s”?"
-msgstr ""
-
-#: plugins/tags/tag_posts.php:101
-msgid "Back to tags list"
-msgstr ""
-
-#: plugins/tags/tag_posts.php:111
-msgid "Rename"
-msgstr ""
-
-#: plugins/tags/tag_posts.php:120
-msgid "Delete this tag"
-msgstr ""
-
-#: plugins/tags/tag_posts.php:128
-#, php-format
-msgid "List of entries with the tag “%s”"
-msgstr ""
-
-#: plugins/tags/tags.php:75
+#: plugins/tags/tags.php:77
 msgid "No tags on this blog."
 msgstr ""
@@ -2612,63 +2456,67 @@
 msgstr ""
 
-#: plugins/themeEditor/index.php:98
+#: plugins/themeEditor/index.php:97
 #, php-format
 msgid "Your current theme on this blog is \"%s\"."
 msgstr ""
 
-#: plugins/themeEditor/index.php:101
+#: plugins/themeEditor/index.php:100
 msgid "You can't edit default theme."
 msgstr ""
 
-#: plugins/themeEditor/index.php:110
+#: plugins/themeEditor/index.php:109
 msgid "Please select a file to edit."
 msgstr ""
 
+#: plugins/themeEditor/index.php:115
+msgid "File editor"
+msgstr ""
+
 #: plugins/themeEditor/index.php:116
-msgid "File editor"
-msgstr ""
-
-#: plugins/themeEditor/index.php:117
 #, php-format
 msgid "Editing file %s"
 msgstr ""
 
-#: plugins/themeEditor/index.php:130
+#: plugins/themeEditor/index.php:129
 msgid "This file is not writable. Please check your theme files permissions."
 msgstr ""
 
-#: plugins/themeEditor/index.php:172
+#: plugins/themeEditor/index.php:171
 msgid "Templates files"
 msgstr ""
 
-#: plugins/themeEditor/index.php:175
+#: plugins/themeEditor/index.php:174
 msgid "CSS files"
 msgstr ""
 
-#: plugins/themeEditor/index.php:178
+#: plugins/themeEditor/index.php:177
 msgid "JavaScript files"
 msgstr ""
 
-#: plugins/themeEditor/index.php:181
+#: plugins/themeEditor/index.php:180
 msgid "Locales files"
 msgstr ""
 
-#: plugins/userPref/index.php:38 plugins/userPref/index.php:61
+#: plugins/userPref/index.php:117
+msgid "user:preferences"
+msgstr ""
+
+#: plugins/userPref/index.php:121
 msgid "Preferences successfully updated"
 msgstr ""
 
-#: plugins/userPref/index.php:119
-msgid "user:preferences"
-msgstr ""
-
-#: plugins/userPref/index.php:125 plugins/userPref/index.php:126
+#: plugins/userPref/index.php:125
+msgid "Preferences definition successfully updated"
+msgstr ""
+
+#: plugins/userPref/index.php:129 plugins/userPref/index.php:130
 msgid "User preferences"
 msgstr ""
 
-#: plugins/userPref/index.php:184 plugins/userPref/index.php:185
+#: plugins/userPref/index.php:188 plugins/userPref/index.php:189
 msgid "Global preferences"
 msgstr ""
 
-#: plugins/widgets/_admin.php:19 plugins/widgets/_admin.php:26
+#: plugins/widgets/_admin.php:23
 msgid "Presentation widgets"
 msgstr ""
@@ -2699,63 +2547,59 @@
 
 #: plugins/widgets/_default_widgets.php:52
-msgid "Include sub cats in count"
-msgstr ""
-
-#: plugins/widgets/_default_widgets.php:53
 msgid "Include empty categories"
 msgstr ""
 
+#: plugins/widgets/_default_widgets.php:58
+msgid "Subscribe links"
+msgstr ""
+
 #: plugins/widgets/_default_widgets.php:59
-msgid "Subscribe links"
+msgid "Subscribe"
 msgstr ""
 
 #: plugins/widgets/_default_widgets.php:60
-msgid "Subscribe"
-msgstr ""
-
-#: plugins/widgets/_default_widgets.php:61
 msgid "Feeds type:"
 msgstr ""
 
+#: plugins/widgets/_default_widgets.php:66
+msgid "Feed reader"
+msgstr ""
+
 #: plugins/widgets/_default_widgets.php:67
-msgid "Feed reader"
-msgstr ""
-
-#: plugins/widgets/_default_widgets.php:68
 msgid "Somewhere else"
 msgstr ""
 
-#: plugins/widgets/_default_widgets.php:70
-#: plugins/widgets/_default_widgets.php:96
+#: plugins/widgets/_default_widgets.php:69
+#: plugins/widgets/_default_widgets.php:95
 msgid "Entries limit:"
 msgstr ""
 
-#: plugins/widgets/_default_widgets.php:76
+#: plugins/widgets/_default_widgets.php:75
 msgid "Text"
 msgstr ""
 
-#: plugins/widgets/_default_widgets.php:78
+#: plugins/widgets/_default_widgets.php:77
 msgid "Text:"
 msgstr ""
 
+#: plugins/widgets/_default_widgets.php:83
 #: plugins/widgets/_default_widgets.php:84
-#: plugins/widgets/_default_widgets.php:85
 msgid "Last entries"
 msgstr ""
 
-#: plugins/widgets/_default_widgets.php:87
+#: plugins/widgets/_default_widgets.php:86
 msgid "Uncategorized"
 msgstr ""
 
-#: plugins/widgets/_default_widgets.php:94
+#: plugins/widgets/_default_widgets.php:93
 msgid "Tag:"
 msgstr ""
 
+#: plugins/widgets/_default_widgets.php:101
 #: plugins/widgets/_default_widgets.php:102
+msgid "Last comments"
+msgstr ""
+
 #: plugins/widgets/_default_widgets.php:103
-msgid "Last comments"
-msgstr ""
-
-#: plugins/widgets/_default_widgets.php:104
 msgid "Comments limit:"
 msgstr ""
@@ -2803,125 +2647,125 @@
 msgstr ""
 
+#: plugins/widgets/index.php:198
+msgid "Available widgets"
+msgstr ""
+
 #: plugins/widgets/index.php:199
-msgid "Available widgets"
-msgstr ""
-
-#: plugins/widgets/index.php:200
 msgid "Move widgets from this list to one of the sidebars."
 msgstr ""
 
-#: plugins/widgets/index.php:207 plugins/widgets/index.php:336
+#: plugins/widgets/index.php:206 plugins/widgets/index.php:335
 msgid "order"
 msgstr ""
 
-#: plugins/widgets/index.php:209
+#: plugins/widgets/index.php:208
 msgid "Append to:"
 msgstr ""
 
-#: plugins/widgets/index.php:219
+#: plugins/widgets/index.php:218
 msgid "Add widgets to sidebars"
 msgstr ""
 
-#: plugins/widgets/index.php:226
+#: plugins/widgets/index.php:225
 msgid "Navigation sidebar"
 msgstr ""
 
-#: plugins/widgets/index.php:232
+#: plugins/widgets/index.php:231
 msgid "Extra sidebar"
 msgstr ""
 
-#: plugins/widgets/index.php:238
+#: plugins/widgets/index.php:237
 msgid "Custom sidebar"
 msgstr ""
 
+#: plugins/widgets/index.php:243
+msgid "Update sidebars"
+msgstr ""
+
 #: plugins/widgets/index.php:244
-msgid "Update sidebars"
-msgstr ""
-
-#: plugins/widgets/index.php:245
 msgid "Reset sidebars"
 msgstr ""
 
+#: plugins/widgets/index.php:249
+msgid "Use of widgets"
+msgstr ""
+
 #: plugins/widgets/index.php:250
-msgid "Use of widgets"
-msgstr ""
-
-#: plugins/widgets/index.php:251
 msgid "Widgets may be used to add various blocks of content to be displayed on your public pages. To add a widget, drag it from the Available widgets list on the left to one of the sidebars on the right of this page. You can order your widgets in a sidebar by dragging them up or down. You must update sidebars to apply your changes."
 msgstr ""
 
-#: plugins/widgets/index.php:254
+#: plugins/widgets/index.php:253
 msgid "Once included in a sidebar, widgets have configuration options that you can reach by clicking on the arrow next to their name."
 msgstr ""
 
+#: plugins/widgets/index.php:255
+msgid "Reset sidebars to get back to default widgets installation."
+msgstr ""
+
 #: plugins/widgets/index.php:256
-msgid "Reset sidebars to get back to default widgets installation."
-msgstr ""
-
-#: plugins/widgets/index.php:257
 msgid "Widget templates tags"
 msgstr ""
 
-#: plugins/widgets/index.php:259
+#: plugins/widgets/index.php:258
 msgid "If you are allowed to edit your theme templates, you can directly add widgets as templates tags, with their own configuration."
 msgstr ""
 
+#: plugins/widgets/index.php:260
+msgid "To add a widget in your template, you need to write code like this:"
+msgstr ""
+
 #: plugins/widgets/index.php:261
-msgid "To add a widget in your template, you need to write code like this:"
+msgid "Widget ID"
 msgstr ""
 
 #: plugins/widgets/index.php:262
-msgid "Widget ID"
-msgstr ""
-
-#: plugins/widgets/index.php:263
 msgid "Setting name"
 msgstr ""
 
-#: plugins/widgets/index.php:263
+#: plugins/widgets/index.php:262
 msgid "Setting value"
 msgstr ""
 
-#: plugins/widgets/index.php:266
+#: plugins/widgets/index.php:265
 msgid "Here are the following available widgets for your blog:"
 msgstr ""
 
-#: plugins/widgets/index.php:273
+#: plugins/widgets/index.php:272
 msgid "Widget ID:"
 msgstr ""
 
-#: plugins/widgets/index.php:280
+#: plugins/widgets/index.php:279
 msgid "No setting for this widget"
 msgstr ""
 
-#: plugins/widgets/index.php:289
+#: plugins/widgets/index.php:288
 msgid "boolean"
 msgstr ""
 
-#: plugins/widgets/index.php:289 plugins/widgets/index.php:293
+#: plugins/widgets/index.php:288 plugins/widgets/index.php:292
 msgid "possible values:"
 msgstr ""
 
-#: plugins/widgets/index.php:293
+#: plugins/widgets/index.php:292
 msgid "listitem"
 msgstr ""
 
-#: plugins/widgets/index.php:298
+#: plugins/widgets/index.php:297
 msgid "string"
 msgstr ""
 
-#: plugins/widgets/index.php:304
+#: plugins/widgets/index.php:303
 msgid "Setting name:"
 msgstr ""
 
-#: plugins/widgets/index.php:325
+#: plugins/widgets/index.php:324
 msgid "No widget."
 msgstr ""
 
-#: plugins/widgets/index.php:339
+#: plugins/widgets/index.php:338
 msgid "Remove widget"
 msgstr ""
 
-#: plugins/widgets/index.php:352
+#: plugins/widgets/index.php:351
 msgid "Drag widgets here to remove them from this sidebar."
 msgstr ""
Index: locales/fr/date.po
===================================================================
--- locales/fr/date.po	(revision 2258)
+++ locales/fr/date.po	(revision 2105)
@@ -133,6 +133,6 @@
 msgstr "dimanche"
 
-#~ msgid "%H:%M:%S:"
-#~ msgstr "%H:%M:%S :"
+msgid "%H:%M:%S:"
+msgstr "%H:%M:%S :"
 
 #~ msgid "%A, %B %e %Y"
Index: locales/fr/help/index.html
===================================================================
--- locales/fr/help/index.html	(revision 2255)
+++ locales/fr/help/index.html	(revision 2238)
@@ -166,7 +166,7 @@
 			<ul class="from-left">
 				<li><a href="http://fr.dotclear.org/documentation/2.0/resources/themes">Thèmes</a>
-					<ul><li>Guide d&#039;utilisation des thèmes</li><li>Les balises template</li><li>Annexes</li></ul></li>
+					<ul><li>Guide d&#039;utilisation des thèmes</li><li>Les balises template</li><li>Annexes</a></li></ul></li>
 				<li><a href="http://fr.dotclear.org/documentation/2.0/resources/themes/inheritance">L&#039;héritage des thèmes</a>
-					<ul><li>L&#039;héritage des thèmes</li><li>Principe</li><li>Limitations</li><li>Mise en œuvre</li></ul></li>
+					<ul><li>L&#039;héritage des thèmes</li><li>Principe</a></li><li>Limitations</li><li>Mise en œuvre</li></ul></li>
 				<li><a href="http://fr.dotclear.org/documentation/2.0/resources/themes/tags">Les balises de template</a>
 					<ul><li>Généralités / utilitaires</li><li>Blog</li><li>Billets</li><li>Pagination des billets</li><li>Commentaires</li><li>Prévisualisation d&#039;un commentaire</li><li>Rétroliens</li><li>Pièces jointes</li><li>Categories</li><li>Tags</li><li>Archives</li><li>Langues</li><li>Système</li><li>Widgets</li></ul></li>
Index: locales/fr/main.po
===================================================================
--- locales/fr/main.po	(revision 2258)
+++ locales/fr/main.po	(revision 2224)
@@ -11,5 +11,5 @@
 "Project-Id-Version: Dotclear\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-04 13:51+0000\n"
+"POT-Creation-Date: 2013-09-24 07:51+0000\n"
 "PO-Revision-Date: 2012-08-13 07:13+0000\n"
 "Last-Translator: xave <xave@dotclear.net>\n"
@@ -21,4 +21,136 @@
 "Plural-Forms: nplurals=2; plural=(n > 1)\n"
 
+msgid "medium"
+msgstr "moyenne"
+
+msgid "small"
+msgstr "petite"
+
+msgid "thumbnail"
+msgstr "vignettes"
+
+msgid "square"
+msgstr "carrée"
+
+msgid "Manage every blog configuration directive"
+msgstr ""
+
+msgid "Akismet interface for Dotclear"
+msgstr ""
+
+msgid "Generic antispam plugin for Dotclear"
+msgstr ""
+
+msgid "Manage post attachments"
+msgstr "Gérer les annexes"
+
+msgid "Manage your blogroll"
+msgstr "Gérez votre listes de liens"
+
+msgid "Configure your Blowup Theme"
+msgstr "Configurer votre thème Blowup"
+
+msgid "Install and update your plugins live from DotAddict.org"
+msgstr ""
+
+msgid "Trackback validity check"
+msgstr ""
+
+msgid "Import and Export your blog"
+msgstr ""
+
+msgid "Maintain your installation"
+msgstr "Maintenir votre installation"
+
+msgid "Serve entries as simple web pages"
+msgstr ""
+
+msgid "Ping services"
+msgstr ""
+
+msgid "Simple menu for Dotclear"
+msgstr "Menu simple sur Dotclear"
+
+msgid "Tags for posts"
+msgstr ""
+
+msgid "Theme Editor"
+msgstr ""
+
+msgid "Manage every user preference directive"
+msgstr ""
+
+msgid "Widgets for your blog sidebars"
+msgstr ""
+
+msgid "Search engine form"
+msgstr "Formulaire du moteur de recherche"
+
+msgid "List of navigation links"
+msgstr "Liste des liens de navigation"
+
+msgid "List of selected entries"
+msgstr "Entrées sélectionnées"
+
+msgid "List of available languages"
+msgstr "Langues disponibles"
+
+msgid "List of categories"
+msgstr "Liste des catégories du blog"
+
+msgid "RSS or Atom feed subscription links"
+msgstr ""
+
+msgid "Last entries from feed"
+msgstr "Derniers billets du flux"
+
+msgid "Simple text"
+msgstr ""
+
+msgid "List of last entries published"
+msgstr "Derniers billets publiés"
+
+msgid "List of last comments posted"
+msgstr "Derniers commentaires postés"
+
+msgid "Tags cloud"
+msgstr ""
+
+msgid "List of published pages"
+msgstr "Liste des pages publiées"
+
+msgid "Blogroll list"
+msgstr "Liste des liens"
+
+msgid "List of simple menu items"
+msgstr ""
+
+msgid "Posts"
+msgstr "Billets"
+
+msgid "Pages"
+msgstr "Pages"
+
+msgid "New entry"
+msgstr "Nouveau billet"
+
+msgid "Entries"
+msgstr "Billets"
+
+msgid "Comments"
+msgstr "Commentaires"
+
+msgid "My preferences"
+msgstr "Mes préférences"
+
+msgid "Blog settings"
+msgstr "Paramètres du blog"
+
+msgid "Blog appearance"
+msgstr "Apparence du blog"
+
+msgid "Blogroll"
+msgstr "Liste de liens"
+
 msgid "Dotclear has been upgraded."
 msgstr "Dotclear a été mis à jour."
@@ -121,8 +253,4 @@
 msgstr "Me connecter en mode sans échec"
 
-#, php-format
-msgid "Blog \"%s\" successfully created"
-msgstr "Blog \"%s\" créé avec succès."
-
 msgid "New blog"
 msgstr "Nouveau blog"
@@ -164,8 +292,4 @@
 msgstr "La vérification du mot de passe a échoué"
 
-#, php-format
-msgid "Blog \"%s\" successfully deleted"
-msgstr "Blog \"%s\" supprimé avec succès."
-
 msgid "Delete a blog"
 msgstr "Supprimer un blog"
@@ -265,19 +389,16 @@
 msgstr "Code langue invalide"
 
+msgid "Warning: except for special configurations, it is generally advised to have a trailing \"/\" in your blog URL in PATH_INFO mode."
+msgstr "Attention : sauf cas particulier, il est généralement conseillé de terminer l'URL de votre blog par \"/\" en mode PATH_INFO."
+
+msgid "Warning: except for special configurations, it is generally advised to have a trailing \"?\" in your blog URL in QUERY_STRING mode."
+msgstr "Attention: sauf cas particulier, il est généralement conseillé de terminer l'URL de votre blog par \\\"?\\\" en mode QUERY_STRING."
+
+msgid "Blog has been successfully created."
+msgstr "Blog créé avec succès."
+
 msgid "Blog has been successfully updated."
 msgstr "Blog mis à jour avec succès."
 
-msgid "Blog settings"
-msgstr "Paramètres du blog"
-
-msgid "Warning: except for special configurations, it is generally advised to have a trailing \"/\" in your blog URL in PATH_INFO mode."
-msgstr "Attention : sauf cas particulier, il est généralement conseillé de terminer l'URL de votre blog par \"/\" en mode PATH_INFO."
-
-msgid "Warning: except for special configurations, it is generally advised to have a trailing \"?\" in your blog URL in QUERY_STRING mode."
-msgstr "Attention: sauf cas particulier, il est généralement conseillé de terminer l'URL de votre blog par \\\"?\\\" en mode QUERY_STRING."
-
-msgid "Blog has been successfully created."
-msgstr "Blog créé avec succès."
-
 msgid "Parameters"
 msgstr "Paramètres"
@@ -410,7 +531,4 @@
 msgstr "Tronquer les flux de syndication"
 
-msgid "Include sub-categories in category page and category posts feed"
-msgstr ""
-
 msgid "Media and images"
 msgstr "Médias et images"
@@ -483,8 +601,4 @@
 msgstr "Tous les droits sur tous les blogs."
 
-#, php-format
-msgid "[%s] (unreferenced permission)"
-msgstr ""
-
 msgid "All rights on this blog."
 msgstr "Tous les droits sur ce blog."
@@ -493,8 +607,4 @@
 msgstr "Changer les permissions"
 
-#, php-format
-msgid "Current theme has been successfully changed to \"%s\"."
-msgstr "Thème changé avec succès en \"%s\"."
-
 msgid "You can't remove default theme."
 msgstr "Vous ne pouvez pas supprimer le thème par défaut."
@@ -509,41 +619,35 @@
 msgstr "Une erreur est survenue pendant le téléchargement du fichier."
 
-msgid "Theme has been successfully upgraded."
-msgstr "Thème mis à jour avec succès."
+#, php-format
+msgid "by %s"
+msgstr "par %s"
+
+#, php-format
+msgid "version %s"
+msgstr "version %s"
+
+#, php-format
+msgid "(built on \"%s\")"
+msgstr "(basé sur \"%s\")"
+
+#, php-format
+msgid "(requires \"%s\")"
+msgstr "(nécessite \"%s\")"
+
+msgid "Stylesheet"
+msgstr "Feuille de style"
+
+msgid "Configure theme"
+msgstr "Configurer le thème"
+
+msgid "Theme configuration"
+msgstr "Configuration du thème"
+
+msgid "Theme has been successfully changed."
+msgstr "Thème changé avec succès."
 
 msgid "Theme has been successfully installed."
 msgstr "Thème installé avec succès."
 
-#, php-format
-msgid "by %s"
-msgstr "par %s"
-
-#, php-format
-msgid "version %s"
-msgstr "version %s"
-
-#, php-format
-msgid "(built on \"%s\")"
-msgstr "(basé sur \"%s\")"
-
-#, php-format
-msgid "(requires \"%s\")"
-msgstr "(nécessite \"%s\")"
-
-msgid "Stylesheet"
-msgstr "Feuille de style"
-
-msgid "Configure theme"
-msgstr "Configurer le thème"
-
-msgid "Blog appearance"
-msgstr "Apparence du blog"
-
-msgid "Theme configuration"
-msgstr "Configuration du thème"
-
-msgid "Theme has been successfully changed."
-msgstr "Thème changé avec succès."
-
 msgid "Theme has been successfully upgraded"
 msgstr "Thème mis à jour avec succès."
@@ -620,10 +724,4 @@
 msgstr "Croissant"
 
-msgid "Show filters and display options"
-msgstr "Afficher les filtres et options d'affichage"
-
-msgid "Cancel filters and display options"
-msgstr "Annuler les filtres et options d'affichage"
-
 msgid "List of blogs"
 msgstr "Liste des blogs"
@@ -662,14 +760,7 @@
 msgstr "Appliquer les filtres et options d'affichage"
 
-msgid "No blog matches the filter"
-msgstr ""
-
 msgid "No blog"
 msgstr "Pas de blog"
 
-#, php-format
-msgid "List of %s blogs match the filter."
-msgstr ""
-
 msgid "Blogs list"
 msgstr "Liste des blogs"
@@ -695,23 +786,6 @@
 msgstr "Passer au blog %s"
 
-msgid "This category does not exist."
-msgstr "Cette catégorie n'existe pas."
-
-#, php-format
-msgid "The category \"%s\" has been successfully deleted."
-msgstr "Catégorie \"%s\" créée avec succès."
-
 msgid "Category where to move posts does not exist"
 msgstr "La catégorie où les entrées seront déplacées n'existe pas."
-
-#, php-format
-msgid "The entries have been successfully moved to category \"%s\""
-msgstr "Les billets ont été déplacés dans la catégorie \"%s\" avec succès."
-
-msgid "Categories have been successfully reordered."
-msgstr "Catégories réordonnées avec succès."
-
-msgid "Categories order has been successfully reset."
-msgstr "Catégories réordonnées par défaut avec succès."
 
 msgid "Categories"
@@ -723,4 +797,10 @@
 msgstr[1] "Catégories déplacées avec succès."
 
+msgid "Categories have been successfully reordered."
+msgstr "Catégories réordonnées avec succès."
+
+msgid "This category does not exist."
+msgstr "Cette catégorie n'existe pas."
+
 msgid "Entries have been successfully moved to the category you choose."
 msgstr "Les billets ont été déplacés dans la catégorie choisie avec succès."
@@ -738,7 +818,5 @@
 #, php-format
 msgid "%d entry"
-msgid_plural "%d entries"
-msgstr[0] "%d billet"
-msgstr[1] "%d billets"
+msgstr "%d billet"
 
 msgid "total:"
@@ -769,14 +847,4 @@
 msgstr "Premier niveau"
 
-msgid "The category has been successfully moved"
-msgstr "Catégorie déplacée avec succès."
-
-msgid "The category has been successfully updated."
-msgstr "Catégorie mise à jour avec succès."
-
-#, php-format
-msgid "The category \"%s\" has been successfully created."
-msgstr "Catégorie \"%s\" créée avec succès."
-
 msgid "Category has been successfully updated."
 msgstr "Catégorie mise à jour avec succès."
@@ -785,6 +853,6 @@
 msgstr "Détails de la catégorie"
 
-msgid "Name:"
-msgstr "Nom :"
+msgid "Title:"
+msgstr "Titre :"
 
 msgid "Parent:"
@@ -821,21 +889,15 @@
 msgstr "Ce billet n'existe pas."
 
-msgid "Comment has been successfully created."
-msgstr "Commentaire créé avec succès."
-
 msgid "No comment"
 msgstr "Aucun commentaire"
 
+msgid "You can't edit this comment."
+msgstr "Vous ne pouvez pas modifier ce commentaire."
+
+msgid "Edit comment"
+msgstr "Modifier le commentaire"
+
 msgid "Comment has been successfully updated."
 msgstr "Commentaire mis à jour avec succès."
-
-msgid "Comment has been successfully deleted."
-msgstr "Commentaire effacé avec succès."
-
-msgid "You can't edit this comment."
-msgstr "Vous ne pouvez pas modifier ce commentaire."
-
-msgid "Edit comment"
-msgstr "Modifier le commentaire"
 
 #, php-format
@@ -950,7 +1012,18 @@
 msgstr "Aide générale"
 
+#, php-format
+msgid "%d comment"
+msgstr "%d commentaire"
+
+#, php-format
+msgid "%d comments"
+msgstr "%d commentaires"
+
 msgid "Dotclear news"
 msgstr "Actualité de Dotclear"
 
+msgid "new window"
+msgstr "nouvelle fenêtre"
+
 msgid "%d %B %Y:"
 msgstr "%d %B %Y :"
@@ -1009,15 +1082,9 @@
 msgstr "Les plugins suivants n'ont pas été installés :"
 
-msgid "Errors have occured with following plugins:"
-msgstr ""
+msgid "Some plugins are installed twice:"
+msgstr "Ces plugins sont installés en double :"
 
 msgid "Quick entry"
 msgstr "Billet rapide"
-
-msgid "New entry"
-msgstr "Nouveau billet"
-
-msgid "Title:"
-msgstr "Titre :"
 
 msgid "Content:"
@@ -1273,19 +1340,19 @@
 msgstr "Permission de supprimer la langue refusée."
 
+msgid "Invalid language file URL."
+msgstr "URL de fichier de langue invalide."
+
+msgid "Languages management"
+msgstr "Gestion des langues"
+
 msgid "Language has been successfully deleted."
 msgstr "Langue supprimée avec succès."
 
-msgid "Invalid language file URL."
-msgstr "URL de fichier de langue invalide."
+msgid "Language has been successfully installed."
+msgstr "Langue installée avec succès."
 
 msgid "Language has been successfully upgraded"
 msgstr "Langue mise à jour avec succès."
 
-msgid "Language has been successfully installed."
-msgstr "Langue installée avec succès."
-
-msgid "Languages management"
-msgstr "Gestion des langues"
-
 msgid "Here you can install, upgrade or remove languages for your Dotclear installation."
 msgstr "Sur cette page, vous pouvez installer, mettre à jour ou supprimer des langues de votre installation de Dotclear."
@@ -1357,12 +1424,192 @@
 msgstr "Par dates décroissantes"
 
-#, php-format
-msgid "Directory \"%s\" has been successfully created."
-msgstr "Répertoire \"%s\" créé avec succès."
+msgid "Media manager"
+msgstr "Médiathèque"
+
+msgid "confirm removal"
+msgstr "Confirmer la suppression"
+
+#, php-format
+msgid "Are you sure you want to remove %s?"
+msgstr "Êtes-vous certain de vouloir supprimer %s ?"
+
+msgid "Cancel"
+msgstr "Annuler"
+
+msgid "Yes"
+msgstr "oui"
+
+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."
+
+msgid "Directory has been successfully created."
+msgstr "Répertoire créé avec succès."
 
 msgid "Files have been successfully uploaded."
 msgstr "Fichier chargé avec succès."
 
-#, php-format
+msgid "File has been successfully removed."
+msgstr "Fichier supprimé avec succès."
+
+msgid "Directory has been successfully removed."
+msgstr "Répertoire supprimé avec succès."
+
+msgid "Directory has been successfully rebuilt."
+msgstr "Répertoire reconstruit avec succès."
+
+msgid "Zip file has been successfully extracted."
+msgstr "Le fichier zip a été extrait avec succès."
+
+#, php-format
+msgid "Choose a file to attach to entry %s by clicking on %s."
+msgstr "Choisissez un fichier à attacher au billet %s en cliquant sur %s."
+
+msgid "Attach this file to entry"
+msgstr "Attacher ce fichier au billet"
+
+#, php-format
+msgid "Choose a file to insert into entry by clicking on %s."
+msgstr "Choisissez un fichier à insérer dans le billet en cliquant sur %s."
+
+msgid "No file."
+msgstr "Aucun fichier."
+
+msgid "Sort files:"
+msgstr "Trier les fichiers :"
+
+msgid "Sort"
+msgstr "Trier"
+
+#, php-format
+msgid "Current settings for medias and images are defined in %s"
+msgstr "Les réglages actuels pour les médias et les images sont définis dans les %s"
+
+msgid "Blog parameters"
+msgstr "Paramètres du blog"
+
+#, php-format
+msgid "In %s:"
+msgstr "Dans %s :"
+
+msgid "Create new directory"
+msgstr "Créer un répertoire"
+
+msgid "Directory Name:"
+msgstr "Nom du répertoire :"
+
+# php-format
+#, php-format
+msgid "Backup content of %s"
+msgstr "Sauvegarder le contenu de %s"
+
+msgid "Download zip file"
+msgstr "Télécharger un fichier zip"
+
+msgid "Add files"
+msgstr "Ajouter des fichiers"
+
+msgid "Please take care to publish media that you own and that are not protected by copyright."
+msgstr "Veuillez prendre garde à ne publier que des médias que vous possédez ou qui ne sont pas protégés par le droit d'auteur."
+
+msgid "Choose file"
+msgstr "Choisir un fichier"
+
+msgid "Choose files"
+msgstr "Choisir des fichiers"
+
+msgid "Maximum file size allowed:"
+msgstr "Taille maximale de fichier autorisée :"
+
+msgid "Private"
+msgstr "Privé"
+
+msgid "To send several files at the same time, you can activate the enhanced uploader in"
+msgstr "Pour envoyer plusieurs fichiers à la fois, vous pouvez activer l'interface avancée dans"
+
+msgid "Refresh"
+msgstr "Actualiser"
+
+msgid "Clear all"
+msgstr "Tout annuler"
+
+msgid "Upload"
+msgstr "Envoyer"
+
+msgid "open"
+msgstr "ouvrir"
+
+msgid "Insert this file into entry"
+msgstr "Insérer ce fichier dans le billet"
+
+msgid "delete"
+msgstr "supprimer"
+
+msgid "Not a valid file"
+msgstr "Fichier invalide"
+
+msgid "Are you sure to delete this media?"
+msgstr "Êtes-vous sûr de vouloir supprimer ce média ?"
+
+#, php-format
+msgid "Are you sure you want to delete selected medias (%d)?"
+msgstr "Êtes-vous sûr de vouloir supprimer les médias sélectionnés (%d) ?"
+
+msgid "File has been successfully updated."
+msgstr "Fichier mis à jour avec succès."
+
+msgid "Thumbnails have been successfully updated."
+msgstr "Les miniatures mises à jour avec succès."
+
+msgid "Insert media item"
+msgstr "Insérer un média"
+
+msgid "Image size:"
+msgstr "Taille de l'image :"
+
+msgid "Image alignment"
+msgstr "Alignement de l'image"
+
+msgid "Image insertion"
+msgstr "Insertion de l'image"
+
+msgid "As a single image"
+msgstr "En tant qu'image uniquement"
+
+msgid "As a link to the original image"
+msgstr "En tant que lien vers l'image originale"
+
+msgid "MP3 disposition"
+msgstr "Disposition du MP3"
+
+msgid "Please note that you cannot insert mp3 files with visual editor."
+msgstr "Merci de noter que vous ne pouvez pas insérer de fichier mp3 avec l'éditeur visuel."
+
+msgid "Please note that you cannot insert video files with visual editor."
+msgstr "Merci de noter que vous ne pouvez pas insérer de fichier vidéo avec l'éditeur visuel."
+
+msgid "Video size"
+msgstr "Taille de la vidéo"
+
+msgid "Width:"
+msgstr "Largeur :"
+
+msgid "Height:"
+msgstr "Hauteur :"
+
+msgid "Video disposition"
+msgstr "Disposition de la vidéo"
+
+msgid "Media item will be inserted as a link."
+msgstr "Le média sera inséré en tant que lien."
+
+msgid "Insert"
+msgstr "Insérer"
+
+msgid "Media details"
+msgstr "Détails du média"
+
+msgid "Remove selected medias"
+msgstr "Supprimer les médias sélectionnés"
+
 msgid "Successfully delete one media."
 msgid_plural "Successfully delete %d medias."
@@ -1370,198 +1617,4 @@
 msgstr[1] "Suppression de %d médias avec succès."
 
-msgid "File has been successfully removed."
-msgstr "Fichier supprimé avec succès."
-
-#, php-format
-msgid "Directory \"%s\" has been successfully rebuilt."
-msgstr "Répertoire \"%s\" reconstruit avec succès."
-
-msgid "Media manager"
-msgstr "Médiathèque"
-
-msgid "confirm removal"
-msgstr "Confirmer la suppression"
-
-#, php-format
-msgid "Are you sure you want to remove %s?"
-msgstr "Êtes-vous certain de vouloir supprimer %s ?"
-
-msgid "Cancel"
-msgstr "Annuler"
-
-msgid "Yes"
-msgstr "oui"
-
-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."
-
-msgid "Directory has been successfully created."
-msgstr "Répertoire créé avec succès."
-
-msgid "Directory has been successfully removed."
-msgstr "Répertoire supprimé avec succès."
-
-msgid "Directory has been successfully rebuilt."
-msgstr "Répertoire reconstruit avec succès."
-
-msgid "Zip file has been successfully extracted."
-msgstr "Le fichier zip a été extrait avec succès."
-
-#, php-format
-msgid "Choose a file to attach to entry %s by clicking on %s."
-msgstr "Choisissez un fichier à attacher au billet %s en cliquant sur %s."
-
-msgid "Attach this file to entry"
-msgstr "Attacher ce fichier au billet"
-
-#, php-format
-msgid "Choose a file to insert into entry by clicking on %s."
-msgstr "Choisissez un fichier à insérer dans le billet en cliquant sur %s."
-
-msgid "Remove selected medias"
-msgstr "Supprimer les médias sélectionnés"
-
-msgid "No file."
-msgstr "Aucun fichier."
-
-msgid "Sort files:"
-msgstr "Trier les fichiers :"
-
-msgid "Number of elements displayed per page:"
-msgstr "Nombre d'éléments affichés par page :"
-
-#, php-format
-msgid "In %s:"
-msgstr "Dans %s :"
-
-msgid "Create new directory"
-msgstr "Créer un répertoire"
-
-msgid "Directory Name:"
-msgstr "Nom du répertoire :"
-
-# php-format
-#, php-format
-msgid "Backup content of %s"
-msgstr "Sauvegarder le contenu de %s"
-
-msgid "Download zip file"
-msgstr "Télécharger un fichier zip"
-
-msgid "Add files"
-msgstr "Ajouter des fichiers"
-
-msgid "Please take care to publish media that you own and that are not protected by copyright."
-msgstr "Veuillez prendre garde à ne publier que des médias que vous possédez ou qui ne sont pas protégés par le droit d'auteur."
-
-msgid "Choose file"
-msgstr "Choisir un fichier"
-
-msgid "Choose files"
-msgstr "Choisir des fichiers"
-
-msgid "Maximum file size allowed:"
-msgstr "Taille maximale de fichier autorisée :"
-
-msgid "Private"
-msgstr "Privé"
-
-msgid "To send several files at the same time, you can activate the enhanced uploader in"
-msgstr "Pour envoyer plusieurs fichiers à la fois, vous pouvez activer l'interface avancée dans"
-
-msgid "My preferences"
-msgstr "Mes préférences"
-
-msgid "Refresh"
-msgstr "Actualiser"
-
-msgid "Clear all"
-msgstr "Tout annuler"
-
-msgid "Upload"
-msgstr "Envoyer"
-
-#, php-format
-msgid "Current settings for medias and images are defined in %s"
-msgstr "Les réglages actuels pour les médias et les images sont définis dans les %s"
-
-msgid "Blog parameters"
-msgstr "Paramètres du blog"
-
-msgid "open"
-msgstr "ouvrir"
-
-msgid "Insert this file into entry"
-msgstr "Insérer ce fichier dans le billet"
-
-msgid "delete"
-msgstr "supprimer"
-
-msgid "Not a valid file"
-msgstr "Fichier invalide"
-
-msgid "File has been successfully updated."
-msgstr "Fichier mis à jour avec succès."
-
-msgid "Thumbnails have been successfully updated."
-msgstr "Les miniatures mises à jour avec succès."
-
-msgid "Default media insertion settings have been successfully updated."
-msgstr "Les paramètres par défaut d'insertion des médias ont été mis à jour avec succès."
-
-msgid "Are you sure to delete this media?"
-msgstr "Êtes-vous sûr de vouloir supprimer ce média ?"
-
-msgid "Insert media item"
-msgstr "Insérer un média"
-
-msgid "Image size:"
-msgstr "Taille de l'image :"
-
-msgid "Image alignment"
-msgstr "Alignement de l'image"
-
-msgid "Image insertion"
-msgstr "Insertion de l'image"
-
-msgid "As a single image"
-msgstr "En tant qu'image uniquement"
-
-msgid "As a link to the original image"
-msgstr "En tant que lien vers l'image originale"
-
-msgid "MP3 disposition"
-msgstr "Disposition du MP3"
-
-msgid "Please note that you cannot insert mp3 files with visual editor."
-msgstr "Merci de noter que vous ne pouvez pas insérer de fichier mp3 avec l'éditeur visuel."
-
-msgid "Please note that you cannot insert video files with visual editor."
-msgstr "Merci de noter que vous ne pouvez pas insérer de fichier vidéo avec l'éditeur visuel."
-
-msgid "Video size"
-msgstr "Taille de la vidéo"
-
-msgid "Width:"
-msgstr "Largeur :"
-
-msgid "Height:"
-msgstr "Hauteur :"
-
-msgid "Video disposition"
-msgstr "Disposition de la vidéo"
-
-msgid "Media item will be inserted as a link."
-msgstr "Le média sera inséré en tant que lien."
-
-msgid "Insert"
-msgstr "Insérer"
-
-msgid "Make current settings as default"
-msgstr "Mémoriser ces réglages d'insertion"
-
-msgid "Media details"
-msgstr "Détails du média"
-
 msgid "Available sizes:"
 msgstr "Tailles disponibles :"
@@ -1682,19 +1735,19 @@
 msgstr "Vous n'avez pas les permissions pour supprimer ce plugin."
 
+msgid "You don't have permissions to deactivate this plugin."
+msgstr "Vous n'avez pas les permissions pour désactiver ce plugin."
+
+msgid "Plugins management"
+msgstr "Gestion des plugins"
+
 msgid "Plugin has been successfully deleted."
 msgstr "Plugin supprimé avec succès."
 
-msgid "You don't have permissions to deactivate this plugin."
-msgstr "Vous n'avez pas les permissions pour désactiver ce plugin."
+msgid "Plugin has been successfully installed."
+msgstr "Plugin installé avec succès."
 
 msgid "Plugin has been successfully upgraded"
 msgstr "Plugin mis à jour avec succès."
 
-msgid "Plugin has been successfully installed."
-msgstr "Plugin installé avec succès."
-
-msgid "Plugins management"
-msgstr "Gestion des plugins"
-
 msgid "Plugins add new functionalities to Dotclear. Here you can activate or deactivate installed plugins."
 msgstr "Les plugins ajoutent de nouvelles fonctionnalités à Dotclear. Ici, vous pouvez activer ou désactiver les plugins installés."
@@ -1807,41 +1860,41 @@
 msgstr "Billet précédent"
 
+msgid "Invalid publication date"
+msgstr "Date de publication invalide"
+
+msgid "Published"
+msgstr "Publié"
+
+msgid "Unpublished"
+msgstr "Non publié"
+
+msgid "Scheduled"
+msgstr "Programmé"
+
+msgid "Pending"
+msgstr "En attente"
+
+#, php-format
+msgid "&ldquo;%s&rdquo;"
+msgstr "&ldquo;%s&rdquo;"
+
+msgid "Entry has been successfully updated."
+msgstr "Billet mis à jour avec succès."
+
+msgid "Entry has been successfully created."
+msgstr "Billet créé avec succès."
+
+msgid "File has been successfully attached."
+msgstr "Fichier attaché avec succès."
+
+msgid "Attachment has been successfully removed."
+msgstr "Annexe retirée avec succès."
+
+msgid "Comment has been successfully created."
+msgstr "Commentaire créé avec succès."
+
 msgid "All pings sent."
 msgstr "Tous les rétroliens ont été envoyés."
 
-msgid "Invalid publication date"
-msgstr "Date de publication invalide"
-
-msgid "Entry has been successfully created."
-msgstr "Billet créé avec succès."
-
-msgid "Published"
-msgstr "Publié"
-
-msgid "Unpublished"
-msgstr "Non publié"
-
-msgid "Scheduled"
-msgstr "Programmé"
-
-msgid "Pending"
-msgstr "En attente"
-
-#, php-format
-msgid "&ldquo;%s&rdquo;"
-msgstr "&ldquo;%s&rdquo;"
-
-msgid "Entries"
-msgstr "Billets"
-
-msgid "Entry has been successfully updated."
-msgstr "Billet mis à jour avec succès."
-
-msgid "File has been successfully attached."
-msgstr "Fichier attaché avec succès."
-
-msgid "Attachment has been successfully removed."
-msgstr "Annexe retirée avec succès."
-
 msgid "Don't forget to validate your XHTML conversion by saving your post."
 msgstr "Enregistrez votre billet pour valider la transformation en XHTML."
@@ -1919,16 +1972,25 @@
 msgstr "Prévisualiser"
 
-msgid "Comments"
-msgstr "Commentaires"
+msgid "Publish"
+msgstr "Publier"
+
+msgid "Unpublish"
+msgstr "Mettre hors ligne"
+
+msgid "Mark as pending"
+msgstr "Mettre en attente"
+
+msgid "Mark as junk"
+msgstr "Mettre en indésirable"
 
 msgid "Add a comment"
 msgstr "Ajouter un commentaire"
 
+msgid "Name:"
+msgstr "Nom :"
+
 msgid "Trackbacks"
 msgstr "Rétroliens"
 
-msgid "Trackbacks received"
-msgstr "Rétroliens reçus"
-
 msgid "No trackback"
 msgstr "Aucun rétrolien"
@@ -1997,4 +2059,7 @@
 msgstr "Les entrées sélectionnées ont été supprimées avec succès."
 
+msgid "Filter posts list"
+msgstr "Filtrer la liste des billets"
+
 msgid "Selected:"
 msgstr "Sélectionné :"
@@ -2018,4 +2083,7 @@
 msgstr "Si vous voulez modifier votre adresse email ou votre mot de passe, vous devez indiquer votre mot de passe actuel."
 
+msgid "No favorite selected"
+msgstr "Aucun favori sélectionné"
+
 msgid "Personal information has been successfully updated."
 msgstr "Informations personnelles mises à jour avec succès."
@@ -2027,16 +2095,13 @@
 msgstr "Les options du tableau de bord ont été enregistrées avec succès."
 
-msgid "No favorite selected"
-msgstr "Aucun favori sélectionné"
-
 msgid "Favorites have been successfully added."
 msgstr "Les favoris ont été ajoutés avec succès."
 
+msgid "Favorites have been successfully updated."
+msgstr "Les favoris ont été mis à jour avec succès."
+
 msgid "Favorites have been successfully removed."
 msgstr "Les favoris ont été retirés avec succès."
 
-msgid "Favorites have been successfully updated."
-msgstr "Les favoris ont été mis à jour avec succès."
-
 msgid "Default favorites have been successfully updated."
 msgstr "Les favoris par défaut ont été enregistrés avec succès."
@@ -2084,6 +2149,6 @@
 msgstr "Si cette option est cochée, des champs numériques permettront d'indiquer la position des éléments."
 
-msgid "Number of elements displayed per page in media manager:"
-msgstr "Nombre d'éléments affichés par page dans la médiathèque :"
+msgid "Number of media displayed per page:"
+msgstr "Nombre de médias affichés par page :"
 
 msgid "Do not use standard favicon"
@@ -2190,4 +2255,22 @@
 msgstr "Rechercher dans les commentaires"
 
+msgid "publish"
+msgstr "publier"
+
+msgid "unpublish"
+msgstr "mettre hors ligne"
+
+msgid "schedule"
+msgstr "programmer"
+
+msgid "mark as pending"
+msgstr "mettre en attente"
+
+msgid "change category"
+msgstr "changer la catégorie"
+
+msgid "change author"
+msgstr "changer l'auteur"
+
 #, php-format
 msgid "%d entries found"
@@ -2198,4 +2281,7 @@
 msgstr "%d billet trouvé"
 
+msgid "mark as junk"
+msgstr "mettre en indésirable"
+
 #, php-format
 msgid "%d comment found"
@@ -2280,11 +2366,11 @@
 msgstr "Nouvel utilisateur"
 
+#, php-format
+msgid "User \"%s\" already exists."
+msgstr "L'utilisateur \"%s\" existe déjà."
+
 msgid "User has been successfully updated."
 msgstr "Utilisateur mis à jour avec succès."
 
-#, php-format
-msgid "User \"%s\" already exists."
-msgstr "L'utilisateur \"%s\" existe déjà."
-
 msgid "User has been successfully created."
 msgstr "Utilisateur créé avec succès."
@@ -2354,4 +2440,7 @@
 msgstr "Permissions mises à jour avec succès."
 
+msgid "Filter users list"
+msgstr "Filtrer la liste des utilisateurs"
+
 msgid "users per page"
 msgstr "utilisateurs par page"
@@ -2366,7 +2455,4 @@
 msgstr "Vous ne pouvez pas vous supprimer vous-même."
 
-msgid "User has been successfully deleted."
-msgstr "Utilisateur supprimé avec succès."
-
 msgid "Back to user profile"
 msgstr "Retour au profil utilisateur"
@@ -2386,28 +2472,13 @@
 msgstr "Valider les permissions"
 
-msgid "Back to comments list"
-msgstr "Retour à la liste des commentaires"
+msgid "Back to entries list"
+msgstr "Retour à la liste des billets"
 
 msgid "Comments actions"
 msgstr "Action sur les commentaires"
 
-msgid "Publish"
-msgstr "Publier"
-
-msgid "Unpublish"
-msgstr "Mettre hors ligne"
-
-msgid "Mark as pending"
-msgstr "Mettre en attente"
-
-msgid "Mark as junk"
-msgstr "Mettre en indésirable"
-
 msgid "No comment selected"
 msgstr "Aucun commentaire sélectionné."
 
-msgid "Back to entries list"
-msgstr "Retour à la liste des billets"
-
 msgid "Entries actions"
 msgstr "Action sur les entrées"
@@ -2440,29 +2511,4 @@
 msgstr "Aucune entrée sélectionnée"
 
-msgid "%d entry has been successfully updated to status : \"%s\""
-msgid_plural "%d entries have been successfully updated to status : \"%s\""
-msgstr[0] "%s billet positionné au statut \"%s\" avec succès."
-msgstr[1] "%s billets positionnés au statut \"%s\" avec succès."
-
-msgid "%d entry has been successfully marked as selected"
-msgid_plural "%d entries have been successfully marked as selected"
-msgstr[0] "%s billet marqué sélectionné avec succès."
-msgstr[1] "%s billets marqués sélectionnés avec succès."
-
-msgid "%d entry has been successfully marked as unselected"
-msgid_plural "%d entries have been successfully marked as unselected"
-msgstr[0] "%s billet marqué désélectionné avec succès."
-msgstr[1] "%s billets marqués désélectionnés avec succès."
-
-msgid "%d entry has been successfully deleted"
-msgid_plural "%d entries have been successfully deleted"
-msgstr[0] "%s entrée supprimée avec succès."
-msgstr[1] "%s entrées supprimées avec succès."
-
-msgid "%d entry has been successfully moved to category \"%s\""
-msgid_plural "%d entries have been successfully moved to category \"%s\""
-msgstr[0] "%s billet a été déplacé dans la catégorie \"%s\" avec succès."
-msgstr[1] "%s billets ont été déplacés dans la catégorie \"%s\" avec succès."
-
 msgid "Change category for this selection"
 msgstr "Changer la catégorie pour cette sélection"
@@ -2474,9 +2520,4 @@
 msgstr "Cet utilisateur n'existe pas"
 
-msgid "%d entry has been successfully set to user \"%s\""
-msgid_plural "%d entries have been successfully set to user \"%s\""
-msgstr[0] "%s billet affecté à l'utilisateur \"%s\" avec succès."
-msgstr[1] "%s billets affectés à l'utilisateur \"%s\" avec succès."
-
 msgid "Change author for this selection"
 msgstr "Changer l'auteur pour cette sélection"
@@ -2485,9 +2526,4 @@
 msgstr "Nouvel auteur (identifiant utilisateur) :"
 
-msgid "%d entry has been successfully set to language \"%s\""
-msgid_plural "%d entries have been successfully set to language \"%s\""
-msgstr[0] "%s billet mis à jour avec la langue \"%s\"."
-msgstr[1] "%s billets mis à jour avec la langue \"%s\"."
-
 msgid "Change language for this selection"
 msgstr "Changer la langue de cette sélection"
@@ -2511,459 +2547,404 @@
 msgstr "(aucune)"
 
+msgid "Change blog"
+msgstr "Changer de blog"
+
+msgid "Blogs:"
+msgstr "Blogs :"
+
+msgid "Go to the content"
+msgstr "Aller au contenu"
+
+msgid "Go to the menu"
+msgstr "Aller au menu"
+
+msgid "Go to search"
+msgstr "Aller à la recherche"
+
+msgid "Go to site"
+msgstr "Aller sur le site"
+
+#, php-format
+msgid "Logout %s"
+msgstr "Déconnecter %s"
+
+msgid "Hide main menu"
+msgstr "Masquer le menu principal"
+
+msgid "Show main menu"
+msgstr "Afficher le menu principal"
+
+msgid "Safe mode"
+msgstr "Mode de secours"
+
+msgid "You are in safe mode. All plugins have been temporarily disabled. Remind to log out then log in again normally to get back all functionalities"
+msgstr "Vous êtes en mode de secours. Tous les plugins ont été temporairement désactivés. N'oubliez-pas de vous déconnecter puis de vous reconnecter normalement pour retrouver toutes les fonctionnalités"
+
+msgid "Error:"
+msgstr "Erreur :"
+
+msgid "Need help?"
+msgstr "Besoin d'aide ?"
+
+#, php-format
+msgid "Thank you for using %s."
+msgstr "Merci d'utiliser %s."
+
+msgid "Go to dashboard"
+msgstr "Tableau de bord"
+
+msgid "%H:%M:%S:"
+msgstr "%H:%M:%S :"
+
+msgid "Help about this page"
+msgstr "Aide pour cette page"
+
+#, php-format
+msgid "See also %s"
+msgstr "Voir également %s"
+
+msgid "the global help"
+msgstr "l'aide générale"
+
+msgid "uncover"
+msgstr "dévoiler"
+
+msgid "hide"
+msgstr "cacher"
+
+msgid "Hide"
+msgstr "Cacher"
+
+msgid "Select:"
+msgstr "Sélectionner :"
+
+msgid "no selection"
+msgstr "aucun"
+
+msgid "select all"
+msgstr "tous"
+
+msgid "Invert selection"
+msgstr "Inverser la sélection"
+
+msgid "view entry"
+msgstr "voir le billet"
+
+#, php-format
+msgid "Are you sure you want to delete selected entries (%s)?"
+msgstr "Êtes-vous certain de vouloir supprimer les billets sélectionnés (%s) ?"
+
+#, php-format
+msgid "Are you sure you want to delete selected categories (%s)?"
+msgstr "Êtes-vous certain de vouloir supprimer les categories sélectionnées (%s) ?"
+
+msgid "Are you sure you want to delete this entry?"
+msgstr "Êtes-vous certain de vouloir supprimer ce billet ?"
+
+msgid "Click here to unlock the field"
+msgstr "Cliquez ici pour déverrouiller ce champ"
+
+msgid "Are you sure you want to delete all spams?"
+msgstr "Êtes-vous certain de vouloir supprimer tous les indésirables ?"
+
+#, php-format
+msgid "Are you sure you want to delete selected comments (%s)?"
+msgstr "Êtes-vous certain de vouloir supprimer les commentaires sélectionnés (%s) ?"
+
+msgid "Are you sure you want to delete this comment?"
+msgstr "Êtes-vous certain de vouloir supprimer ce commentaire ?"
+
+msgid "Users with posts cannot be deleted."
+msgstr "Les utilisateurs ayant écrit des entrées ne peuvent être supprimés."
+
+#, php-format
+msgid "Are you sure you want to delete selected users (%s)?"
+msgstr "Êtes-vous certain de vouloir supprimer les utilisateurs sélectionnés (%s) ?"
+
+#, php-format
+msgid "Are you sure you want to delete category \"%s\"?"
+msgstr "Êtes-vous certain de vouloir supprimer la catégorie \"%s\" ?"
+
+msgid "Are you sure you want to reorder all categories?"
+msgstr "Êtes-vous certain de vouloir réinitialiser l'ordre des catégories ?"
+
+#, php-format
+msgid "Are you sure you want to remove media \"%s\"?"
+msgstr "Êtes-vous certain de vouloir supprimer le média \"%s\" ?"
+
+msgid "Are you sure you want to extract archive in current directory?"
+msgstr "Êtes-vous certain de vouloir extraire l'archive dans le répertoire actuel ?"
+
+#, php-format
+msgid "Are you sure you want to remove attachment \"%s\"?"
+msgstr "Êtes-vous certain de vouloir supprimer l'annexe \"%s\" ?"
+
+#, php-format
+msgid "Are you sure you want to delete \"%s\" language?"
+msgstr "Êtes-vous certain de vouloir supprimer la langue \"%s\" ?"
+
+#, php-format
+msgid "Are you sure you want to delete \"%s\" plugin?"
+msgstr "Êtes-vous certain de vouloir supprimer le plugin \"%s\" ?"
+
+msgid "Use this theme"
+msgstr "Utiliser ce thème"
+
+msgid "Remove this theme"
+msgstr "Supprimer ce thème"
+
+#, php-format
+msgid "Are you sure you want to delete \"%s\" theme?"
+msgstr "Êtes-vous certain de vouloir supprimer le thème \"%s\" ?"
+
+msgid "Are you sure you want to delete this backup?"
+msgstr "Êtes-vous certain de vouloir supprimer cette sauvegarde ?"
+
+msgid "Zip file content"
+msgstr "Contenu du fichier zip"
+
+msgid "XHTML markup validator"
+msgstr "Vérifier la validité XHTML"
+
+msgid "XHTML content is valid."
+msgstr "Le contenu XHTML est valide."
+
+msgid "There are XHTML markup errors."
+msgstr "Il y a des erreurs XHTML."
+
+msgid "Attention: an audit of a content not yet registered."
+msgstr "Attention : la vérification porte sur un contenu non encore enregistré."
+
+msgid "You have unsaved changes. Switch post format will loose these changes. Proceed anyway?"
+msgstr "Vous avez des modifications non sauvegardées. Changer de format vous fera perdre ces modifications. Continuer ?"
+
+msgid "Warning: post format change will not convert existing content. You will need to apply new format by yourself. Proceed anyway?"
+msgstr "Attention : le changement de syntaxe ne transformera pas les balises des contenus déjà saisis. Pensez à les réadapter après cette opération. Confirmez-vous ce changement de syntaxe ?"
+
+msgid "Loading enhanced uploader, please wait."
+msgstr "Chargement de l'interface avancée."
+
+msgid "You have unsaved changes."
+msgstr "Vous n'avez pas enregistré vos modifications."
+
+msgid "close"
+msgstr "fermer"
+
+msgid "now"
+msgstr "maintenant"
+
+msgid "visual"
+msgstr "visuel"
+
+msgid "source"
+msgstr "source"
+
+msgid "You can use the following shortcuts to format your text."
+msgstr "Vous pouvez utiliser les raccourcis suivants pour formater votre texte."
+
+msgid "-- none --"
+msgstr "-- aucun --"
+
+msgid "-- block format --"
+msgstr "-- format bloc --"
+
+msgid "Paragraph"
+msgstr "Paragraphe"
+
+msgid "Level 1 header"
+msgstr "Titre de niveau 1"
+
+msgid "Level 2 header"
+msgstr "Titre de niveau 2"
+
+msgid "Level 3 header"
+msgstr "Titre de niveau 3"
+
+msgid "Level 4 header"
+msgstr "Titre de niveau 4"
+
+msgid "Level 5 header"
+msgstr "Titre de niveau 5"
+
+msgid "Level 6 header"
+msgstr "Titre de niveau 6"
+
+msgid "Strong emphasis"
+msgstr "Forte emphase"
+
+msgid "Emphasis"
+msgstr "Emphase"
+
+msgid "Inserted"
+msgstr "Insertion"
+
+msgid "Deleted"
+msgstr "Suppression"
+
+msgid "Inline quote"
+msgstr "Citation en ligne"
+
+msgid "Code"
+msgstr "Code"
+
+msgid "Line break"
+msgstr "Passage à la ligne"
+
+msgid "Blockquote"
+msgstr "Bloc de citation"
+
+msgid "Preformated text"
+msgstr "Texte préformaté"
+
+msgid "Unordered list"
+msgstr "Liste à puces"
+
+msgid "Ordered list"
+msgstr "Liste numérotée"
+
+msgid "Link"
+msgstr "Lien"
+
+msgid "URL?"
+msgstr "URL ?"
+
+msgid "Language?"
+msgstr "Langue ?"
+
+msgid "External image"
+msgstr "Image externe"
+
+msgid "Media chooser"
+msgstr "Sélecteur de média"
+
+msgid "Link to an entry"
+msgstr "Lien vers une entrée"
+
+msgid "Temporarily activate enhanced uploader"
+msgstr "Activer temporairement l'interface avancée"
+
+msgid "Temporarily disable enhanced uploader"
+msgstr "Désactiver temporairement l'interface avancée"
+
+msgid "Limit exceeded."
+msgstr "Limite dépassée."
+
+msgid "File size exceeds allowed limit."
+msgstr "La taille du fichier dépasse la limite autorisée."
+
+msgid "Canceled."
+msgstr "Annulé."
+
+msgid "HTTP Error:"
+msgstr "Erreur HTTP :"
+
+msgid "Clean"
+msgstr "Nettoyer"
+
+msgid "File successfully uploaded."
+msgstr "Fichier envoyé avec succès."
+
+msgid "No file in queue."
+msgstr "Aucun fichier en file d'attente."
+
+msgid "1 file in queue."
+msgstr "1 fichier en attente."
+
+#, php-format
+msgid "%d files in queue."
+msgstr "%d fichiers en attente."
+
+msgid "Queue error:"
+msgstr "Erreur de file d'attente :"
+
+msgid "First page"
+msgstr "Première page"
+
+msgid "Previous page"
+msgstr "Page précédente"
+
+msgid "Next page"
+msgstr "Page suivante"
+
+msgid "Last page"
+msgstr "Dernière page"
+
+#, php-format
+msgid "Page %s / %s"
+msgstr "Page %s / %s"
+
+#, php-format
+msgid "Direct access page %s"
+msgstr "Aller à la page : %s"
+
+msgid "&#171; prev."
+msgstr "&#171; préc."
+
+msgid "next &#187;"
+msgstr "suiv. &#187;"
+
+msgid "No entry"
+msgstr "Pas de billet"
+
+msgid "Entries list"
+msgstr "Liste des entrées"
+
+msgid "Protected"
+msgstr "Protégé"
+
+#, php-format
+msgid "%d attachment"
+msgstr "%d annexe"
+
+#, php-format
+msgid "%d attachments"
+msgstr "%d annexes"
+
+msgid "Type"
+msgstr "Type"
+
+#, php-format
+msgid "Edit the %1$s from %2$s"
+msgstr "Modifier le %1$s de %2$s"
+
+msgid "comment"
+msgstr "commentaire"
+
+msgid "trackback"
+msgstr "rétrolien"
+
+msgid "Type and author"
+msgstr "Type et auteur"
+
+msgid "No user"
+msgstr "Aucun utilisateur"
+
+msgid "Users list"
+msgstr "Liste des utilisateurs"
+
+msgid "admin"
+msgstr "Administrateur"
+
+msgid "superadmin"
+msgstr "Super administrateur"
+
+msgid "Database error"
+msgstr "Erreur de base de données"
+
+msgid "There seems to be no Session table in your database. Is Dotclear completly installed?"
+msgstr "Il semble de la table Session n'existe pas dans votre base de données. Dotclear est-il bien installé correctement?"
+
+msgid "System settings"
+msgstr "Réglages système"
+
+msgid "Blog"
+msgstr "Blog"
+
+msgid "Update"
+msgstr "Mise à jour"
+
 msgid "Languages"
 msgstr "Langues"
 
-#, php-format
-msgid "%d comments"
-msgid_plural "%d comments"
-msgstr[0] "%d commentaire"
-msgstr[1] "%d commentaires"
-
-msgid "Change blog"
-msgstr "Changer de blog"
-
-msgid "Blogs:"
-msgstr "Blogs :"
-
-msgid "Go to the content"
-msgstr "Aller au contenu"
-
-msgid "Go to the menu"
-msgstr "Aller au menu"
-
-msgid "Go to search"
-msgstr "Aller à la recherche"
-
-msgid "Go to site"
-msgstr "Aller sur le site"
-
-#, php-format
-msgid "Logout %s"
-msgstr "Déconnecter %s"
-
-msgid "Hide main menu"
-msgstr "Masquer le menu principal"
-
-msgid "Show main menu"
-msgstr "Afficher le menu principal"
-
-msgid "Safe mode"
-msgstr "Mode de secours"
-
-msgid "You are in safe mode. All plugins have been temporarily disabled. Remind to log out then log in again normally to get back all functionalities"
-msgstr "Vous êtes en mode de secours. Tous les plugins ont été temporairement désactivés. N'oubliez-pas de vous déconnecter puis de vous reconnecter normalement pour retrouver toutes les fonctionnalités"
-
-msgid "Error:"
-msgstr "Erreur :"
-
-msgid "[%H:%M:%S]"
-msgstr "[%H:%M:%S]"
-
-msgid "new window"
-msgstr "nouvelle fenêtre"
-
-#, php-format
-msgid "Thank you for using %s."
-msgstr "Merci d'utiliser %s."
-
-msgid "Go to dashboard"
-msgstr "Tableau de bord"
-
-msgid "Help about this page"
-msgstr "Aide pour cette page"
-
-#, php-format
-msgid "See also %s"
-msgstr "Voir également %s"
-
-msgid "the global help"
-msgstr "l'aide générale"
-
-msgid "uncover"
-msgstr "dévoiler"
-
-msgid "hide"
-msgstr "cacher"
-
-msgid "Need help?"
-msgstr "Besoin d'aide ?"
-
-msgid "Hide"
-msgstr "Cacher"
-
-msgid "Select:"
-msgstr "Sélectionner :"
-
-msgid "no selection"
-msgstr "aucun"
-
-msgid "select all"
-msgstr "tous"
-
-msgid "Invert selection"
-msgstr "Inverser la sélection"
-
-msgid "view entry"
-msgstr "voir le billet"
-
-#, php-format
-msgid "Are you sure you want to delete selected entries (%s)?"
-msgstr "Êtes-vous certain de vouloir supprimer les billets sélectionnés (%s) ?"
-
-#, php-format
-msgid "Are you sure you want to delete selected medias (%d)?"
-msgstr "Êtes-vous sûr de vouloir supprimer les médias sélectionnés (%d) ?"
-
-#, php-format
-msgid "Are you sure you want to delete selected categories (%s)?"
-msgstr "Êtes-vous certain de vouloir supprimer les categories sélectionnées (%s) ?"
-
-msgid "Are you sure you want to delete this entry?"
-msgstr "Êtes-vous certain de vouloir supprimer ce billet ?"
-
-msgid "Click here to unlock the field"
-msgstr "Cliquez ici pour déverrouiller ce champ"
-
-msgid "Are you sure you want to delete all spams?"
-msgstr "Êtes-vous certain de vouloir supprimer tous les indésirables ?"
-
-#, php-format
-msgid "Are you sure you want to delete selected comments (%s)?"
-msgstr "Êtes-vous certain de vouloir supprimer les commentaires sélectionnés (%s) ?"
-
-msgid "Are you sure you want to delete this comment?"
-msgstr "Êtes-vous certain de vouloir supprimer ce commentaire ?"
-
-msgid "Users with posts cannot be deleted."
-msgstr "Les utilisateurs ayant écrit des entrées ne peuvent être supprimés."
-
-#, php-format
-msgid "Are you sure you want to delete selected users (%s)?"
-msgstr "Êtes-vous certain de vouloir supprimer les utilisateurs sélectionnés (%s) ?"
-
-#, php-format
-msgid "Are you sure you want to delete category \"%s\"?"
-msgstr "Êtes-vous certain de vouloir supprimer la catégorie \"%s\" ?"
-
-msgid "Are you sure you want to reorder all categories?"
-msgstr "Êtes-vous certain de vouloir réinitialiser l'ordre des catégories ?"
-
-#, php-format
-msgid "Are you sure you want to remove media \"%s\"?"
-msgstr "Êtes-vous certain de vouloir supprimer le média \"%s\" ?"
-
-msgid "Are you sure you want to extract archive in current directory?"
-msgstr "Êtes-vous certain de vouloir extraire l'archive dans le répertoire actuel ?"
-
-#, php-format
-msgid "Are you sure you want to remove attachment \"%s\"?"
-msgstr "Êtes-vous certain de vouloir supprimer l'annexe \"%s\" ?"
-
-#, php-format
-msgid "Are you sure you want to delete \"%s\" language?"
-msgstr "Êtes-vous certain de vouloir supprimer la langue \"%s\" ?"
-
-#, php-format
-msgid "Are you sure you want to delete \"%s\" plugin?"
-msgstr "Êtes-vous certain de vouloir supprimer le plugin \"%s\" ?"
-
-msgid "Use this theme"
-msgstr "Utiliser ce thème"
-
-msgid "Remove this theme"
-msgstr "Supprimer ce thème"
-
-#, php-format
-msgid "Are you sure you want to delete \"%s\" theme?"
-msgstr "Êtes-vous certain de vouloir supprimer le thème \"%s\" ?"
-
-msgid "Are you sure you want to delete this backup?"
-msgstr "Êtes-vous certain de vouloir supprimer cette sauvegarde ?"
-
-msgid "Zip file content"
-msgstr "Contenu du fichier zip"
-
-msgid "XHTML markup validator"
-msgstr "Vérifier la validité XHTML"
-
-msgid "XHTML content is valid."
-msgstr "Le contenu XHTML est valide."
-
-msgid "There are XHTML markup errors."
-msgstr "Il y a des erreurs XHTML."
-
-msgid "Attention: an audit of a content not yet registered."
-msgstr "Attention : la vérification porte sur un contenu non encore enregistré."
-
-msgid "You have unsaved changes. Switch post format will loose these changes. Proceed anyway?"
-msgstr "Vous avez des modifications non sauvegardées. Changer de format vous fera perdre ces modifications. Continuer ?"
-
-msgid "Warning: post format change will not convert existing content. You will need to apply new format by yourself. Proceed anyway?"
-msgstr "Attention : le changement de syntaxe ne transformera pas les balises des contenus déjà saisis. Pensez à les réadapter après cette opération. Confirmez-vous ce changement de syntaxe ?"
-
-msgid "Loading enhanced uploader, please wait."
-msgstr "Chargement de l'interface avancée."
-
-msgid "You have unsaved changes."
-msgstr "Vous n'avez pas enregistré vos modifications."
-
-msgid "close"
-msgstr "fermer"
-
-msgid "now"
-msgstr "maintenant"
-
-msgid "visual"
-msgstr "visuel"
-
-msgid "source"
-msgstr "source"
-
-msgid "You can use the following shortcuts to format your text."
-msgstr "Vous pouvez utiliser les raccourcis suivants pour formater votre texte."
-
-msgid "-- none --"
-msgstr "-- aucun --"
-
-msgid "-- block format --"
-msgstr "-- format bloc --"
-
-msgid "Paragraph"
-msgstr "Paragraphe"
-
-msgid "Level 1 header"
-msgstr "Titre de niveau 1"
-
-msgid "Level 2 header"
-msgstr "Titre de niveau 2"
-
-msgid "Level 3 header"
-msgstr "Titre de niveau 3"
-
-msgid "Level 4 header"
-msgstr "Titre de niveau 4"
-
-msgid "Level 5 header"
-msgstr "Titre de niveau 5"
-
-msgid "Level 6 header"
-msgstr "Titre de niveau 6"
-
-msgid "Strong emphasis"
-msgstr "Forte emphase"
-
-msgid "Emphasis"
-msgstr "Emphase"
-
-msgid "Inserted"
-msgstr "Insertion"
-
-msgid "Deleted"
-msgstr "Suppression"
-
-msgid "Inline quote"
-msgstr "Citation en ligne"
-
-msgid "Code"
-msgstr "Code"
-
-msgid "Line break"
-msgstr "Passage à la ligne"
-
-msgid "Blockquote"
-msgstr "Bloc de citation"
-
-msgid "Preformated text"
-msgstr "Texte préformaté"
-
-msgid "Unordered list"
-msgstr "Liste à puces"
-
-msgid "Ordered list"
-msgstr "Liste numérotée"
-
-msgid "Link"
-msgstr "Lien"
-
-msgid "URL?"
-msgstr "URL ?"
-
-msgid "Language?"
-msgstr "Langue ?"
-
-msgid "External image"
-msgstr "Image externe"
-
-msgid "Media chooser"
-msgstr "Sélecteur de média"
-
-msgid "Link to an entry"
-msgstr "Lien vers une entrée"
-
-msgid "Temporarily activate enhanced uploader"
-msgstr "Activer temporairement l'interface avancée"
-
-msgid "Temporarily disable enhanced uploader"
-msgstr "Désactiver temporairement l'interface avancée"
-
-msgid "Limit exceeded."
-msgstr "Limite dépassée."
-
-msgid "File size exceeds allowed limit."
-msgstr "La taille du fichier dépasse la limite autorisée."
-
-msgid "Canceled."
-msgstr "Annulé."
-
-msgid "HTTP Error:"
-msgstr "Erreur HTTP :"
-
-msgid "Clean"
-msgstr "Nettoyer"
-
-msgid "File successfully uploaded."
-msgstr "Fichier envoyé avec succès."
-
-msgid "No file in queue."
-msgstr "Aucun fichier en file d'attente."
-
-msgid "1 file in queue."
-msgstr "1 fichier en attente."
-
-#, php-format
-msgid "%d files in queue."
-msgstr "%d fichiers en attente."
-
-msgid "Queue error:"
-msgstr "Erreur de file d'attente :"
-
-msgid "First page"
-msgstr "Première page"
-
-msgid "Previous page"
-msgstr "Page précédente"
-
-msgid "Next page"
-msgstr "Page suivante"
-
-msgid "Last page"
-msgstr "Dernière page"
-
-#, php-format
-msgid "Page %s / %s"
-msgstr "Page %s / %s"
-
-#, php-format
-msgid "Direct access page %s"
-msgstr "Aller à la page : %s"
-
-msgid "&#171; prev."
-msgstr "&#171; préc."
-
-msgid "next &#187;"
-msgstr "suiv. &#187;"
-
-msgid "No entry matches the filter"
-msgstr "Aucune entrée correspondant au filtre"
-
-msgid "No entry"
-msgstr "Pas de billet"
-
-#, php-format
-msgid "List of %s entries match the filter."
-msgstr "Liste des %s billets correspondant au filtre"
-
-msgid "Entries list"
-msgstr "Liste des entrées"
-
-msgid "Protected"
-msgstr "Protégé"
-
-#, php-format
-msgid "%d attachment"
-msgstr "%d annexe"
-
-#, php-format
-msgid "%d attachments"
-msgstr "%d annexes"
-
-msgid "No comments or trackbacks matches the filter"
-msgstr "aucun commentaire ou rétrolien correspondant au filtre"
-
-#, php-format
-msgid "List of %s Comments or trackbacks match the filter."
-msgstr "Liste des %s commentaires ou rétroliens correspondant au filtre"
-
-msgid "Type"
-msgstr "Type"
-
-msgid "Entry"
-msgstr "Billet"
-
-#, php-format
-msgid "Edit the %1$s from %2$s"
-msgstr "Modifier le %1$s de %2$s"
-
-msgid "comment"
-msgstr "commentaire"
-
-msgid "trackback"
-msgstr "rétrolien"
-
-msgid "Type and author"
-msgstr "Type et auteur"
-
-msgid "No user matches the filter"
-msgstr ""
-
-msgid "No user"
-msgstr "Aucun utilisateur"
-
-#, php-format
-msgid "List of %s users match the filter."
-msgstr ""
-
-msgid "Users list"
-msgstr "Liste des utilisateurs"
-
-msgid "admin"
-msgstr "Administrateur"
-
-msgid "superadmin"
-msgstr "Super administrateur"
-
-msgid "Database error"
-msgstr "Erreur de base de données"
-
-msgid "There seems to be no Session table in your database. Is Dotclear completly installed?"
-msgstr "Il semble de la table Session n'existe pas dans votre base de données. Dotclear est-il bien installé correctement?"
-
-msgid "System settings"
-msgstr "Réglages système"
-
-msgid "Blog"
-msgstr "Blog"
-
-msgid "Update"
-msgstr "Mise à jour"
-
-msgid "moyenne"
-msgstr ""
-
-msgid "petite"
-msgstr ""
-
-msgid "vignettes"
-msgstr ""
-
-msgid "carrée"
-msgstr ""
-
-msgid "Posts"
-msgstr "Billets"
-
-msgid "Pages"
-msgstr "Pages"
-
 msgid "administrator"
 msgstr "administrateur"
@@ -3145,10 +3126,6 @@
 
 #, php-format
-msgid "Module \"%s\" has type \"%s\" that mismatch required module type \"%s\"."
-msgstr ""
-
-#, php-format
-msgid "Module \"%s\" is installed twice in \"%s\" and \"%s\"."
-msgstr ""
+msgid "%s: in [%s] and [%s]"
+msgstr "%s : dans [%s] et [%s]"
 
 msgid "Empty module zip file."
@@ -3449,113 +3426,10 @@
 msgstr "L'erreur suivante a été rencontrée lors de la tentative d'accès à la base de données :"
 
-
-#~ msgid "Blogroll"
-#~ msgstr "Liste de liens"
-
-#~ msgid "Simple menu"
-#~ msgstr "Menu simple sur Dotclear"
-
-#~ msgid "medium"
-#~ msgstr "moyenne"
-
-#~ msgid "small"
-#~ msgstr "petite"
-
-#~ msgid "thumbnail"
-#~ msgstr "vignettes"
-
-#~ msgid "square"
-#~ msgstr "carrée"
-
-#~ msgid "Manage post attachments"
-#~ msgstr "Gérer les annexes"
-
-#~ msgid "Manage your blogroll"
-#~ msgstr "Gérez votre listes de liens"
-
-#~ msgid "Configure your Blowup Theme"
-#~ msgstr "Configurer votre thème Blowup"
-
-#~ msgid "Maintain your installation"
-#~ msgstr "Maintenir votre installation"
-
-#~ msgid "Simple menu for Dotclear"
-#~ msgstr "Menu simple sur Dotclear"
-
-#~ msgid "Search engine form"
-#~ msgstr "Formulaire du moteur de recherche"
-
-#~ msgid "List of navigation links"
-#~ msgstr "Liste des liens de navigation"
-
-#~ msgid "List of selected entries"
-#~ msgstr "Entrées sélectionnées"
-
-#~ msgid "List of available languages"
-#~ msgstr "Langues disponibles"
-
-#~ msgid "List of categories"
-#~ msgstr "Liste des catégories du blog"
-
-#~ msgid "Last entries from feed"
-#~ msgstr "Derniers billets du flux"
-
-#~ msgid "List of last entries published"
-#~ msgstr "Derniers billets publiés"
-
-#~ msgid "List of last comments posted"
-#~ msgstr "Derniers commentaires postés"
-
-#~ msgid "List of published pages"
-#~ msgstr "Liste des pages publiées"
-
-#~ msgid "Blogroll list"
-#~ msgstr "Liste des liens"
-
-#~ msgid "%d comment"
-#~ msgstr "%d commentaire"
-
-#~ msgid "Some plugins are installed twice:"
-#~ msgstr "Ces plugins sont installés en double :"
-
-#~ msgid "Sort"
-#~ msgstr "Trier"
-
-#~ msgid "Filter posts list"
-#~ msgstr "Filtrer la liste des billets"
-
-#~ msgid "Number of media displayed per page:"
-#~ msgstr "Nombre de médias affichés par page :"
-
-#~ msgid "publish"
-#~ msgstr "publier"
-
-#~ msgid "unpublish"
-#~ msgstr "mettre hors ligne"
-
-#~ msgid "schedule"
-#~ msgstr "programmer"
-
-#~ msgid "mark as pending"
-#~ msgstr "mettre en attente"
-
-#~ msgid "change category"
-#~ msgstr "changer la catégorie"
-
-#~ msgid "change author"
-#~ msgstr "changer l'auteur"
-
-#~ msgid "mark as junk"
-#~ msgstr "mettre en indésirable"
-
-#~ msgid "Filter users list"
-#~ msgstr "Filtrer la liste des utilisateurs"
-
-#~ msgid "%s: in [%s] and [%s]"
-#~ msgstr "%s : dans [%s] et [%s]"
-
 #~ msgid "Leave blank to disable this feature."
 #~ msgstr "Laissez vide pour annuler ce comportement."
 
+#~ msgid "Back to comments list"
+#~ msgstr "Retour à la liste des commentaires"
+
 #~ msgid "Compress this directory with its content as a zip file and download it."
 #~ msgstr "Compressez ce dossier et son contenu dans un fichier zip et téléchargez-le."
@@ -3611,4 +3485,7 @@
 #~ msgid "edit"
 #~ msgstr "modifier"
+
+#~ msgid "The category has been successfully created."
+#~ msgstr "Catégorie créée avec succès."
 
 #~ msgid "Remove a category"
@@ -3825,2 +3702,20 @@
 #~ msgid "Favorites"
 #~ msgstr "Favoris"
+
+msgid "Default media insertion settings have been successfully updated."
+msgstr "Les paramètres par défaut d'insertion des médias ont été mis à jour avec succès."
+
+msgid "Make current settings as default"
+msgstr "Mémoriser ces réglages d'insertion"
+
+msgid "Trackbacks received"
+msgstr "Rétroliens reçus"
+
+msgid "Show filters and display options"
+msgstr "Afficher les filtres et options d'affichage"
+
+msgid "Cancel filters and display options"
+msgstr "Annuler les filtres et options d'affichage"
+
+msgid "Number of elements displayed per page:"
+msgstr "Nombre d'éléments affichés par page :"
Index: locales/fr/plugins.po
===================================================================
--- locales/fr/plugins.po	(revision 2258)
+++ locales/fr/plugins.po	(revision 2142)
@@ -11,5 +11,5 @@
 "Project-Id-Version: Dotclear\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-04 13:51+0000\n"
+"POT-Creation-Date: 2013-09-24 07:51+0000\n"
 "PO-Revision-Date: 2012-11-06 10:04+0100\n"
 "Last-Translator: Franck Paul <carnet.franck.paul@gmail.com>\n"
@@ -22,108 +22,18 @@
 "X-Generator: Poedit 1.5.4\n"
 
-msgid "Manage every blog configuration directive"
-msgstr "Gestion des directives de configuration des blogs"
-
-msgid "Akismet interface for Dotclear"
-msgstr "Interface Akismet pour Dotclear"
-
-msgid "Generic antispam plugin for Dotclear"
-msgstr "Antispam générique pour Dotclear"
-
-msgid "Manage post attachments"
-msgstr "Gestion des fichiers attachés"
-
-msgid "Manage your blogroll"
-msgstr "Gestion de votre liste de liens"
-
-msgid "Configure your Blowup Theme"
-msgstr "Configurer votre thème Blowup"
-
-msgid "Install and update your plugins live from DotAddict.org"
-msgstr ""
-
-msgid "Trackback validity check"
-msgstr "Contrôle de validité des rétroliens"
-
-msgid "Import and Export your blog"
-msgstr "Importez et exportez votre blog"
-
-msgid "Maintain your installation"
-msgstr "Maintenez votre installation"
-
-msgid "Serve entries as simple web pages"
-msgstr "Publie des billets comme de simples pages web"
-
-msgid "Ping services"
-msgstr "Services de signalement"
-
-msgid "Simple menu for Dotclear"
-msgstr "Menu simple pour Dotclear"
-
-msgid "Tags for posts"
-msgstr "Mots-clés pour les billets"
-
-msgid "Theme Editor"
-msgstr "Éditeur de thème"
-
-msgid "Manage every user preference directive"
-msgstr "Gestion des préférences utilisateur"
-
-msgid "Widgets for your blog sidebars"
-msgstr "Widgets pour les volets de votre blog"
-
-msgid "Search engine form"
-msgstr "Formulaire de recherche"
-
-msgid "List of navigation links"
-msgstr "Liste des liens de navigation"
-
-msgid "List of selected entries"
-msgstr "Liste des billets sélectionnés"
-
-msgid "List of available languages"
-msgstr "Liste des langues disponibles"
-
-msgid "List of categories"
-msgstr "Liste des catégories"
-
-msgid "RSS or Atom feed subscription links"
-msgstr "Liens d'abonnements aux flux RSS ou Atom"
-
-msgid "Last entries from feed"
-msgstr "Derniers billets d'un flux"
-
-msgid "Simple text"
-msgstr "Texte simple"
-
-msgid "List of last entries published"
-msgstr "Derniers billets publiés"
-
-msgid "List of last comments posted"
-msgstr "Liste des derniers commentaires postés"
-
-msgid "Tags cloud"
-msgstr "Nuage de mots-clés"
-
-msgid "List of published pages"
-msgstr "Liste des pages publiées"
-
-msgid "Blogroll list"
-msgstr "Liste de liens"
-
-msgid "List of simple menu items"
-msgstr "Liste des éléments de menu simple"
+msgid "no"
+msgstr "non"
+
+msgid "yes"
+msgstr "oui"
+
+msgid "about:config"
+msgstr "about:config"
 
 msgid "Configuration successfully updated"
 msgstr "La configuration a été mise à jour avec succès"
 
-msgid "no"
-msgstr "non"
-
-msgid "yes"
-msgstr "oui"
-
-msgid "about:config"
-msgstr "about:config"
+msgid "Settings definition successfully updated"
+msgstr "Les réglages ont été enregistrés avec succès"
 
 #, php-format
@@ -232,7 +142,4 @@
 msgstr "Filtré par %1$s par le serveur %2$s."
 
-msgid "The list of DNSBL servers has been succesfully updated."
-msgstr "La liste des serveurs DNSBL a été mise à jour avec succès"
-
 msgid "IP Lookup servers"
 msgstr "Serveurs de contrôle d'IP"
@@ -323,27 +230,24 @@
 msgstr "Ce filtre n'a pas de réglages."
 
+#, php-format
+msgid "%s configuration"
+msgstr "Configuration de %s"
+
+#, php-format
+msgid "%s filter configuration"
+msgstr "Configuration du filtre %s"
+
+msgid "Information"
+msgstr "Informations"
+
+msgid "Junk comments:"
+msgstr "Commentaires indésirables :"
+
+msgid "Published comments:"
+msgstr "Commentaires publiés :"
+
 msgid "Filters configuration has been successfully saved."
 msgstr "La configuration des filtres a été enregistrée avec succès."
 
-#, php-format
-msgid "%s configuration"
-msgstr "Configuration de %s"
-
-#, php-format
-msgid "%s filter configuration"
-msgstr "Configuration du filtre %s"
-
-msgid "Back to filters list"
-msgstr "Retour à la liste des filtres"
-
-msgid "Information"
-msgstr "Informations"
-
-msgid "Junk comments:"
-msgstr "Commentaires indésirables :"
-
-msgid "Published comments:"
-msgstr "Commentaires publiés :"
-
 msgid "Available spam filters"
 msgstr "Filtres d'indésirable disponibles"
@@ -392,7 +296,4 @@
 msgstr "Ajouter des fichiers à la page"
 
-msgid "Blogroll"
-msgstr "Liste des liens"
-
 msgid "manage blogroll"
 msgstr "Gestion de la liste des liens"
@@ -437,16 +338,16 @@
 msgstr "Pas de lien ou de titre"
 
+msgid "Return to blogroll"
+msgstr "Retourner à la liste des liens"
+
+msgid "Category has been successfully updated"
+msgstr "La catégorie a été mise à jour avec succès"
+
+msgid "Edit category"
+msgstr "Modifier la catégorie"
+
 msgid "Link has been successfully updated"
 msgstr "Le lien a été mis à jour avec succès"
 
-msgid "Category has been successfully updated"
-msgstr "La catégorie a été mise à jour avec succès"
-
-msgid "Return to blogroll"
-msgstr "Retourner à la liste des liens"
-
-msgid "Edit category"
-msgstr "Modifier la catégorie"
-
 msgid "Edit link"
 msgstr "Modifier le lien"
@@ -533,22 +434,22 @@
 msgstr "Rien à importer"
 
+msgid "Import operation cancelled."
+msgstr "L'importation a été annulée."
+
+msgid "Items order has been successfully updated"
+msgstr "L'ordre des éléments a été mis à jour avec succès"
+
+msgid "Items have been successfully removed."
+msgstr "Les éléments ont été retirés avec succès."
+
+msgid "Link has been successfully created."
+msgstr "Le lien a été créé avec succès."
+
+msgid "category has been successfully created."
+msgstr "La catégorie a été créée avec succès."
+
 msgid "links have been successfully imported."
 msgstr "Les liens ont été importés avec succès."
 
-msgid "Import operation cancelled."
-msgstr "L'importation a été annulée."
-
-msgid "Link has been successfully created."
-msgstr "Le lien a été créé avec succès."
-
-msgid "category has been successfully created."
-msgstr "La catégorie a été créée avec succès."
-
-msgid "Items have been successfully removed."
-msgstr "Les éléments ont été retirés avec succès."
-
-msgid "Items order has been successfully updated"
-msgstr "L'ordre des éléments a été mis à jour avec succès"
-
 msgid "URL"
 msgstr "URL"
@@ -599,22 +500,22 @@
 msgstr "Personnalisé…"
 
+msgid "Blowup configuration"
+msgstr "Configuration de Blowup"
+
+msgid "Predefined styles"
+msgstr "Styles prédéfinis"
+
+msgid "Apply code"
+msgstr "Appliquer le code"
+
+msgid "Choose a predefined style"
+msgstr "Sélectionnez un style prédéfini"
+
+msgid "For the following reasons, images cannot be created. You won't be able to change some background properties."
+msgstr "Pour les raisons suivantes, les images n'ont pu être créées. Vous ne pourrez pas changer certaines propriétés de fond."
+
 msgid "Theme configuration has been successfully updated."
 msgstr "La configuration du thème a été enregistrée avec succès."
 
-msgid "Blowup configuration"
-msgstr "Configuration de Blowup"
-
-msgid "Predefined styles"
-msgstr "Styles prédéfinis"
-
-msgid "Apply code"
-msgstr "Appliquer le code"
-
-msgid "Choose a predefined style"
-msgstr "Sélectionnez un style prédéfini"
-
-msgid "For the following reasons, images cannot be created. You won't be able to change some background properties."
-msgstr "Pour les raisons suivantes, les images n'ont pu être créées. Vous ne pourrez pas changer certaines propriétés de fond."
-
 msgid "Customization"
 msgstr "Personnalisation"
@@ -868,4 +769,7 @@
 msgid "by"
 msgstr "par"
+
+msgid "By"
+msgstr "Par"
 
 msgid "More details"
@@ -1448,216 +1352,895 @@
 msgstr "Enregistrer ces réglages"
 
+#, php-format
+msgid "%d page"
+msgstr "%d page"
+
+#, php-format
+msgid "%d pages"
+msgstr "%d pages"
+
+msgid "manage pages"
+msgstr "gestion des pages"
+
+msgid "My first page"
+msgstr "Ma première page"
+
+msgid "<p>"
+msgstr ""
+
+msgid "This is your first page. When you're ready to blog, log in to edit or delete it."
+msgstr "Ceci est votre première page. Quand vous serez prêt à bloguer, connectez-vous pour l'éditer ou la supprimer."
+
+msgid "Published on"
+msgstr "Publié le"
+
+msgid "This page's comments feed"
+msgstr "Flux des commentaires de cette page"
+
+msgid "You must provide a valid email address."
+msgstr "Vous devez indiquer une adresse e-mail valide."
+
+msgid "Page title"
+msgstr "Titre de la page"
+
+msgid "Page position"
+msgstr "Position de la page"
+
+msgid "Publication date"
+msgstr "Date de publication"
+
+msgid "Pages actions"
+msgstr "Action sur les pages"
+
+msgid "Back to pages list"
+msgstr "Retour à la liste des pages"
+
+msgid "No page"
+msgstr "Aucune page"
+
+msgid "Hidden"
+msgstr "Masqué"
+
+msgid "Select this page"
+msgstr "Sélectionner cette page"
+
+msgid "Are you sure you want to delete selected pages?"
+msgstr "Êtes-vous sûr de vouloir supprimer les pages sélectionnées ?"
+
+msgid "Selected pages have been successfully updated."
+msgstr "Les pages sélectionnées ont été modifiées avec succès."
+
+msgid "Selected pages have been successfully deleted."
+msgstr "Les pages sélectionnées ont été supprimées avec succès."
+
+msgid "Selected pages have been successfully reordered."
+msgstr "Les pages sélectionnées ont été réordonnées avec succès."
+
 msgid "New page"
 msgstr "Nouvelle page"
 
-#, php-format
-msgid "%d page"
-msgstr "%d page"
-
-#, php-format
-msgid "%d pages"
-msgstr "%d pages"
-
-msgid "manage pages"
-msgstr "gestion des pages"
-
-msgid "My first page"
-msgstr "Ma première page"
-
-msgid "<p>"
-msgstr ""
-
-msgid "This is your first page. When you're ready to blog, log in to edit or delete it."
-msgstr "Ceci est votre première page. Quand vous serez prêt à bloguer, connectez-vous pour l'éditer ou la supprimer."
-
-msgid "Published on"
-msgstr "Publié le"
-
-msgid "This page's comments feed"
-msgstr "Flux des commentaires de cette page"
-
-msgid "You must provide a valid email address."
-msgstr "Vous devez indiquer une adresse e-mail valide."
-
-msgid "Page title"
-msgstr "Titre de la page"
-
-msgid "Page position"
-msgstr "Position de la page"
-
-msgid "Publication date"
-msgstr "Date de publication"
-
-msgid "Pages actions"
-msgstr "Action sur les pages"
-
-msgid "Back to pages list"
-msgstr "Retour à la liste des pages"
-
-msgid "Selected pages have been successfully reordered."
-msgstr "Les pages sélectionnées ont été réordonnées avec succès."
-
-msgid "No page"
-msgstr "Aucune page"
-
-msgid "Hidden"
-msgstr "Masqué"
-
-msgid "Select this page"
-msgstr "Sélectionner cette page"
-
-msgid "Are you sure you want to delete selected pages?"
-msgstr "Êtes-vous sûr de vouloir supprimer les pages sélectionnées ?"
-
-msgid "Selected pages have been successfully updated."
-msgstr "Les pages sélectionnées ont été modifiées avec succès."
-
-msgid "Selected pages have been successfully deleted."
-msgstr "Les pages sélectionnées ont été supprimées avec succès."
-
 msgid "Selected pages action:"
 msgstr "Action sur les pages sélectionnées :"
 
+msgid "Save pages order"
+msgstr "Enregistrer l'ordre des pages"
+
+msgid "This page does not exist."
+msgstr "Cette page n'existe pas."
+
+msgid "Edit page"
+msgstr "Modifier la page"
+
+msgid "Are you sure you want to delete this page?"
+msgstr "Êtes-vous sûr de vouloir supprimer cette page ?"
+
+msgid "Page has been successfully updated."
+msgstr "La page a été modifiée avec succès."
+
+msgid "Page has been successfully created."
+msgstr "La page a été créée avec succès."
+
+msgid "Go to this page on the site"
+msgstr "Voir cette page sur le site"
+
+msgid "Page status"
+msgstr "État de la page"
+
+msgid "Page language"
+msgstr "Langue de la page"
+
+msgid "Hide in widget Pages"
+msgstr "Ne pas lister dans le widget Pages"
+
+msgid "Warning: If you set the URL manually, it may conflict with another page."
+msgstr "Attention : si vous définissez vous-même l'URL, elle peut entrer en conflit avec celle d'une autre page."
+
+msgid "Introduction to the page."
+msgstr "Introduction à la page."
+
+msgid "Select this comment"
+msgstr "Sélectionner ce commentaire"
+
+msgid "Pings"
+msgstr "Signalements (pings)"
+
+msgid "Pings configuration"
+msgstr "Configuration des signalements"
+
+msgid "Settings have been successfully updated."
+msgstr "Les réglages ont été modifiés avec succès."
+
+msgid "Activate pings extension"
+msgstr "Activer le plugin de signalement"
+
+msgid "Service name:"
+msgstr "Nom du service :"
+
+msgid "Service URI:"
+msgstr "URI du service :"
+
+msgid "Error"
+msgstr "Erreur"
+
+msgid "Test ping services"
+msgstr "Tester les services de signalement"
+
+msgid "Check all"
+msgstr "Tout sélectionner"
+
+msgid "Simple menu"
+msgstr "Menu simple"
+
+msgid "All months"
+msgstr "Tous les mois"
+
+msgid "All tags"
+msgstr "Tous les mots-clés"
+
+msgid "Home"
+msgstr "Accueil"
+
+msgid "Archive"
+msgstr "Archive"
+
+msgid "Page"
+msgstr "Page"
+
+msgid "Tags"
+msgstr "Mots-clés"
+
+msgid "User defined"
+msgstr "Saisie libre"
+
+msgid "Label"
+msgstr "Libellé"
+
+msgid "Recent posts"
+msgstr "Billets récents"
+
+#, php-format
+msgid "Switch to %s language"
+msgstr "Basculer vers le %s"
+
+msgid "Recent Posts from this category"
+msgstr "Billets récents de cette catégorie"
+
+msgid "Archives"
+msgstr "Archives"
+
+#, php-format
+msgid "Posts from %s"
+msgstr "Billets de %s"
+
+#, php-format
+msgid "Recent posts for %s tag"
+msgstr "Billets récent pour le mot-clé %s"
+
+msgid "Label and URL of menu item are mandatory."
+msgstr "Les libellés et URL sont obligatoires."
+
+msgid "No menu items selected."
+msgstr "Aucun item de menu sélectionné."
+
+msgid "Label is mandatory."
+msgstr "Le libellé est obligatoire."
+
+msgid "URL is mandatory."
+msgstr "l’URL est obligatoire."
+
+msgid "Add item"
+msgstr "Ajouter un item de menu"
+
+msgid "Menu item has been successfully added."
+msgstr "L'item de menu a été ajouté avec succès."
+
+msgid "Menu items have been successfully removed."
+msgstr "Le ou les items de menu ont été supprimés avec succès."
+
+msgid "Menu items have been successfully updated."
+msgstr "Le ou les items de menu ont été mis à jour avec succès."
+
+msgid "Select type"
+msgstr "Sélection du type"
+
+msgid "Type of item menu:"
+msgstr "Type d'item de menu :"
+
+msgid "Continue..."
+msgstr "Continuer…"
+
+msgid "Select language:"
+msgstr "Sélectionnez la langue :"
+
+msgid "Select category:"
+msgstr "Sélectionnez la catégorie :"
+
+msgid "Select month (if necessary):"
+msgstr "Sélectionnez le mois (si nécessaire) :"
+
+msgid "Select page:"
+msgstr "Sélectionnez la page :"
+
+msgid "Select tag (if necessary):"
+msgstr "Sélectionnez le mot clé (si nécessaire) :"
+
+msgid "Label of item menu:"
+msgstr "Libellé de l'item de menu :"
+
+msgid "Description of item menu:"
+msgstr "Description de l'item de menu :"
+
+msgid "URL of item menu:"
+msgstr "URL de l'item de menu :"
+
+msgid "Add this item"
+msgstr "Ajouter cet item"
+
+msgid "Add an item"
+msgstr "Ajouter un item de menu"
+
+msgid "Menu items list"
+msgstr "Liste des items de menu"
+
+msgid "Update menu"
+msgstr "Mettre à jour le menu"
+
+msgid "Delete selected menu items"
+msgstr "Supprimer les items de menu sélectionnés"
+
+msgid "Are you sure you want to remove selected menu items?"
+msgstr "Êtes-vous sûr de vouloir supprimer les items de menu sélectionnés ?"
+
+msgid "No menu items so far."
+msgstr "Aucun item de menu pour l'instant."
+
+msgid "Add tags"
+msgstr "Ajouter des mots-clés"
+
+msgid "Remove tags"
+msgstr "Retirer des mots-clés"
+
+msgid "Add tags to this selection"
+msgstr "Ajouter des mots-clés à cette sélection"
+
+#, php-format
+msgid "Are you sure you want to remove this %s?"
+msgstr "Êtes-vous sûr de vouloir supprimer ce %s ?"
+
+#, php-format
+msgid "Add a %s to this entry"
+msgstr "Ajouter %s à ce billet"
+
+msgid "Choose from list"
+msgstr "Choisir dans la liste"
+
+msgid "all"
+msgstr "tous"
+
+msgid "Enter tags separated by coma"
+msgstr "Entrez les mots-clés séparés par des virgules"
+
+msgid "used in %e - frequency %p%"
+msgstr "utilisé dans %e - fréquence %p%"
+
+msgid "entry"
+msgstr "billet"
+
+msgid "entries"
+msgstr "billets"
+
+msgid "Tags to add:"
+msgstr "Mots-clés à ajouter :"
+
+msgid "No tags for selected entries"
+msgstr "Aucun mot-clé pour les billets sélectionnés"
+
+msgid "Remove selected tags from this selection"
+msgstr "Retirer les mots-clés de cette sélection"
+
+msgid "Following tags have been found in selected entries:"
+msgstr "Les mots-clés suivants ont été trouvés pour les billets sélectionnés :"
+
+msgid "Tag"
+msgstr "Mot-clé"
+
+msgid "Short"
+msgstr "Court"
+
+msgid "Extended"
+msgstr "Étendu"
+
+msgid "Tags list format:"
+msgstr "Format de la liste des mots-clés :"
+
+msgid "This tag's comments Atom feed"
+msgstr "Flux Atom des commentaires associés à ce mot-clé"
+
+msgid "This tag's entries Atom feed"
+msgstr "Flux Atom des billets associés à ce mot-clé"
+
+msgid "Limit (empty means no limit):"
+msgstr "Limite (laisser vide si pas de limite) :"
+
+msgid "Entries count"
+msgstr "Nombre de billets"
+
+msgid "Tag name"
+msgstr "Nom du mot-clé"
+
+msgid "Link to all tags:"
+msgstr "Lien vers tous les mots-clés :"
+
+#, php-format
+msgid "Are you sure you want to remove tag: “%s”?"
+msgstr "Êtes-vous sûr de vouloir supprimer le mot-clé “%s” ?"
+
+msgid "Tag has been successfully renamed"
+msgstr "Le mot-clé a été renommé avec succès"
+
+msgid "Back to tags list"
+msgstr "Retour à la liste des mots-clés"
+
+msgid "Edit tag name:"
+msgstr "Renommer ce mot-clé :"
+
+msgid "Rename"
+msgstr "Renommer"
+
+msgid "Delete this tag"
+msgstr "Supprimer ce mot-clé"
+
+#, php-format
+msgid "List of entries with the tag “%s”"
+msgstr "Liste des billets avec le mot-clé “%s”"
+
+msgid "Tag has been successfully removed"
+msgstr "Le mot-clé a été retiré avec succès"
+
+msgid "No tags on this blog."
+msgstr "Aucun mot-clé sur ce blog."
+
+msgid "Edit theme files"
+msgstr "Modifier les fichiers du thème"
+
+msgid "Syntax color for theme editor"
+msgstr "Coloration syntaxique de l'éditeur de thème"
+
+msgid "No file"
+msgstr "Aucun fichier"
+
+msgid "File does not exist."
+msgstr "Ce fichier n'existe pas."
+
+#, php-format
+msgid "File %s is not readable"
+msgstr "Le fichier %s n'est pas lisible"
+
+#, php-format
+msgid "Unable to write file %s. Please check your theme files and folders permissions."
+msgstr "Impossible d'écrire le fichier %s. Contrôlez les permissions des fichiers et des répertoires de votre thème."
+
+msgid "Saving document..."
+msgstr "Enregistrement du document…"
+
+msgid "Document saved"
+msgstr "Document enregistré"
+
+msgid "An error occurred:"
+msgstr "Une erreur est survenue :"
+
+#, php-format
+msgid "Your current theme on this blog is \"%s\"."
+msgstr "Actuellement votre thème sur ce blog est « %s »."
+
+msgid "You can't edit default theme."
+msgstr "Vous ne pouvez pas modifier le thème par défaut."
+
+msgid "Please select a file to edit."
+msgstr "Sélectionnez un fichier à modifier."
+
+msgid "File editor"
+msgstr "Éditeur de fichier"
+
+#, php-format
+msgid "Editing file %s"
+msgstr "Édition du fichier %s"
+
+msgid "This file is not writable. Please check your theme files permissions."
+msgstr "Ce fichier n'est pas modifiable. Contrôlez les permissions de vos fichiers de thème."
+
+msgid "Templates files"
+msgstr "Fichiers du thème"
+
+msgid "CSS files"
+msgstr "Fichiers CSS"
+
+msgid "JavaScript files"
+msgstr "Fichiers JavaScript"
+
+msgid "Locales files"
+msgstr "Fichiers de traduction"
+
+msgid "user:preferences"
+msgstr "user:preferences"
+
+msgid "Preferences successfully updated"
+msgstr "Préférences mises à jour avec succès"
+
+msgid "Preferences definition successfully updated"
+msgstr "Définition des préférences mise à jour avec succès"
+
+msgid "User preferences"
+msgstr "Préférences utilisateur"
+
+msgid "Global preferences"
+msgstr "Préférences globales"
+
+msgid "Presentation widgets"
+msgstr "Widgets de présentation"
+
+msgid "Search engine"
+msgstr "Moteur de recherche"
+
+msgid "Navigation links"
+msgstr "Liens de navigation"
+
+msgid "Selected entries"
+msgstr "Billets sélectionnés"
+
+msgid "Best of me"
+msgstr "À retenir"
+
+msgid "Blog languages"
+msgstr "Langues du blog"
+
+msgid "With entries counts"
+msgstr "Avec le nombre de billets"
+
+msgid "Include empty categories"
+msgstr "Inclure les catégories vides"
+
+msgid "Subscribe links"
+msgstr "Liens de souscription"
+
+msgid "Subscribe"
+msgstr "S'abonner"
+
+msgid "Feeds type:"
+msgstr "Type de flux :"
+
+msgid "Feed reader"
+msgstr "Lecteur de flux"
+
+msgid "Somewhere else"
+msgstr "Autre part"
+
+msgid "Entries limit:"
+msgstr "Limite du nombre de billets :"
+
+msgid "Text"
+msgstr "Texte"
+
+msgid "Text:"
+msgstr "Texte :"
+
+msgid "Last entries"
+msgstr "Derniers billets"
+
+msgid "Uncategorized"
+msgstr "Sans catégorie"
+
+msgid "Tag:"
+msgstr "Mot-clé :"
+
+msgid "Last comments"
+msgstr "Derniers commentaires"
+
+msgid "Comments limit:"
+msgstr "Limite du nombre de commentaires :"
+
+#, php-format
+msgid "This blog's entries %s feed"
+msgstr "Flux %s des billets de ce blog"
+
+#, php-format
+msgid "This blog's comments %s feed"
+msgstr "Flux %s des commentaires de ce blog"
+
+msgid "Entries feed"
+msgstr "Fil des billets"
+
+msgid "Comments feed"
+msgstr "Fil des commentaires"
+
+msgid "navigation"
+msgstr "navigation"
+
+msgid "extra"
+msgstr "extra"
+
+msgid "custom"
+msgstr "supplémentaire"
+
+msgid "empty string"
+msgstr "chaîne vide"
+
+msgid "Widgets"
+msgstr "Widgets"
+
+msgid "Are you sure you want to reset sidebars?"
+msgstr "Êtes-vous sûr de vouloir réinitialiser les volets ?"
+
+msgid "Available widgets"
+msgstr "Widgets disponibles"
+
+msgid "Move widgets from this list to one of the sidebars."
+msgstr "Déplacez des widgets de cette liste vers l'un des volets."
+
+msgid "order"
+msgstr "ordre"
+
+msgid "Append to:"
+msgstr "Ajouter à :"
+
+msgid "Add widgets to sidebars"
+msgstr "Ajouter les widgets aux bandeaux"
+
+msgid "Navigation sidebar"
+msgstr "Volet de navigation"
+
+msgid "Extra sidebar"
+msgstr "Volet d'extra"
+
+msgid "Custom sidebar"
+msgstr "Volet supplémentaire"
+
+msgid "Update sidebars"
+msgstr "Mettre à jour les volets"
+
+msgid "Reset sidebars"
+msgstr "Réinitialiser les volets"
+
+msgid "Use of widgets"
+msgstr "Utilisation des widgets"
+
+msgid "Widgets may be used to add various blocks of content to be displayed on your public pages. To add a widget, drag it from the Available widgets list on the left to one of the sidebars on the right of this page. You can order your widgets in a sidebar by dragging them up or down. You must update sidebars to apply your changes."
+msgstr "Les widgets sont utilisés pour ajouter des blocs de contenus divers dans vos pages publiques. Pour ajouter un widget, faites-le glisser depuis la liste des Widgets disponibles à gauche jusqu'à l'un des bandeaux sur la droite de la page. Vous pouvez ré-ordonner vos widgets dans un bandeau en le faisant glisser vers le haut ou vers le bas. Vous devez mettre à jour les bandeaux pour enregistrer vos modifications."
+
+msgid "Once included in a sidebar, widgets have configuration options that you can reach by clicking on the arrow next to their name."
+msgstr "Une fois inclus dans un bandeau, les widgets ont généralement des options que vous pouvez configurer. Cliquez sur la flèche à côté de leur nom pour y accéder."
+
+msgid "Reset sidebars to get back to default widgets installation."
+msgstr "Réinitialisez les bandeaux pour retrouver les widgets par défaut de votre installation."
+
+msgid "Widget templates tags"
+msgstr "Balises de widget"
+
+msgid "If you are allowed to edit your theme templates, you can directly add widgets as templates tags, with their own configuration."
+msgstr "Si vous êtes autorisé à modifier vos fichiers de thème, vous pouvez ajouter des widgets sous forme de balise, avec leur propre configuration."
+
+msgid "To add a widget in your template, you need to write code like this:"
+msgstr "Pour ajouter un widget à votre thème, vous devez insérer un code similaire à :"
+
+msgid "Widget ID"
+msgstr "ID du widget"
+
+msgid "Setting name"
+msgstr "Nom de l'élément de réglage"
+
+msgid "Setting value"
+msgstr "Valeur de l'élément de réglage"
+
+msgid "Here are the following available widgets for your blog:"
+msgstr "Voici les widgets disponibles pour votre blog :"
+
+msgid "Widget ID:"
+msgstr "Identifiant du widget :"
+
+msgid "No setting for this widget"
+msgstr "Aucun réglage pour ce widget"
+
+msgid "boolean"
+msgstr "booléen"
+
+msgid "possible values:"
+msgstr "valeurs possibles :"
+
+msgid "listitem"
+msgstr "élément de liste"
+
+msgid "string"
+msgstr "chaîne de caractères"
+
+msgid "Setting name:"
+msgstr "Nom de l'élément de réglage :"
+
+msgid "No widget."
+msgstr "Aucun widget."
+
+msgid "Remove widget"
+msgstr "Retirer le widget"
+
+msgid "Drag widgets here to remove them from this sidebar."
+msgstr "Glisser les widgets ici pour les retirer du volet."
+
+#~ msgid "Manage every blog configuration directive"
+#~ msgstr "Gestion des directives de configuration des blogs"
+
+#~ msgid "Akismet interface for Dotclear"
+#~ msgstr "Interface Akismet pour Dotclear"
+
+#~ msgid "Generic antispam plugin for Dotclear"
+#~ msgstr "Antispam générique pour Dotclear"
+
+#~ msgid "Manage post attachments"
+#~ msgstr "Gestion des fichiers attachés"
+
+#~ msgid "Manage your blogroll"
+#~ msgstr "Gestion de votre liste de liens"
+
+#~ msgid "Configure your Blowup Theme"
+#~ msgstr "Configurer votre thème Blowup"
+
+#~ msgid "Trackback validity check"
+#~ msgstr "Contrôle de validité des rétroliens"
+
+#~ msgid "Import and Export your blog"
+#~ msgstr "Importez et exportez votre blog"
+
+#~ msgid "Maintain your installation"
+#~ msgstr "Maintenez votre installation"
+
+#~ msgid "Serve entries as simple web pages"
+#~ msgstr "Publie des billets comme de simples pages web"
+
+#~ msgid "Ping services"
+#~ msgstr "Services de signalement"
+
+#~ msgid "Simple menu for Dotclear"
+#~ msgstr "Menu simple pour Dotclear"
+
+#~ msgid "Tags for posts"
+#~ msgstr "Mots-clés pour les billets"
+
+#~ msgid "Theme Editor"
+#~ msgstr "Éditeur de thème"
+
+#~ msgid "Manage every user preference directive"
+#~ msgstr "Gestion des préférences utilisateur"
+
+#~ msgid "Widgets for your blog sidebars"
+#~ msgstr "Widgets pour les volets de votre blog"
+
+#~ msgid "Search engine form"
+#~ msgstr "Formulaire de recherche"
+
+#~ msgid "List of navigation links"
+#~ msgstr "Liste des liens de navigation"
+
+#~ msgid "List of selected entries"
+#~ msgstr "Liste des billets sélectionnés"
+
+#~ msgid "List of available languages"
+#~ msgstr "Liste des langues disponibles"
+
+#~ msgid "List of categories"
+#~ msgstr "Liste des catégories"
+
+#~ msgid "RSS or Atom feed subscription links"
+#~ msgstr "Liens d'abonnements aux flux RSS ou Atom"
+
+#~ msgid "Last entries from feed"
+#~ msgstr "Derniers billets d'un flux"
+
+#~ msgid "Simple text"
+#~ msgstr "Texte simple"
+
+#~ msgid "List of last entries published"
+#~ msgstr "Derniers billets publiés"
+
+#~ msgid "List of last comments posted"
+#~ msgstr "Liste des derniers commentaires postés"
+
+#~ msgid "Tags cloud"
+#~ msgstr "Nuage de mots-clés"
+
+#~ msgid "List of published pages"
+#~ msgstr "Liste des pages publiées"
+
+#~ msgid "Blogroll list"
+#~ msgstr "Liste de liens"
+
+#~ msgid "List of simple menu items"
+#~ msgstr "Liste des éléments de menu simple"
+
+#~ msgid "Use different periods for each task"
+#~ msgstr "Utiliser une périodicité différente pour chaque tâche"
+
+#~ msgid "Settings"
+#~ msgstr "Paramètres"
+
+#~ msgid "Recall time per task:"
+#~ msgstr "Délai de rappel par tâche :"
+
+#~ msgid "Add tags to entries"
+#~ msgstr "Ajouter des mots-clés à des billets"
+
+#~ msgid "Help for this page"
+#~ msgstr "Aide pour cette page"
+
+#~ msgid "Blogroll"
+#~ msgstr "Liste des liens"
+
+#~ msgid "Show maintenance tasks to update."
+#~ msgstr "Afficher les tâches de maintenance à mettre à jour."
+
+#~ msgid "Pages"
+#~ msgstr "Pages"
+
+#~ msgid "File is empty or not a compressed file."
+#~ msgstr "Le fichier est vide ou n'est pas un fichier compressé."
+
+#~ msgid "Zip file ready to be downloaded."
+#~ msgstr "Fichier Zip prêt à être télécharger."
+
+#~ msgid "blog settings"
+#~ msgstr "paramètres du blog"
+
+#~ msgid "Ok"
+#~ msgstr "Ok"
+
+#~ msgid "global settings"
+#~ msgstr "réglages généraux"
+
+#~ msgid "Akismet"
+#~ msgstr "Akismet"
+
+#~ msgid "Global IP"
+#~ msgstr "IP globale"
+
+#~ msgid "Global word"
+#~ msgstr "Mot global"
+
+#~ msgid "Are you sure you want to delete all spams?"
+#~ msgstr "Êtes-vous sûr de vouloir supprimer tous les indésirables ?"
+
+#~ msgid "Delete all spams"
+#~ msgstr "Supprimer tous les indésirables"
+
+#~ msgid "Blog preferences"
+#~ msgstr "Préférences du blog"
+
+#~ msgid "XFN"
+#~ msgstr "XFN"
+
+#~ msgid "Blowup Config"
+#~ msgstr "Configuration de Blowup"
+
+#~ msgid "Fair Trackbacks"
+#~ msgstr "Filtre de rétroliens"
+
+#~ msgid "Import / Export"
+#~ msgstr "Import / Export"
+
+#~ msgid "This will import your Dotclear 1.2 content as new content in the current blog: %s."
+#~ msgstr "Cela importera votre contenu Dotclear 1.2 comme nouveau contenu dans le blog courant : %s."
+
+#~ msgid "Feed import"
+#~ msgstr "Importation de flux"
+
+#~ msgid "Imports a feed as new entries."
+#~ msgstr "Importer un flux comme nouveau contenu"
+
+#~ msgid "This will import a feed (RSS or Atom) a as new content in the current blog: %s."
+#~ msgstr "Cela importera un flux (RSS ou ATOM) comme un nouveau contenu dans le blog courant : %s."
+
+#~ msgid "Counters"
+#~ msgstr "Compteurs"
+
+#~ msgid "Vacuum logs"
+#~ msgstr "Vidage des journaux"
+
+#~ msgid "Empty directory"
+#~ msgstr "Vidage du répertoire"
+
+#~ msgid "Warning: Comments are not more accepted for this page."
+#~ msgstr "Attention : les commentaires ne sont plus acceptés pour cette page."
+
+#~ msgid "Warning: Trackbacks are not more accepted for this page."
+#~ msgstr "Attention : les rétroliens ne sont plus acceptés pour cette page."
+
+#~ msgid "next page"
+#~ msgstr "page suivante"
+
+#~ msgid "previous page"
+#~ msgstr "page précédente"
+
+#~ msgid "Hide"
+#~ msgstr "Masquer"
+
+#~ msgid "If checked this page will be active but not listed in widget Pages."
+#~ msgstr "Si coché cette page sera active mais non listée dans le widget Pages."
+
+#~ msgid "page"
+#~ msgstr "page"
+
+#~ msgid "Pings:"
+#~ msgstr "Signalements :"
+
+#~ msgid "Simple Menu"
+#~ msgstr "Menu simple"
+
+#~ msgid "Menu"
+#~ msgstr "Menu"
+
+#~ msgid "Tags:"
+#~ msgstr "Mots-clés :"
+
+#~ msgid "short"
+#~ msgstr "court"
+
+#~ msgid "extended"
+#~ msgstr "étendu"
+
+#~ msgid "Edit tag"
+#~ msgstr "Modifier le mot-clé"
+
+#~ msgid "Actions for this tag"
+#~ msgstr "Actions sur ce mot-clé"
+
+#~ msgid "List of entries with this tag"
+#~ msgstr "Liste des billets avec ce mot-clé"
+
+#~ msgid "Syntax color"
+#~ msgstr "Coloration syntaxique"
+
+#~ msgid "user preferences"
+#~ msgstr "préférences utilisateur"
+
+#~ msgid "global preferences"
+#~ msgstr "préférences globales"
+
+#~ msgid "Export a blog"
+#~ msgstr "Exporter un blog"
+
+#~ msgid "Export all content"
+#~ msgstr "Exporte tout le contenu"
+
+#~ msgid "Import a full backup file"
+#~ msgstr "Importer un fichier de sauvegarde complet"
+
+#~ msgid "The backup file does not appear to be well formed."
+#~ msgstr "Le fichier de sauvegarde semble mal formaté."
+
+#~ msgid "Blog settings"
+#~ msgstr "Paramètres du blog"
+
+msgid "To rearrange pages order, move items by drag and drop, then click on “Save pages order” button."
+msgstr "Pour réordonner les pages, déplacez les items par glisser déposer puis cliquez sur “Enregistrer l'ordre des pages”."
+
 msgid "To rearrange pages order, change number at the begining of the line, then click on “Save pages order” button."
 msgstr "Pour réordonner les pages, modifier le numéro dans le champ au début de la ligne puis cliquez sur “Enregistrer l'ordre des pages”."
 
-msgid "To rearrange pages order, move items by drag and drop, then click on “Save pages order” button."
-msgstr "Pour réordonner les pages, déplacez les items par glisser déposer puis cliquez sur “Enregistrer l'ordre des pages”."
-
-msgid "Save pages order"
-msgstr "Enregistrer l'ordre des pages"
-
-msgid "This page does not exist."
-msgstr "Cette page n'existe pas."
-
-msgid "Edit page"
-msgstr "Modifier la page"
-
-msgid "Are you sure you want to delete this page?"
-msgstr "Êtes-vous sûr de vouloir supprimer cette page ?"
-
-msgid "Page has been successfully updated."
-msgstr "La page a été modifiée avec succès."
-
-msgid "Page has been successfully created."
-msgstr "La page a été créée avec succès."
-
-msgid "Go to this page on the site"
-msgstr "Voir cette page sur le site"
-
-msgid "Page status"
-msgstr "État de la page"
-
-msgid "Page language"
-msgstr "Langue de la page"
-
-msgid "Hide in widget Pages"
-msgstr "Ne pas lister dans le widget Pages"
-
-msgid "Warning: If you set the URL manually, it may conflict with another page."
-msgstr "Attention : si vous définissez vous-même l'URL, elle peut entrer en conflit avec celle d'une autre page."
-
-msgid "Introduction to the page."
-msgstr "Introduction à la page."
-
-msgid "Select this comment"
-msgstr "Sélectionner ce commentaire"
-
-msgid "Pings"
-msgstr "Signalements (pings)"
-
-msgid "Settings have been successfully updated."
-msgstr "Les réglages ont été modifiés avec succès."
-
-msgid "Pings configuration"
-msgstr "Configuration des signalements"
-
-msgid "Activate pings extension"
-msgstr "Activer le plugin de signalement"
-
-msgid "Service name:"
-msgstr "Nom du service :"
-
-msgid "Service URI:"
-msgstr "URI du service :"
-
-msgid "Error"
-msgstr "Erreur"
-
-msgid "Test ping services"
-msgstr "Tester les services de signalement"
-
-msgid "Check all"
-msgstr "Tout sélectionner"
-
-msgid "Simple menu"
-msgstr "Menu simple"
-
-msgid "All months"
-msgstr "Tous les mois"
-
-msgid "All tags"
-msgstr "Tous les mots-clés"
-
-msgid "Home"
-msgstr "Accueil"
-
-msgid "Archive"
-msgstr "Archive"
-
-msgid "Page"
-msgstr "Page"
-
-msgid "Tags"
-msgstr "Mots-clés"
-
-msgid "User defined"
-msgstr "Saisie libre"
-
-msgid "Label"
-msgstr "Libellé"
-
-msgid "Recent posts"
-msgstr "Billets récents"
-
-#, php-format
-msgid "Switch to %s language"
-msgstr "Basculer vers le %s"
-
-msgid "Recent Posts from this category"
-msgstr "Billets récents de cette catégorie"
-
-msgid "Archives"
-msgstr "Archives"
-
-#, php-format
-msgid "Posts from %s"
-msgstr "Billets de %s"
-
-#, php-format
-msgid "Recent posts for %s tag"
-msgstr "Billets récent pour le mot-clé %s"
-
-msgid "Menu item has been successfully added."
-msgstr "L'item de menu a été ajouté avec succès."
-
-msgid "Label and URL of menu item are mandatory."
-msgstr "Les libellés et URL sont obligatoires."
-
-msgid "Menu items have been successfully removed."
-msgstr "Le ou les items de menu ont été supprimés avec succès."
-
-msgid "No menu items selected."
-msgstr "Aucun item de menu sélectionné."
-
-msgid "Label is mandatory."
-msgstr "Le libellé est obligatoire."
-
-msgid "URL is mandatory."
-msgstr "l’URL est obligatoire."
-
-msgid "Menu items have been successfully updated."
-msgstr "Le ou les items de menu ont été mis à jour avec succès."
-
 msgid "Step #1"
 msgstr "Étape 1"
@@ -1669,606 +2252,4 @@
 msgstr "Étape 3"
 
-msgid "Add item"
-msgstr "Ajouter un item de menu"
-
-msgid "Select type"
-msgstr "Sélection du type"
-
-msgid "Type of item menu:"
-msgstr "Type d'item de menu :"
-
-msgid "Continue..."
-msgstr "Continuer…"
-
-msgid "Select language:"
-msgstr "Sélectionnez la langue :"
-
-msgid "Select category:"
-msgstr "Sélectionnez la catégorie :"
-
-msgid "Select month (if necessary):"
-msgstr "Sélectionnez le mois (si nécessaire) :"
-
-msgid "Select page:"
-msgstr "Sélectionnez la page :"
-
-msgid "Select tag (if necessary):"
-msgstr "Sélectionnez le mot clé (si nécessaire) :"
-
-msgid "Label of item menu:"
-msgstr "Libellé de l'item de menu :"
-
-msgid "Description of item menu:"
-msgstr "Description de l'item de menu :"
-
-msgid "URL of item menu:"
-msgstr "URL de l'item de menu :"
-
-msgid "Add this item"
-msgstr "Ajouter cet item"
-
-msgid "Add an item"
-msgstr "Ajouter un item de menu"
-
-msgid "Menu items list"
-msgstr "Liste des items de menu"
-
-msgid "Update menu"
-msgstr "Mettre à jour le menu"
-
-msgid "Delete selected menu items"
-msgstr "Supprimer les items de menu sélectionnés"
-
-msgid "Are you sure you want to remove selected menu items?"
-msgstr "Êtes-vous sûr de vouloir supprimer les items de menu sélectionnés ?"
-
-msgid "No menu items so far."
-msgstr "Aucun item de menu pour l'instant."
-
-msgid "Add tags"
-msgstr "Ajouter des mots-clés"
-
-msgid "Remove tags"
-msgstr "Retirer des mots-clés"
-
-msgid "Tag has been successfully added to selected entries"
-msgid_plural "Tags have been successfully added to selected entries"
-msgstr[0] "Le mot-clé a été ajouté avec succès des entrées sélectionnées"
-msgstr[1] "Les mot-clés ont été ajoutés avec succès des entrées sélectionnées"
-
-msgid "Add tags to this selection"
-msgstr "Ajouter des mots-clés à cette sélection"
-
-#, php-format
-msgid "Are you sure you want to remove this %s?"
-msgstr "Êtes-vous sûr de vouloir supprimer ce %s ?"
-
-#, php-format
-msgid "Add a %s to this entry"
-msgstr "Ajouter %s à ce billet"
-
-msgid "Choose from list"
-msgstr "Choisir dans la liste"
-
-msgid "all"
-msgstr "tous"
-
-msgid "Enter tags separated by coma"
-msgstr "Entrez les mots-clés séparés par des virgules"
-
-msgid "used in %e - frequency %p%"
-msgstr "utilisé dans %e - fréquence %p%"
-
-msgid "entry"
-msgstr "billet"
-
-msgid "entries"
-msgstr "billets"
-
-msgid "Tags to add:"
-msgstr "Mots-clés à ajouter :"
-
-msgid "Tag has been successfully removed from selected entries"
-msgid_plural "Tags have been successfully removed from selected entries"
-msgstr[0] "Le mot-clé a été retiré avec succès des entrées sélectionnées"
-msgstr[1] "Les mot-clés ont été retirés avec succès des entrées sélectionnées"
-
-msgid "No tags for selected entries"
-msgstr "Aucun mot-clé pour les billets sélectionnés"
-
-msgid "Remove selected tags from this selection"
-msgstr "Retirer les mots-clés de cette sélection"
-
-msgid "Following tags have been found in selected entries:"
-msgstr "Les mots-clés suivants ont été trouvés pour les billets sélectionnés :"
-
-msgid "Tag"
-msgstr "Mot-clé"
-
-msgid "Short"
-msgstr "Court"
-
-msgid "Extended"
-msgstr "Étendu"
-
-msgid "Tags list format:"
-msgstr "Format de la liste des mots-clés :"
-
-msgid "This tag's comments Atom feed"
-msgstr "Flux Atom des commentaires associés à ce mot-clé"
-
-msgid "This tag's entries Atom feed"
-msgstr "Flux Atom des billets associés à ce mot-clé"
-
-msgid "Limit (empty means no limit):"
-msgstr "Limite (laisser vide si pas de limite) :"
-
-msgid "Entries count"
-msgstr "Nombre de billets"
-
-msgid "Tag name"
-msgstr "Nom du mot-clé"
-
-msgid "Link to all tags:"
-msgstr "Lien vers tous les mots-clés :"
-
-msgid "Tag has been successfully renamed"
-msgstr "Le mot-clé a été renommé avec succès"
-
-msgid "Tag has been successfully removed"
-msgstr "Le mot-clé a été retiré avec succès"
-
-#, php-format
-msgid "Are you sure you want to remove tag: “%s”?"
-msgstr "Êtes-vous sûr de vouloir supprimer le mot-clé “%s” ?"
-
-msgid "Back to tags list"
-msgstr "Retour à la liste des mots-clés"
-
-msgid "Rename"
-msgstr "Renommer"
-
-msgid "Delete this tag"
-msgstr "Supprimer ce mot-clé"
-
-#, php-format
-msgid "List of entries with the tag “%s”"
-msgstr "Liste des billets avec le mot-clé “%s”"
-
-msgid "No tags on this blog."
-msgstr "Aucun mot-clé sur ce blog."
-
-msgid "Edit theme files"
-msgstr "Modifier les fichiers du thème"
-
-msgid "Syntax color for theme editor"
-msgstr "Coloration syntaxique de l'éditeur de thème"
-
-msgid "No file"
-msgstr "Aucun fichier"
-
-msgid "File does not exist."
-msgstr "Ce fichier n'existe pas."
-
-#, php-format
-msgid "File %s is not readable"
-msgstr "Le fichier %s n'est pas lisible"
-
-#, php-format
-msgid "Unable to write file %s. Please check your theme files and folders permissions."
-msgstr "Impossible d'écrire le fichier %s. Contrôlez les permissions des fichiers et des répertoires de votre thème."
-
-msgid "Saving document..."
-msgstr "Enregistrement du document…"
-
-msgid "Document saved"
-msgstr "Document enregistré"
-
-msgid "An error occurred:"
-msgstr "Une erreur est survenue :"
-
-#, php-format
-msgid "Your current theme on this blog is \"%s\"."
-msgstr "Actuellement votre thème sur ce blog est « %s »."
-
-msgid "You can't edit default theme."
-msgstr "Vous ne pouvez pas modifier le thème par défaut."
-
-msgid "Please select a file to edit."
-msgstr "Sélectionnez un fichier à modifier."
-
-msgid "File editor"
-msgstr "Éditeur de fichier"
-
-#, php-format
-msgid "Editing file %s"
-msgstr "Édition du fichier %s"
-
-msgid "This file is not writable. Please check your theme files permissions."
-msgstr "Ce fichier n'est pas modifiable. Contrôlez les permissions de vos fichiers de thème."
-
-msgid "Templates files"
-msgstr "Fichiers du thème"
-
-msgid "CSS files"
-msgstr "Fichiers CSS"
-
-msgid "JavaScript files"
-msgstr "Fichiers JavaScript"
-
-msgid "Locales files"
-msgstr "Fichiers de traduction"
-
-msgid "Preferences successfully updated"
-msgstr "Préférences mises à jour avec succès"
-
-msgid "user:preferences"
-msgstr "user:preferences"
-
-msgid "User preferences"
-msgstr "Préférences utilisateur"
-
-msgid "Global preferences"
-msgstr "Préférences globales"
-
-msgid "Presentation widgets"
-msgstr "Widgets de présentation"
-
-msgid "Search engine"
-msgstr "Moteur de recherche"
-
-msgid "Navigation links"
-msgstr "Liens de navigation"
-
-msgid "Selected entries"
-msgstr "Billets sélectionnés"
-
-msgid "Best of me"
-msgstr "À retenir"
-
-msgid "Blog languages"
-msgstr "Langues du blog"
-
-msgid "With entries counts"
-msgstr "Avec le nombre de billets"
-
-msgid "Include sub cats in count"
-msgstr ""
-
-msgid "Include empty categories"
-msgstr "Inclure les catégories vides"
-
-msgid "Subscribe links"
-msgstr "Liens de souscription"
-
-msgid "Subscribe"
-msgstr "S'abonner"
-
-msgid "Feeds type:"
-msgstr "Type de flux :"
-
-msgid "Feed reader"
-msgstr "Lecteur de flux"
-
-msgid "Somewhere else"
-msgstr "Autre part"
-
-msgid "Entries limit:"
-msgstr "Limite du nombre de billets :"
-
-msgid "Text"
-msgstr "Texte"
-
-msgid "Text:"
-msgstr "Texte :"
-
-msgid "Last entries"
-msgstr "Derniers billets"
-
-msgid "Uncategorized"
-msgstr "Sans catégorie"
-
-msgid "Tag:"
-msgstr "Mot-clé :"
-
-msgid "Last comments"
-msgstr "Derniers commentaires"
-
-msgid "Comments limit:"
-msgstr "Limite du nombre de commentaires :"
-
-#, php-format
-msgid "This blog's entries %s feed"
-msgstr "Flux %s des billets de ce blog"
-
-#, php-format
-msgid "This blog's comments %s feed"
-msgstr "Flux %s des commentaires de ce blog"
-
-msgid "Entries feed"
-msgstr "Fil des billets"
-
-msgid "Comments feed"
-msgstr "Fil des commentaires"
-
-msgid "navigation"
-msgstr "navigation"
-
-msgid "extra"
-msgstr "extra"
-
-msgid "custom"
-msgstr "supplémentaire"
-
-msgid "empty string"
-msgstr "chaîne vide"
-
-msgid "Widgets"
-msgstr "Widgets"
-
-msgid "Are you sure you want to reset sidebars?"
-msgstr "Êtes-vous sûr de vouloir réinitialiser les volets ?"
-
-msgid "Available widgets"
-msgstr "Widgets disponibles"
-
-msgid "Move widgets from this list to one of the sidebars."
-msgstr "Déplacez des widgets de cette liste vers l'un des volets."
-
-msgid "order"
-msgstr "ordre"
-
-msgid "Append to:"
-msgstr "Ajouter à :"
-
-msgid "Add widgets to sidebars"
-msgstr "Ajouter les widgets aux bandeaux"
-
-msgid "Navigation sidebar"
-msgstr "Volet de navigation"
-
-msgid "Extra sidebar"
-msgstr "Volet d'extra"
-
-msgid "Custom sidebar"
-msgstr "Volet supplémentaire"
-
-msgid "Update sidebars"
-msgstr "Mettre à jour les volets"
-
-msgid "Reset sidebars"
-msgstr "Réinitialiser les volets"
-
-msgid "Use of widgets"
-msgstr "Utilisation des widgets"
-
-msgid "Widgets may be used to add various blocks of content to be displayed on your public pages. To add a widget, drag it from the Available widgets list on the left to one of the sidebars on the right of this page. You can order your widgets in a sidebar by dragging them up or down. You must update sidebars to apply your changes."
-msgstr "Les widgets sont utilisés pour ajouter des blocs de contenus divers dans vos pages publiques. Pour ajouter un widget, faites-le glisser depuis la liste des Widgets disponibles à gauche jusqu'à l'un des bandeaux sur la droite de la page. Vous pouvez ré-ordonner vos widgets dans un bandeau en le faisant glisser vers le haut ou vers le bas. Vous devez mettre à jour les bandeaux pour enregistrer vos modifications."
-
-msgid "Once included in a sidebar, widgets have configuration options that you can reach by clicking on the arrow next to their name."
-msgstr "Une fois inclus dans un bandeau, les widgets ont généralement des options que vous pouvez configurer. Cliquez sur la flèche à côté de leur nom pour y accéder."
-
-msgid "Reset sidebars to get back to default widgets installation."
-msgstr "Réinitialisez les bandeaux pour retrouver les widgets par défaut de votre installation."
-
-msgid "Widget templates tags"
-msgstr "Balises de widget"
-
-msgid "If you are allowed to edit your theme templates, you can directly add widgets as templates tags, with their own configuration."
-msgstr "Si vous êtes autorisé à modifier vos fichiers de thème, vous pouvez ajouter des widgets sous forme de balise, avec leur propre configuration."
-
-msgid "To add a widget in your template, you need to write code like this:"
-msgstr "Pour ajouter un widget à votre thème, vous devez insérer un code similaire à :"
-
-msgid "Widget ID"
-msgstr "ID du widget"
-
-msgid "Setting name"
-msgstr "Nom de l'élément de réglage"
-
-msgid "Setting value"
-msgstr "Valeur de l'élément de réglage"
-
-msgid "Here are the following available widgets for your blog:"
-msgstr "Voici les widgets disponibles pour votre blog :"
-
-msgid "Widget ID:"
-msgstr "Identifiant du widget :"
-
-msgid "No setting for this widget"
-msgstr "Aucun réglage pour ce widget"
-
-msgid "boolean"
-msgstr "booléen"
-
-msgid "possible values:"
-msgstr "valeurs possibles :"
-
-msgid "listitem"
-msgstr "élément de liste"
-
-msgid "string"
-msgstr "chaîne de caractères"
-
-msgid "Setting name:"
-msgstr "Nom de l'élément de réglage :"
-
-msgid "No widget."
-msgstr "Aucun widget."
-
-msgid "Remove widget"
-msgstr "Retirer le widget"
-
-msgid "Drag widgets here to remove them from this sidebar."
-msgstr "Glisser les widgets ici pour les retirer du volet."
-
-#~ msgid "Pages"
-#~ msgstr "Pages"
-
-#~ msgid "Settings definition successfully updated"
-#~ msgstr "Les réglages ont été enregistrés avec succès"
-
-#~ msgid "By"
-#~ msgstr "Par"
-
-#~ msgid "Edit tag name:"
-#~ msgstr "Renommer ce mot-clé :"
-
-#~ msgid "Preferences definition successfully updated"
-#~ msgstr "Définition des préférences mise à jour avec succès"
-
-#~ msgid "Use different periods for each task"
-#~ msgstr "Utiliser une périodicité différente pour chaque tâche"
-
-#~ msgid "Settings"
-#~ msgstr "Paramètres"
-
-#~ msgid "Recall time per task:"
-#~ msgstr "Délai de rappel par tâche :"
-
-#~ msgid "Add tags to entries"
-#~ msgstr "Ajouter des mots-clés à des billets"
-
-#~ msgid "Help for this page"
-#~ msgstr "Aide pour cette page"
-
-#~ msgid "Show maintenance tasks to update."
-#~ msgstr "Afficher les tâches de maintenance à mettre à jour."
-
-#~ msgid "File is empty or not a compressed file."
-#~ msgstr "Le fichier est vide ou n'est pas un fichier compressé."
-
-#~ msgid "Zip file ready to be downloaded."
-#~ msgstr "Fichier Zip prêt à être télécharger."
-
-#~ msgid "blog settings"
-#~ msgstr "paramètres du blog"
-
-#~ msgid "Ok"
-#~ msgstr "Ok"
-
-#~ msgid "global settings"
-#~ msgstr "réglages généraux"
-
-#~ msgid "Akismet"
-#~ msgstr "Akismet"
-
-#~ msgid "Global IP"
-#~ msgstr "IP globale"
-
-#~ msgid "Global word"
-#~ msgstr "Mot global"
-
-#~ msgid "Are you sure you want to delete all spams?"
-#~ msgstr "Êtes-vous sûr de vouloir supprimer tous les indésirables ?"
-
-#~ msgid "Delete all spams"
-#~ msgstr "Supprimer tous les indésirables"
-
-#~ msgid "Blog preferences"
-#~ msgstr "Préférences du blog"
-
-#~ msgid "XFN"
-#~ msgstr "XFN"
-
-#~ msgid "Blowup Config"
-#~ msgstr "Configuration de Blowup"
-
-#~ msgid "Fair Trackbacks"
-#~ msgstr "Filtre de rétroliens"
-
-#~ msgid "Import / Export"
-#~ msgstr "Import / Export"
-
-#~ msgid "This will import your Dotclear 1.2 content as new content in the current blog: %s."
-#~ msgstr "Cela importera votre contenu Dotclear 1.2 comme nouveau contenu dans le blog courant : %s."
-
-#~ msgid "Feed import"
-#~ msgstr "Importation de flux"
-
-#~ msgid "Imports a feed as new entries."
-#~ msgstr "Importer un flux comme nouveau contenu"
-
-#~ msgid "This will import a feed (RSS or Atom) a as new content in the current blog: %s."
-#~ msgstr "Cela importera un flux (RSS ou ATOM) comme un nouveau contenu dans le blog courant : %s."
-
-#~ msgid "Counters"
-#~ msgstr "Compteurs"
-
-#~ msgid "Vacuum logs"
-#~ msgstr "Vidage des journaux"
-
-#~ msgid "Empty directory"
-#~ msgstr "Vidage du répertoire"
-
-#~ msgid "Warning: Comments are not more accepted for this page."
-#~ msgstr "Attention : les commentaires ne sont plus acceptés pour cette page."
-
-#~ msgid "Warning: Trackbacks are not more accepted for this page."
-#~ msgstr "Attention : les rétroliens ne sont plus acceptés pour cette page."
-
-#~ msgid "next page"
-#~ msgstr "page suivante"
-
-#~ msgid "previous page"
-#~ msgstr "page précédente"
-
-#~ msgid "Hide"
-#~ msgstr "Masquer"
-
-#~ msgid "If checked this page will be active but not listed in widget Pages."
-#~ msgstr "Si coché cette page sera active mais non listée dans le widget Pages."
-
-#~ msgid "page"
-#~ msgstr "page"
-
-#~ msgid "Pings:"
-#~ msgstr "Signalements :"
-
-#~ msgid "Simple Menu"
-#~ msgstr "Menu simple"
-
-#~ msgid "Menu"
-#~ msgstr "Menu"
-
-#~ msgid "Tags:"
-#~ msgstr "Mots-clés :"
-
-#~ msgid "short"
-#~ msgstr "court"
-
-#~ msgid "extended"
-#~ msgstr "étendu"
-
-#~ msgid "Edit tag"
-#~ msgstr "Modifier le mot-clé"
-
-#~ msgid "Actions for this tag"
-#~ msgstr "Actions sur ce mot-clé"
-
-#~ msgid "List of entries with this tag"
-#~ msgstr "Liste des billets avec ce mot-clé"
-
-#~ msgid "Syntax color"
-#~ msgstr "Coloration syntaxique"
-
-#~ msgid "user preferences"
-#~ msgstr "préférences utilisateur"
-
-#~ msgid "global preferences"
-#~ msgstr "préférences globales"
-
-#~ msgid "Export a blog"
-#~ msgstr "Exporter un blog"
-
-#~ msgid "Export all content"
-#~ msgstr "Exporte tout le contenu"
-
-#~ msgid "Import a full backup file"
-#~ msgstr "Importer un fichier de sauvegarde complet"
-
-#~ msgid "The backup file does not appear to be well formed."
-#~ msgstr "Le fichier de sauvegarde semble mal formaté."
-
-#~ msgid "Blog settings"
-#~ msgstr "Paramètres du blog"
+msgid "Back to filters list"
+msgstr "Retour à la liste des filtres"
Index: plugins/aboutConfig/_define.php
===================================================================
--- plugins/aboutConfig/_define.php	(revision 2257)
+++ plugins/aboutConfig/_define.php	(revision 1179)
@@ -16,9 +16,5 @@
 	/* Description*/		"Manage every blog configuration directive",
 	/* Author */			"Olivier Meunier",
-	/* Version */			'0.5',
-	array(
-		'type'		=>		'plugin'
-	)
-
+	/* Version */			'0.5'
 );
 ?>
Index: plugins/aboutConfig/index.php
===================================================================
--- plugins/aboutConfig/index.php	(revision 2256)
+++ plugins/aboutConfig/index.php	(revision 2166)
@@ -37,7 +37,6 @@
 			$core->blog->triggerBlog();
 		}
-
-		dcPage::addSuccessNotice(__('Configuration successfully updated'));
-		http::redirect($p_url);
+		
+		http::redirect($p_url.'&upd=1');
 	}
 	catch (Exception $e)
@@ -63,6 +62,5 @@
 		}
 		
-		dcPage::addSuccessNotice(__('Configuration successfully updated'));
-		http::redirect($p_url.'&part=global');
+		http::redirect($p_url.'&upd=1&part=global');
 	}
 	catch (Exception $e)
@@ -77,8 +75,8 @@
 {
 	if ($s['type'] == 'boolean') {
-		$field = form::combo(array($field_name.'['.$ns.']['.$id.']',$field_name.'_'.$ns.'_'.$id),
+		$field = form::combo(array($field_name.'['.$ns.']['.$id.']',$field_name.'_'.$id),
 		array(__('yes') => 1, __('no') => 0),$s['value'] ? 1 : 0);
 	} else {
-		$field = form::field(array($field_name.'['.$ns.']['.$id.']',$field_name.'_'.$ns.'_'.$id),40,null,
+		$field = form::field(array($field_name.'['.$ns.']['.$id.']',$field_name.'_'.$id),40,null,
 		html::escapeHTML($s['value']));
 	}
@@ -88,5 +86,5 @@
 	return
 	'<tr class="line">'.
-	'<td scope="row"><label for="'.$field_name.'_'.$ns.'_'.$id.'">'.sprintf($slabel,html::escapeHTML($id)).'</label></td>'.
+	'<td scope="row"><label for="s_'.$id.'">'.sprintf($slabel,html::escapeHTML($id)).'</label></td>'.
 	'<td>'.$field.'</td>'.
 	'<td>'.$s['type'].'</td>'.
@@ -122,6 +120,12 @@
 		html::escapeHTML($core->blog->name) => '',
 		__('about:config') => ''
-	)).
-	dcPage::notices();
+	));
+if (!empty($_GET['upd'])) {
+	dcPage::success(__('Configuration successfully updated'));
+}
+
+if (!empty($_GET['upda'])) {
+	dcPage::success(__('Settings definition successfully updated'));
+}
 ?>
 
Index: plugins/akismet/_define.php
===================================================================
--- plugins/akismet/_define.php	(revision 2257)
+++ plugins/akismet/_define.php	(revision 1179)
@@ -19,6 +19,5 @@
 	array(
 		'permissions' =>	'usage,contentadmin',
-		'priority' =>		200,
-		'type'		=>		'plugin'
+		'priority' =>		200
 	)
 );
Index: plugins/antispam/index.php
===================================================================
--- plugins/antispam/index.php	(revision 2256)
+++ plugins/antispam/index.php	(revision 2166)
@@ -43,7 +43,5 @@
 
 		dcAntispam::delAllSpam($core,$ts);
-
-		dcPage::addSuccessNotice(__('Spam comments have been successfully deleted.'));
-		http::redirect($p_url);
+		http::redirect($p_url.'&del=1');
 	}
 
@@ -91,7 +89,5 @@
 
 		dcAntispam::$filters->saveFilterOpts($filters_opt);
-
-		dcPage::addSuccessNotice(__('Filters configuration has been successfully saved.'));
-		http::redirect($p_url);
+		http::redirect($p_url.'&upd=1');
 	}
 }
@@ -132,6 +128,5 @@
 			$page_name => $p_url,
 			sprintf(__('%s filter configuration'),$filter->name) => ''
-		)).
-		dcPage::notices();
+		));
 
 	echo '<p><a href="plugin.php?p=antispam" class="back">'.__('Back to filters list').'</a></p>';
@@ -145,6 +140,5 @@
 			__('Plugins') => '',
 			$page_name => ''
-		)).
-		dcPage::notices();
+		));
 
 	# Information
@@ -156,4 +150,8 @@
 	'<form action="'.$p_url.'" method="post" class="fieldset">'.
 	'<h3>'.__('Information').'</h3>';
+
+	if (!empty($_GET['del'])) {
+		dcPage::success(__('Spam comments have been successfully deleted.'));
+	}
 
 	echo
Index: plugins/attachments/_define.php
===================================================================
--- plugins/attachments/_define.php	(revision 2257)
+++ plugins/attachments/_define.php	(revision 1179)
@@ -19,6 +19,5 @@
 	array(
 		'permissions' =>	'usage,contentadmin,pages',
-		'priority' =>		999,
-		'type'		=>		'plugin'
+		'priority' =>		999
 	)
 );
Index: plugins/blogroll/_define.php
===================================================================
--- plugins/blogroll/_define.php	(revision 2257)
+++ plugins/blogroll/_define.php	(revision 1179)
@@ -18,6 +18,5 @@
 	/* Version */			'1.3.1',
 	array(
-		'permissions' =>	'blogroll',
-		'type'		=>		'plugin'
+		'permissions' =>	'blogroll'
 	)
 );
Index: plugins/blogroll/edit.php
===================================================================
--- plugins/blogroll/edit.php	(revision 2256)
+++ plugins/blogroll/edit.php	(revision 2166)
@@ -68,6 +68,5 @@
 	try {
 		$blogroll->updateLink($id,$link_title,$link_href,$link_desc,$link_lang,trim($link_xfn));
-		dcPage::addSuccessNotice(__('Link has been successfully updated'));
-		http::redirect($p_url.'&edit=1&id='.$id);
+		http::redirect($p_url.'&edit=1&id='.$id.'&upd=1');
 	} catch (Exception $e) {
 		$core->error->add($e->getMessage());
@@ -83,6 +82,5 @@
 	try {
 		$blogroll->updateCategory($id,$link_desc);
-		dcPage::addSuccessNotice(__('Category has been successfully updated'));
-		http::redirect($p_url.'&edit=1&id='.$id);
+		http::redirect($p_url.'&edit=1&id='.$id.'&upd=1');
 	} catch (Exception $e) {
 		$core->error->add($e->getMessage());
@@ -102,6 +100,5 @@
 			html::escapeHTML($core->blog->name) => '',
 			__('Blogroll') => $p_url
-		)).
-		dcPage::notices();
+		));
 ?>
 
@@ -111,4 +108,8 @@
 if (isset($rs) && $rs->is_cat)
 {
+	if (!empty($_GET['upd'])) {
+		dcPage::success(__('Category has been successfully updated'));
+	}
+	
 	echo
 	'<form action="'.$p_url.'" method="post">'.
@@ -126,5 +127,8 @@
 if (isset($rs) && !$rs->is_cat)
 {
-
+	if (!empty($_GET['upd'])) {
+		dcPage::success(__('Link has been successfully updated'));
+	}
+	
 	echo
 	'<form action="plugin.php" method="post" class="two-cols fieldset">'.
Index: plugins/blogroll/index.php
===================================================================
--- plugins/blogroll/index.php	(revision 2256)
+++ plugins/blogroll/index.php	(revision 2208)
@@ -69,7 +69,5 @@
 		}
 	}
-	
-	dcPage::addSuccessNotice(__('links have been successfully imported.'));
-	http::redirect($p_url);	
+	http::redirect($p_url.'&importlinks=1');	
 }
 
@@ -89,7 +87,5 @@
 	try {
 		$blogroll->addLink($link_title,$link_href,$link_desc,$link_lang);
-
-		dcPage::addSuccessNotice(__('Link has been successfully created.'));
-		http::redirect($p_url);
+		http::redirect($p_url.'&addlink=1');
 	} catch (Exception $e) {
 		$core->error->add($e->getMessage());
@@ -105,6 +101,5 @@
 	try {
 		$blogroll->addCategory($cat_title);
-		dcPage::addSuccessNotice(__('category has been successfully created.'));
-		http::redirect($p_url);
+		http::redirect($p_url.'&addcat=1');
 	} catch (Exception $e) {
 		$core->error->add($e->getMessage());
@@ -126,6 +121,5 @@
 	
 	if (!$core->error->flag()) {
-		dcPage::addSuccessNotice(__('Items have been successfully removed.'));
-		http::redirect($p_url);
+		http::redirect($p_url.'&removed=1');
 	}
 }
@@ -154,6 +148,5 @@
 	
 	if (!$core->error->flag()) {
-		dcPage::addSuccessNotice(__('Items order has been successfully updated'));
-		http::redirect($p_url);
+		http::redirect($p_url.'&neworder=1');
 	}
 }
@@ -189,6 +182,27 @@
 			html::escapeHTML($core->blog->name) => '',
 			__('Blogroll') => ''
-		)).
-		dcPage::notices();
+		));
+?>
+
+<?php
+if (!empty($_GET['neworder'])) {
+	dcPage::success(__('Items order has been successfully updated'));
+}
+
+if (!empty($_GET['removed'])) {
+	dcPage::success(__('Items have been successfully removed.'));
+}
+
+if (!empty($_GET['addlink'])) {
+	dcPage::success(__('Link has been successfully created.'));
+}
+
+if (!empty($_GET['addcat'])) {
+	dcPage::success(__('category has been successfully created.'));
+}
+
+if (!empty($_GET['importlinks'])) {
+	dcPage::success(__('links have been successfully imported.'));
+}
 ?>
 
Index: plugins/blowupConfig/_define.php
===================================================================
--- plugins/blowupConfig/_define.php	(revision 2257)
+++ plugins/blowupConfig/_define.php	(revision 1179)
@@ -18,6 +18,5 @@
 	/* Version */			'1.2',
 	array(
-		'permissions' =>	'admin',
-		'type'		=>		'plugin'
+		'permissions' =>	'admin'
 	)
 );
Index: plugins/blowupConfig/index.php
===================================================================
--- plugins/blowupConfig/index.php	(revision 2256)
+++ plugins/blowupConfig/index.php	(revision 2166)
@@ -199,7 +199,6 @@
 		$core->blog->settings->themes->put('blowup_style',serialize($blowup_user));
 		$core->blog->triggerBlog();
-		
-		dcPage::addSuccessNotice(__('Theme configuration has been successfully updated.'));
-		http::redirect($p_url);
+
+		http::redirect($p_url.'&upd=1');
 	}
 	catch (Exception $e)
@@ -233,5 +232,5 @@
 		__('Blog appearance') => 'blog_theme.php',
 		__('Blowup configuration') => ''
-	)).dcPage::notices();
+	));
 
 echo
@@ -242,4 +241,8 @@
 	dcPage::message(__('For the following reasons, images cannot be created. You won\'t be able to change some background properties.').
 		$notices,false,true);
+}
+
+if (!empty($_GET['upd'])) {
+	dcPage::success(__('Theme configuration has been successfully updated.'));
 }
 
Index: plugins/dclegacy/_define.php
===================================================================
--- plugins/dclegacy/_define.php	(revision 2257)
+++ plugins/dclegacy/_define.php	(revision 1806)
@@ -18,6 +18,5 @@
 	/* Version */			'1.0',
 	array(
-		'priority' =>		500,
-		'type'		=>		'plugin'
+		'priority' =>		500
 	)
 );
Index: plugins/fairTrackbacks/_define.php
===================================================================
--- plugins/fairTrackbacks/_define.php	(revision 2257)
+++ plugins/fairTrackbacks/_define.php	(revision 1179)
@@ -19,6 +19,5 @@
 	array(
 		'permissions' =>	'usage,contentadmin',
-		'priority' =>		200,
-		'type'		=>		'plugin'
+		'priority' =>		200
 	)
 );
Index: plugins/importExport/_define.php
===================================================================
--- plugins/importExport/_define.php	(revision 2257)
+++ plugins/importExport/_define.php	(revision 967)
@@ -17,8 +17,5 @@
 	/* Author */			"Olivier Meunier & Contributors",
 	/* Version */			'3.2',
-	array(
-		'permissions' =>	'admin',
-		'type'		=>		'plugin'
-	)
+	/* Perm */			'admin'
 );
 ?>
Index: plugins/importExport/index.php
===================================================================
--- plugins/importExport/index.php	(revision 2256)
+++ plugins/importExport/index.php	(revision 2166)
@@ -79,6 +79,5 @@
 			$title => $p_url,
 			html::escapeHTML($module->name) => ''
-		)).
-		dcPage::notices();
+		));
 
 	echo
@@ -94,6 +93,5 @@
 			__('Plugins') => '',
 			$title => ''
-		)).
-		dcPage::notices();
+		));
 
 	echo '<h3>'.__('Import').'</h3>'.listImportExportModules($core,$modules['import']);
@@ -104,5 +102,5 @@
 '<p class="info">'.sprintf(
 	__('Export functions are in the page %s.'),
-	'<a href="plugin.php?p=maintenance&amp;tab=backup#backup">'.__('Maintenance').'</a>'
+	'<a href="plugin.php?p=maintenance&tab=backup#backup">'.__('Maintenance').'</a>'
 ).'</p>';
 
Index: plugins/maintenance/_admin.php
===================================================================
--- plugins/maintenance/_admin.php	(revision 2177)
+++ plugins/maintenance/_admin.php	(revision 2196)
@@ -29,4 +29,5 @@
 $core->addBehavior('adminAfterDashboardOptionsUpdate',	array('dcMaintenanceAdmin',	'adminAfterDashboardOptionsUpdate'));
 $core->addBehavior('adminPageHelpBlock',	array('dcMaintenanceAdmin',	'adminPageHelpBlock'));
+$core->addBehavior('pluginsToolsHeaders',	array('dcMaintenanceAdmin',	'pluginsToolsHeaders'));
 
 /**
@@ -223,5 +224,4 @@
 		$core->auth->user_prefs->maintenance->put('dashboard_item', !empty($_POST['maintenance_dashboard_item']), 'boolean');
 	}
-
 
 	/**
@@ -294,3 +294,17 @@
 		}
 	}
+
+	/**
+	 * Add javascript for plugin configuration.
+	 *
+	 * @param	$core	<b>dcCore</b>	dcCore instance
+	 * @param	$module	<b>mixed</b>	Module ID or false if none
+	 * @return	<b>string</b>	Header code for js inclusion
+	 */
+	public static function pluginsToolsHeaders($core, $module)
+	{
+		if ($module == 'maintenance') {
+			return dcPage::jsLoad('index.php?pf=maintenance/js/settings.js');
+		}
+	}
 }
Index: plugins/maintenance/_config.php
===================================================================
--- plugins/maintenance/_config.php	(revision 2227)
+++ plugins/maintenance/_config.php	(revision 2227)
@@ -0,0 +1,100 @@
+<?php
+# -- BEGIN LICENSE BLOCK ---------------------------------------
+#
+# This file is part of Dotclear 2.
+#
+# Copyright (c) 2003-2013 Olivier Meunier & Association Dotclear
+# Licensed under the GPL version 2.0 license.
+# See LICENSE file or
+# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
+#
+# -- END LICENSE BLOCK -----------------------------------------
+if (!defined('DC_CONTEXT_MODULE')) { return; }
+
+$core->blog->settings->addNamespace('maintenance');
+$maintenance = new dcMaintenance($core);
+$tasks = $maintenance->getTasks();
+
+$combo_ts = array(
+	__('Never') 			=> 0,
+	__('Every week') 		=> 604800,
+	__('Every two weeks') 	=> 1209600,
+	__('Every month') 		=> 2592000,
+	__('Every two months') 	=> 5184000
+);
+
+if (!empty($_POST['save'])) {
+
+	try {
+		$core->blog->settings->maintenance->put(
+			'plugin_message', 
+			!empty($_POST['settings_plugin_message']), 
+			'boolean', 
+			'Display alert message of late tasks on plugin page', 
+			true, 
+			true
+		);
+
+		foreach($tasks as $t) {
+			if (!empty($_POST['settings_recall_type']) && $_POST['settings_recall_type'] == 'all') {
+				$ts = $_POST['settings_recall_time'];
+			}
+			else {
+				$ts = empty($_POST['settings_ts_'.$t->id()]) ? 0 : $_POST['settings_ts_'.$t->id()];
+			}
+			$core->blog->settings->maintenance->put(
+				'ts_'.$t->id(), 
+				abs((integer) $ts), 
+				'integer', 
+				sprintf('Recall time for task %s', $t->id()), 
+				true, 
+				$t->blog()
+			);
+		}
+
+		dcPage::addSuccessNotice(__('Maintenance plugin has been successfully configured.'));
+		http::redirect($list->getURL('module=maintenance&conf=1'));
+	}
+	catch(Exception $e) {
+		$core->error->add($e->getMessage());
+	}
+}
+
+echo 
+'<p>'.__('Set up reminders for maintenance tasks.').'</p>'.
+
+'<h4 class="pretty-title">'.__('Activation').'</h4>'.
+'<p><label for="settings_plugin_message" class="classic">'.
+form::checkbox('settings_plugin_message', 1, $core->blog->settings->maintenance->plugin_message).
+__('Display alert messages on late tasks').'</label></p>'.
+
+'<p class="info">'.sprintf(
+	__('You can place list of late tasks on your %s.'),
+	'<a href="preferences.php#user-favorites">'.__('Dashboard').'</a>'
+).'</p>'.
+
+'<h4 class="pretty-title vertical-separator">'.__('Frequency').'</h4>'.
+
+'<p class="vertical-separator">'.form::radio(array('settings_recall_type', 'settings_recall_all'), 'all').' '.
+'<label class="classic" for="settings_recall_all">'.
+'<strong>'.__('Use one recall time for all tasks').'</strong></label>'.
+
+'<p class="field wide vertical-separator"><label for="settings_recall_time">'.__('Recall time for all tasks:').'</label>'.
+form::combo('settings_recall_time', $combo_ts, 'seperate', 'recall-for-all').
+'</p>'.
+
+'<p class="vertical-separator">'.form::radio(array('settings_recall_type', 'settings_recall_separate'), 'separate', 1).' '.
+'<label class="classic" for="settings_recall_separate">'.
+'<strong>'.__('Use one recall time per task').'</strong></label>';
+
+foreach($tasks as $t)
+{
+	echo
+	'<div class="two-boxes">'.
+
+	'<p class="field wide"><label for="settings_ts_'.$t->id().'">'.$t->task().'</label>'.
+	form::combo('settings_ts_'.$t->id(), $combo_ts, $t->ts(), 'recall-per-task').
+	'</p>'.
+
+	'</div>';
+}
Index: plugins/maintenance/_define.php
===================================================================
--- plugins/maintenance/_define.php	(revision 2257)
+++ plugins/maintenance/_define.php	(revision 1989)
@@ -17,8 +17,4 @@
 	/* Author */			"Olivier Meunier & Association Dotclear",
 	/* Version */			'1.3.1',
-	array(
-		'permissions' =>	'admin',
-		'type'		=>		'plugin'
-	)
-
+	/* Permission */		'admin'
 );
Index: plugins/maintenance/index.php
===================================================================
--- plugins/maintenance/index.php	(revision 2166)
+++ plugins/maintenance/index.php	(revision 2175)
@@ -27,42 +27,4 @@
 $code = empty($_POST['code']) ? null : (integer) $_POST['code'];
 $tab = empty($_REQUEST['tab']) ? '' : $_REQUEST['tab'];
-
-// Save settings
-
-if (!empty($_POST['settings'])) {
-
-	try {
-		$core->blog->settings->maintenance->put(
-			'plugin_message', 
-			!empty($_POST['settings_plugin_message']), 
-			'boolean', 
-			'Display alert message of late tasks on plugin page', 
-			true, 
-			true
-		);
-
-		foreach($tasks as $t) {
-			if (!empty($_POST['settings_recall_type']) && $_POST['settings_recall_type'] == 'all') {
-				$ts = $_POST['settings_recall_time'];
-			}
-			else {
-				$ts = empty($_POST['settings_ts_'.$t->id()]) ? 0 : $_POST['settings_ts_'.$t->id()];
-			}
-			$core->blog->settings->maintenance->put(
-				'ts_'.$t->id(), 
-				abs((integer) $ts), 
-				'integer', 
-				sprintf('Recall time for task %s', $t->id()), 
-				true, 
-				$t->blog()
-			);
-		}
-		
-		http::redirect($p_url.'&done=1&tab='.$tab.'#'.$tab);
-	}
-	catch(Exception $e) {
-		$core->error->add($e->getMessage());
-	}
-}
 
 // Get task object
@@ -287,55 +249,4 @@
 		'</div>';
 	}
-
-	// Settings
-
-	echo 
-	'<div id="settings" class="multi-part" title="'.__('Alert settings').'">'.
-	'<h3>'.__('Alert settings').'</h3>'.
-	'<form action="'.$p_url.'" method="post">'.
-
-	'<h4 class="pretty-title">'.__('Activation').'</h4>'.
-	'<p><label for="settings_plugin_message" class="classic">'.
-	form::checkbox('settings_plugin_message', 1, $core->blog->settings->maintenance->plugin_message).
-	__('Display alert messages on late tasks').'</label></p>'.
-
-	'<p class="info">'.sprintf(
-		__('You can place list of late tasks on your %s.'),
-		'<a href="preferences.php#user-favorites">'.__('Dashboard').'</a>'
-	).'</p>'.
-
-	'<h4 class="pretty-title vertical-separator">'.__('Frequency').'</h4>'.
-
-	'<p class="vertical-separator">'.form::radio(array('settings_recall_type', 'settings_recall_all'), 'all').' '.
-	'<label class="classic" for="settings_recall_all">'.
-	'<strong>'.__('Use one recall time for all tasks').'</strong></label>'.
-
-	'<p class="field wide vertical-separator"><label for="settings_recall_time">'.__('Recall time for all tasks:').'</label>'.
-	form::combo('settings_recall_time', $combo_ts, 'seperate', 'recall-for-all').
-	'</p>'.
-
-	'<p class="vertical-separator">'.form::radio(array('settings_recall_type', 'settings_recall_separate'), 'separate', 1).' '.
-	'<label class="classic" for="settings_recall_separate">'.
-	'<strong>'.__('Use one recall time per task').'</strong></label>';
-
-	foreach($tasks as $t)
-	{
-		echo
-		'<div class="two-boxes">'.
-
-		'<p class="field wide"><label for="settings_ts_'.$t->id().'">'.$t->task().'</label>'.
-		form::combo('settings_ts_'.$t->id(), $combo_ts, $t->ts(), 'recall-per-task').
-		'</p>'.
-
-		'</div>';
-	}
-
-	echo 
-	'<p class="field wide"><input type="submit" value="'.__('Save this settings').'" /> '.
-	form::hidden(array('tab'), 'settings').
-	form::hidden(array('settings'), 1).
-	$core->formNonce().'</p>'.
-	'</form>'.
-	'</div>';
 }
 
Index: plugins/pages/_admin.php
===================================================================
--- plugins/pages/_admin.php	(revision 2246)
+++ plugins/pages/_admin.php	(revision 2230)
@@ -12,5 +12,7 @@
 if (!defined('DC_CONTEXT_ADMIN')) { return; }
 
+$core->addBehavior('adminDashboardIcons','pages_dashboard');
 $core->addBehavior('adminDashboardFavorites',array('pagesDashboard','pagesDashboardFavs'));
+$core->addBehavior('adminDashboardFavsIcon','pages_dashboard_favs_icon');
 $core->addBehavior('adminUsersActionsHeaders','pages_users_actions_headers');
 
@@ -37,7 +39,6 @@
 		));
 	}
-
-	public static function pagesDashboardCB($core,$v)
-	{
+	
+	public static function pagesDashboardCB($core,$v) {
 		$params = new ArrayObject();
 		$params['post_type'] = 'page';
@@ -48,18 +49,17 @@
 		}
 	}
-
-	public static function pagesActiveCB($request,$params)
-	{
+	
+	public static function pagesActiveCB($request,$params) {
 		return ($request == "plugin.php") &&
 			isset($params['p']) && $params['p'] == 'pages'
 			&& !(isset($params['act']) && $params['act']=='page');
 	}
-
-	public static function newPageActiveCB($request,$params)
-	{
+	
+	public static function newPageActiveCB($request,$params) {
 		return ($request == "plugin.php") &&
 			isset($params['p']) && $params['p'] == 'pages'
 			&& isset($params['act']) && $params['act']=='page';
 	}
+	
 }
 
Index: plugins/pages/_define.php
===================================================================
--- plugins/pages/_define.php	(revision 2257)
+++ plugins/pages/_define.php	(revision 1442)
@@ -19,6 +19,5 @@
 	array(
 		'permissions' =>	'contentadmin,pages',
-		'priority' =>	999,
-		'type'		=>		'plugin'
+		'priority' =>	999
 	)
 );
Index: plugins/pages/class.actionpage.php
===================================================================
--- plugins/pages/class.actionpage.php	(revision 2256)
+++ plugins/pages/class.actionpage.php	(revision 2169)
@@ -80,7 +80,5 @@
 			
 		}
-		
-		dcPage::addSuccessNotice(__('Selected pages have been successfully reordered.'));
-		$ap->redirect(false);
+		$ap->redirect(false,array('reo'=>1));
 	}	
 }
Index: plugins/pages/list.php
===================================================================
--- plugins/pages/list.php	(revision 2256)
+++ plugins/pages/list.php	(revision 2232)
@@ -58,10 +58,14 @@
 		dcPage::jsLoad('index.php?pf=pages/list.js').
 		'<script type="text/javascript">'.
-		"\n".'//<![CDATA['."\n".
+		'//<![CDATA['.
 		dcPage::jsVar('dotclear.msg.confirm_delete_posts',__("Are you sure you want to delete selected pages?")).
-		"\n".'//]]>'."\n".
-		'</script>';
+		'//]]>';
 
   ?>
+  <script type="text/javascript">
+  //<![CDATA[
+  <?php echo dcPage::jsVar('dotclear.msg.confirm_delete_posts',__("Are you sure you want to delete selected pages?")); ?>
+  //]]>
+  </script>
 </head>
 
@@ -72,5 +76,5 @@
 		html::escapeHTML($core->blog->name) => '',
 		__('Pages') => ''
-	)).dcPage::notices();
+	));
 
 if (!empty($_GET['upd'])) {
Index: plugins/pings/_define.php
===================================================================
--- plugins/pings/_define.php	(revision 2257)
+++ plugins/pings/_define.php	(revision 1179)
@@ -18,6 +18,5 @@
 	/* Version */			'1.2',
 	array(
-		'permissions' =>	'usage,contentadmin',
-		'type'		=>		'plugin'
+		'permissions' =>	'usage,contentadmin'
 	)
 );
Index: plugins/pings/index.php
===================================================================
--- plugins/pings/index.php	(revision 2256)
+++ plugins/pings/index.php	(revision 2166)
@@ -36,6 +36,5 @@
 		$core->blog->settings->pings->put('pings_active',!empty($_POST['pings_active']),null,null,true,true);
 		$core->blog->settings->pings->put('pings_uris',serialize($pings_uris),null,null,true,true);
-		dcPage::addSuccessNotice(__('Settings have been successfully updated.'));
-		http::redirect($p_url);
+		http::redirect($p_url.'&up=1');
 	}
 }
@@ -58,4 +57,8 @@
 		__('Pings configuration') => ''
 	));
+
+if (!empty($_GET['up'])) {
+	dcPage::success(__('Settings have been successfully updated.'));
+}
 
 echo
Index: plugins/simpleMenu/_define.php
===================================================================
--- plugins/simpleMenu/_define.php	(revision 2257)
+++ plugins/simpleMenu/_define.php	(revision 1179)
@@ -18,6 +18,5 @@
 	/* Version */			'1.1.1',
 	array(
-		'permissions' =>	'admin',
-		'type'		=>		'plugin'
+		'permissions' =>	'admin'
 	)
 );
Index: plugins/simpleMenu/index.php
===================================================================
--- plugins/simpleMenu/index.php	(revision 2256)
+++ plugins/simpleMenu/index.php	(revision 2167)
@@ -217,6 +217,5 @@
 				
 					// All done successfully, return to menu items list
-					dcPage::addSuccessNotice(__('Menu item has been successfully added.'));
-					http::redirect($p_url);
+					http::redirect($p_url.'&added=1');
 				} else {
 					throw new Exception(__('Label and URL of menu item are mandatory.'));
@@ -253,6 +252,5 @@
 				
 				// All done successfully, return to menu items list
-				dcPage::addSuccessNotice(__('Menu items have been successfully removed.'));
-				http::redirect($p_url);
+				http::redirect($p_url.'&removed=1');
 			} else {
 				throw new Exception(__('No menu items selected.'));
@@ -288,6 +286,5 @@
 
 			// All done successfully, return to menu items list
-			dcPage::addSuccessNotice(__('Menu items have been successfully updated.'));
-			http::redirect($p_url);
+			http::redirect($p_url.'&updated=1');
 		}
 		catch (Exception $e) {
@@ -326,6 +323,5 @@
 
 			// All done successfully, return to menu items list
-			dcPage::addSuccessNotice(__('Menu items have been successfully updated.'));
-			http::redirect($p_url);
+			http::redirect($p_url.'&neworder=1');
 		} 
 		catch (Exception $e) {
@@ -383,6 +379,5 @@
 		array(
 			'hl_pos' => -2)
-	).
-	dcPage::notices();
+	);
 } else {
 	echo dcPage::breadcrumb(
@@ -390,6 +385,18 @@
 			html::escapeHTML($core->blog->name) => '',
 			$page_title => ''
-		)).
-		dcPage::notices();
+		));
+}
+
+if (!empty($_GET['added'])) {
+	dcPage::success(__('Menu item has been successfully added.'));
+}
+if (!empty($_GET['removed'])) {
+	dcPage::success(__('Menu items have been successfully removed.'));
+}
+if (!empty($_GET['neworder'])) {
+	dcPage::success(__('Menu items have been successfully updated.'));
+}
+if (!empty($_GET['updated'])) {
+	dcPage::success(__('Menu items have been successfully updated.'));
 }
 if ($step)
@@ -490,5 +497,5 @@
 		'</tr>'.
 		'</thead>'.
-		'<tbody'.(!$step ? ' id="menuitemslist"' : '').'>';
+		'<tbody '.(!$step ? 'id="menuitemslist"' : '>');
 	$count = 0;
 	foreach ($menu as $i => $m) {
Index: plugins/tags/_admin.php
===================================================================
--- plugins/tags/_admin.php	(revision 2256)
+++ plugins/tags/_admin.php	(revision 2234)
@@ -140,12 +140,5 @@
 				}
 			}
-			dcPage::addSuccessNotice(sprintf(
-				__(
-					'Tag has been successfully added to selected entries',
-					'Tags have been successfully added to selected entries',
-					count($tags))
-				)
-			);
-			$ap->redirect(true);
+			$ap->redirect(true,array('upd' => 1));
 		} 
 		else 
@@ -212,12 +205,5 @@
 				}
 			}
-			dcPage::addSuccessNotice(sprintf(
-				__(
-					'Tag has been successfully removed from selected entries',
-					'Tags have been successfully removed from selected entries',
-					count($_POST['meta_id']))
-				)
-			);
-			$ap->redirect(true);
+			$ap->redirect(true,array('upd' => 1));
 		}
 		else
Index: plugins/tags/_define.php
===================================================================
--- plugins/tags/_define.php	(revision 2257)
+++ plugins/tags/_define.php	(revision 1392)
@@ -19,6 +19,5 @@
 	array(
 		'permissions' =>	'usage,contentadmin',
-		'priority' =>		998,
-		'type'		=>		'plugin'
+		'priority' =>		998
 	)
 );
Index: plugins/tags/tag_posts.php
===================================================================
--- plugins/tags/tag_posts.php	(revision 2256)
+++ plugins/tags/tag_posts.php	(revision 2166)
@@ -26,6 +26,5 @@
 	try {
 		if ($core->meta->updateMeta($tag,$new_id,'tag')) {
-			dcPage::addSuccessNotice(__('Tag has been successfully renamed'));
-			http::redirect($p_url.'&m=tag_posts&tag='.$new_id);
+			http::redirect($p_url.'&m=tag_posts&tag='.$new_id.'&renamed=1');
 		}
 	} catch (Exception $e) {
@@ -39,6 +38,5 @@
 	try {
 		$core->meta->delMeta($tag,'tag');
-		dcPage::addSuccessNotice(__('Tag has been successfully removed'));
-		http::redirect($p_url.'&m=tags');
+		http::redirect($p_url.'&m=tags&del=1');
 	} catch (Exception $e) {
 		$core->error->add($e->getMessage());
@@ -94,9 +92,12 @@
 		__('Tags') => $p_url.'&amp;m=tags',
 		__('Tag').' &ldquo;'.html::escapeHTML($tag).'&rdquo;' => ''
-	)).
-	dcPage::notices();
+	));
 ?>
 
 <?php
+if (!empty($_GET['renamed'])) {
+	dcPage::success(__('Tag has been successfully renamed'));
+}
+
 echo '<p><a class="back" href="'.$p_url.'&amp;m=tags">'.__('Back to tags list').'</a></p>';
 
Index: plugins/tags/tags.php
===================================================================
--- plugins/tags/tags.php	(revision 2256)
+++ plugins/tags/tags.php	(revision 2166)
@@ -25,9 +25,11 @@
 		html::escapeHTML($core->blog->name) => '',
 		__('Tags') => ''
-	)).
-	dcPage::notices();
+	));
 ?>
 
 <?php
+if (!empty($_GET['del'])) {
+	dcPage::message(__('Tag has been successfully removed'));
+}
 
 $tags = $core->meta->getMetadata(array('meta_type' => 'tag'));
Index: plugins/themeEditor/_define.php
===================================================================
--- plugins/themeEditor/_define.php	(revision 2257)
+++ plugins/themeEditor/_define.php	(revision 1179)
@@ -16,8 +16,5 @@
 	/* Description*/		"Theme Editor",
 	/* Author */			"Olivier Meunier",
-	/* Version */			'1.0',
-	array(
-		'type'		=>		'plugin'
-	)
+	/* Version */			'1.0'
 );
 ?>
Index: plugins/themeEditor/index.php
===================================================================
--- plugins/themeEditor/index.php	(revision 2256)
+++ plugins/themeEditor/index.php	(revision 2166)
@@ -92,6 +92,5 @@
 		__('Blog appearance') => 'blog_theme.php',
 		__('Edit theme files') => ''
-	)).
-	dcPage::notices();
+	));
 ?>
 
Index: plugins/userPref/_define.php
===================================================================
--- plugins/userPref/_define.php	(revision 2257)
+++ plugins/userPref/_define.php	(revision 1179)
@@ -16,8 +16,5 @@
 	/* Description*/		"Manage every user preference directive",
 	/* Author */			"Franck Paul",
-	/* Version */			'0.3',
-	array(
-		'type'		=>		'plugin'
-	)
+	/* Version */			'0.3'
 );
 ?>
Index: plugins/userPref/index.php
===================================================================
--- plugins/userPref/index.php	(revision 2256)
+++ plugins/userPref/index.php	(revision 2168)
@@ -36,6 +36,5 @@
 		}
 		
-		dcPage::addSuccessNotice(__('Preferences successfully updated'));
-		http::redirect($p_url);
+		http::redirect($p_url.'&upd=1');
 	}
 	catch (Exception $e)
@@ -59,6 +58,5 @@
 		}
 		
-		dcPage::addSuccessNotice(__('Preferences successfully updated'));
-		http::redirect($p_url.'&part=global');
+		http::redirect($p_url.'&upd=1&part=global');
 	}
 	catch (Exception $e)
@@ -73,8 +71,8 @@
 {
 	if ($s['type'] == 'boolean') {
-		$field = form::combo(array($field_name.'['.$ws.']['.$id.']',$field_name.'_'.$ws.'_'.$id),
+		$field = form::combo(array($field_name.'['.$ws.']['.$id.']',$field_name.'_'.$id),
 		array(__('yes') => 1, __('no') => 0),$s['value'] ? 1 : 0);
 	} else {
-		$field = form::field(array($field_name.'['.$ws.']['.$id.']',$field_name.'_'.$ws.'_'.$id),40,null,
+		$field = form::field(array($field_name.'['.$ws.']['.$id.']',$field_name.'_'.$id),40,null,
 		html::escapeHTML($s['value']));
 	}
@@ -84,5 +82,5 @@
 	return
 	'<tr class="line">'.
-	'<td scope="row"><label for="'.$field_name.'_'.$ws.'_'.$id.'">'.sprintf($slabel,html::escapeHTML($id)).'</label></td>'.
+	'<td scope="row"><label for="s_'.$id.'">'.sprintf($slabel,html::escapeHTML($id)).'</label></td>'.
 	'<td>'.$field.'</td>'.
 	'<td>'.$s['type'].'</td>'.
@@ -118,7 +116,13 @@
 		html::escapeHTML($core->auth->userID()) => '',
 		__('user:preferences') => ''
-	)).
-	dcPage::notices();
-
+	));
+
+if (!empty($_GET['upd'])) {
+	dcPage::success(__('Preferences successfully updated'));
+}
+
+if (!empty($_GET['upda'])) {
+	dcPage::success(__('Preferences definition successfully updated'));
+}
 ?>
 
Index: plugins/widgets/_define.php
===================================================================
--- plugins/widgets/_define.php	(revision 2257)
+++ plugins/widgets/_define.php	(revision 1179)
@@ -19,6 +19,5 @@
 	array(
 		'permissions' =>	'admin',
-		'priority' =>		1000000000,
-		'type'		=>		'plugin'
+		'priority' =>		1000000000
 	)
 );
Index: plugins/widgets/index.php
===================================================================
--- plugins/widgets/index.php	(revision 2256)
+++ plugins/widgets/index.php	(revision 2166)
@@ -191,6 +191,5 @@
 		html::escapeHTML($core->blog->name) => '',
 		__('Widgets') => ''
-	)).
-	dcPage::notices();
+	));
 
 # All widgets
Index: themes/blueSilence/_define.php
===================================================================
--- themes/blueSilence/_define.php	(revision 2257)
+++ themes/blueSilence/_define.php	(revision 1179)
@@ -16,8 +16,5 @@
 	/* Description*/		"Dotclear Theme",
 	/* Author */			"Marco / marcarea.com",
-	/* Version */			'1.0',
-	array(
-		'type'		=>		'theme'
-	)
+	/* Version */			'1.0'
 );
 ?>
Index: themes/customCSS/_define.php
===================================================================
--- themes/customCSS/_define.php	(revision 2257)
+++ themes/customCSS/_define.php	(revision 1179)
@@ -16,8 +16,5 @@
 	/* Description*/		"A CSS customizable theme",
 	/* Author */			"Olivier",
-	/* Version */			'1.1',
-	array(
-		'type'		=>		'theme'
-	)
+	/* Version */			'1.1'
 );
 ?>
Index: themes/default/_define.php
===================================================================
--- themes/default/_define.php	(revision 2257)
+++ themes/default/_define.php	(revision 1179)
@@ -16,8 +16,5 @@
 	/* Description*/		"Default Dotclear theme, fully customizable",
 	/* Author */			"Marco & Olivier",
-	/* Version */			'1.0',
-	array(
-		'type'		=>		'theme'
-	)
+	/* Version */			'1.0'
 );
 ?>
Index: themes/ductile/_define.php
===================================================================
--- themes/ductile/_define.php	(revision 2257)
+++ themes/ductile/_define.php	(revision 1134)
@@ -17,6 +17,5 @@
 	/* Version */			'1.3.1',
 	/* Properties */		array(
-								'standalone_config' => true,
-								'type' => 'theme'
+								'standalone_config' => true
 							)
 );
