Index: plugins/akismet/class.dc.filter.akismet.php
===================================================================
--- plugins/akismet/class.dc.filter.akismet.php	(revision 536)
+++ plugins/akismet/class.dc.filter.akismet.php	(revision 1094)
@@ -151,5 +151,5 @@
 		
 		$res .=
-		'<p><a href="http://wordpress.com/api-keys/">'.__('Get your own API key').'</a></p>'.
+		'<p><a href="http://akismet.com/">'.__('Get your own API key').'</a></p>'.
 		'<p><input type="submit" value="'.__('Save').'" />'.
 		$this->core->formNonce().'</p>'.
Index: plugins/antispam/_define.php
===================================================================
--- plugins/antispam/_define.php	(revision 967)
+++ plugins/antispam/_define.php	(revision 1134)
@@ -16,5 +16,5 @@
 	/* Description*/		"Generic antispam plugin for Dotclear",
 	/* Author */			"Alain Vagner",
-	/* Version */			'1.4',
+	/* Version */			'1.4.1',
 	array(
 		'permissions' =>	'usage,contentadmin',
Index: plugins/antispam/antispam.js
===================================================================
--- plugins/antispam/antispam.js	(revision 1052)
+++ plugins/antispam/antispam.js	(revision 1130)
@@ -1,34 +1,18 @@
-var dragsort = ToolMan.dragsort();
 $(function() {
-	$("#filters-list").each(function() {
-		dragsort.makeTableSortable(this,dotclear.sortable.setHandle, dotclear.sortable.saveOrder);
+	$("#filters-list").sortable({'cursor':'move'});
+	$("#filters-list tr").hover(function () {
+		$(this).css({'cursor':'move'});
+	}, function () {
+		$(this).css({'cursor':'auto'});
 	});
-	$('form input[type=submit][name=delete_all]').click(function(){
-		return window.confirm(dotclear.msg.confirm_spam_delete);
+	$('#filters-form').submit(function() {
+		var order=[];
+		$("#filters-list tr td input.position").each(function() {
+			order.push(this.name.replace(/^f_order\[([^\]]+)\]$/,'$1'));
+		});
+		$("input[name=filters_order]")[0].value = order.join(',');
+		return true;
 	});
+	$("#filters-list tr td input.position").hide();
+	$("#filters-list tr td.handle").addClass('handler');
 });
-
-dotclear.sortable = {
-	setHandle: function(item) {
-		var handle = $(item).find('td.handle').get(0);
-		while (handle.firstChild) {
-			handle.removeChild(handle.firstChild);
-		}
-		
-		item.toolManDragGroup.setHandle(handle);
-		$(handle).addClass('handler');
-	},
-	
-	saveOrder: function(item) {
-		var group = item.toolManDragGroup;
-		var order = $('#filters_order').get(0);
-		group.register('dragend', function() {
-			order.value = '';
-			items = item.parentNode.getElementsByTagName('tr');
-			
-			for (var i=0; i<items.length; i++) {
-				order.value += items[i].id.substr(2)+',';
-			}
-		});
-	}
-};
Index: plugins/antispam/index.php
===================================================================
--- plugins/antispam/index.php	(revision 1052)
+++ plugins/antispam/index.php	(revision 1130)
@@ -108,8 +108,11 @@
   </script>
   <?php
-  echo
-  dcPage::jsToolMan().
-  dcPage::jsPageTabs($default_tab).
-  dcPage::jsLoad('index.php?pf=antispam/antispam.js');
+  echo dcPage::jsPageTabs($default_tab);
+  $core->auth->user_prefs->addWorkspace('accessibility');
+  if (!$core->auth->user_prefs->accessibility->nodragdrop) {
+	echo
+		dcPage::jsLoad('js/jquery/jquery-ui.custom.js').
+		dcPage::jsLoad('index.php?pf=antispam/antispam.js');
+  }
   ?>
   <link rel="stylesheet" type="text/css" href="index.php?pf=antispam/style.css" />
@@ -159,6 +162,6 @@
 	if ($moderationTTL != null && $moderationTTL >=0) {
 		echo '<p>'.sprintf(__('All spam comments older than %s day(s) will be automatically deleted.'), $moderationTTL).' '.
-		__('You can modify this duration in ').
-		'<a href="blog_pref.php"> '.__('Blog preferences').'</a></p>';
+		sprintf(__('You can modify this duration in the %s'),'<a href="blog_pref.php"> '.__('Blog preferences').'</a>').
+			'</p>';
 	}
 	echo '</form>';
@@ -167,5 +170,5 @@
 	# Filters
 	echo
-	'<form action="'.$p_url.'" method="post" class="fieldset">';
+	'<form action="'.$p_url.'" method="post" class="fieldset" id="filters-form">';
 
 	if (!empty($_GET['upd'])) {
@@ -198,5 +201,5 @@
 		echo
 		'<tr class="line'.($f->active ? '' : ' offline').'" id="f_'.$fid.'">'.
-		'<td class="handle">'.form::field(array('f_order['.$fid.']'),2,5,(string) $i, '', '', false, 'title="'.__('position').'"').'</td>'.
+		'<td class="handle">'.form::field(array('f_order['.$fid.']'),2,5,(string) $i, 'position', '', false, 'title="'.__('position').'"').'</td>'.
 		'<td class="nowrap">'.form::checkbox(array('filters_active[]'),$fid,$f->active, '', '', false, 'title="'.__('Active').'"').'</td>'.
 		'<td class="nowrap">'.form::checkbox(array('filters_auto_del[]'),$fid,$f->auto_delete, '', '', false, 'title="'.__('Auto Del.').'"').'</td>'.
Index: plugins/blogroll/_define.php
===================================================================
--- plugins/blogroll/_define.php	(revision 965)
+++ plugins/blogroll/_define.php	(revision 1134)
@@ -16,5 +16,5 @@
 	/* Description*/		"Manage your blogroll",
 	/* Author */			"Olivier Meunier",
-	/* Version */			'1.3',
+	/* Version */			'1.3.1',
 	array(
 		'permissions' =>	'blogroll'
Index: plugins/blogroll/blogroll.js
===================================================================
--- plugins/blogroll/blogroll.js	(revision 1131)
+++ plugins/blogroll/blogroll.js	(revision 1131)
@@ -0,0 +1,18 @@
+$(function() {
+	$("#links-list").sortable({'cursor':'move'});
+	$("#links-list tr").hover(function () {
+		$(this).css({'cursor':'move'});
+	}, function () {
+		$(this).css({'cursor':'auto'});
+	});
+	$('#links-form').submit(function() {
+		var order=[];
+		$("#links-list tr td input.position").each(function() {
+			order.push(this.name.replace(/^order\[([^\]]+)\]$/,'$1'));
+		});
+		$("input[name=links_order]")[0].value = order.join(',');
+		return true;
+	});
+	$("#links-list tr td input.position").hide();
+	$("#links-list tr td.handle").addClass('handler');
+});
Index: plugins/blogroll/index.php
===================================================================
--- plugins/blogroll/index.php	(revision 987)
+++ plugins/blogroll/index.php	(revision 1131)
@@ -164,51 +164,13 @@
 <head>
   <title><?php echo __('Blogroll'); ?></title>
-  <?php echo dcPage::jsToolMan(); ?>
   <?php echo dcPage::jsConfirmClose('links-form','add-link-form','add-category-form'); ?>
   <?php 
-	$core->auth->user_prefs->addWorkspace('accessibility'); 
-	$user_dm_nodragdrop = $core->auth->user_prefs->accessibility->nodragdrop;
+	$core->auth->user_prefs->addWorkspace('accessibility');
+	if (!$core->auth->user_prefs->accessibility->nodragdrop) {
+	echo
+		dcPage::jsLoad('js/jquery/jquery-ui.custom.js').
+		dcPage::jsLoad('index.php?pf=blogroll/blogroll.js');
+	}
   ?>
-  <?php if (!$user_dm_nodragdrop) : ?>
-  <script type="text/javascript">
-  //<![CDATA[
-  
-  var dragsort = ToolMan.dragsort();
-  $(function() {
-  	dragsort.makeTableSortable($("#links-list").get(0),
-  	dotclear.sortable.setHandle,dotclear.sortable.saveOrder);
-	
-	$('.checkboxes-helpers').each(function() {
-		dotclear.checkboxesHelpers(this);
-	});
-  });
-  
-  dotclear.sortable = {
-	  setHandle: function(item) {
-		var handle = $(item).find('td.handle').get(0);
-		while (handle.firstChild) {
-			handle.removeChild(handle.firstChild);
-		}
-		
-		item.toolManDragGroup.setHandle(handle);
-		handle.className = handle.className+' handler';
-	  },
-	  
-	  saveOrder: function(item) {
-		var group = item.toolManDragGroup;
-		var order = document.getElementById('links_order');
-		group.register('dragend', function() {
-			order.value = '';
-			items = item.parentNode.getElementsByTagName('tr');
-			
-			for (var i=0; i<items.length; i++) {
-				order.value += items[i].id.substr(2)+',';
-			}
-		});
-	  }
-  };
-  //]]>
-  </script>
-  <?php endif; ?>
   <?php echo dcPage::jsPageTabs($default_tab); ?>
 </head>
@@ -258,5 +220,5 @@
 	echo
 	'<tr class="line" id="l_'.$rs->link_id.'">'.
-	'<td class="handle minimal">'.form::field(array('order['.$rs->link_id.']'),2,5,$position,'','',false,'title="'.__('position').'"').'</td>'.
+	'<td class="handle minimal">'.form::field(array('order['.$rs->link_id.']'),2,5,$position,'position','',false,'title="'.__('position').'"').'</td>'.
 	'<td class="minimal">'.form::checkbox(array('remove[]'),$rs->link_id,'','','',false,'title="'.__('select this link').'"').'</td>';
 	
Index: plugins/importExport/inc/flat/class.flat.import.php
===================================================================
--- plugins/importExport/inc/flat/class.flat.import.php	(revision 841)
+++ plugins/importExport/inc/flat/class.flat.import.php	(revision 1093)
@@ -790,6 +790,6 @@
 		$strReq = 'SELECT media_id '.
 				'FROM '.$this->prefix.'media '.
-				"WHERE media_path = '".$this->cur_media->media_path."' ".
-				"AND media_file = '".$this->cur_media->media_file."' ";
+				"WHERE media_path = '".$this->con->escape($this->cur_media->media_path)."' ".
+				"AND media_file = '".$this->con->escape($this->cur_media->media_file)."' ";
 		
 		$rs = $this->con->select($strReq);
Index: plugins/pages/page.php
===================================================================
--- plugins/pages/page.php	(revision 1068)
+++ plugins/pages/page.php	(revision 1139)
@@ -431,5 +431,5 @@
 		http::browserUID(DC_MASTER_KEY.$core->auth->userID().$core->auth->getInfo('user_pwd')).
 		'/'.$post->post_url);
-		echo '<a id="post-preview" href="'.$preview_url.'" class="button">'.__('Preview').'</a>';
+		echo '<a id="post-preview" href="'.$preview_url.'" class="button" accesskey="p">'.__('Preview').' (p)'.'</a>';
 	}
 	
Index: plugins/simpleMenu/_define.php
===================================================================
--- plugins/simpleMenu/_define.php	(revision 967)
+++ plugins/simpleMenu/_define.php	(revision 1134)
@@ -16,5 +16,5 @@
 	/* Description*/		"Simple menu for Dotclear",
 	/* Author */			"Franck Paul",
-	/* Version */			'1.1',
+	/* Version */			'1.1.1',
 	array(
 		'permissions' =>	'admin'
Index: plugins/simpleMenu/index.php
===================================================================
--- plugins/simpleMenu/index.php	(revision 1011)
+++ plugins/simpleMenu/index.php	(revision 1132)
@@ -354,55 +354,12 @@
 <head>
 	<title><?php echo $page_title; ?></title>
-	<?php
-		echo
-			dcPage::jsToolMan().
-			# --BEHAVIOR-- adminPageHeaders
-			$core->callBehavior('adminPageHeaders');
+	<?php 
+		$core->auth->user_prefs->addWorkspace('accessibility');
+		if (!$core->auth->user_prefs->accessibility->nodragdrop) {
+			echo
+				dcPage::jsLoad('js/jquery/jquery-ui.custom.js').
+				dcPage::jsLoad('index.php?pf=simpleMenu/simplemenu.js');
+		}
 	?>
-	<?php 
-		$core->auth->user_prefs->addWorkspace('accessibility'); 
-		$user_dm_nodragdrop = $core->auth->user_prefs->accessibility->nodragdrop;
-	?>
-	<?php if (!$user_dm_nodragdrop) : ?>
-	<script type="text/javascript">
-	//<![CDATA[
-
-	var dragsort = ToolMan.dragsort();
-	$(function() {
-		dragsort.makeTableSortable($("#menuitemslist").get(0),
-		dotclear.sortable.setHandle,dotclear.sortable.saveOrder);
-
-		$('.checkboxes-helpers').each(function() {
-			dotclear.checkboxesHelpers(this);
-		});
-	});
-
-	dotclear.sortable = {
-		setHandle: function(item) {
-			var handle = $(item).find('td.handle').get(0);
-			while (handle.firstChild) {
-				handle.removeChild(handle.firstChild);
-			}
-
-			item.toolManDragGroup.setHandle(handle);
-			handle.className = handle.className+' handler';
-		},
-
-		saveOrder: function(item) {
-			var group = item.toolManDragGroup;
-			var order = document.getElementById('im_order');
-			group.register('dragend', function() {
-				order.value = '';
-				items = item.parentNode.getElementsByTagName('tr');
-
-				for (var i=0; i<items.length; i++) {
-					order.value += items[i].id.substr(2)+',';
-				}
-			});
-		}
-	};
-	//]]>
-	</script>
-	<?php endif; ?>
 </head>
 
Index: plugins/simpleMenu/simplemenu.js
===================================================================
--- plugins/simpleMenu/simplemenu.js	(revision 1132)
+++ plugins/simpleMenu/simplemenu.js	(revision 1132)
@@ -0,0 +1,18 @@
+$(function() {
+	$("#menuitemslist").sortable({'cursor':'move'});
+	$("#menuitemslist tr").hover(function () {
+		$(this).css({'cursor':'move'});
+	}, function () {
+		$(this).css({'cursor':'auto'});
+	});
+	$('#menuitems').submit(function() {
+		var order=[];
+		$("#menuitemslist tr td input.position").each(function() {
+			order.push(this.name.replace(/^order\[([^\]]+)\]$/,'$1'));
+		});
+		$("input[name=im_order]")[0].value = order.join(',');
+		return true;
+	});
+	$("#menuitemslist tr td input.position").hide();
+	$("#menuitemslist tr td.handle").addClass('handler');
+});
Index: plugins/tags/_admin.php
===================================================================
--- plugins/tags/_admin.php	(revision 897)
+++ plugins/tags/_admin.php	(revision 1097)
@@ -105,5 +105,5 @@
 		$tag_url = $GLOBALS['core']->blog->url.$GLOBALS['core']->url->getURLFor('tag');
 		
-		$opts = $GLOBALS['core']->blog->url.$GLOBALS['core']->auth->getOptions();
+		$opts = $GLOBALS['core']->auth->getOptions();
 		$type = isset($opts['tag_list_format']) ? $opts['tag_list_format'] : 'more';
 		
Index: plugins/tags/_public.php
===================================================================
--- plugins/tags/_public.php	(revision 1063)
+++ plugins/tags/_public.php	(revision 1108)
@@ -56,6 +56,9 @@
 			return
 			"<?php\n".
-			"@\$params['from'] .= ', '.\$core->prefix.'meta META ';\n".
-			"@\$params['sql'] .= 'AND META.post_id = P.post_id ';\n".
+			"if (!isset(\$params)) { \$params = array(); }\n".
+			"if (!isset(\$params['from'])) { \$params['from'] = ''; }\n".
+			"if (!isset(\$params['sql'])) { \$params['sql'] = ''; }\n".
+			"\$params['from'] .= ', '.\$core->prefix.'meta META ';\n".
+			"\$params['sql'] .= 'AND META.post_id = P.post_id ';\n".
 			"\$params['sql'] .= \"AND META.meta_type = 'tag' \";\n".
 			"\$params['sql'] .= \"AND META.meta_id = '".$core->con->escape($attr['tag'])."' \";\n".
@@ -66,6 +69,9 @@
 			return
 			'<?php if ($_ctx->exists("meta") && ($_ctx->meta->meta_type == "tag")) { '.
-				"@\$params['from'] .= ', '.\$core->prefix.'meta META ';\n".
-				"@\$params['sql'] .= 'AND META.post_id = P.post_id ';\n".
+				"if (!isset(\$params)) { \$params = array(); }\n".
+				"if (!isset(\$params['from'])) { \$params['from'] = ''; }\n".
+				"if (!isset(\$params['sql'])) { \$params['sql'] = ''; }\n".
+				"\$params['from'] .= ', '.\$core->prefix.'meta META ';\n".
+				"\$params['sql'] .= 'AND META.post_id = P.post_id ';\n".
 				"\$params['sql'] .= \"AND META.meta_type = 'tag' \";\n".
 				"\$params['sql'] .= \"AND META.meta_id = '\".\$core->con->escape(\$_ctx->meta->meta_id).\"' \";\n".
Index: plugins/tags/js/post.js
===================================================================
--- plugins/tags/js/post.js	(revision 0)
+++ plugins/tags/js/post.js	(revision 1112)
@@ -12,4 +12,5 @@
 			}
 			var mEdit = new metaEditor(tags_edit,meta_field,'tag');
+			mEdit.meta_url = 'plugin.php?p=tags&m=tag_posts&amp;tag=';
 			mEdit.displayMeta('tag',post_id);
 			
Index: plugins/tags/js/posts_actions.js
===================================================================
--- plugins/tags/js/posts_actions.js	(revision 0)
+++ plugins/tags/js/posts_actions.js	(revision 1112)
@@ -7,4 +7,5 @@
 	var target = $('#tags_list');	
 	var mEdit = new metaEditor(target,tag_field,'tag');
+	mEdit.meta_url = 'plugin.php?p=tags&m=tag_posts&amp;tag=';
 	
 	mEdit.meta_dialog = $('<input type="text" />');
Index: plugins/themeEditor/class.themeEditor.php
===================================================================
--- plugins/themeEditor/class.themeEditor.php	(revision 1037)
+++ plugins/themeEditor/class.themeEditor.php	(revision 1129)
@@ -243,7 +243,7 @@
 		foreach ($langs as $k => $v) {
 			if ($this->parent_theme) {
-				$this->po = array_merge($this->po,$this->getFilesInDir($this->parent_theme.'/locales/'.$v,'po',$v.'/','main.po'));
-			}
-			$this->po = array_merge($this->po,$this->getFilesInDir($this->user_theme.'/locales/'.$v,'po',$v.'/','main.po'));
+				$this->po = array_merge($this->po,$this->getFilesInDir($this->parent_theme.'/locales/'.$v,'po',$v.'/'));
+			}
+			$this->po = array_merge($this->po,$this->getFilesInDir($this->user_theme.'/locales/'.$v,'po',$v.'/'));
 		}
 	}
Index: plugins/userPref/index.php
===================================================================
--- plugins/userPref/index.php	(revision 907)
+++ plugins/userPref/index.php	(revision 1109)
@@ -72,5 +72,5 @@
 	if ($s['type'] == 'boolean') {
 		$field = form::combo(array($field_name.'['.$ws.']['.$id.']',$field_name.'_'.$id),
-		array(__('yes') => 1, __('no') => 0),$s['value']);
+		array(__('yes') => 1, __('no') => 0),$s['value'] ? 1 : 0);
 	} else {
 		$field = form::field(array($field_name.'['.$ws.']['.$id.']',$field_name.'_'.$id),40,null,
