Index: .hgsubstate
===================================================================
--- .hgsubstate	(revision 2624)
+++ .hgsubstate	(revision 2618)
@@ -1,1 +1,1 @@
-d80e4972aaaa26450e5d2f45d55ed8eca0706f9d inc/libs/clearbricks
+94b97f44f94e951b8b6392bd76d8c9a3791388e2 inc/libs/clearbricks
Index: Makefile
===================================================================
--- Makefile	(revision 2615)
+++ Makefile	(revision 2558)
@@ -40,8 +40,23 @@
 	./$(DC)/themes/
 
-	## Copy built-in plugins based on DC_DISTRIB_PLUGINS constant
-	cp -pRf $$(grep DC_DISTRIB_PLUGINS inc/prepend.php | \
-		sed -e "s/.*,'//" -e "s/'.*//" | \
-		sed -e  's/\(^\|,\)/ .\/plugins\//g') \
+	## Copy built-in plugins
+	cp -pRf \
+	./plugins/aboutConfig \
+	./plugins/akismet \
+	./plugins/antispam \
+	./plugins/attachments \
+	./plugins/blogroll \
+	./plugins/blowupConfig \
+	./plugins/dclegacy \
+	./plugins/fairTrackbacks \
+	./plugins/importExport \
+	./plugins/maintenance \
+	./plugins/tags \
+	./plugins/pages \
+	./plugins/pings \
+	./plugins/simpleMenu \
+	./plugins/themeEditor \
+	./plugins/userPref \
+	./plugins/widgets \
 	./$(DC)/plugins/
 
@@ -53,4 +68,5 @@
 	find $(DC)/admin/js/ie7/*.js -exec ./build-tools/min-js.php \{\} \;
 	find $(DC)/admin/js/jquery/*.js -exec ./build-tools/min-js.php \{\} \;
+	find $(DC)/admin/js/jsToolBar/*.js -exec ./build-tools/min-js.php \{\} \;
 	find $(DC)/admin/js/jsUpload/*.js -exec ./build-tools/min-js.php \{\} \;
 	find $(DC)/plugins -name '*.js' -exec ./build-tools/min-js.php \{\} \;
@@ -118,3 +134,2 @@
 
 
-copy-plugins: clean
Index: admin/_charte.php
===================================================================
--- admin/_charte.php	(revision 2504)
+++ admin/_charte.php	(revision 2501)
@@ -31,5 +31,4 @@
 	<script type="text/javascript" src="js/jquery/jquery.js"></script>
 	<script type="text/javascript" src="js/jquery/jquery-ui.custom.js"></script>
-	<script type="text/javascript" src="js/jquery/jquery.ui.touch-punch.js"></script>
 	<script type="text/javascript" src="js/jquery/jquery.pageTabs.js"></script>
 	<script type="text/javascript" src="js/jquery/jquery.biscuit.js"></script>
Index: admin/blog.php
===================================================================
--- admin/blog.php	(revision 2596)
+++ admin/blog.php	(revision 2566)
@@ -21,5 +21,5 @@
 
 # Create a blog
-if (!isset($_POST['id']) && (isset($_POST['create'])))
+if (!isset($_POST['id']) && !empty($_POST['blog_id']))
 {
 	$cur = $core->con->openCursor($core->prefix.'blog');
@@ -84,4 +84,9 @@
 	'<p class="form-note">'.__('At least 2 characters using letters, numbers or symbols.').'</p> ';
 
+	if ($blog_id) {
+		echo
+		'<p class="form-note warn">'.__('Please note that changing your blog ID may require changes in your public index.php file.').'</p>';
+	}
+
 	echo
 	'<p><label class="required" for="blog_name"><abbr title="'.__('Required field').'">*</abbr> '.__('Blog name:').'</label> '.
@@ -94,5 +99,5 @@
 	form::textarea('blog_desc',60,5,html::escapeHTML($blog_desc)).'</p>'.
 
-	'<p><input type="submit" accesskey="s" name="create" value="'.__('Create').'" /></p>'.
+	'<p><input type="submit" accesskey="s" value="'.__('Create').'" /></p>'.
 	'</form>';
 
Index: admin/blog_pref.php
===================================================================
--- admin/blog_pref.php	(revision 2577)
+++ admin/blog_pref.php	(revision 2566)
@@ -166,7 +166,4 @@
 	$media_img_m_size = abs((integer) $_POST['media_img_m_size']);
 	if ($media_img_m_size < 0) { $media_img_m_size = 448; }
-
-	$nb_post_for_home = abs((integer) $_POST['nb_post_for_home']);
-	if ($nb_post_for_home <= 1) { $nb_post_for_home = 1; }
 
 	$nb_post_per_page = abs((integer) $_POST['nb_post_per_page']);
@@ -234,5 +231,4 @@
 		$blog_settings->system->put('note_title_tag',$_POST['note_title_tag']);
 
-		$blog_settings->system->put('nb_post_for_home',$nb_post_for_home);
 		$blog_settings->system->put('nb_post_per_page',$nb_post_per_page);
 		$blog_settings->system->put('use_smilies',!empty($_POST['use_smilies']));
@@ -516,8 +512,4 @@
 
 	'<div class="col">'.
-	'<p><label for="nb_post_for_home" class="classic">'.sprintf(__('Display %s entries on home page'),
-	form::field('nb_post_for_home',2,3,$blog_settings->system->nb_post_for_home)).
-	'</label></p>'.
-
 	'<p><label for="nb_post_per_page" class="classic">'.sprintf(__('Display %s entries per page'),
 	form::field('nb_post_per_page',2,3,$blog_settings->system->nb_post_per_page)).
Index: admin/categories.php
===================================================================
--- admin/categories.php	(revision 2567)
+++ admin/categories.php	(revision 2566)
@@ -109,5 +109,4 @@
 	&& $rs->count()>1) {
 		$starting_script .= dcPage::jsLoad('js/jquery/jquery-ui.custom.js');
-		$starting_script .= dcPage::jsLoad('js/jquery/jquery.ui.touch-punch.js');
 		$starting_script .= dcPage::jsLoad('js/jquery/jquery.mjs.nestedSortable.js');
 }
Index: admin/category.php
===================================================================
--- admin/category.php	(revision 2614)
+++ admin/category.php	(revision 2566)
@@ -176,6 +176,6 @@
 dcPage::open($title,
 	dcPage::jsConfirmClose('category-form').
+	dcPage::jsToolBar().
 	dcPage::jsLoad('js/_category.js'),
-	$core->callBehavior('adminPostEditor').
 	dcPage::breadcrumb($elements)
 );
Index: admin/comment.php
===================================================================
--- admin/comment.php	(revision 2614)
+++ admin/comment.php	(revision 2566)
@@ -181,6 +181,6 @@
 dcPage::open(__('Edit comment'),
 	dcPage::jsConfirmClose('comment-form').
+	dcPage::jsToolBar().
 	dcPage::jsLoad('js/_comment.js').
-	$core->callBehavior('adminPostEditor').
 	# --BEHAVIOR-- adminCommentHeaders
 	$core->callBehavior('adminCommentHeaders'),
Index: admin/index.php
===================================================================
--- admin/index.php	(revision 2614)
+++ admin/index.php	(revision 2566)
@@ -171,6 +171,6 @@
 -------------------------------------------------------- */
 dcPage::open(__('Dashboard'),
+	dcPage::jsToolBar().
 	dcPage::jsLoad('js/_index.js').
-	$core->callBehavior('adminPostEditor').
 	# --BEHAVIOR-- adminDashboardHeaders
 	$core->callBehavior('adminDashboardHeaders'),
Index: admin/js/_category.js
===================================================================
--- admin/js/_category.js	(revision 2614)
+++ admin/js/_category.js	(revision 2566)
@@ -2,7 +2,5 @@
 	dotclear.hideLockable();
 
-	if ($.isFunction('jsToolBar')) {
-		var tbCategory = new jsToolBar(document.getElementById('cat_desc'));
-		tbCategory.draw('xhtml');
-	}
+	var tbCategory = new jsToolBar(document.getElementById('cat_desc'));
+	tbCategory.draw('xhtml');
 });
Index: admin/js/_comment.js
===================================================================
--- admin/js/_comment.js	(revision 2614)
+++ admin/js/_comment.js	(revision 2566)
@@ -1,7 +1,7 @@
 $(function() {
-	if ($.isFunction('jsToolBar')) {
-		var tbComment = new jsToolBar(document.getElementById('comment_content'));
-		tbComment.draw('xhtml');
-	}
+	if (!document.getElementById) { return; }
+
+	var tbComment = new jsToolBar(document.getElementById('comment_content'));
+	tbComment.draw('xhtml');
 
 	$('#comment-form input[name="delete"]').click(function() {
Index: admin/js/_index.js
===================================================================
--- admin/js/_index.js	(revision 2614)
+++ admin/js/_index.js	(revision 1699)
@@ -2,8 +2,6 @@
 	var f = $('#quick-entry');
 	if (f.length > 0) {
-		if ($.isFunction('jsToolBar')) {
-			var contentTb = new jsToolBar($('#post_content',f)[0]);
-			contentTb.switchMode($('#post_format',f).val());
-		}
+		var contentTb = new jsToolBar($('#post_content',f)[0]);
+		contentTb.switchMode($('#post_format',f).val());
 
 		$('input[name=save]',f).click(function() {
@@ -23,5 +21,5 @@
 
 		function quickPost(f,status) {
-			if ($.isFunction('jsToolBar') && (contentTb.getMode() == 'wysiwyg')) {
+			if (contentTb.getMode() == 'wysiwyg') {
 				contentTb.syncContents('iframe');
 			}
@@ -57,5 +55,5 @@
 					$('#post_title',f).val('');
 					$('#post_content',f).val('');
-					if ($.isFunction('jsToolBar') &&  (contentTb.getMode() == 'wysiwyg')) {
+					if (contentTb.getMode() == 'wysiwyg') {
 						contentTb.syncContents('textarea');
 					}
Index: admin/js/_post.js
===================================================================
--- admin/js/_post.js	(revision 2614)
+++ admin/js/_post.js	(revision 2556)
@@ -51,4 +51,36 @@
 
 $(function() {
+	if (!document.getElementById) { return; }
+
+	if (document.getElementById('edit-entry'))
+	{
+		// Get document format and prepare toolbars
+		var formatField = $('#post_format').get(0);
+		var last_post_format = $(formatField).val();
+		$(formatField).change(function() {
+			// Confirm post format change
+			if(window.confirm(dotclear.msg.confirm_change_post_format_noconvert)){
+				excerptTb.switchMode(this.value);
+				contentTb.switchMode(this.value);
+				last_post_format = $(this).val();
+			}else{
+				// Restore last format if change cancelled
+				$(this).val(last_post_format);
+			}
+
+			$('.format_control > *').addClass('hide');
+			$('.format_control:not(.control_no_'+$(this).val()+') > *').removeClass('hide');
+		});
+
+		var excerptTb = new jsToolBar(document.getElementById('post_excerpt'));
+		var contentTb = new jsToolBar(document.getElementById('post_content'));
+		excerptTb.context = contentTb.context = 'post';
+	}
+
+	if (document.getElementById('comment_content')) {
+		var commentTb = new jsToolBar(document.getElementById('comment_content'));
+		commentTb.draw('xhtml');
+	}
+
 	// Post preview
 	$('#post-preview').modalWeb($(window).width()-40,$(window).height()-40);
@@ -67,4 +99,72 @@
 			return window.confirm(dotclear.msg.confirm_delete_post);
 		});
+
+		// Markup validator
+		var v = $('<div class="format_control"><p><a id="a-validator"></a></p><div/>').get(0);
+		$('.format_control').before(v);
+		var a = $('#a-validator').get(0);
+		a.href = '#';
+		a.className = 'button ';
+		$(a).click(function() {
+
+			excerpt_content = $('#post_excerpt').css('display') != 'none' ? $('#post_excerpt').val() : $('#excerpt-area iframe').contents().find('body').html();
+			post_content	= $('#post_content').css('display') != 'none' ? $('#post_content').val() : $('#content-area iframe').contents().find('body').html();
+
+			var params = {
+				xd_check: dotclear.nonce,
+				f: 'validatePostMarkup',
+				excerpt: excerpt_content,
+				content: post_content,
+				format: $('#post_format').get(0).value,
+				lang: $('#post_lang').get(0).value
+			};
+
+			$.post('services.php',params,function(data) {
+				if ($(data).find('rsp').attr('status') != 'ok') {
+					alert($(data).find('rsp message').text());
+					return false;
+				}
+
+				$('.message, .success, .error, .warning-msg').remove();
+
+				if ($(data).find('valid').text() == 1) {
+					var p = document.createElement('p');
+					p.id = 'markup-validator';
+
+					$(p).addClass('success');
+					$(p).text(dotclear.msg.xhtml_valid);
+					$('#entry-content h3').after(p);
+					$(p).backgroundFade({sColor: dotclear.fadeColor.beginValidatorMsg, eColor: dotclear.fadeColor.endValidatorMsg, steps: 50},function() {
+							$(this).backgroundFade({sColor: dotclear.fadeColor.endValidatorMsg, eColor: dotclear.fadeColor.beginValidatorMsg});
+					});
+				} else {
+					var div = document.createElement('div');
+					div.id = 'markup-validator';
+
+					$(div).addClass('error');
+					$(div).html('<p><strong>' + dotclear.msg.xhtml_not_valid + '</strong></p>' + $(data).find('errors').text());
+					$('#entry-content h3').after(div);
+					$(div).backgroundFade({sColor: dotclear.fadeColor.beginValidatorErr,eColor: dotclear.fadeColor.endValidatorErr, steps: 50},function() {
+							$(this).backgroundFade({sColor: dotclear.fadeColor.endValidatorErr, eColor: dotclear.fadeColor.beginValidatorErr});
+					});
+				}
+
+				if ( $('#post_excerpt').text() != excerpt_content || $('#post_content').text() != post_content ) {
+					var pn = document.createElement('p');
+					$(pn).addClass('warning-msg');
+					$(pn).text(dotclear.msg.warning_validate_no_save_content);
+					$('#entry-content h3').after(pn);
+				}
+
+				return false;
+			});
+
+			return false;
+		});
+
+		a.appendChild(document.createTextNode(dotclear.msg.xhtml_validator));
+
+		$('.format_control > *').addClass('hide');
+		$('.format_control:not(.control_no_'+last_post_format+') > *').removeClass('hide');
 
 		// Hide some fields
@@ -117,4 +217,8 @@
 			hide: $('#post_excerpt').val() == ''
 		});
+
+		// Load toolbars
+		contentTb.switchMode(formatField.value);
+		excerptTb.switchMode(formatField.value);
 
 		// Replace attachment remove links by a POST form submit
@@ -129,4 +233,13 @@
 			return false;
 		});
+
+		// Check unsaved changes before XHTML conversion
+		var excerpt = $('#post_excerpt').val();
+		var content = $('#post_content').val();
+		$('#convert-xhtml').click(function() {
+			if (excerpt != $('#post_excerpt').val() || content != $('#post_content').val()) {
+				return window.confirm(dotclear.msg.confirm_change_post_format);
+			}
+		});
 	});
 
Index: dmin/js/jquery/jquery.ui.touch-punch.js
===================================================================
--- admin/js/jquery/jquery.ui.touch-punch.js	(revision 2495)
+++ 	(revision )
@@ -1,160 +1,0 @@
-/*!
- * jQuery UI Touch Punch 0.2.2
- *
- * Copyright 2011, Dave Furfero
- * Dual licensed under the MIT or GPL Version 2 licenses.
- *
- * Depends:
- *  jquery.ui.widget.js
- *  jquery.ui.mouse.js
- */
-(function ($) {
-
-  // Detect touch support
-  $.support.touch = 'ontouchend' in document;
-
-  // Ignore browsers without touch support
-  if (!$.support.touch) {
-    return;
-  }
-
-  var mouseProto = $.ui.mouse.prototype,
-      _mouseInit = mouseProto._mouseInit,
-      touchHandled;
-
-  /**
-   * Simulate a mouse event based on a corresponding touch event
-   * @param {Object} event A touch event
-   * @param {String} simulatedType The corresponding mouse event
-   */
-  function simulateMouseEvent (event, simulatedType) {
-
-    // Ignore multi-touch events
-    if (event.originalEvent.touches.length > 1) {
-      return;
-    }
-
-    event.preventDefault();
-
-    var touch = event.originalEvent.changedTouches[0],
-        simulatedEvent = document.createEvent('MouseEvents');
-    
-    // Initialize the simulated mouse event using the touch event's coordinates
-    simulatedEvent.initMouseEvent(
-      simulatedType,    // type
-      true,             // bubbles                    
-      true,             // cancelable                 
-      window,           // view                       
-      1,                // detail                     
-      touch.screenX,    // screenX                    
-      touch.screenY,    // screenY                    
-      touch.clientX,    // clientX                    
-      touch.clientY,    // clientY                    
-      false,            // ctrlKey                    
-      false,            // altKey                     
-      false,            // shiftKey                   
-      false,            // metaKey                    
-      0,                // button                     
-      null              // relatedTarget              
-    );
-
-    // Dispatch the simulated event to the target element
-    event.target.dispatchEvent(simulatedEvent);
-  }
-
-  /**
-   * Handle the jQuery UI widget's touchstart events
-   * @param {Object} event The widget element's touchstart event
-   */
-  mouseProto._touchStart = function (event) {
-
-    var self = this;
-
-    // Ignore the event if another widget is already being handled
-    if (touchHandled || !self._mouseCapture(event.originalEvent.changedTouches[0])) {
-      return;
-    }
-
-    // Set the flag to prevent other widgets from inheriting the touch event
-    touchHandled = true;
-
-    // Track movement to determine if interaction was a click
-    self._touchMoved = false;
-
-    // Simulate the mouseover event
-    simulateMouseEvent(event, 'mouseover');
-
-    // Simulate the mousemove event
-    simulateMouseEvent(event, 'mousemove');
-
-    // Simulate the mousedown event
-    simulateMouseEvent(event, 'mousedown');
-  };
-
-  /**
-   * Handle the jQuery UI widget's touchmove events
-   * @param {Object} event The document's touchmove event
-   */
-  mouseProto._touchMove = function (event) {
-
-    // Ignore event if not handled
-    if (!touchHandled) {
-      return;
-    }
-
-    // Interaction was not a click
-    this._touchMoved = true;
-
-    // Simulate the mousemove event
-    simulateMouseEvent(event, 'mousemove');
-  };
-
-  /**
-   * Handle the jQuery UI widget's touchend events
-   * @param {Object} event The document's touchend event
-   */
-  mouseProto._touchEnd = function (event) {
-
-    // Ignore event if not handled
-    if (!touchHandled) {
-      return;
-    }
-
-    // Simulate the mouseup event
-    simulateMouseEvent(event, 'mouseup');
-
-    // Simulate the mouseout event
-    simulateMouseEvent(event, 'mouseout');
-
-    // If the touch interaction did not move, it should trigger a click
-    if (!this._touchMoved) {
-
-      // Simulate the click event
-      simulateMouseEvent(event, 'click');
-    }
-
-    // Unset the flag to allow other widgets to inherit the touch event
-    touchHandled = false;
-  };
-
-  /**
-   * A duck punch of the $.ui.mouse _mouseInit method to support touch events.
-   * This method extends the widget with bound touch event handlers that
-   * translate touch events to mouse events and pass them to the widget's
-   * original mouse event handling methods.
-   */
-  mouseProto._mouseInit = function () {
-    
-    var self = this;
-
-    // Delegate the touch handlers to the widget's element
-    self.element
-      .bind('touchstart', $.proxy(self, '_touchStart'))
-      .bind('touchmove', $.proxy(self, '_touchMove'))
-      .bind('touchend', $.proxy(self, '_touchEnd'));
-
-    // Call the original $.ui.mouse init method
-    _mouseInit.call(self);
-  };
-
-})(jQuery);
Index: admin/js/jsToolBar/jsToolBar.dotclear.js
===================================================================
--- admin/js/jsToolBar/jsToolBar.dotclear.js	(revision 2566)
+++ admin/js/jsToolBar/jsToolBar.dotclear.js	(revision 2566)
@@ -0,0 +1,386 @@
+/* Change link button actions
+-------------------------------------------------------- */
+jsToolBar.prototype.elements.link.data = {};
+jsToolBar.prototype.elements.link.fncall = {};
+jsToolBar.prototype.elements.link.open_url = 'popup_link.php';
+
+jsToolBar.prototype.elements.link.popup = function (args) {
+	window.the_toolbar = this;
+	args = args || '';
+
+	this.elements.link.data = {};
+	var url = this.elements.link.open_url+args;
+
+	var p_win = window.open(url,'dc_popup',
+	'alwaysRaised=yes,dependent=yes,toolbar=yes,height=420,width=520,'+
+	'menubar=no,resizable=yes,scrollbars=yes,status=no');
+};
+
+jsToolBar.prototype.elements.link.fn.wiki = function() {
+	this.elements.link.popup.call(this,'?hreflang='+this.elements.link.default_hreflang);
+};
+jsToolBar.prototype.elements.link.fncall.wiki = function() {
+	var data = this.elements.link.data;
+
+	if (data.href == '') { return; }
+
+	var etag = '|'+data.href;
+	if (data.hreflang) { etag += '|'+data.hreflang; }
+
+	if (data.title) {
+		if (!data.hreflang) { etag += '|'; }
+		etag += '|'+data.title;
+	}
+
+	if (data.content) {
+		this.encloseSelection('['+data.content,etag+']');
+	} else {
+		this.encloseSelection('[',etag+']');
+	}
+};
+
+jsToolBar.prototype.elements.link.fn.xhtml = function() {
+	this.elements.link.popup.call(this,'?hreflang='+this.elements.link.default_hreflang);
+};
+jsToolBar.prototype.elements.link.fncall.xhtml = function() {
+	var data = this.elements.link.data;
+
+	if (data.href == '') { return; }
+
+	var stag = '<a href="'+data.href+'"';
+
+	if (data.hreflang) { stag += ' hreflang="'+data.hreflang+'"'; }
+	if (data.title) { stag += ' title="'+data.title+'"'; }
+	stag += '>';
+	var etag = '</a>';
+
+	if (data.content) {
+		this.encloseSelection('','',function() {
+			return stag + data.content + etag;
+		});
+	} else {
+		this.encloseSelection(stag,etag);
+	}
+};
+
+jsToolBar.prototype.elements.link.fn.wysiwyg = function() {
+	var href, title, hreflang;
+	href = title = hreflang = '';
+	hreflang = this.elements.link.default_hreflang;
+
+	var a = this.getAncestor();
+
+	if (a.tagName == 'a') {
+		href= a.tag.href || '';
+		title = a.tag.title || '';
+		hreflang = a.tag.hreflang || '';
+	}
+
+	this.elements.link.popup.call(this,'?href='+href+'&hreflang='+hreflang+'&title='+title);
+};
+jsToolBar.prototype.elements.link.fncall.wysiwyg = function() {
+	var data = this.elements.link.data;
+
+	var a = this.getAncestor();
+
+	if (a.tagName == 'a') {
+		if (data.href == '') {
+			// Remove link
+			this.replaceNodeByContent(a.tag);
+			this.iwin.focus();
+			return;
+		} else {
+			// Update link
+			a.tag.href = data.href;
+			if (data.hreflang) {
+				a.tag.setAttribute('hreflang',data.hreflang);
+			} else {
+				a.tag.removeAttribute('hreflang');
+			}
+			if (data.title) {
+				a.tag.setAttribute('title',data.title);
+			} else {
+				a.tag.removeAttribute('title');
+			}
+			return;
+		}
+	}
+
+	// Create link
+	if (data.content) {
+		var n = document.createTextNode(data.content);
+	} else {
+		var n = this.getSelectedNode();
+	}
+	var a = this.iwin.document.createElement('a');
+	a.href = data.href;
+	if (data.hreflang) a.setAttribute('hreflang',data.hreflang);
+	if (data.title) a.setAttribute('title',data.title);
+	a.appendChild(n);
+	this.insertNode(a);
+};
+jsToolBar.prototype.getAncestor = function() {
+	var res = {};
+	var range, commonAncestorContainer;
+
+	if (this.iwin.getSelection) { //gecko
+		var selection = this.iwin.getSelection();
+		range = selection.getRangeAt(0);
+		commonAncestorContainer = range.commonAncestorContainer;
+		while (commonAncestorContainer.nodeType != 1) {
+			commonAncestorContainer = commonAncestorContainer.parentNode;
+		}
+	} else { //ie
+		range = this.iwin.document.selection.createRange();
+		commonAncestorContainer = range.parentElement();
+	}
+
+	var ancestorTagName = commonAncestorContainer.tagName.toLowerCase();
+	while (ancestorTagName!='a' && ancestorTagName!='body') {
+		commonAncestorContainer = commonAncestorContainer.parentNode;
+		ancestorTagName = commonAncestorContainer.tagName.toLowerCase();
+	}
+
+	res.tag = commonAncestorContainer;
+	res.tagName = ancestorTagName;
+
+	return res;
+};
+
+/* Image selector
+-------------------------------------------------------- */
+jsToolBar.prototype.elements.img_select = {
+	type: 'button',
+	title: 'Image chooser',
+	fn: {},
+	fncall: {},
+	open_url: 'media.php?popup=1',
+	data: {},
+	popup: function() {
+		window.the_toolbar = this;
+		this.elements.img_select.data = {};
+
+		var p_win = window.open(this.elements.img_select.open_url,'dc_popup',
+		'alwaysRaised=yes,dependent=yes,toolbar=yes,height=500,width=760,'+
+		'menubar=no,resizable=yes,scrollbars=yes,status=no');
+	}
+};
+jsToolBar.prototype.elements.img_select.fn.wiki = function() {
+	this.elements.img_select.popup.call(this);
+};
+jsToolBar.prototype.elements.img_select.fncall.wiki = function() {
+	var d = this.elements.img_select.data;
+	if (d.src == undefined) { return; }
+
+	this.encloseSelection('','',function(str) {
+		var alt = (str) ? str : d.title;
+		var res = '(('+d.src+'|'+alt;
+
+		if (d.alignment == 'left') {
+			res += '|L';
+		} else if (d.alignment == 'right') {
+			res += '|R';
+		} else if (d.alignment == 'center') {
+			res += '|C';
+		} else if (d.description) {
+			res += '|';
+		}
+
+		if (d.description) {
+			res += '|'+d.description;
+		}
+
+		res += '))';
+
+		if (d.link) {
+			var ltitle = (alt) ? '||'+alt : '';
+			res = '['+res+'|'+d.url+ltitle+']';
+		}
+
+		return res;
+	});
+};
+jsToolBar.prototype.elements.img_select.fn.xhtml = function() {
+	this.elements.img_select.popup.call(this);
+};
+jsToolBar.prototype.elements.img_select.fncall.xhtml = function() {
+	var d = this.elements.img_select.data;
+	if (d.src == undefined) { return; }
+
+	this.encloseSelection('','',function(str) {
+		var alt = (str) ? str : d.title;
+		var res = '<img src="'+d.src+'" alt="'+alt.replace('&','&amp;').replace('>','&gt;').replace('<','&lt;').replace('"','&quot;')+'"';
+
+		if (d.alignment == 'left') {
+			res += ' style="float: left; margin: 0 1em 1em 0;"';
+		} else if (d.alignment == 'right') {
+			res += ' style="float: right; margin: 0 0 1em 1em;"';
+		} else if (d.alignment == 'center') {
+			res += ' style="margin: 0 auto; display: block;"';
+		}
+
+		if (d.description) {
+			res += ' title="'+d.description.replace('&','&amp;').replace('>','&gt;').replace('<','&lt;').replace('"','&quot;')+'"';
+		}
+
+		res += ' />';
+
+		if (d.link) {
+			var ltitle = (alt) ? ' title="'+alt.replace('&','&amp;').replace('>','&gt;').replace('<','&lt;').replace('"','&quot;')+'"' : '';
+			res = '<a href="'+d.url+'"'+ltitle+'>'+res+'</a>';
+		}
+
+		return res;
+	});
+};
+
+jsToolBar.prototype.elements.img.fn.wysiwyg = function() {
+	var src = this.elements.img.prompt.call(this);
+	if (!src) { return; }
+
+	var img = this.iwin.document.createElement('img');
+	img.src = src;
+	img.setAttribute('alt',this.getSelectedText());
+
+	this.insertNode(img);
+};
+
+jsToolBar.prototype.elements.img_select.fn.wysiwyg = function() {
+	this.elements.img_select.popup.call(this);
+};
+jsToolBar.prototype.elements.img_select.fncall.wysiwyg = function() {
+	var d = this.elements.img_select.data;
+	var alt = (this.getSelectedText()) ? this.getSelectedText() : d.title;
+	if (d.src == undefined) { return; }
+
+	var img = this.iwin.document.createElement('img');
+	img.src = d.src;
+	img.setAttribute('alt',alt);
+
+
+	if (d.alignment == 'left') {
+		if (img.style.styleFloat != undefined) {
+			img.style.styleFloat = 'left';
+		} else {
+			img.style.cssFloat = 'left';
+		}
+		img.style.marginTop = 0;
+		img.style.marginRight = '1em';
+		img.style.marginBottom = '1em';
+		img.style.marginLeft = 0;
+	} else if (d.alignment == 'right') {
+		if (img.style.styleFloat != undefined) {
+			img.style.styleFloat = 'right';
+		} else {
+			img.style.cssFloat = 'right';
+		}
+		img.style.marginTop = 0;
+		img.style.marginRight = 0;
+		img.style.marginBottom = '1em';
+		img.style.marginLeft = '1em';
+	} else if (d.alignment == 'center') {
+		img.style.marginTop = 0;
+		img.style.marginRight = 'auto';
+		img.style.marginBottom = 0;
+		img.style.marginLeft = 'auto';
+		img.style.display = 'block';
+	}
+
+	if (d.description) {
+		img.setAttribute('title',d.description);
+	}
+
+	if (d.link) {
+		var a = this.iwin.document.createElement('a');
+		a.href = d.url;
+		if (alt) {
+			a.setAttribute('title',alt);
+		}
+		a.appendChild(img);
+		this.insertNode(a);
+	} else {
+		this.insertNode(img);
+	}
+};
+
+// MP3 helpers
+jsToolBar.prototype.elements.mp3_insert = { fncall: {}, data: {} };
+jsToolBar.prototype.elements.mp3_insert.fncall.wiki = function() {
+	var d = this.elements.mp3_insert.data;
+	if (d.player == undefined) { return; }
+
+	this.encloseSelection('','',function(str) {
+		return '\n///html\n' + d.player + '///\n';
+	});
+};
+jsToolBar.prototype.elements.mp3_insert.fncall.xhtml = function() {
+	var d = this.elements.mp3_insert.data;
+	if (d.player == undefined) { return; }
+
+	this.encloseSelection('','',function(str) {
+		return '\n' + d.player + '\n';
+	});
+};
+jsToolBar.prototype.elements.mp3_insert.fncall.wysiwyg = function() {
+	return;
+};
+
+// FLV helpers
+jsToolBar.prototype.elements.flv_insert = { fncall: {}, data: {} };
+jsToolBar.prototype.elements.flv_insert.fncall.wiki = function() {
+	var d = this.elements.flv_insert.data;
+	if (d.player == undefined) { return; }
+
+	this.encloseSelection('','',function(str) {
+		return '\n///html\n' + d.player + '///\n';
+	});
+};
+jsToolBar.prototype.elements.flv_insert.fncall.xhtml = function() {
+	var d = this.elements.flv_insert.data;
+	if (d.player == undefined) { return; }
+
+	this.encloseSelection('','',function(str) {
+		return '\n' + d.player + '\n';
+	});
+};
+jsToolBar.prototype.elements.flv_insert.fncall.wysiwyg = function() {
+	return;
+};
+
+
+/* Posts selector
+-------------------------------------------------------- */
+jsToolBar.prototype.elements.post_link = {
+	type: 'button',
+	title: 'Link to an entry',
+	fn: {},
+	open_url: 'popup_posts.php',
+	data: {},
+	popup: function() {
+		window.the_toolbar = this;
+		this.elements.img_select.data = {};
+
+		var p_win = window.open(this.elements.post_link.open_url,'dc_popup',
+		'alwaysRaised=yes,dependent=yes,toolbar=yes,height=500,width=760,'+
+		'menubar=no,resizable=yes,scrollbars=yes,status=no');
+	}
+};
+jsToolBar.prototype.elements.post_link.fn.wiki = function() {
+	this.elements.post_link.popup.call(this);
+};
+jsToolBar.prototype.elements.post_link.fn.xhtml = function() {
+	this.elements.post_link.popup.call(this);
+};
+jsToolBar.prototype.elements.post_link.fn.wysiwyg = function() {
+	this.elements.post_link.popup.call(this);
+};
+
+// Last space element
+jsToolBar.prototype.elements.space3 = {
+	type:'space',
+	format:{
+		wysiwyg:true,
+		wiki:true,
+		xhtml:true
+	}
+};
Index: admin/js/jsToolBar/jsToolBar.js
===================================================================
--- admin/js/jsToolBar/jsToolBar.js	(revision 2566)
+++ admin/js/jsToolBar/jsToolBar.js	(revision 2566)
@@ -0,0 +1,612 @@
+/* ***** BEGIN LICENSE BLOCK *****
+ * This file is part of DotClear.
+ * Copyright (c) 2005 Nicolas Martin & Olivier Meunier and contributors. All
+ * rights reserved.
+ *
+ * DotClear is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * DotClear is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with DotClear; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ *
+ * ***** END LICENSE BLOCK *****
+*/
+
+function jsToolBar(textarea) {
+	if (!document.createElement) { return; }
+
+	if (!textarea) { return; }
+
+	if ((typeof(document["selection"]) == "undefined")
+	&& (typeof(textarea["setSelectionRange"]) == "undefined")) {
+		return;
+	}
+
+	this.textarea = textarea;
+
+	this.editor = document.createElement('div');
+	this.editor.className = 'jstEditor';
+
+	this.textarea.parentNode.insertBefore(this.editor,this.textarea);
+	this.editor.appendChild(this.textarea);
+
+	this.toolbar = document.createElement("div");
+	this.toolbar.className = 'jstElements';
+	this.editor.parentNode.insertBefore(this.toolbar,this.editor);
+
+	// Dragable resizing (only for gecko)
+	if (navigator.appName == 'Microsoft Internet Explorer')
+	{
+		if (this.editor.addEventListener)
+		{
+			this.handle = document.createElement('div');
+			this.handle.className = 'jstHandle';
+			var dragStart = this.resizeDragStart;
+			var This = this;
+			this.handle.addEventListener('mousedown',function(event) { dragStart.call(This,event); },false);
+			this.editor.parentNode.insertBefore(this.handle,this.editor.nextSibling);
+		}
+	}
+
+	this.context = null;
+	this.toolNodes = {}; // lorsque la toolbar est dessinée , cet objet est garni
+					// de raccourcis vers les éléments DOM correspondants aux outils.
+};
+
+function jsButton(title, fn, scope, className) {
+	this.title = title || null;
+	this.fn = fn || function(){};
+	this.scope = scope || null;
+	this.className = className || null;
+};
+jsButton.prototype.draw = function() {
+	if (!this.scope) return null;
+
+	var button = document.createElement('button');
+	button.setAttribute('type','button');
+	if (this.className) button.className = this.className;
+	button.title = this.title;
+	var span = document.createElement('span');
+	span.appendChild(document.createTextNode(this.title));
+	button.appendChild(span);
+
+	if (this.icon != undefined) {
+		button.style.backgroundImage = 'url('+this.icon+')';
+	}
+	if (typeof(this.fn) == 'function') {
+		var This = this;
+		button.onclick = function() { try { This.fn.apply(This.scope, arguments) } catch (e) {} return false; };
+	}
+	return button;
+};
+
+function jsSpace(id) {
+	this.id = id || null;
+	this.width = null;
+};
+jsSpace.prototype.draw = function() {
+	var span = document.createElement('span');
+	if (this.id) span.id = this.id;
+	span.appendChild(document.createTextNode(String.fromCharCode(160)));
+	span.className = 'jstSpacer';
+	if (this.width) span.style.marginRight = this.width+'px';
+
+	return span;
+};
+
+function jsCombo(title, options, scope, fn, className) {
+	this.title = title || null;
+	this.options = options || null;
+	this.scope = scope || null;
+	this.fn = fn || function(){};
+	this.className = className || null;
+};
+jsCombo.prototype.draw = function() {
+	if (!this.scope || !this.options) return null;
+
+	var select = document.createElement('select');
+	if (this.className) select.className = className;
+	select.title = this.title;
+
+	for (var o in this.options) {
+		//var opt = this.options[o];
+		var option = document.createElement('option');
+		option.value = o;
+		option.appendChild(document.createTextNode(this.options[o]));
+		select.appendChild(option);
+	}
+
+	var This = this;
+	select.onchange = function() {
+		try {
+			This.fn.call(This.scope, this.value);
+		} catch (e) { alert(e); }
+
+		return false;
+	};
+
+	return select;
+};
+
+
+jsToolBar.prototype = {
+	base_url: '',
+	mode: 'xhtml',
+	elements: {},
+
+	getMode: function() {
+		return this.mode;
+	},
+
+	setMode: function(mode) {
+		this.mode = mode || 'xhtml';
+	},
+
+	switchMode: function(mode) {
+		mode = mode || 'xhtml';
+		this.draw(mode);
+	},
+
+	button: function(toolName) {
+		var tool = this.elements[toolName];
+		if (typeof tool.fn[this.mode] != 'function') return null;
+		var b = new jsButton(tool.title, tool.fn[this.mode], this, 'jstb_'+toolName);
+		if (tool.icon != undefined) {
+			b.icon = tool.icon;
+		}
+		return b;
+	},
+	space: function(toolName) {
+		var tool = new jsSpace(toolName);
+		if (this.elements[toolName].format != undefined && !this.elements[toolName].format[this.mode]) return null;
+		if (this.elements[toolName].width !== undefined) {
+			tool.width = this.elements[toolName].width;
+		}
+		return tool;
+	},
+	combo: function(toolName) {
+		var tool = this.elements[toolName];
+
+		if( tool[this.mode] != undefined) {
+
+			var length = tool[this.mode].list.length;
+
+			if (typeof tool[this.mode].fn != 'function' || length == 0) {
+				return null;
+			} else {
+				var options = {};
+				for (var i=0; i < length; i++) {
+					var opt = tool[this.mode].list[i];
+					options[opt] = tool.options[opt];
+				}
+				return new jsCombo(tool.title, options, this, tool[this.mode].fn);
+			}
+
+		}
+
+	},
+	draw: function(mode) {
+		this.setMode(mode);
+
+		// Empty toolbar
+		while (this.toolbar.hasChildNodes()) {
+			this.toolbar.removeChild(this.toolbar.firstChild)
+		}
+		this.toolNodes = {}; // vide les raccourcis DOM/**/
+
+		// Draw toolbar elements
+		var b, tool, newTool;
+
+		for (var i in this.elements) {
+			b = this.elements[i];
+
+			var disabled =
+			b.type == undefined || b.type == ''
+			|| (b.disabled != undefined && b.disabled)
+			|| (b.context != undefined && b.context != null && b.context != this.context);
+
+			if (!disabled && typeof this[b.type] == 'function') {
+				tool = this[b.type](i);
+				if (tool) newTool = tool.draw();
+				if (newTool) {
+					this.toolNodes[i] = newTool; //mémorise l'accès DOM pour usage éventuel ultérieur
+					this.toolbar.appendChild(newTool);
+				}
+			}
+		}
+	},
+
+	singleTag: function(stag,etag) {
+		stag = stag || null;
+		etag = etag || stag;
+
+		if (!stag || !etag) { return; }
+
+		this.encloseSelection(stag,etag);
+	},
+
+	encloseSelection: function(prefix, suffix, fn) {
+		this.textarea.focus();
+
+		prefix = prefix || '';
+		suffix = suffix || '';
+
+		var start, end, sel, scrollPos, subst, res;
+
+		if (typeof(document["selection"]) != "undefined") {
+			sel = document.selection.createRange().text;
+		} else if (typeof(this.textarea["setSelectionRange"]) != "undefined") {
+			start = this.textarea.selectionStart;
+			end = this.textarea.selectionEnd;
+			scrollPos = this.textarea.scrollTop;
+			sel = this.textarea.value.substring(start, end);
+		}
+
+		if (sel.match(/ $/)) { // exclude ending space char, if any
+			sel = sel.substring(0, sel.length - 1);
+			suffix = suffix + " ";
+		}
+
+		if (typeof(fn) == 'function') {
+			res = (sel) ? fn.call(this,sel) : fn('');
+		} else {
+			res = (sel) ? sel : '';
+		}
+
+		subst = prefix + res + suffix;
+
+		if (typeof(document["selection"]) != "undefined") {
+			var range = document.selection.createRange().text = subst;
+			this.textarea.caretPos -= suffix.length;
+		} else if (typeof(this.textarea["setSelectionRange"]) != "undefined") {
+			this.textarea.value = this.textarea.value.substring(0, start) + subst +
+			this.textarea.value.substring(end);
+			if (sel) {
+				this.textarea.setSelectionRange(start + subst.length, start + subst.length);
+			} else {
+				this.textarea.setSelectionRange(start + prefix.length, start + prefix.length);
+			}
+			this.textarea.scrollTop = scrollPos;
+		}
+	},
+
+	stripBaseURL: function(url) {
+		if (this.base_url != '') {
+			var pos = url.indexOf(this.base_url);
+			if (pos == 0) {
+				url = url.substr(this.base_url.length);
+			}
+		}
+
+		return url;
+	}
+};
+
+/** Resizer
+-------------------------------------------------------- */
+jsToolBar.prototype.resizeSetStartH = function() {
+	this.dragStartH = this.textarea.offsetHeight + 0;
+};
+jsToolBar.prototype.resizeDragStart = function(event) {
+	var This = this;
+	this.dragStartY = event.clientY;
+	this.resizeSetStartH();
+	document.addEventListener('mousemove', this.dragMoveHdlr=function(event){This.resizeDragMove(event);}, false);
+	document.addEventListener('mouseup', this.dragStopHdlr=function(event){This.resizeDragStop(event);}, false);
+};
+
+jsToolBar.prototype.resizeDragMove = function(event) {
+	this.textarea.style.height = (this.dragStartH+event.clientY-this.dragStartY)+'px';
+};
+
+jsToolBar.prototype.resizeDragStop = function(event) {
+	document.removeEventListener('mousemove', this.dragMoveHdlr, false);
+	document.removeEventListener('mouseup', this.dragStopHdlr, false);
+};
+
+// Elements definition ------------------------------------
+// block format (paragraph, headers)
+jsToolBar.prototype.elements.blocks = {
+	type: 'combo',
+	title: 'block format',
+	options: {
+		none: '-- none --', // only for wysiwyg mode
+		nonebis: '- block format -', // only for xhtml mode
+		p: 'Paragraph',
+		h1: 'Header 1',
+		h2: 'Header 2',
+		h3: 'Header 3',
+		h4: 'Header 4',
+		h5: 'Header 5',
+		h6: 'Header 6'
+	},
+	xhtml: {
+		list: ['nonebis','p','h1','h2','h3','h4','h5','h6'],
+		fn: function(opt) {
+			if (opt=='nonebis')
+				this.textarea.focus();
+			else
+				try {this.singleTag('<'+opt+'>','</'+opt+'>');} catch(e){};
+			this.toolNodes.blocks.value = 'nonebis';
+		}
+	},
+	wiki: {
+		list: ['nonebis','h3','h4','h5'],
+		fn: function(opt) {
+			switch (opt) {
+				case 'nonebis': this.textarea.focus(); break;
+				case 'h3': this.encloseSelection('!!!'); break;
+				case 'h4': this.encloseSelection('!!'); break;
+				case 'h5': this.encloseSelection('!'); break;
+			}
+			this.toolNodes.blocks.value = 'nonebis';
+		}
+	}
+};
+
+// spacer
+jsToolBar.prototype.elements.space0 = {
+	type:'space',
+	format:{
+		wysiwyg:true,
+		wiki:true,
+		xhtml:true
+	}
+};
+
+// strong
+jsToolBar.prototype.elements.strong = {
+	type: 'button',
+	title: 'Strong emphasis',
+	fn: {
+		wiki: function() { this.singleTag('__') },
+		xhtml: function() { this.singleTag('<strong>','</strong>') }
+	}
+};
+
+// em
+jsToolBar.prototype.elements.em = {
+	type: 'button',
+	title: 'Emphasis',
+	fn: {
+		wiki: function() { this.singleTag("''") },
+		xhtml: function() { this.singleTag('<em>','</em>') }
+	}
+};
+
+// ins
+jsToolBar.prototype.elements.ins = {
+	type: 'button',
+	title: 'Inserted',
+	fn: {
+		wiki: function() { this.singleTag('++') },
+		xhtml: function() { this.singleTag('<ins>','</ins>') }
+	}
+};
+
+// del
+jsToolBar.prototype.elements.del = {
+	type: 'button',
+	title: 'Deleted',
+	fn: {
+		wiki: function() { this.singleTag('--') },
+		xhtml: function() { this.singleTag('<del>','</del>') }
+	}
+};
+
+// quote
+jsToolBar.prototype.elements.quote = {
+	type: 'button',
+	title: 'Inline quote',
+	fn: {
+		wiki: function() { this.singleTag('{{','}}') },
+		xhtml: function() { this.singleTag('<q>','</q>') }
+	}
+};
+
+// code
+jsToolBar.prototype.elements.code = {
+	type: 'button',
+	title: 'Code',
+	fn: {
+		wiki: function() { this.singleTag('@@') },
+		xhtml: function() { this.singleTag('<code>','</code>')}
+	}
+};
+
+// spacer
+jsToolBar.prototype.elements.space1 = {
+	type:'space',
+	format:{
+		wysiwyg:true,
+		wiki:true,
+		xhtml:true
+	}
+};
+
+// br
+jsToolBar.prototype.elements.br = {
+	type: 'button',
+	title: 'Line break',
+	fn: {
+		wiki: function() { this.encloseSelection("%%%\n",'') },
+		xhtml: function() { this.encloseSelection("<br />\n",'')}
+	}
+};
+
+// spacer
+jsToolBar.prototype.elements.space2 = {
+	type:'space',
+	format:{
+		wysiwyg:true,
+		wiki:true,
+		xhtml:true
+	}
+};
+
+// blockquote
+jsToolBar.prototype.elements.blockquote = {
+	type: 'button',
+	title: 'Blockquote',
+	fn: {
+		xhtml: function() { this.singleTag('<blockquote>','</blockquote>') },
+		wiki: function() {
+			this.encloseSelection("\n",'',
+			function(str) {
+				str = str.replace(/\r/g,'');
+				return '> '+str.replace(/\n/g,"\n> ");
+			});
+		}
+	}
+};
+
+// pre
+jsToolBar.prototype.elements.pre = {
+	type: 'button',
+	title: 'Preformated text',
+	fn: {
+		wiki: function() { this.singleTag("///\n","\n///") },
+		xhtml: function() { this.singleTag('<pre>','</pre>') }
+	}
+};
+
+// ul
+jsToolBar.prototype.elements.ul = {
+	type: 'button',
+	title: 'Unordered list',
+	fn: {
+		wiki: function() {
+			this.encloseSelection('','',function(str) {
+				str = str.replace(/\r/g,'');
+				return '* '+str.replace(/\n/g,"\n* ");
+			});
+		},
+		xhtml: function() {
+			this.encloseSelection('','',function(str) {
+				str = str.replace(/\r/g,'');
+				str = str.replace(/\n/g,"</li>\n <li>");
+				return "<ul>\n <li>"+str+"</li>\n</ul>";
+			});
+		}
+	}
+};
+
+// ol
+jsToolBar.prototype.elements.ol = {
+	type: 'button',
+	title: 'Ordered list',
+	fn: {
+		wiki: function() {
+			this.encloseSelection('','',function(str) {
+				str = str.replace(/\r/g,'');
+				return '# '+str.replace(/\n/g,"\n# ");
+			});
+		},
+		xhtml: function() {
+			this.encloseSelection('','',function(str) {
+				str = str.replace(/\r/g,'');
+				str = str.replace(/\n/g,"</li>\n <li>");
+				return "<ol>\n <li>"+str+"</li>\n</ol>";
+			});
+		}
+	}
+};
+
+// spacer
+jsToolBar.prototype.elements.space3 = {
+	type:'space',
+	format:{
+		wysiwyg:true,
+		wiki:true,
+		xhtml:true
+	}
+};
+
+// link
+jsToolBar.prototype.elements.link = {
+	type: 'button',
+	title: 'Link',
+	fn: {},
+	href_prompt: 'Please give page URL:',
+	hreflang_prompt: 'Language of this page:',
+	default_hreflang: '',
+	prompt: function(href,hreflang) {
+		href = href || '';
+		hreflang = hreflang || this.elements.link.default_hreflang;
+
+		href = window.prompt(this.elements.link.href_prompt,href);
+		if (!href) { return false; }
+
+		hreflang = window.prompt(this.elements.link.hreflang_prompt,
+		hreflang);
+
+		return { href: this.stripBaseURL(href), hreflang: hreflang };
+	}
+};
+
+jsToolBar.prototype.elements.link.fn.xhtml = function() {
+	var link = this.elements.link.prompt.call(this);
+	if (link) {
+		var stag = '<a href="'+link.href+'"';
+		if (link.hreflang) { stag = stag+' hreflang="'+link.hreflang+'"'; }
+		stag = stag+'>';
+		var etag = '</a>';
+
+		this.encloseSelection(stag,etag);
+	}
+};
+jsToolBar.prototype.elements.link.fn.wiki = function() {
+	var link = this.elements.link.prompt.call(this);
+	if (link) {
+		var stag = '[';
+		var etag = '|'+link.href;
+		if (link.hreflang) { etag = etag+'|'+link.hreflang; }
+		etag = etag+']';
+
+		this.encloseSelection(stag,etag);
+	}
+};
+
+// img
+jsToolBar.prototype.elements.img = {
+		type: 'button',
+		title: 'External image',
+		src_prompt: 'Please give image URL:',
+		fn: {},
+		prompt: function(src) {
+			src = src || '';
+			return this.stripBaseURL(window.prompt(this.elements.img.src_prompt,src));
+		}
+};
+jsToolBar.prototype.elements.img.fn.xhtml = function() {
+	var src = this.elements.img.prompt.call(this);
+	if (src) {
+		this.encloseSelection('','',function(str) {
+			if (str) {
+				return '<img src="'+src+'" alt="'+str+'" />';
+			} else {
+				return '<img src="'+src+'" alt="" />';
+			}
+		});
+	}
+};
+jsToolBar.prototype.elements.img.fn.wiki = function() {
+	var src = this.elements.img.prompt.call(this);
+	if (src) {
+		this.encloseSelection('','',function(str) {
+			if (str) {
+				return '(('+src+'|'+str+'))';
+			} else {
+				return '(('+src+'))';
+			}
+		});
+	}
+};
Index: admin/js/jsToolBar/jsToolBar.wysiwyg.js
===================================================================
--- admin/js/jsToolBar/jsToolBar.wysiwyg.js	(revision 2589)
+++ admin/js/jsToolBar/jsToolBar.wysiwyg.js	(revision 2589)
@@ -0,0 +1,801 @@
+/* ***** BEGIN LICENSE BLOCK *****
+ * This file is part of DotClear.
+ * Copyright (c) 2005 Nicolas Martin & Olivier Meunier and contributors. All
+ * rights reserved.
+ *
+ * DotClear is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * DotClear is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with DotClear; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ *
+ * ***** END LICENSE BLOCK *****
+*/
+
+jsToolBar.prototype.can_wwg = (document.designMode != undefined);
+jsToolBar.prototype.iframe = null;
+jsToolBar.prototype.iwin = null;
+jsToolBar.prototype.ibody = null;
+jsToolBar.prototype.iframe_css = null;
+
+/* Editor methods
+-------------------------------------------------------- */
+jsToolBar.prototype.drawToolBar = jsToolBar.prototype.draw;
+jsToolBar.prototype.draw = function(mode) {
+	mode = mode || 'xhtml';
+
+	if (this.can_wwg) {
+		this.mode = 'wysiwyg';
+		this.drawToolBar('wysiwyg');
+		this.initWindow();
+	} else {
+		this.drawToolBar(mode);
+	}
+};
+
+jsToolBar.prototype.switchMode = function(mode) {
+	mode = mode || 'xhtml';
+
+	if (mode == 'xhtml') {
+		this.wwg_mode = true;
+		this.draw(mode);
+	} else {
+		if (this.wwg_mode) {
+			this.syncContents('iframe');
+		}
+		this.wwg_mode = false;
+		this.removeEditor();
+		this.textarea.style.display = '';
+		this.drawToolBar(mode);
+	}
+};
+
+jsToolBar.prototype.syncContents = function(from) {
+	from = from || 'textarea';
+	var This = this;
+	if (from == 'textarea') {
+		initContent();
+	} else {
+		this.validBlockquote();
+		var html = this.applyHtmlFilters(this.ibody.innerHTML);
+		if (html == '<br />') { html = '<p></p>'; }
+		this.textarea.value = html;
+	}
+
+	function initContent() {
+		if (!This.iframe.contentWindow.document || !This.iframe.contentWindow.document.body) {
+			setTimeout(initContent, 1);
+			return;
+		}
+		This.ibody = This.iframe.contentWindow.document.body;
+
+		if (This.textarea.value != '' && This.textarea.value != '<p></p>') {
+			This.ibody.innerHTML = This.applyWysiwygFilters(This.textarea.value);
+			if (This.ibody.createTextRange) { //cursor at the begin for IE
+				var IErange = This.ibody.createTextRange();
+				IErange.execCommand("SelectAll");
+				IErange.collapse();
+				IErange.select();
+			}
+		} else {
+			var idoc = This.iwin.document;
+			var para = idoc.createElement('p');
+			para.appendChild(idoc.createElement('br'));
+			while (idoc.body.hasChildNodes()) {
+				idoc.body.removeChild(idoc.body.lastChild);
+			}
+			idoc.body.appendChild(para);
+		}
+	}
+};
+jsToolBar.prototype.htmlFilters = {
+	tagsoup: function(str){
+		return this.tagsoup2xhtml(str);
+	}
+};
+jsToolBar.prototype.applyHtmlFilters = function(str) {
+	for (var fn in this.htmlFilters) {
+		 str = this.htmlFilters[fn].call(this, str);
+	}
+	return str;
+};
+jsToolBar.prototype.wysiwygFilters = {};
+jsToolBar.prototype.applyWysiwygFilters = function( str) {
+	for (var fn in this.wysiwygFilters) {
+		 str = this.wysiwygFilters[fn].call(this, str);
+	}
+	return str;
+};
+
+jsToolBar.prototype.switchEdit = function() {
+	if (this.wwg_mode) {
+		this.textarea.style.display = '';
+		this.iframe.style.display = 'none';
+		this.syncContents('iframe');
+		this.drawToolBar('xhtml');
+		this.wwg_mode = false;
+		this.focusEditor();
+	} else {
+		this.iframe.style.display = '';
+		this.textarea.style.display = 'none';
+		this.syncContents('textarea');
+		this.drawToolBar('wysiwyg');
+		this.wwg_mode = true;
+		this.focusEditor();
+	}
+	this.setSwitcher();
+};
+
+/** Creates iframe for editor, inits a blank document
+*/
+jsToolBar.prototype.initWindow = function() {
+	var This = this;
+
+	this.iframe = document.createElement('iframe');
+	this.textarea.parentNode.insertBefore(this.iframe,this.textarea.nextSibling);
+
+	this.switcher = document.createElement('ul');
+	this.switcher.className = 'jstSwitcher';
+	this.editor.appendChild(this.switcher);
+
+	this.iframe.height = this.textarea.offsetHeight + 0;
+	this.iframe.width = this.textarea.offsetWidth + 0;
+
+	if (this.textarea.tabIndex != undefined) {
+		this.iframe.tabIndex = this.textarea.tabIndex;
+	}
+
+	function initIframe() {
+		var doc = This.iframe.contentWindow.document;
+		if (!doc) {
+			setTimeout(initIframe,1);
+			return false;
+		}
+
+		doc.open();
+		var html =
+		'<html>\n'+
+		'<head>\n'+
+		'<style type="text/css">'+This.iframe_css+'</style>\n'+
+		(This.base_url != '' ? '<base href="'+This.base_url+'" />' : '')+
+		'</head>\n'+
+		'<body>\n'+
+		'</body>\n'+
+		'</html>';
+
+		doc.write(html);
+		doc.close();
+		if (document.all) { // for IE
+			doc.designMode = 'on';
+			// warning : doc is now inaccessible for IE6 sp1
+		}
+
+		This.iwin = This.iframe.contentWindow;
+
+		This.syncContents('textarea');
+
+		if (This.wwg_mode == undefined) {
+			This.wwg_mode = true;
+		}
+
+		if (This.wwg_mode) {
+			This.textarea.style.display = 'none';
+		} else {
+			This.iframe.style.display = 'none';
+		}
+
+		// update textarea on submit
+		if (This.textarea.form) {
+			chainHandler(This.textarea.form,'onsubmit', function() {
+				if (This.wwg_mode) {
+					This.syncContents('iframe');
+				}
+			});
+		}
+
+		for (var evt in This.iwinEvents) {
+			var event = This.iwinEvents[evt];
+			This.addIwinEvent(This.iframe.contentWindow.document, event.type, event.fn, This);
+		}
+
+		This.setSwitcher();
+		try { This.iwin.document.designMode = 'on'; } catch (e) {}; // Firefox needs this
+
+		return true;
+	}
+	initIframe();
+};
+jsToolBar.prototype.addIwinEvent = function(target, type, fn, scope) {
+	var myFn = function(e){fn.call(scope, e)};
+	addEvent(target, type, myFn, true);
+	// fix memory leak
+	addEvent(scope.iwin, 'unload', function(){
+		removeEvent(target, type, myFn, true);
+	}, true);
+};
+jsToolBar.prototype.iwinEvents = {
+	block1: {
+		type: 'mouseup',
+		fn: function(){ this.adjustBlockLevelCombo() }
+	},
+	block2: {
+		type: 'keyup',
+		fn: function(){ this.adjustBlockLevelCombo() }
+	}
+};
+
+/** Insert a mode switcher after editor area
+*/
+jsToolBar.prototype.switcher_visual_title = 'visual';
+jsToolBar.prototype.switcher_source_title = 'source';
+jsToolBar.prototype.setSwitcher = function() {
+	while (this.switcher.hasChildNodes()) {
+		this.switcher.removeChild(this.switcher.firstChild);
+	}
+
+	var This = this;
+	function setLink(title,link) {
+		var li = document.createElement('li');
+		if (link) {
+			var a = document.createElement('a');
+			a.href = '#';
+			a.editor = This;
+			a.onclick = function() { this.editor.switchEdit(); return false; };
+			a.appendChild(document.createTextNode(title));
+		} else {
+			li.className = 'jstSwitcherCurrent';
+			a = document.createTextNode(title);
+		}
+
+		li.appendChild(a);
+		This.switcher.appendChild(li);
+	}
+
+	setLink(this.switcher_visual_title,!this.wwg_mode);
+	setLink(this.switcher_source_title,this.wwg_mode);
+};
+
+/** Removes editor area and mode switcher
+*/
+jsToolBar.prototype.removeEditor = function() {
+	if (this.iframe != null) {
+		this.iframe.parentNode.removeChild(this.iframe);
+		this.iframe = null;
+	}
+
+	if (this.switcher != undefined && this.switcher.parentNode != undefined) {
+		this.switcher.parentNode.removeChild(this.switcher);
+	}
+};
+
+/** Focus on the editor area
+*/
+jsToolBar.prototype.focusEditor = function() {
+	if (this.wwg_mode) {
+		try { this.iwin.document.designMode = 'on'; } catch (e) {}; // Firefox needs this
+		var This = this;
+		setTimeout(function() {This.iframe.contentWindow.focus()},1);
+	} else {
+		this.textarea.focus();
+	}
+};
+
+/** Resizer
+*/
+jsToolBar.prototype.resizeSetStartH = function() {
+	if (this.wwg_mode && this.iframe != undefined) {
+		this.dragStartH = this.iframe.offsetHeight;
+		return;
+	}
+	this.dragStartH = this.textarea.offsetHeight + 0;
+};
+jsToolBar.prototype.resizeDragMove = function(event) {
+	var new_height = (this.dragStartH+event.clientY-this.dragStartY)+'px';
+	if (this.iframe != undefined) {
+		this.iframe.style.height = new_height;
+	}
+	this.textarea.style.height = new_height;
+};
+
+/* Editing methods
+-------------------------------------------------------- */
+/** Replaces current selection by given node
+*/
+jsToolBar.prototype.insertNode = function(node) {
+	var range;
+
+	if (this.iwin.getSelection) { // Gecko
+		var sel = this.iwin.getSelection();
+		range = sel.getRangeAt(0);
+
+		// deselect all ranges
+		sel.removeAllRanges();
+
+		// empty range
+		range.deleteContents();
+
+		// Insert node
+		range.insertNode(node);
+
+		range.selectNodeContents(node);
+		range.setEndAfter(node);
+		if (range.endContainer.childNodes.length > range.endOffset &&
+		range.endContainer.nodeType != Node.TEXT_NODE) {
+			range.setEnd(range.endContainer.childNodes[range.endOffset], 0);
+		} else {
+			range.setEnd(range.endContainer.childNodes[0]);
+		}
+		sel.addRange(range);
+
+		sel.collapseToEnd();
+	} else { // IE
+		// lambda element
+		var p = this.iwin.document.createElement('div');
+		p.appendChild(node);
+		range = this.iwin.document.selection.createRange();
+		range.execCommand('delete');
+		// insert innerHTML from element
+		range.pasteHTML(p.innerHTML);
+		range.collapse(false);
+		range.select();
+	}
+	this.iwin.focus();
+};
+
+/** Returns a document fragment with selected nodes
+*/
+jsToolBar.prototype.getSelectedNode = function() {
+	if (this.iwin.getSelection) { // Gecko
+		var sel = this.iwin.getSelection();
+		var range = sel.getRangeAt(0);
+		var content = range.cloneContents();
+	} else { // IE
+		var sel = this.iwin.document.selection;
+		var d = this.iwin.document.createElement('div');
+		d.innerHTML = sel.createRange().htmlText;
+		var content = this.iwin.document.createDocumentFragment();
+		for (var i=0; i < d.childNodes.length; i++) {
+			content.appendChild(d.childNodes[i].cloneNode(true));
+		}
+	}
+	return content;
+};
+
+/** Returns string representation for selected node
+*/
+jsToolBar.prototype.getSelectedText = function() {
+	if (this.iwin.getSelection) { // Gecko
+		return this.iwin.getSelection().toString();
+	} else { // IE
+		var range = this.iwin.document.selection.createRange();
+		return range.text;
+	}
+};
+
+jsToolBar.prototype.replaceNodeByContent = function(node) {
+	var content = this.iwin.document.createDocumentFragment();
+	for (var i=0; i < node.childNodes.length; i++) {
+		content.appendChild(node.childNodes[i].cloneNode(true));
+	}
+	node.parentNode.replaceChild(content, node);
+};
+
+jsToolBar.prototype.getBlockLevel = function() {
+	var blockElts = ['p','h1','h2','h3','h4','h5','h6'];
+
+	var range, commonAncestorContainer;
+	if (this.iwin.getSelection) { //gecko
+		var selection = this.iwin.getSelection();
+		range = selection.getRangeAt(0);
+		commonAncestorContainer = range.commonAncestorContainer;
+		while (commonAncestorContainer.nodeType != 1) {
+			commonAncestorContainer = commonAncestorContainer.parentNode;
+		}
+	} else { //ie
+		range = this.iwin.document.selection.createRange();
+		commonAncestorContainer = range.parentElement();
+	}
+
+	var ancestorTagName = commonAncestorContainer.tagName.toLowerCase();
+	while (arrayIndexOf(blockElts, ancestorTagName)==-1 && ancestorTagName!='body') {
+		commonAncestorContainer = commonAncestorContainer.parentNode;
+		ancestorTagName = commonAncestorContainer.tagName.toLowerCase();
+	}
+	if (ancestorTagName == 'body') return null;
+	else return commonAncestorContainer;
+};
+jsToolBar.prototype.adjustBlockLevelCombo = function() {
+	var blockLevel = this.getBlockLevel();
+	if (blockLevel !== null)
+		this.toolNodes.blocks.value = blockLevel.tagName.toLowerCase();
+	else {
+		if (this.mode == 'wysiwyg') this.toolNodes.blocks.value = 'none';
+		if (this.mode == 'xhtml') this.toolNodes.blocks.value = 'nonebis';
+	}
+};
+
+/** HTML code cleanup
+-------------------------------------------------------- */
+jsToolBar.prototype.simpleCleanRegex = new Array(
+	/* Remove every tags we don't need */
+	[/<meta[\w\W]*?>/gim,''],
+	[/<style[\w\W]*?>[\w\W]*?<\/style>/gim, ''],
+	[/<\/?font[\w\W]*?>/gim, ''],
+
+
+	/* Replacements */
+	[/<(\/?)(B|b|STRONG)([\s>\/])/g, "<$1strong$3"],
+	[/<(\/?)(I|i|EM)([\s>\/])/g, "<$1em$3"],
+	[/<IMG ([^>]*?[^\/])>/gi, "<img $1 />"],
+	[/<INPUT ([^>]*?[^\/])>/gi, "<input $1 />"],
+	[/<COL ([^>]*?[^\/])>/gi, "<col $1 />"],
+	[/<AREA ([^>]*?[^\/])>/gi, "<area $1 />"],
+	[/<PARAM ([^>]*?[^\/])>/gi, "<param $1 />"],
+	[/<HR ([^>]*?[^\/])>/gi, "<hr $1/>"],
+	[/<BR ([^>]*?[^\/])>/gi, "<br $1/>"],
+	[/<(\/?)U([\s>\/])/gi, "<$1ins$2"],
+	[/<(\/?)STRIKE([\s>\/])/gi, "<$1del$2"],
+	[/<span style="font-weight: normal;">([\w\W]*?)<\/span>/gm, "$1"],
+	[/<span style="font-weight: bold;">([\w\W]*?)<\/span>/gm, "<strong>$1</strong>"],
+	[/<span style="font-style: italic;">([\w\W]*?)<\/span>/gm, "<em>$1</em>"],
+	[/<span style="text-decoration: underline;">([\w\W]*?)<\/span>/gm, "<ins>$1</ins>"],
+	[/<span style="text-decoration: line-through;">([\w\W]*?)<\/span>/gm, "<del>$1</del>"],
+	[/<span style="text-decoration: underline line-through;">([\w\W]*?)<\/span>/gm, "<del><ins>$1</ins></del>"],
+	[/<span style="(font-weight: bold; ?|font-style: italic; ?){2}">([\w\W]*?)<\/span>/gm, "<strong><em>$2</em></strong>"],
+	[/<span style="(font-weight: bold; ?|text-decoration: underline; ?){2}">([\w\W]*?)<\/span>/gm, "<ins><strong>$2</strong></ins>"],
+	[/<span style="(font-weight: italic; ?|text-decoration: underline; ?){2}">([\w\W]*?)<\/span>/gm, "<ins><em>$2</em></ins>"],
+	[/<span style="(font-weight: bold; ?|text-decoration: line-through; ?){2}">([\w\W]*?)<\/span>/gm, "<del><strong>$2</strong></del>"],
+	[/<span style="(font-weight: italic; ?|text-decoration: line-through; ?){2}">([\w\W]*?)<\/span>/gm, "<del><em>$2</em></del>"],
+	[/<span style="(font-weight: bold; ?|font-style: italic; ?|text-decoration: underline; ?){3}">([\w\W]*?)<\/span>/gm, "<ins><strong><em>$2</em></strong></ins>"],
+	[/<span style="(font-weight: bold; ?|font-style: italic; ?|text-decoration: line-through; ?){3}">([\w\W]*?)<\/span>/gm, "<del><strong><em>$2</em></strong></del>"],
+	[/<span style="(font-weight: bold; ?|font-style: italic; ?|text-decoration: underline line-through; ?){3}">([\w\W]*?)<\/span>/gm, "<del><ins><strong><em>$2</em></strong></ins></del>"],
+	[/<strong style="font-weight: normal;">([\w\W]*?)<\/strong>/gm, "$1"],
+	[/<([a-z]+) style="font-weight: normal;">([\w\W]*?)<\/\1>/gm, "<$1>$2</$1>"],
+	[/<([a-z]+) style="font-weight: bold;">([\w\W]*?)<\/\1>/gm, "<$1><strong>$2</strong></$1>"],
+	[/<([a-z]+) style="font-style: italic;">([\w\W]*?)<\/\1>/gm, "<$1><em>$2</em></$1>"],
+	[/<([a-z]+) style="text-decoration: underline;">([\w\W]*?)<\/\1>/gm, "<ins><$1>$2</$1></ins>"],
+	[/<([a-z]+) style="text-decoration: line-through;">([\w\W]*?)<\/\1>/gm, "<del><$1>$2</$1></del>"],
+	[/<([a-z]+) style="text-decoration: underline line-through;">([\w\W]*?)<\/\1>/gm, "<del><ins><$1>$2</$1></ins></del>"],
+	[/<([a-z]+) style="(font-weight: bold; ?|font-style: italic; ?){2}">([\w\W]*?)<\/\1>/gm, "<$1><strong><em>$3</em></strong></$1>"],
+	[/<([a-z]+) style="(font-weight: bold; ?|text-decoration: underline; ?){2}">([\w\W]*?)<\/\1>/gm, "<ins><$1><strong>$3</strong></$1></ins>"],
+	[/<([a-z]+) style="(font-weight: italic; ?|text-decoration: underline; ?){2}">([\w\W]*?)<\/\1>/gm, "<ins><$1><em>$3</em></$1></ins>"],
+	[/<([a-z]+) style="(font-weight: bold; ?|text-decoration: line-through; ?){2}">([\w\W]*?)<\/\1>/gm, "<del><$1><strong>$3</strong></$1></del>"],
+	[/<([a-z]+) style="(font-weight: italic; ?|text-decoration: line-through; ?){2}">([\w\W]*?)<\/\1>/gm, "<del><$1><em>$3</em></$1></del>"],
+	[/<([a-z]+) style="(font-weight: bold; ?|font-style: italic; ?|text-decoration: underline; ?){3}">([\w\W]*?)<\/\1>/gm, "<ins><$1><strong><em>$3</em></strong></$1></ins>"],
+	[/<([a-z]+) style="(font-weight: bold; ?|font-style: italic; ?|text-decoration: line-through; ?){3}">([\w\W]*?)<\/\1>/gm, "<del><$1><strong><em>$3</em></strong></$1></del>"],
+	[/<([a-z]+) style="(font-weight: bold; ?|font-style: italic; ?|text-decoration: underline line-through; ?){3}">([\w\W]*?)<\/\1>/gm, "<del><ins><$1><strong><em>$3</em></strong></$1></ins></del>"],
+	[/<p><blockquote>(.*)(\n)+<\/blockquote><\/p>/i,"<blockquote>$1</blockquote>\n"],
+	/* mise en forme identique contigue */
+	[/<\/(strong|em|ins|del|q|code)>(\s*?)<\1>/gim, "$2"],
+	[/<(br|BR)>/g, "<br />"],
+	[/<(hr|HR)>/g, "<hr />"],
+	/* opera est trop strict ;)) */
+	[/([^\s])\/>/g, "$1 />"],
+	/* br intempestifs de fin de block */
+	[/<br \/>\s*<\/(h1|h2|h3|h4|h5|h6|ul|ol|li|p|blockquote|div)/gi, "</$1"],
+	[/<\/(h1|h2|h3|h4|h5|h6|ul|ol|li|p|blockquote)>([^\n\u000B\r\f])/gi, "</$1>\n$2"],
+	[/<hr style="width: 100%; height: 2px;" \/>/g, "<hr />"]
+);
+
+/** Cleanup HTML code
+*/
+jsToolBar.prototype.tagsoup2xhtml = function(html) {
+	for (var reg in this.simpleCleanRegex) {
+		html = html.replace(this.simpleCleanRegex[reg][0], this.simpleCleanRegex[reg][1]);
+	}
+	/* tags vides */
+	/* note : on tente de ne pas tenir compte des commentaires html, ceux-ci
+	   permettent entre autre d'inserer des commentaires conditionnels pour ie */
+	while ( /(<[^\/!]>|<[^\/!][^>]*[^\/]>)\s*<\/[^>]*[^-]>/.test(html) ) {
+		html = html.replace(/(<[^\/!]>|<[^\/!][^>]*[^\/]>)\s*<\/[^>]*[^-]>/g, "");
+	}
+
+	/* tous les tags en minuscule */
+	html = html.replace(/<(\/?)([A-Z0-9]+)/g,
+			function(match0, match1, match2) {
+				return "<" + match1 + match2.toLowerCase();
+			});
+
+	/* IE laisse souvent des attributs sans guillemets */
+	var myRegexp = /<[^>]+((\s+\w+\s*=\s*)([^"'][\w~@+$,%\/:.#?=&;!*()-]*))[^>]*?>/;
+	while ( myRegexp.test(html)) {
+		html = html.replace(
+			myRegexp,
+			function (str, val1, val2, val3){
+				var tamponRegex = new RegExp(regexpEscape(val1));
+				return str.replace(tamponRegex, val2+'"'+val3+'"');
+			}
+		)
+	}
+
+	/* les navigateurs rajoutent une unite aux longueurs css nulles */
+	/* note: a ameliorer ! */
+	while ( /(<[^>]+style=(["'])[^>]+[\s:]+)0(pt|px)(\2|\s|;)/.test(html)) {
+		html = html.replace(/(<[^>]+style=(["'])[^>]+[\s:]+)0(pt|px)(\2|\s|;)/gi, "$1"+"0$4");
+	}
+
+	/* correction des fins de lignes : le textarea edite contient des \n
+	* le wysiwyg des \r\n , et le textarea mis a jour SANS etre affiche des \r\n ! */
+	html = html.replace(/\r\n/g,"\n");
+
+	/* Trim only if there's no pre tag */
+	pattern_pre = /<pre>[\s\S]*<\/pre>/gi;
+	if (!pattern_pre.test(html)) {
+		html = html.replace(/^\s+/gm,'');
+		html = html.replace(/\s+$/gm,'');
+	}
+
+	return html;
+};
+jsToolBar.prototype.validBlockquote = function() {
+	var blockElts = ['address','blockquote','dl','div','fieldset','form','h1',
+	                 'h2','h3','h4','h5','h6','hr','ol','p','pre','table','ul'];
+	var BQs = this.iwin.document.getElementsByTagName('blockquote');
+	var bqChilds;
+
+	for (var bq = 0; bq < BQs.length; bq++) {
+		bqChilds = BQs[bq].childNodes;
+		var frag = this.iwin.document.createDocumentFragment();
+		for (var i = (bqChilds.length-1); i >= 0; i--) {
+			if (bqChilds[i].nodeType == 1 && // Node.ELEMENT_NODE
+			    arrayIndexOf(blockElts, bqChilds[i].tagName.toLowerCase()) >= 0)
+			{
+				if (frag.childNodes.length > 0) {
+					var p = this.iwin.document.createElement('p');
+					p.appendChild(frag);
+					BQs[bq].replaceChild(p, bqChilds[i+1]);
+					frag = this.iwin.document.createDocumentFragment();
+				}
+			} else {
+				if (frag.childNodes.length > 0) BQs[bq].removeChild(bqChilds[i+1]);
+				frag.insertBefore(bqChilds[i].cloneNode(true), frag.firstChild);
+			}
+		}
+		if (frag.childNodes.length > 0) {
+			var p = this.iwin.document.createElement('p');
+			p.appendChild(frag);
+			BQs[bq].replaceChild(p, bqChilds[0]);
+		}
+	}
+};
+
+/* Removing text formating */
+jsToolBar.prototype.removeFormatRegexp = new Array(
+	[/(<[a-z][^>]*)margin\s*:[^;]*;/mg, "$1"],
+	[/(<[a-z][^>]*)margin-bottom\s*:[^;]*;/mg, "$1"],
+	[/(<[a-z][^>]*)margin-left\s*:[^;]*;/mg, "$1"],
+	[/(<[a-z][^>]*)margin-right\s*:[^;]*;/mg, "$1"],
+	[/(<[a-z][^>]*)margin-top\s*:[^;]*;/mg, "$1"],
+
+	[/(<[a-z][^>]*)padding\s*:[^;]*;/mg, "$1"],
+	[/(<[a-z][^>]*)padding-bottom\s*:[^;]*;/mg, "$1"],
+	[/(<[a-z][^>]*)padding-left\s*:[^;]*;/mg, "$1"],
+	[/(<[a-z][^>]*)padding-right\s*:[^;]*;/mg, "$1"],
+	[/(<[a-z][^>]*)padding-top\s*:[^;]*;/mg, "$1"],
+
+	[/(<[a-z][^>]*)font\s*:[^;]*;/mg, "$1"],
+	[/(<[a-z][^>]*)font-family\s*:[^;]*;/mg, "$1"],
+	[/(<[a-z][^>]*)font-size\s*:[^;]*;/mg, "$1"],
+	[/(<[a-z][^>]*)font-style\s*:[^;]*;/mg, "$1"],
+	[/(<[a-z][^>]*)font-variant\s*:[^;]*;/mg, "$1"],
+	[/(<[a-z][^>]*)font-weight\s*:[^;]*;/mg, "$1"],
+
+	[/(<[a-z][^>]*)color\s*:[^;]*;/mg, "$1"]
+);
+
+jsToolBar.prototype.removeTextFormating = function(html) {
+	for (var reg in this.removeFormatRegexp) {
+		html = html.replace(this.removeFormatRegexp[reg][0], this.removeFormatRegexp[reg][1]);
+	}
+
+	html = this.tagsoup2xhtml(html);
+	html = html.replace(/style="\s*?"/mgi,'');
+	return html;
+};
+
+/** Toolbar elements
+-------------------------------------------------------- */
+jsToolBar.prototype.elements.blocks.wysiwyg = {
+	list: ['none','p','h1','h2','h3','h4','h5','h6'],
+	fn: function(opt) {
+		if (opt=='none') {
+			var blockLevel = this.getBlockLevel();
+			if (blockLevel !== null) {
+				this.replaceNodeByContent(blockLevel);
+			}
+			this.iwin.focus();
+		} else {
+			try { this.iwin.document.execCommand('formatblock',false,'<'+opt+'>');
+			} catch(e){};
+			this.iwin.focus();
+		}
+	}
+};
+
+jsToolBar.prototype.elements.strong.fn.wysiwyg = function() {
+	this.iwin.document.execCommand('bold', false, null);
+	this.iwin.focus();
+};
+
+jsToolBar.prototype.elements.em.fn.wysiwyg = function() {
+	this.iwin.document.execCommand('italic', false, null);
+	this.iwin.focus();
+};
+
+jsToolBar.prototype.elements.ins.fn.wysiwyg = function() {
+	this.iwin.document.execCommand('underline', false, null);
+	this.iwin.focus();
+};
+
+jsToolBar.prototype.elements.del.fn.wysiwyg = function() {
+	this.iwin.document.execCommand('strikethrough', false, null);
+	this.iwin.focus();
+};
+
+jsToolBar.prototype.elements.quote.fn.wysiwyg = function() {
+	var n = this.getSelectedNode();
+	var q = this.iwin.document.createElement('q');
+	q.appendChild(n);
+	this.insertNode(q);
+};
+
+jsToolBar.prototype.elements.code.fn.wysiwyg = function() {
+	var n = this.getSelectedNode();
+	var code = this.iwin.document.createElement('code');
+	code.appendChild(n);
+	this.insertNode(code);
+};
+
+jsToolBar.prototype.elements.br.fn.wysiwyg = function() {
+	var n = this.iwin.document.createElement('br');
+	this.insertNode(n);
+};
+
+jsToolBar.prototype.elements.blockquote.fn.wysiwyg = function() {
+	var n = this.getSelectedNode();
+	var q = this.iwin.document.createElement('blockquote');
+	q.appendChild(n);
+	this.insertNode(q);
+};
+
+jsToolBar.prototype.elements.pre.fn.wysiwyg = function() {
+	this.iwin.document.execCommand('formatblock',false,'<pre>');
+	this.iwin.focus();
+};
+
+jsToolBar.prototype.elements.ul.fn.wysiwyg = function() {
+	this.iwin.document.execCommand('insertunorderedlist',false,null);
+	this.iwin.focus();
+};
+
+jsToolBar.prototype.elements.ol.fn.wysiwyg = function() {
+	this.iwin.document.execCommand('insertorderedlist',false,null);
+	this.iwin.focus();
+};
+
+jsToolBar.prototype.elements.link.fn.wysiwyg = function() {
+	var href, hreflang;
+	var range, commonAncestorContainer;
+	if (this.iwin.getSelection) { //gecko
+		var selection = this.iwin.getSelection();
+		range = selection.getRangeAt(0);
+		commonAncestorContainer = range.commonAncestorContainer;
+		while (commonAncestorContainer.nodeType != 1) {
+			commonAncestorContainer = commonAncestorContainer.parentNode;
+		}
+	} else { //ie
+		range = this.iwin.document.selection.createRange();
+		commonAncestorContainer = range.parentElement();
+	}
+
+	var ancestorTagName = commonAncestorContainer.tagName.toLowerCase();
+	while (ancestorTagName!='a' && ancestorTagName!='body') {
+		commonAncestorContainer = commonAncestorContainer.parentNode;
+		ancestorTagName = commonAncestorContainer.tagName.toLowerCase();
+	}
+
+	// Update or remove link?
+	if (ancestorTagName == 'a') {
+		href = commonAncestorContainer.href || '';
+		hreflang = commonAncestorContainer.hreflang || '';
+	}
+
+	href = window.prompt(this.elements.link.href_prompt,href);
+
+	// Remove link
+	if (ancestorTagName == 'a' && href=='') {
+		this.replaceNodeByContent(commonAncestorContainer);
+	}
+	if (!href) return; // user cancel
+
+	hreflang = window.prompt(this.elements.link.hreflang_prompt, hreflang);
+
+	// Update link
+	if (ancestorTagName == 'a' && href) {
+		commonAncestorContainer.setAttribute('href', href);
+		if (hreflang) {
+			commonAncestorContainer.setAttribute('hreflang', hreflang);
+		} else {
+			commonAncestorContainer.removeAttribute('hreflang');
+		}
+		return;
+	}
+
+	// Create link
+	var n = this.getSelectedNode();
+	var a = this.iwin.document.createElement('a');
+	a.href = href;
+	if (hreflang) a.setAttribute('hreflang',hreflang);
+	a.appendChild(n);
+	this.insertNode(a);
+};
+
+
+
+// Remove format and Toggle
+jsToolBar.prototype.elements.removeFormat = {
+	type: 'button',
+	title: 'Remove text formating',
+	fn: {}
+};
+jsToolBar.prototype.elements.removeFormat.disabled = !jsToolBar.prototype.can_wwg;
+jsToolBar.prototype.elements.removeFormat.fn.xhtml = function() {
+	var html = this.textarea.value;
+	html = this.removeTextFormating(html);
+	this.textarea.value = html;
+};
+jsToolBar.prototype.elements.removeFormat.fn.wysiwyg = function() {
+	var html = this.iwin.document.body.innerHTML;
+	html = this.removeTextFormating(html);
+	this.iwin.document.body.innerHTML = html;
+};
+/** Utilities
+-------------------------------------------------------- */
+function arrayIndexOf(aArray, aValue){
+	if (typeof Array.indexOf == 'function') {
+		return aArray.indexOf(aValue);
+	} else {
+		var index = -1;
+		var l = aArray.length;
+		for (var i = 0; i < l ; i++) {
+			if (aArray[i] === aValue) {
+				index = i;
+				break;
+			}
+		}
+		return index;
+	}
+};
+function addEvent(obj, evType, fn, useCapture) {
+	if (obj.addEventListener){
+		obj.addEventListener(evType, fn, useCapture);
+		return true;
+	} else if (obj.attachEvent){
+		var r = obj.attachEvent("on"+evType, fn);
+		return r;
+	} else {
+		return false;
+	}
+};
+function removeEvent(obj, evType, fn, useCapture) {
+	if (obj.removeEventListener){
+		obj.removeEventListener(evType, fn, useCapture);
+		return true;
+	} else if (obj.detachEvent){
+		var r = obj.detachEvent("on"+evType, fn);
+		return r;
+	} else {
+		return false;
+  }
+};
+function regexpEscape(s) {
+	return s.replace(/([\\\^\$*+[\]?{}.=!:(|)])/g,"\\$1")
+};
Index: admin/js/jsToolBar/popup_link.js
===================================================================
--- admin/js/jsToolBar/popup_link.js	(revision 2566)
+++ admin/js/jsToolBar/popup_link.js	(revision 2566)
@@ -0,0 +1,23 @@
+$(function() {
+	$('#link-insert-cancel').click(function() {
+		window.close();
+	});
+
+	$('#link-insert-ok').click(function() {
+		sendClose();
+		window.close();
+	});
+
+	function sendClose() {
+		var insert_form = $('#link-insert-form').get(0);
+		if (insert_form == undefined) { return; }
+
+		var tb = window.opener.the_toolbar;
+		var data = tb.elements.link.data;
+
+		data.href = tb.stripBaseURL(insert_form.elements.href.value);
+		data.title = insert_form.elements.title.value;
+		data.hreflang = insert_form.elements.hreflang.value;
+		tb.elements.link.fncall[tb.mode].call(tb);
+	};
+});
Index: admin/js/jsToolBar/popup_media.js
===================================================================
--- admin/js/jsToolBar/popup_media.js	(revision 2566)
+++ admin/js/jsToolBar/popup_media.js	(revision 2566)
@@ -0,0 +1,92 @@
+$(function() {
+	var toolBar = window.opener.the_toolbar.textarea;
+
+	$('#media-insert').onetabload(function() {
+		$('#media-insert-cancel').click(function() {
+			window.close();
+		});
+
+		$('#media-insert-ok').click(function() {
+			sendClose();
+			window.close();
+		});
+	});
+
+	function sendClose() {
+		var insert_form = $('#media-insert-form').get(0);
+		if (insert_form == undefined) { return; }
+
+		var tb = window.opener.the_toolbar;
+		var type = insert_form.elements.type.value;
+
+		var media_align_grid = {
+			left: 'float: left; margin: 0 1em 1em 0;',
+			right: 'float: right; margin: 0 0 1em 1em;',
+			center: 'text-align: center;'
+		};
+
+		if (type == 'image')
+		{
+			tb.elements.img_select.data.src = tb.stripBaseURL($('input[name="src"]:checked',insert_form).val());
+			tb.elements.img_select.data.alignment = $('input[name="alignment"]:checked',insert_form).val();
+			tb.elements.img_select.data.link = $('input[name="insertion"]:checked',insert_form).val() == 'link';
+
+			tb.elements.img_select.data.title = insert_form.elements.title.value;
+			tb.elements.img_select.data.description = $('input[name="description"]',insert_form).val();
+			tb.elements.img_select.data.url = tb.stripBaseURL(insert_form.elements.url.value);
+			tb.elements.img_select.fncall[tb.mode].call(tb);
+		}
+		else if (type == 'mp3')
+		{
+			var player = $('#public_player').val();
+			var align = $('input[name="alignment"]:checked',insert_form).val();
+
+			if (align != undefined && align != 'none') {
+				player = '<div style="' + media_align_grid[align] + '">' + player + '</div>';
+			}
+
+			tb.elements.mp3_insert.data.player = player.replace(/>/g,'>\n');
+			tb.elements.mp3_insert.fncall[tb.mode].call(tb);
+		}
+		else if (type == 'flv')
+		{
+			var oplayer = $('<div>'+$('#public_player').val()+'</div>');
+			var flashvars = $("[name=FlashVars]",oplayer).val();
+
+			var align = $('input[name="alignment"]:checked',insert_form).val();
+			var title = insert_form.elements.title.value;
+
+			if (title) {
+				flashvars = 'title='+encodeURI(title)+'&amp;'+flashvars;
+			}
+			$('object',oplayer).attr('width',$('#video_w').val());
+			$('object',oplayer).attr('height',$('#video_h').val());
+			flashvars = flashvars.replace(/(width=\d*)/,'width='+$('#video_w').val());
+			flashvars = flashvars.replace(/(height=\d*)/,'height='+$('#video_h').val());
+
+			$("[name=FlashVars]",oplayer).val(flashvars);
+			var player = oplayer.html();
+
+			if (align != undefined && align != 'none') {
+				player = '<div style="' + media_align_grid[align] + '">' + player + '</div>';
+			}
+
+			tb.elements.flv_insert.data.player = player.replace(/>/g,'>\n');
+			tb.elements.flv_insert.fncall[tb.mode].call(tb);
+		}
+		else
+		{
+			tb.elements.link.data.href = tb.stripBaseURL(insert_form.elements.url.value);
+			tb.elements.link.data.content = insert_form.elements.title.value;
+			tb.elements.link.fncall[tb.mode].call(tb);
+		}
+	};
+
+	function playerFormat(s) {
+		s = s.replace(/&lt;/g,'<');
+		s = s.replace(/&gt;/g,'>\n');
+		s = s.replace(/&amp;/g,'&');
+
+		return s;
+	};
+});
Index: admin/js/jsToolBar/popup_posts.js
===================================================================
--- admin/js/jsToolBar/popup_posts.js	(revision 2566)
+++ admin/js/jsToolBar/popup_posts.js	(revision 2566)
@@ -0,0 +1,16 @@
+$(function() {
+	$('#link-insert-cancel').click(function() {
+		window.close();
+	});
+
+	$('#form-entries tr>td.maximal>a').click(function() {
+		// Get post_id
+		var tb = window.opener.the_toolbar;
+		var data = tb.elements.link.data;
+
+		data.href = tb.stripBaseURL($(this).attr('title'));
+
+		tb.elements.link.fncall[tb.mode].call(tb);
+		window.close();
+	});
+});
Index: admin/media.php
===================================================================
--- admin/media.php	(revision 2614)
+++ admin/media.php	(revision 2529)
@@ -75,5 +75,4 @@
 
 $page_url = 'media.php?popup='.$popup.'&post_id='.$post_id;
-$page_url = $core->callBehavior('adminMediaURL',$page_url);
 
 if ($popup) {
@@ -363,14 +362,4 @@
 }
 
-// Remove hidden directories (unless DC_SHOW_HIDDEN_DIRS is set to true)
-if (!defined('DC_SHOW_HIDDEN_DIRS') || (DC_SHOW_HIDDEN_DIRS == false)) {
-	for ($i = count($dir['dirs']) - 1; $i >= 0; $i--) {
-		if ($dir['dirs'][$i]->d) {
-			if (strpos($dir['dirs'][$i]->relname,'.') !== false) {
-				unset($dir['dirs'][$i]);
-			}
-		}
-	}
-}
 $items = array_values(array_merge($dir['dirs'],$dir['files']));
 
@@ -576,6 +565,6 @@
 		}
 	} else {
-		$link = 'media_item.php?id='.$f->media_id.'&amp;popup='.$popup.'&amp;post_id='.$post_id;
-		$link = $core->callBehavior('adminMediaURL',$link);
+		$link =
+		'media_item.php?id='.$f->media_id.'&amp;popup='.$popup.'&amp;post_id='.$post_id;
 	}
 
Index: admin/media_item.php
===================================================================
--- admin/media_item.php	(revision 2614)
+++ admin/media_item.php	(revision 2566)
@@ -209,5 +209,5 @@
 if ($popup) {
 	$starting_scripts .=
-	$core->callBehavior('adminPopupMedia');
+	dcPage::jsLoad('js/jsToolBar/popup_media.js');
 }
 call_user_func($open_f,__('Media manager'),
Index: admin/popup_link.php
===================================================================
--- admin/popup_link.php	(revision 2614)
+++ admin/popup_link.php	(revision 2566)
@@ -19,5 +19,5 @@
 $title = !empty($_GET['title']) ? $_GET['title'] : '';
 
-dcPage::openPopup(__('Add a link'),$core->callBehavior('adminPopupLink'));
+dcPage::openPopup(__('Add a link'),dcPage::jsLoad('js/jsToolBar/popup_link.js'));
 
 echo '<h2 class="page-title">'.__('Add a link').'</h2>';
Index: admin/popup_posts.php
===================================================================
--- admin/popup_posts.php	(revision 2614)
+++ admin/popup_posts.php	(revision 2566)
@@ -48,5 +48,5 @@
 dcPage::openPopup(__('Add a link to an entry'),
 	dcPage::jsLoad('js/_posts_list.js').
-	$core->callBehavior('adminPopupPosts'));
+	dcPage::jsLoad('js/jsToolBar/popup_posts.js'));
 
 echo '<h2 class="page-title">'.__('Add a link to an entry').'</h2>';
Index: admin/post.php
===================================================================
--- admin/post.php	(revision 2614)
+++ admin/post.php	(revision 2566)
@@ -375,8 +375,8 @@
 dcPage::open($page_title.' - '.__('Entries'),
 	dcPage::jsDatePicker().
+	dcPage::jsToolBar().
 	dcPage::jsModal().
 	dcPage::jsMetaEditor().
 	dcPage::jsLoad('js/_post.js').
-	$core->callBehavior('adminPostEditor').
 	dcPage::jsConfirmClose('entry-form','comment-form').
 	# --BEHAVIOR-- adminPostHeaders
Index: admin/preferences.php
===================================================================
--- admin/preferences.php	(revision 2567)
+++ admin/preferences.php	(revision 2566)
@@ -305,5 +305,4 @@
 	($user_acc_nodragdrop ? '' : dcPage::jsLoad('js/_preferences-dragdrop.js')).
 	dcPage::jsLoad('js/jquery/jquery-ui.custom.js').
-	dcPage::jsLoad('js/jquery/jquery.ui.touch-punch.js').
 	dcPage::jsLoad('js/jquery/jquery.pwstrength.js').
 		'<script type="text/javascript">'."\n".
Index: admin/style/jsToolBar/jsToolBar.css
===================================================================
--- admin/style/jsToolBar/jsToolBar.css	(revision 2566)
+++ admin/style/jsToolBar/jsToolBar.css	(revision 2566)
@@ -0,0 +1,184 @@
+.jstEditor {
+	border-width : 0 1px 1px 1px;
+	border-style : solid;
+	border-color : #ddd;
+	background : #f7f7f7;
+}
+.jstEditor textarea, .jstEditor iframe {
+	-webkit-box-sizing: border-box;
+	-moz-box-sizing: border-box;
+	box-sizing: border-box;
+	margin: 0;
+	border: 1px solid #fbfbfb;
+  	width: 100%;
+  	padding: .5em 0 0 0;
+  	min-height: 100px;
+}
+.jstHandle {
+	height: 8px;
+	background: #ccc url(resize.png) no-repeat center center;
+	font-size: 0.1em;
+	cursor: s-resize;
+	border-color: #ccc #ccc #ccc #000;
+	border-width: 0 1px 1px 1px;
+	border-style: solid;
+}
+.jstEditor textarea:focus, .jstEditor iframe:focus {
+	border-color: #bee74b;
+}
+.jstElements {
+	-webkit-box-sizing: border-box;
+	-moz-box-sizing: border-box;
+	box-sizing: border-box;
+	padding: 0 32px 0 1rem;
+	border: 1px solid #dfdfdf;
+	overflow: hidden;
+	background: #f5f5f5;
+	border-radius: 4px 4px 0 0;
+	position: relative;
+	line-height: 30px;
+}
+.jstElements select, .jstElements button {
+	vertical-align: middle;
+}
+.jstElements select {
+	width: 12em;
+	margin-right: .6rem;
+	border: 1px solid #ddd;
+}
+.jstElements button {
+	width: 30px;
+	height: 28px;
+	border-style: solid;
+	border-width: 1px;
+	margin-left: 2px;
+	margin-bottom: 2px;
+	border-color: #e5e5e5 #ccc #ccc #e5e5e5;
+	background-color : #f7f7f7;
+	background-position : 50% 50%;
+	background-repeat: no-repeat;
+}
+.jstElements button:hover, .jstElements button:focus {
+	border-color : #ddd;
+	background-color: #fff;
+}
+.jstElements button span {
+	display: none;
+}
+.jstElements span {
+	display : inline-block;
+	vertical-align: top;
+}
+span.jstSpacer {
+	width : 8px;
+}
+.jstSwitcher {
+	display: block;
+	list-style: none;
+	margin: 0;
+	padding: 0 0 5px 0;
+	background: #dfdfdf;
+	border-top: 1px solid #999;
+}
+.jstSwitcher li {
+	display: inline;
+	margin: 0 0 0 5px;
+	padding: 2px 8px;
+}
+.jstSwitcher li.jstSwitcherCurrent {
+	color: #fff;
+	background: #677374;
+	border-radius: 0 0 2px 2px;
+}
+.jstSwitcher a {
+	font-weight: normal;
+	border-bottom: none !important;
+}
+
+/* Buttons
+-------------------------------------------------------- */
+button.jstb_strong {
+	background-image: url(bt_strong.png);
+}
+button.jstb_em {
+	background-image: url(bt_em.png);
+}
+button.jstb_ins {
+	background-image: url(bt_ins.png);
+}
+button.jstb_del {
+	background-image: url(bt_del.png);
+}
+button.jstb_quote {
+	background-image: url(bt_quote.png);
+}
+button.jstb_code {
+	background-image: url(bt_code.png);
+}
+button.jstb_paragraph {
+	background-image: url(bt_paragraph.png);
+}
+button.jstb_br {
+	background-image: url(bt_br.png);
+}
+button.jstb_blockquote {
+	background-image: url(bt_bquote.png);
+}
+button.jstb_pre {
+	background-image: url(bt_pre.png);
+}
+button.jstb_ul {
+	background-image: url(bt_ul.png);
+}
+button.jstb_ol {
+	background-image: url(bt_ol.png);
+}
+button.jstb_link {
+	background-image: url(bt_link.png);
+}
+button.jstb_img {
+	background-image: url(bt_img.png);
+}
+button.jstb_img_select {
+	background-image: url(bt_img_select.png);
+}
+button.jstb_post_link {
+	background-image: url(bt_post.png);
+}
+button.jstb_removeFormat {
+	background-color: #e5e5e5;
+	background-image: url(bt_clean.png);
+	position: absolute;
+	right: 2px;
+	top: 1px;
+	border-color: #ccc;
+}
+
+/* WYSIWYG Iframe */
+.wysiwygIframe {
+	border-width : 1px;
+	border-style : solid;
+	border-color : #000 #ccc #ccc #000;
+	width : 100%;
+}
+
+/* WYSIWYG Document */
+body.wysiwygDoc {
+	font: 12px "DejaVu Sans","Lucida Grande","Lucida Sans Unicode",Arial,sans-serif;
+	color : #000;
+	background: #f9f9f9;
+	margin: 0;
+	padding : 2px;
+	border: none;
+}
+.wysiwygDoc pre, .wysiwygDoc code, .wysiwygDoc kbd, .wysiwygDoc samp {
+	font-family:"Courier New",Courier,monospace;
+	font-size : 1.1em;
+}
+.wysiwygDoc code {
+	color : #666;
+	font-weight : bold;
+}
+body.wysiwygDoc  > p:first-child {
+	margin-top: 0;
+}
Index: inc/admin/lib.dc.page.php
===================================================================
--- inc/admin/lib.dc.page.php	(revision 2614)
+++ inc/admin/lib.dc.page.php	(revision 2513)
@@ -589,5 +589,4 @@
 		'<script type="text/javascript">'."\n".
 		"//<![CDATA[\n".
-		'jsToolBar = {}, jsToolBar.prototype = { elements : {} };'."\n".
 		self::jsVar('dotclear.nonce',$GLOBALS['core']->getNonce()).
 		self::jsVar('dotclear.img_plus_src','images/expand.png').
@@ -829,8 +828,88 @@
 	}
 
-	
 	public static function jsToolBar()
 	{
-		# Deprecated but we keep this for plugins.
+		$res =
+		'<link rel="stylesheet" type="text/css" href="style/jsToolBar/jsToolBar.css" />'.
+		'<script type="text/javascript" src="js/jsToolBar/jsToolBar.js"></script>';
+
+		if (isset($GLOBALS['core']->auth) && $GLOBALS['core']->auth->getOption('enable_wysiwyg')) {
+			$res .= '<script type="text/javascript" src="js/jsToolBar/jsToolBar.wysiwyg.js"></script>';
+		}
+
+		$res .=
+		'<script type="text/javascript" src="js/jsToolBar/jsToolBar.dotclear.js"></script>'.
+		'<script type="text/javascript">'."\n".
+		"//<![CDATA[\n".
+		"jsToolBar.prototype.dialog_url = 'popup.php'; ".
+		"jsToolBar.prototype.iframe_css = '".
+		'body{'.
+		'font: 12px "DejaVu Sans","Lucida Grande","Lucida Sans Unicode",Arial,sans-serif;'.
+		'color : #000;'.
+		'background: #f9f9f9;'.
+		'margin: 0;'.
+		'padding : 2px;'.
+		'border: none;'.
+		(l10n::getTextDirection($GLOBALS['_lang']) == 'rtl' ? 'direction:rtl;' : '').
+		'}'.
+		'pre, code, kbd, samp {'.
+		'font-family:"Courier New",Courier,monospace;'.
+		'font-size : 1.1em;'.
+		'}'.
+		'code {'.
+		'color : #666;'.
+		'font-weight : bold;'.
+		'}'.
+		'body > p:first-child {'.
+		'margin-top: 0;'.
+		'}'.
+		"'; ".
+		"jsToolBar.prototype.base_url = '".html::escapeJS($GLOBALS['core']->blog->host)."'; ".
+		"jsToolBar.prototype.switcher_visual_title = '".html::escapeJS(__('visual'))."'; ".
+		"jsToolBar.prototype.switcher_source_title = '".html::escapeJS(__('source'))."'; ".
+		"jsToolBar.prototype.legend_msg = '".
+		html::escapeJS(__('You can use the following shortcuts to format your text.'))."'; ".
+		"jsToolBar.prototype.elements.blocks.options.none = '".html::escapeJS(__('-- none --'))."'; ".
+		"jsToolBar.prototype.elements.blocks.options.nonebis = '".html::escapeJS(__('-- block format --'))."'; ".
+		"jsToolBar.prototype.elements.blocks.options.p = '".html::escapeJS(__('Paragraph'))."'; ".
+		"jsToolBar.prototype.elements.blocks.options.h1 = '".html::escapeJS(__('Level 1 header'))."'; ".
+		"jsToolBar.prototype.elements.blocks.options.h2 = '".html::escapeJS(__('Level 2 header'))."'; ".
+		"jsToolBar.prototype.elements.blocks.options.h3 = '".html::escapeJS(__('Level 3 header'))."'; ".
+		"jsToolBar.prototype.elements.blocks.options.h4 = '".html::escapeJS(__('Level 4 header'))."'; ".
+		"jsToolBar.prototype.elements.blocks.options.h5 = '".html::escapeJS(__('Level 5 header'))."'; ".
+		"jsToolBar.prototype.elements.blocks.options.h6 = '".html::escapeJS(__('Level 6 header'))."'; ".
+		"jsToolBar.prototype.elements.strong.title = '".html::escapeJS(__('Strong emphasis'))."'; ".
+		"jsToolBar.prototype.elements.em.title = '".html::escapeJS(__('Emphasis'))."'; ".
+		"jsToolBar.prototype.elements.ins.title = '".html::escapeJS(__('Inserted'))."'; ".
+		"jsToolBar.prototype.elements.del.title = '".html::escapeJS(__('Deleted'))."'; ".
+		"jsToolBar.prototype.elements.quote.title = '".html::escapeJS(__('Inline quote'))."'; ".
+		"jsToolBar.prototype.elements.code.title = '".html::escapeJS(__('Code'))."'; ".
+		"jsToolBar.prototype.elements.br.title = '".html::escapeJS(__('Line break'))."'; ".
+		"jsToolBar.prototype.elements.blockquote.title = '".html::escapeJS(__('Blockquote'))."'; ".
+		"jsToolBar.prototype.elements.pre.title = '".html::escapeJS(__('Preformated text'))."'; ".
+		"jsToolBar.prototype.elements.ul.title = '".html::escapeJS(__('Unordered list'))."'; ".
+		"jsToolBar.prototype.elements.ol.title = '".html::escapeJS(__('Ordered list'))."'; ".
+
+		"jsToolBar.prototype.elements.link.title = '".html::escapeJS(__('Link'))."'; ".
+		"jsToolBar.prototype.elements.link.href_prompt = '".html::escapeJS(__('URL?'))."'; ".
+		"jsToolBar.prototype.elements.link.hreflang_prompt = '".html::escapeJS(__('Language?'))."'; ".
+
+		"jsToolBar.prototype.elements.img.title = '".html::escapeJS(__('External image'))."'; ".
+		"jsToolBar.prototype.elements.img.src_prompt = '".html::escapeJS(__('URL?'))."'; ".
+
+		"jsToolBar.prototype.elements.img_select.title = '".html::escapeJS(__('Media chooser'))."'; ".
+		"jsToolBar.prototype.elements.post_link.title = '".html::escapeJS(__('Link to an entry'))."'; ".
+
+		"jsToolBar.prototype.elements.removeFormat.title = '".html::escapeJS(__('Remove text formating'))."'; ";
+
+		if (!$GLOBALS['core']->auth->check('media,media_admin',$GLOBALS['core']->blog->id)) {
+			$res .= "jsToolBar.prototype.elements.img_select.disabled = true;\n";
+		}
+
+		$res .=
+		"\n//]]>\n".
+		"</script>\n";
+
+		return $res;
 	}
 
Index: inc/core/class.dc.blog.php
===================================================================
--- inc/core/class.dc.blog.php	(revision 2567)
+++ inc/core/class.dc.blog.php	(revision 2626)
@@ -1894,5 +1894,5 @@
 	- post_id: (integer) Get comments belonging to given post_id
 	- cat_id: (integer or array) Get comments belonging to entries of given category ID
-	- comment_id: (integer or array) Get comment with given ID (or IDs)
+	- comment_id: (integer) Get comment with given ID
 	- comment_site: (string) Get comments with given comment_site
 	- comment_status: (integer) Get comments with given comment_status
@@ -1984,10 +1984,5 @@
 
 		if (isset($params['comment_id']) && $params['comment_id'] !== '') {
-			if (is_array($params['comment_id'])) {
-				array_walk($params['comment_id'],create_function('&$v,$k','if($v!==null){$v=(integer)$v;}'));
-			} else {
-				$params['comment_id'] = array((integer) $params['comment_id']);
-			}
-			$strReq .= 'AND comment_id '.$this->con->in($params['comment_id']);
+			$strReq .= 'AND comment_id = '.(integer) $params['comment_id'].' ';
 		}
 
@@ -2204,32 +2199,11 @@
 
 		$strReq =
-			'UPDATE '.$this->prefix.'comment tc ';
-
-		# mySQL uses "JOIN" synthax
-		if ($this->con->driver() == 'mysql' || $this->con->driver() == 'mysqli') {
-			$strReq .=
-				'JOIN '.$this->prefix.'post tp ON tc.post_id = tp.post_id ';
-		}
-
+			'UPDATE '.$this->prefix.'comment '.
+			'SET comment_status = '.$status.' ';
 		$strReq .=
-			'SET comment_status = '.$status.' ';
-
-		# pgSQL uses "FROM" synthax
-		if ($this->con->driver() != 'mysql' && $this->con->driver() != 'mysqli') {
-			$strReq .=
-				'FROM '.$this->prefix.'post tp ';
-		}
-
-		$strReq .=
-			"WHERE blog_id = '".$this->con->escape($this->id)."' ".
-			'AND comment_id'.$this->con->in($co_ids);
-
-		# add pgSQL "WHERE" clause
-		if ($this->con->driver() != 'mysql' && $this->con->driver() != 'mysqli') {
-			$strReq .=
-				'AND tc.post_id = tp.post_id ';
-		}
-
-		#If user is only usage, we need to check the post's owner
+			'WHERE comment_id'.$this->con->in($co_ids).
+			'AND post_id in (SELECT tp.post_id '.
+			'FROM '.$this->prefix.'post tp '.
+			"WHERE tp.blog_id = '".$this->con->escape($this->id)."' ";
 		if (!$this->core->auth->check('contentadmin',$this->id))
 		{
@@ -2237,5 +2211,5 @@
 				"AND user_id = '".$this->con->escape($this->core->auth->userID())."' ";
 		}
-
+		$strReq .= ')';
 		$this->con->execute($strReq);
 		$this->triggerComments($co_ids);
@@ -2284,30 +2258,17 @@
 		}
 
-		# mySQL uses "INNER JOIN" synthax
-		if ($this->con->driver() == 'mysql' || $this->con->driver() == 'mysqli') {
-			$strReq =
-				'DELETE FROM tc '.
-				'USING '.$this->prefix.'comment tc '.
-				'INNER JOIN '.$this->prefix.'post tp ';
-		}
-		# pgSQL uses nothing special
-		else {
-			$strReq =
-				'DELETE FROM '.$this->prefix.'comment tc '.
-				'USING '.$this->prefix.'post tp ';
-		}
-
-		$strReq .=
-			'WHERE tc.post_id = tp.post_id '.
-			"AND tp.blog_id = '".$this->con->escape($this->id)."' ".
-			'AND comment_id'.$this->con->in($co_ids);
-
+		$strReq =
+			'DELETE FROM '.$this->prefix.'comment '.
+			'WHERE comment_id'.$this->con->in($co_ids).' '.
+			'AND post_id in (SELECT tp.post_id '.
+			'FROM '.$this->prefix.'post tp '.
+			"WHERE tp.blog_id = '".$this->con->escape($this->id)."' ";
 		#If user can only delete, we need to check the post's owner
 		if (!$this->core->auth->check('contentadmin',$this->id))
 		{
 			$strReq .=
-				"AND user_id = '".$this->con->escape($this->core->auth->userID())."' ";
-		}
-
+				"AND tp.user_id = '".$this->con->escape($this->core->auth->userID())."' ";
+		}
+		$strReq .= ")";
 		$this->con->execute($strReq);
 		$this->triggerComments($co_ids, true, $affected_posts);
@@ -2321,30 +2282,17 @@
 		}
 
-		# mySQL uses "INNER JOIN" synthax
-		if ($this->con->driver() == 'mysql' || $this->con->driver() == 'mysqli') {
-			$strReq =
-				'DELETE FROM tc '.
-				'USING '.$this->prefix.'comment tc '.
-				'INNER JOIN '.$this->prefix.'post tp ';
-		}
-		# pgSQL uses nothing special
-		else {
-			$strReq =
-				'DELETE FROM '.$this->prefix.'comment tc '.
-				'USING '.$this->prefix.'post tp ';
-		}
-
-		$strReq .=
-			'WHERE tc.post_id = tp.post_id '.
-			"AND tp.blog_id = '".$this->con->escape($this->id)."' ".
-			'AND comment_status = -2';
-
+		$strReq =
+			'DELETE FROM '.$this->prefix.'comment '.
+			'WHERE comment_status = -2 '.
+			'AND post_id in (SELECT tp.post_id '.
+			'FROM '.$this->prefix.'post tp '.
+			"WHERE tp.blog_id = '".$this->con->escape($this->id)."' ";
 		#If user can only delete, we need to check the post's owner
 		if (!$this->core->auth->check('contentadmin',$this->id))
 		{
 			$strReq .=
-				"AND user_id = '".$this->con->escape($this->core->auth->userID())."' ";
-		}
-
+				"AND tp.user_id = '".$this->con->escape($this->core->auth->userID())."' ";
+		}
+		$strReq .= ")";
 		$this->con->execute($strReq);
 		$this->triggerBlog();
Index: inc/core/class.dc.core.php
===================================================================
--- inc/core/class.dc.core.php	(revision 2596)
+++ inc/core/class.dc.core.php	(revision 2566)
@@ -39,5 +39,4 @@
 	public $rest;		///< <b>dcRestServer</b>	dcRestServer object
 	public $log;		///< <b>dcLog</b>			dcLog object
-	public $stime;		///< <b>float</b>			starting time
 
 	private $versions = null;
@@ -60,10 +59,4 @@
 	public function __construct($driver, $host, $db, $user, $password, $prefix, $persist)
 	{
-		if (defined('DC_START_TIME')) {
-			$this->stime=DC_START_TIME;
-		} else {
-			$this->stime = microtime(true);
-		}
-
 		$this->con = dbLayer::init($driver,$host,$db,$user,$password,$persist);
 
@@ -989,17 +982,14 @@
 	private function getBlogCursor($cur)
 	{
-		if (($cur->blog_id !== null
-			&& !preg_match('/^[A-Za-z0-9._-]{2,}$/',$cur->blog_id)) ||
-			(!$cur->blog_id)) {
+		if ($cur->blog_id !== null
+		&& !preg_match('/^[A-Za-z0-9._-]{2,}$/',$cur->blog_id)) {
 			throw new Exception(__('Blog ID must contain at least 2 characters using letters, numbers or symbols.'));
 		}
 
-		if (($cur->blog_name !== null && $cur->blog_name == '') ||
-			(!$cur->blog_name)) {
+		if ($cur->blog_name !== null && $cur->blog_name == '') {
 			throw new Exception(__('No blog name'));
 		}
 
-		if (($cur->blog_url !== null && $cur->blog_url == '') ||
-			(!$cur->blog_url)) {
+		if ($cur->blog_url !== null && $cur->blog_url == '') {
 			throw new Exception(__('No blog URL'));
 		}
@@ -1316,8 +1306,6 @@
 				array('media_img_title_pattern','string','Title ;; Date(%b %Y) ;; separator(, )',
 				'Pattern to set image title when you insert it in a post'),
-				array('nb_post_for_home','integer',20,
-				'Number of entries on first home page'),
 				array('nb_post_per_page','integer',20,
-				'Number of entries on home pages and category pages'),
+				'Number of entries on home page and category pages'),
 				array('nb_post_per_feed','integer',20,
 				'Number of entries on feeds'),
@@ -1481,21 +1469,4 @@
 		}
 	}
-
-	/**
-	 Return elapsed time since script has been started
-	 @param   $mtime <b>float</b> timestamp (microtime format) to evaluate delta from
-	                       		  current time is taken if null
-	 @return <b>float</b>        elapsed time
-	 */
-	public function getElapsedTime ($mtime=null) {
-		if ($mtime !== null) {
-			return $mtime-$this->stime;
-		} else {
-			return microtime(true)-$this->stime;
-		}
-	}
 	//@}
-
-
-
 }
Index: inc/core/class.dc.namespace.php
===================================================================
--- inc/core/class.dc.namespace.php	(revision 2567)
+++ inc/core/class.dc.namespace.php	(revision 2566)
@@ -125,34 +125,4 @@
 
 	/**
-	Returns global setting value if exists.
-
-	@param	n		<b>string</b>		setting name
-	@return	<b>mixed</b>
-	*/
-	public function getGlobal($n)
-	{
-		if (isset($this->global_settings[$n]['value'])) {
-			return $this->global_settings[$n]['value'];
-		}
-
-		return null;
-	}
-
-	/**
-	Returns local setting value if exists.
-
-	@param	n		<b>string</b>		setting name
-	@return	<b>mixed</b>
-	*/
-	public function getLocal($n)
-	{
-		if (isset($this->local_settings[$n]['value'])) {
-			return $this->local_settings[$n]['value'];
-		}
-
-		return null;
-	}
-
-	/**
 	Magic __get method.
 	@copydoc ::get
Index: inc/core/class.dc.themes.php
===================================================================
--- inc/core/class.dc.themes.php	(revision 2607)
+++ inc/core/class.dc.themes.php	(revision 2566)
@@ -59,5 +59,5 @@
 		# Themes specifics properties
 		$properties = array_merge(
-			array('parent' => null, 'tplset' => DC_DEFAULT_TPLSET),
+			array('parent' => null),
 			$properties,
 			array('permissions' => 'admin') // force themes perms
Index: inc/prepend.php
===================================================================
--- inc/prepend.php	(revision 2615)
+++ inc/prepend.php	(revision 2591)
@@ -10,7 +10,4 @@
 #
 # -- END LICENSE BLOCK -----------------------------------------
-
-/* Start tick  */
-define('DC_START_TIME',microtime(true));
 
 /* ------------------------------------------------------------------------------------------- */
@@ -138,11 +135,10 @@
 # Constants
 define('DC_ROOT',path::real(dirname(__FILE__).'/..'));
-define('DC_VERSION','2.7-dev');
+define('DC_VERSION','2.6.2');
 define('DC_DIGESTS',dirname(__FILE__).'/digests');
 define('DC_L10N_ROOT',dirname(__FILE__).'/../locales');
 define('DC_L10N_UPDATE_URL','http://services.dotclear.net/dc2.l10n/?version=%s');
-define('DC_DISTRIB_PLUGINS','aboutConfig,akismet,antispam,attachments,blogroll,blowupConfig,dclegacy,fairTrackbacks,importExport,maintenance,pages,pings,simpleMenu,tags,themeEditor,userPref,widgets,dcLegacyEditor');
+define('DC_DISTRIB_PLUGINS','aboutConfig,akismet,antispam,attachments,blogroll,blowupConfig,dclegacy,fairTrackbacks,importExport,maintenance,pages,pings,simpleMenu,tags,themeEditor,userPref,widgets');
 define('DC_DISTRIB_THEMES','blueSilence,blowupConfig,customCSS,default,ductile');
-define('DC_DEFAULT_TPLSET','mustek');
 
 if (!defined('DC_VENDOR_NAME')) {
Index: inc/public/class.dc.template.php
===================================================================
--- inc/public/class.dc.template.php	(revision 2610)
+++ inc/public/class.dc.template.php	(revision 2590)
@@ -235,4 +235,102 @@
 	}
 
+	protected function compileFile($file)
+	{
+		$fc = file_get_contents($file);
+
+		$this->compile_stack[] = $file;
+
+		# Remove every PHP tags
+		if ($this->remove_php)
+		{
+			$fc = preg_replace('/<\?(?=php|=|\s).*?\?>/ms','',$fc);
+		}
+
+		# Transform what could be considered as PHP short tags
+		$fc = preg_replace('/(<\?(?!php|=|\s))(.*?)(\?>)/ms',
+		'<?php echo "$1"; ?>$2<?php echo "$3"; ?>',$fc);
+
+		# Remove template comments <!-- #... -->
+		$fc = preg_replace('/(^\s*)?<!-- #(.*?)-->/ms','',$fc);
+
+		# Lexer part : split file into small pieces
+		# each array entry will be either a tag or plain text
+		$blocks = preg_split(
+			'#(<tpl:\w+[^>]*>)|(</tpl:\w+>)|({{tpl:\w+[^}]*}})#msu',$fc,-1,
+			PREG_SPLIT_DELIM_CAPTURE|PREG_SPLIT_NO_EMPTY);
+
+		# Next : build semantic tree from tokens.
+		$rootNode = new tplNode();
+		$node = $rootNode;
+		$errors = array();
+		foreach ($blocks as $id => $block) {
+			$isblock = preg_match('#<tpl:(\w+)(?:(\s+.*?)>|>)|</tpl:(\w+)>|{{tpl:(\w+)(\s(.*?))?}}#ms',$block,$match);
+			if ($isblock == 1) {
+				if (substr($match[0],1,1) == '/') {
+					// Closing tag, check if it matches current opened node
+					$tag = $match[3];
+					if (($node instanceof tplNodeBlock) && $node->getTag() == $tag) {
+						$node->setClosing();
+						$node = $node->getParent();
+					} else {
+						// Closing tag does not match opening tag
+						// Search if it closes a parent tag
+						$search = $node;
+						while($search->getTag() != 'ROOT' && $search->getTag() != $tag) {
+							$search = $search->getParent();
+						}
+						if ($search->getTag() == $tag) {
+							$errors[] = sprintf(
+								__('Did not find closing tag for block <tpl:%s>. Content has been ignored.'),
+								html::escapeHTML($node->getTag()));
+							$search->setClosing();
+							$node = $search->getParent();
+						} else {
+							$errors[]=sprintf(
+								__('Unexpected closing tag </tpl:%s> found.'),
+								$tag);;
+						}
+					}
+				} elseif (substr($match[0],0,1) == '{') {
+					// Value tag
+					$tag = $match[4];
+					$str_attr = '';
+					$attr = array();
+					if (isset($match[6])) {
+						$str_attr = $match[6];
+						$attr = $this->getAttrs($match[6]);
+					}
+					$node->addChild(new tplNodeValue($tag,$attr,$str_attr));
+				} else {
+					// Opening tag, create new node and dive into it
+					$tag = $match[1];
+					$newnode = new tplNodeBlock($tag,isset($match[2])?$this->getAttrs($match[2]):array());
+					$node->addChild($newnode);
+					$node = $newnode;
+				}
+			} else {
+				// Simple text
+				$node->addChild(new tplNodeText($block));
+			}
+		}
+
+		if (($node instanceof tplNodeBlock) && !$node->isClosed()) {
+			$errors[] = sprintf(
+				__('Did not find closing tag for block <tpl:%s>. Content has been ignored.'),
+				html::escapeHTML($node->getTag()));
+		}
+
+		$err = "";
+		if (count($errors) > 0) {
+			$err = "\n\n<!-- \n".
+				__('WARNING: the following errors have been found while parsing template file :').
+				"\n * ".
+				join("\n * ",$errors).
+				"\n -->\n";
+		}
+
+		return $rootNode->compile($this).$err;
+	}
+
 	public function compileBlockNode($tag,$attr,$content)
 	{
@@ -245,5 +343,9 @@
 		$this->core->callBehavior('templateInsideBlock',$this->core,$this->current_tag,$attr,array(&$content));
 
-		$res .= parent::compileBlockNode($this->current_tag,$attr,$content);
+		if (isset($this->blocks[$this->current_tag])) {
+			$res .= call_user_func($this->blocks[$this->current_tag],$attr,$content);
+		} elseif ($this->unknown_block_handler != null) {
+			$res .= call_user_func($this->unknown_block_handler,$this->current_tag,$attr,$content);
+		}
 
 		# --BEHAVIOR-- templateAfterBlock
@@ -261,5 +363,9 @@
 		$res = $this->core->callBehavior('templateBeforeValue',$this->core,$this->current_tag,$attr);
 
-		$res .= parent::compileValueNode($this->current_tag,$attr,$str_attr);
+		if (isset($this->values[$this->current_tag])) {
+			$res .= call_user_func($this->values[$this->current_tag],$attr,ltrim($str_attr));
+		} elseif ($this->unknown_value_handler != null) {
+			$res .= call_user_func($this->unknown_value_handler,$this->current_tag,$attr,$str_attr);
+		}
 
 		# --BEHAVIOR-- templateAfterValue
@@ -267,4 +373,18 @@
 
 		return $res;
+	}
+
+	public function setUnknownValueHandler($callback)
+	{
+		if (is_callable($callback)) {
+			$this->unknown_value_handler = $callback;
+		}
+	}
+
+	public function setUnknownBlockHandler($callback)
+	{
+		if (is_callable($callback)) {
+			$this->unknown_block_handler = $callback;
+		}
 	}
 
@@ -1053,18 +1173,13 @@
 
 		if ($lastn != 0) {
-			// Set limit (aka nb of entries needed)
 			if ($lastn > 0) {
-				// nb of entries per page specified in template -> regular pagination
 				$p .= "\$params['limit'] = ".$lastn.";\n";
 			} else {
-				// nb of entries per page not specified -> use ctx settings
-				$p .= "\$params['limit'] = (\$_page_number == 1 ? \$_ctx->nb_entry_first_page : \$_ctx->nb_entry_per_page);\n";
+				$p .= "\$params['limit'] = \$_ctx->nb_entry_per_page;\n";
 			}
-			// Set offset (aka index of first entry)
+
 			if (!isset($attr['ignore_pagination']) || $attr['ignore_pagination'] == "0") {
-				// standard pagination, set offset
-				$p .= "\$params['limit'] = array((\$_page_number == 1 ? 0 : (\$_page_number - 2) * \$_ctx->nb_entry_per_page + \$_ctx->nb_entry_first_page),\$params['limit']);\n";
+				$p .= "\$params['limit'] = array(((\$_page_number-1)*\$params['limit']),\$params['limit']);\n";
 			} else {
-				// no pagination, get all posts from 0 to limit
 				$p .= "\$params['limit'] = array(0, \$params['limit']);\n";
 			}
Index: inc/public/default-templates/404.html
===================================================================
--- inc/public/default-templates/404.html	(revision 2566)
+++ inc/public/default-templates/404.html	(revision 2566)
@@ -0,0 +1,62 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="{{tpl:BlogLanguage}}" lang="{{tpl:BlogLanguage}}">
+<head>
+  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+  <meta name="ROBOTS" content="{{tpl:BlogMetaRobots robots="NOINDEX,NOARCHIVE"}}" />
+
+  <title>{{tpl:lang Document not found}} - {{tpl:BlogName encode_html="1"}}</title>
+  <meta name="copyright" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
+  <meta name="author" content="{{tpl:BlogEditor encode_html="1"}}" />
+
+  <link rel="schema.dc" href="http://purl.org/dc/elements/1.1/" />
+  <meta name="dc.title" lang="{{tpl:BlogLanguage}}" content="{{tpl:lang Document not found}} - {{tpl:BlogName encode_html="1"}}" />
+  <meta name="dc.language" content="{{tpl:BlogLanguage}}" />
+  <meta name="dc.publisher" content="{{tpl:BlogEditor encode_html="1"}}" />
+  <meta name="dc.rights" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
+  <meta name="dc.type" content="text" />
+  <meta name="dc.format" content="text/html" />
+
+  <link rel="top" href="{{tpl:BlogURL}}" title="{{tpl:lang Home}}" />
+  <link rel="contents" title="{{tpl:lang Archives}}" href="{{tpl:BlogArchiveURL}}" />
+  <link rel="alternate" type="application/atom+xml" title="Atom 1.0" href="{{tpl:BlogFeedURL type="atom"}}" />
+
+  {{tpl:include src="_head.html"}}
+</head>
+
+<body class="dc-404">
+<div id="page">
+{{tpl:include src="_top.html"}}
+
+<div id="wrapper">
+
+<div id="main">
+  <div id="content">
+
+  <div id="content-info">
+    <h2>{{tpl:lang Document not found}}</h2>
+  </div>
+
+  <div class="content-inner">
+    <p>{{tpl:lang The document you are looking for does not exist.}}</p>
+  </div>
+
+  </div>
+</div>
+
+<div id="sidebar">
+  <div id="blognav">
+    {{tpl:Widgets type="nav"}}
+  </div> <!-- End #blognav -->
+
+  <div id="blogextra">
+    {{tpl:Widgets type="extra"}}
+  </div> <!-- End #blogextra -->
+</div>
+
+</div> <!-- End #wrapper -->
+
+{{tpl:include src="_footer.html"}}
+</div> <!-- End #page -->
+</body>
+</html>
Index: inc/public/default-templates/_flv_player.html
===================================================================
--- inc/public/default-templates/_flv_player.html	(revision 2566)
+++ inc/public/default-templates/_flv_player.html	(revision 2566)
@@ -0,0 +1,8 @@
+<object type="application/x-shockwave-flash" data="{{tpl:BlogQmarkURL}}pf=player_flv.swf"
+width="400" height="300">
+<param name="movie" value="{{tpl:BlogQmarkURL}}pf=player_flv.swf" />
+<param name="wmode" value="transparent" />
+<param name="allowFullScreen" value="true" />
+<param name="FlashVars" value="flv={{tpl:MediaURL}}&amp;width=400&amp;height=300&amp;margin=1&amp;showfullscreen=1&amp;showvolume=1&amp;showtime=1" />
+{{tpl:lang Embedded Audio Player}}
+</object>
Index: inc/public/default-templates/_footer.html
===================================================================
--- inc/public/default-templates/_footer.html	(revision 2566)
+++ inc/public/default-templates/_footer.html	(revision 2566)
@@ -0,0 +1,5 @@
+<div id="footer">
+  <p>{{tpl:SysPoweredBy}}</p>
+</div>
+
+{{tpl:SysBehavior behavior="publicFooterContent"}}
Index: inc/public/default-templates/_head.html
===================================================================
--- inc/public/default-templates/_head.html	(revision 2566)
+++ inc/public/default-templates/_head.html	(revision 2566)
@@ -0,0 +1,8 @@
+<link rel="stylesheet" type="text/css" href="{{tpl:BlogThemeURL}}/style.css" media="screen" />
+<link rel="stylesheet" type="text/css" href="{{tpl:BlogThemeURL}}/../default/print.css" media="print" />
+
+<script type="text/javascript" src="{{tpl:BlogThemeURL}}/../default/js/jquery.js"></script>
+<script type="text/javascript" src="{{tpl:BlogThemeURL}}/../default/js/jquery.cookie.js"></script>
+
+{{tpl:include src="user_head.html"}}
+{{tpl:SysBehavior behavior="publicHeadContent"}}
Index: inc/public/default-templates/_mp3_player.html
===================================================================
--- inc/public/default-templates/_mp3_player.html	(revision 2566)
+++ inc/public/default-templates/_mp3_player.html	(revision 2566)
@@ -0,0 +1,6 @@
+<object type="application/x-shockwave-flash" data="{{tpl:BlogQmarkURL}}pf=player_mp3.swf" width="200" height="20">
+<param name="movie" value="{{tpl:BlogQmarkURL}}pf=player_mp3.swf" />
+<param name="wmode" value="transparent" />
+<param name="FlashVars" value="mp3={{tpl:MediaURL}}&amp;showvolume=1&amp;loadingcolor=ff9900&amp;bgcolor1=eeeeee&amp;bgcolor2=cccccc&amp;buttoncolor=0066cc&amp;buttonovercolor=ff9900&amp;slidercolor1=cccccc&amp;slidercolor2=999999&amp;sliderovercolor=0066cc" />
+{{tpl:lang Embedded Audio Player}}
+</object>
Index: inc/public/default-templates/_top.html
===================================================================
--- inc/public/default-templates/_top.html	(revision 2566)
+++ inc/public/default-templates/_top.html	(revision 2566)
@@ -0,0 +1,10 @@
+<div id="top">
+  <h1><span><a href="{{tpl:BlogURL}}">{{tpl:BlogName encode_html="1"}}</a></span></h1>
+
+  <!-- # --BEHAVIOR-- publicTopAfterContent -->
+  {{tpl:SysBehavior behavior="publicTopAfterContent"}}
+</div>
+
+<p id="prelude"><a href="#main">{{tpl:lang To content}}</a> |
+<a href="#blognav">{{tpl:lang To menu}}</a> |
+<a href="#search">{{tpl:lang To search}}</a></p>
Index: inc/public/default-templates/archive.html
===================================================================
--- inc/public/default-templates/archive.html	(revision 2566)
+++ inc/public/default-templates/archive.html	(revision 2566)
@@ -0,0 +1,79 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="{{tpl:BlogLanguage}}" lang="{{tpl:BlogLanguage}}">
+<head>
+  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+  <meta name="ROBOTS" content="{{tpl:BlogMetaRobots}}" />
+
+  <title>{{tpl:lang Archives}} - {{tpl:BlogName encode_html="1"}}</title>
+  <meta name="copyright" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
+  <meta name="author" content="{{tpl:BlogEditor encode_html="1"}}" />
+  <meta name="date" scheme="W3CDTF" content="{{tpl:BlogUpdateDate iso8601="1"}}" />
+
+  <link rel="schema.dc" href="http://purl.org/dc/elements/1.1/" />
+  <meta name="dc.title" lang="{{tpl:BlogLanguage}}" content="{{tpl:lang Archives}} - {{tpl:BlogName encode_html="1"}}" />
+  <meta name="dc.language" content="{{tpl:BlogLanguage}}" />
+  <meta name="dc.publisher" content="{{tpl:BlogEditor encode_html="1"}}" />
+  <meta name="dc.rights" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
+  <meta name="dc.date" scheme="W3CDTF" content="{{tpl:BlogUpdateDate iso8601="1"}}" />
+  <meta name="dc.type" content="text" />
+  <meta name="dc.format" content="text/html" />
+
+  <link rel="top" href="{{tpl:BlogURL}}" title="{{tpl:lang Home}}" />
+
+  <tpl:Archives>
+    <link rel="chapter" href="{{tpl:ArchiveURL}}" title="{{tpl:ArchiveDate encode_html="1"}}" />
+  </tpl:Archives>
+
+  <link rel="alternate" type="application/atom+xml" title="Atom 1.0" href="{{tpl:BlogFeedURL type="atom"}}" />
+
+  {{tpl:include src="_head.html"}}
+</head>
+
+<body class="dc-archive">
+<div id="page">
+{{tpl:include src="_top.html"}}
+
+<div id="wrapper">
+
+<div id="main">
+  <div id="content">
+
+  <div id="content-info">
+    <h2>{{tpl:lang Archives}}</h2>
+  </div>
+
+  <div class="content-inner">
+  <tpl:Archives>
+    <tpl:ArchivesYearHeader>
+      <h3>{{tpl:ArchiveDate format="%Y"}}</h3>
+      <ul>
+    </tpl:ArchivesYearHeader>
+      <li><a href="{{tpl:ArchiveURL}}"
+      title="{{tpl:ArchiveDate encode_html="1"}}">{{tpl:ArchiveDate encode_html="1" format="%B"}}</a>
+      ({{tpl:ArchiveEntriesCount}})</li>
+    <tpl:ArchivesYearFooter>
+      </ul>
+    </tpl:ArchivesYearFooter>
+  </tpl:Archives>
+  </div>
+
+  </div>
+</div> <!-- End #main -->
+
+<div id="sidebar">
+  <div id="blognav">
+    {{tpl:Widgets type="nav"}}
+  </div> <!-- End #blognav -->
+
+  <div id="blogextra">
+    {{tpl:Widgets type="extra"}}
+  </div> <!-- End #blogextra -->
+</div>
+
+</div> <!-- End #wrapper -->
+
+{{tpl:include src="_footer.html"}}
+</div> <!-- End #page -->
+</body>
+</html>
Index: inc/public/default-templates/archive_month.html
===================================================================
--- inc/public/default-templates/archive_month.html	(revision 2566)
+++ inc/public/default-templates/archive_month.html	(revision 2566)
@@ -0,0 +1,96 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="{{tpl:BlogLanguage}}" lang="{{tpl:BlogLanguage}}">
+<head>
+  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+  <meta name="ROBOTS" content="{{tpl:BlogMetaRobots robots="NOINDEX"}}" />
+
+  <title>{{tpl:lang Archives}} - {{tpl:ArchiveDate}} - {{tpl:BlogName encode_html="1"}}</title>
+  <meta name="copyright" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
+  <meta name="author" content="{{tpl:BlogEditor encode_html="1"}}" />
+  <meta name="date" scheme="W3CDTF" content="{{tpl:BlogUpdateDate iso8601="1"}}" />
+
+  <link rel="schema.dc" href="http://purl.org/dc/elements/1.1/" />
+  <meta name="dc.title" lang="{{tpl:BlogLanguage}}" content="{{tpl:lang Archives}} - {{tpl:ArchiveDate}} - {{tpl:BlogName encode_html="1"}}" />
+  <meta name="dc.language" content="{{tpl:BlogLanguage}}" />
+  <meta name="dc.publisher" content="{{tpl:BlogEditor encode_html="1"}}" />
+  <meta name="dc.rights" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
+  <meta name="dc.date" scheme="W3CDTF" content="{{tpl:BlogUpdateDate iso8601="1"}}" />
+  <meta name="dc.type" content="text" />
+  <meta name="dc.format" content="text/html" />
+
+  <link rel="top" href="{{tpl:BlogURL}}" title="{{tpl:lang Home}}" />
+  <link rel="up" href="{{tpl:BlogArchiveURL}}" title="{{tpl:lang Archives}}" />
+  <link rel="contents" href="{{tpl:BlogArchiveURL}}" title="{{tpl:lang Archives}}" />
+
+
+  <tpl:ArchiveNext><link rel="next" href="{{tpl:ArchiveURL}}"
+  title="{{tpl:ArchiveDate encode_html="1"}}" /></tpl:ArchiveNext>
+  <tpl:ArchivePrevious><link rel="prev" href="{{tpl:ArchiveURL}}"
+  title="{{tpl:ArchiveDate encode_html="1"}}" /></tpl:ArchivePrevious>
+
+  <tpl:Entries no_content="1">
+  <link rel="chapter" href="{{tpl:EntryURL}}" title="{{tpl:EntryTitle encode_html="1"}}" />
+  </tpl:Entries>
+
+  {{tpl:include src="_head.html"}}
+</head>
+
+<body class="dc-archive-month">
+<div id="page">
+{{tpl:include src="_top.html"}}
+
+<div id="wrapper">
+
+<div id="main">
+  <div id="content">
+
+  <p id="navlinks">
+  <tpl:ArchivePrevious><a href="{{tpl:ArchiveURL}}" class="prev">&#171; {{tpl:ArchiveDate encode_html="1"}}</a>
+  - </tpl:ArchivePrevious>
+  <a href="{{tpl:BlogArchiveURL}}">{{tpl:lang Archives}}</a>
+  <tpl:ArchiveNext> - <a href="{{tpl:ArchiveURL}}" class="next">{{tpl:ArchiveDate encode_html="1"}} &#187;</a></tpl:ArchiveNext>
+  </p>
+
+  <div id="content-info">
+    <h2>{{tpl:ArchiveDate}}</h2>
+  </div>
+
+  <div class="content-inner">
+  <tpl:Entries no_content="1">
+    <!-- # New day date -->
+    <tpl:DateHeader><p class="day-date">{{tpl:EntryDate}}</p></tpl:DateHeader>
+
+    <h2 id="p{{tpl:EntryID}}" class="post-title" lang="{{tpl:EntryLang}}" xml:lang="{{tpl:EntryLang}}"><a
+    href="{{tpl:EntryURL}}" title="{{tpl:lang Read}} {{tpl:EntryTitle encode_html="1"}}">{{tpl:EntryTitle encode_html="1"}}</a></h2>
+
+    <p class="post-info">{{tpl:lang By}} {{tpl:EntryAuthorLink}}
+    <tpl:EntryIf show_comments="1">
+    - <a href="{{tpl:EntryURL}}#comments">{{tpl:EntryCommentCount}}</a>
+    </tpl:EntryIf>
+    <tpl:EntryIf show_pings="1">
+    - <a href="{{tpl:EntryURL}}#pings">{{tpl:EntryPingCount}}</a></tpl:EntryIf>
+    <tpl:EntryIf has_attachment="1">
+    - <a href="{{tpl:EntryURL}}#attachments">{{tpl:EntryAttachmentCount}}</a></tpl:EntryIf>
+    </p>
+  </tpl:Entries>
+  </div>
+  </div>
+</div> <!-- End #main -->
+
+<div id="sidebar">
+  <div id="blognav">
+    {{tpl:Widgets type="nav"}}
+  </div> <!-- End #blognav -->
+
+  <div id="blogextra">
+    {{tpl:Widgets type="extra"}}
+  </div> <!-- End #blogextra -->
+</div>
+
+</div> <!-- End #wrapper -->
+
+{{tpl:include src="_footer.html"}}
+</div> <!-- End #page -->
+</body>
+</html>
Index: inc/public/default-templates/atom-comments.xml
===================================================================
--- inc/public/default-templates/atom-comments.xml	(revision 2566)
+++ inc/public/default-templates/atom-comments.xml	(revision 2566)
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="utf-8"?>
+<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="{{tpl:BlogLanguage}}">
+
+  <title type="html">{{tpl:BlogName encode_xml="1"}}{{tpl:SysFeedSubtitle encode_xml="1"}}
+  - {{tpl:lang Comments}}</title>
+  <subtitle type="html">{{tpl:BlogDescription encode_xml="1"}}</subtitle>
+  <link href="{{tpl:SysSelfURI}}" rel="self" type="application/atom+xml"/>
+  <link href="{{tpl:BlogURL}}" rel="alternate" type="text/html"
+  title="{{tpl:BlogDescription encode_xml="1"}}"/>
+  <updated>{{tpl:BlogUpdateDate iso8601="1"}}</updated>
+  <author>
+    <name>{{tpl:BlogEditor encode_xml="1"}}</name>
+  </author>
+  <id>{{tpl:BlogFeedID}}</id>
+  <generator uri="http://www.dotclear.org/">Dotclear</generator>
+
+  <tpl:Comments order="desc" with_pings="1">
+
+  <tpl:CommentIf is_ping="1">
+  <entry>
+    <title>[ping] {{tpl:PingEntryTitle encode_xml="1"}} - {{tpl:PingBlogName encode_xml="1"}}</title>
+    <link href="{{tpl:PingPostURL encode_xml="1"}}#c{{tpl:PingID}}" rel="alternate" type="text/html"
+    title="[ping] {{tpl:PingEntryTitle encode_xml="1"}} - {{tpl:PingBlogName encode_xml="1"}}" />
+    <id>{{tpl:PingFeedID}}</id>
+    <published>{{tpl:PingDate iso8601="1"}}</published>
+    <updated>{{tpl:PingDate iso8601="1" upddt="1"}}</updated>
+    <author><name>{{tpl:PingBlogName encode_xml="1"}}</name></author>
+    <content type="html">&lt;p&gt;&lt;a href="{{tpl:PingAuthorURL encode_xml="1"}}"&gt;{{tpl:PingTitle encode_xml="1"}}&lt;/a&gt;&lt;/p&gt; {{tpl:PingContent encode_xml="1"}}</content>
+  </entry>
+
+  </tpl:CommentIf>
+
+  <tpl:CommentIf is_ping="0">
+  <entry>
+    <title>{{tpl:CommentEntryTitle encode_xml="1"}} - {{tpl:CommentAuthor encode_xml="1"}}</title>
+    <link href="{{tpl:CommentPostURL encode_xml="1"}}#c{{tpl:CommentID}}" rel="alternate" type="text/html"
+    title="{{tpl:CommentEntryTitle encode_xml="1"}} - {{tpl:CommentAuthor encode_xml="1"}}" />
+    <id>{{tpl:CommentFeedID}}</id>
+    <published>{{tpl:CommentDate iso8601="1"}}</published>
+    <updated>{{tpl:CommentDate iso8601="1" upddt="1"}}</updated>
+    <author><name>{{tpl:CommentAuthor encode_xml="1"}}</name></author>
+    <content type="html">{{tpl:CommentContent absolute_urls="1" encode_xml="1"}}</content>
+  </entry>
+  </tpl:CommentIf>
+  </tpl:Comments>
+
+</feed>
Index: inc/public/default-templates/atom.xml
===================================================================
--- inc/public/default-templates/atom.xml	(revision 2566)
+++ inc/public/default-templates/atom.xml	(revision 2566)
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="utf-8"?>
+<feed xmlns="http://www.w3.org/2005/Atom"
+  xmlns:dc="http://purl.org/dc/elements/1.1/"
+  xmlns:wfw="http://wellformedweb.org/CommentAPI/"
+  xml:lang="{{tpl:BlogLanguage}}">
+
+  <title type="html">{{tpl:BlogName encode_xml="1"}}{{tpl:SysFeedSubtitle encode_xml="1"}}</title>
+  <subtitle type="html">{{tpl:BlogDescription encode_xml="1"}}</subtitle>
+  <link href="{{tpl:SysSelfURI}}" rel="self" type="application/atom+xml"/>
+  <link href="{{tpl:BlogURL}}" rel="alternate" type="text/html"
+  title="{{tpl:BlogDescription encode_xml="1"}}"/>
+  <updated>{{tpl:BlogUpdateDate iso8601="1"}}</updated>
+  <author>
+    <name>{{tpl:BlogEditor encode_xml="1"}}</name>
+  </author>
+  <id>{{tpl:BlogFeedID}}</id>
+  <generator uri="http://www.dotclear.org/">Dotclear</generator>
+
+  <tpl:Entries>
+
+  <entry>
+    <title>{{tpl:EntryTitle encode_xml="1"}}</title>
+    <link href="{{tpl:EntryURL}}" rel="alternate" type="text/html"
+    title="{{tpl:EntryTitle encode_xml="1"}}" />
+    <id>{{tpl:EntryFeedID}}</id>
+    <published>{{tpl:EntryDate iso8601="1"}}</published>
+    <tpl:EntryIf republished="1">
+      <updated>{{tpl:EntryDate iso8601="1" upddt="1"}}</updated>
+    </tpl:EntryIf>
+    <tpl:EntryIf republished="0">
+      <updated>{{tpl:EntryDate iso8601="1"}}</updated>
+    </tpl:EntryIf>
+    <author><name>{{tpl:EntryAuthorCommonName encode_xml="1"}}</name></author>
+    <tpl:EntryIf has_category="1">
+    <dc:subject>{{tpl:EntryCategory encode_html="1"}}</dc:subject>
+    </tpl:EntryIf>
+    <tpl:EntryTags><dc:subject>{{tpl:TagID}}</dc:subject></tpl:EntryTags>
+
+    <content type="html">{{tpl:EntryExcerpt absolute_urls="1" encode_xml="1"}}
+    {{tpl:EntryContent absolute_urls="1" encode_xml="1"}}</content>
+
+    <tpl:Attachments>
+      <link rel="enclosure" href="{{tpl:AttachmentURL}}"
+      length="{{tpl:AttachmentSize full="1"}}" type="{{tpl:AttachmentMimeType}}" />
+    </tpl:Attachments>
+
+
+    <tpl:EntryIf comments_active="1">
+      <wfw:comment>{{tpl:EntryURL}}#comment-form</wfw:comment>
+      <wfw:commentRss>{{tpl:BlogFeedURL type="atom"}}/comments/{{tpl:EntryID}}</wfw:commentRss>
+    </tpl:EntryIf>
+  </entry>
+  </tpl:Entries>
+
+</feed>
Index: inc/public/default-templates/category.html
===================================================================
--- inc/public/default-templates/category.html	(revision 2566)
+++ inc/public/default-templates/category.html	(revision 2566)
@@ -0,0 +1,167 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="{{tpl:BlogLanguage}}" lang="{{tpl:BlogLanguage}}">
+<head>
+  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+  <meta name="ROBOTS" content="{{tpl:BlogMetaRobots robots="NOINDEX"}}" />
+
+  <title>{{tpl:CategoryTitle encode_html="1"}} - {{tpl:BlogName encode_html="1"}}<tpl:PaginationIf start="0"> - {{tpl:lang page}} {{tpl:PaginationCurrent}}</tpl:PaginationIf></title>
+  <meta name="description" lang="{{tpl:BlogLanguage}}" content="{{tpl:CategoryDescription cut_string="180" remove_html="1"}}" />
+  <meta name="copyright" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
+  <meta name="author" content="{{tpl:BlogEditor encode_html="1"}}" />
+  <meta name="date" scheme="W3CDTF" content="{{tpl:BlogUpdateDate iso8601="1"}}" />
+
+  <link rel="schema.dc" href="http://purl.org/dc/elements/1.1/" />
+  <meta name="dc.title" lang="{{tpl:BlogLanguage}}" content="{{tpl:CategoryTitle encode_html="1"}} - {{tpl:BlogName encode_html="1"}}<tpl:PaginationIf start="0"> - {{tpl:lang page}} {{tpl:PaginationCurrent}}</tpl:PaginationIf>" />
+  <meta name="dc.description" lang="{{tpl:BlogLanguage}}" content="{{tpl:CategoryDescription remove_html="1"}}" />
+  <meta name="dc.language" content="{{tpl:BlogLanguage}}" />
+  <meta name="dc.publisher" content="{{tpl:BlogEditor encode_html="1"}}" />
+  <meta name="dc.rights" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
+  <meta name="dc.date" scheme="W3CDTF" content="{{tpl:BlogUpdateDate iso8601="1"}}" />
+  <meta name="dc.type" content="text" />
+  <meta name="dc.format" content="text/html" />
+
+  <link rel="top" href="{{tpl:BlogURL}}" title="{{tpl:lang Home}}" />
+  <link rel="contents" href="{{tpl:BlogArchiveURL}}" title="{{tpl:lang Archives}}" />
+
+  <tpl:Entries no_content="1">
+    <tpl:EntriesHeader>
+      <tpl:Pagination>
+        <tpl:PaginationIf end="0">
+        <link rel="prev" title="{{tpl:lang previous entries}}" href="{{tpl:PaginationURL offset="1"}}" />
+        </tpl:PaginationIf>
+
+        <tpl:PaginationIf start="0">
+        <link rel="next" title="{{tpl:lang next entries}}" href="{{tpl:PaginationURL offset="-1"}}" />
+        </tpl:PaginationIf>
+      </tpl:Pagination>
+    </tpl:EntriesHeader>
+
+    <link rel="chapter" href="{{tpl:EntryURL}}" title="{{tpl:EntryTitle encode_html="1"}}" />
+  </tpl:Entries>
+
+  <link rel="alternate" type="application/atom+xml" title="Atom 1.0" href="{{tpl:CategoryFeedURL type="atom"}}" />
+
+  {{tpl:include src="_head.html"}}
+</head>
+
+<body class="dc-category">
+<div id="page">
+{{tpl:include src="_top.html"}}
+
+<div id="wrapper">
+
+<div id="main">
+  <div id="content">
+
+  <div id="content-info">
+    <h2><tpl:CategoryParents><a href="{{tpl:CategoryURL}}">{{tpl:CategoryTitle encode_html="1"}}</a> &rsaquo; </tpl:CategoryParents>
+    {{tpl:CategoryTitle encode_html="1"}}</h2>
+    {{tpl:CategoryDescription}}
+
+    <tpl:CategoryIf has_entries="1">
+      <p><a type="application/atom+xml" href="{{tpl:CategoryFeedURL type="atom"}}"
+      title="{{tpl:lang This category's entries Atom feed}}" class="feed">{{tpl:lang Entries feed}}</a>
+
+      <tpl:SysIf operator="or" comments_active="1" pings_active="1">
+      - <a type="application/atom+xml" href="{{tpl:CategoryFeedURL type="atom"}}/comments"
+      title="{{tpl:lang This category's comments Atom feed}}" class="feed">{{tpl:lang Comments feed}}</a>
+      </tpl:SysIf>
+      </p>
+    </tpl:CategoryIf>
+  </div>
+
+  <tpl:CategoryFirstChildren>
+    <tpl:CategoriesHeader>
+      <div id="subcategories">
+      <h3>{{tpl:lang Subcategories}}</h3>
+      <ul>
+    </tpl:CategoriesHeader>
+    <li><a href="{{tpl:CategoryURL}}">{{tpl:CategoryTitle encode_html="1"}}</a></li>
+    <tpl:CategoriesFooter>
+      </ul>
+      </div>
+    </tpl:CategoriesFooter>
+  </tpl:CategoryFirstChildren>
+
+  <tpl:Entries>
+    <div id="p{{tpl:EntryID}}" class="post {{tpl:EntryIfOdd}} {{tpl:EntryIfFirst}}" lang="{{tpl:EntryLang}}" xml:lang="{{tpl:EntryLang}}">
+    <!-- # New day date -->
+    <tpl:DateHeader><p class="day-date">{{tpl:EntryDate}}</p></tpl:DateHeader>
+
+    <h2 class="post-title"><a
+    href="{{tpl:EntryURL}}">{{tpl:EntryTitle encode_html="1"}}</a></h2>
+
+    <p class="post-info">{{tpl:lang By}} {{tpl:EntryAuthorLink}}
+    {{tpl:lang on}} {{tpl:EntryDate}}, {{tpl:EntryTime}}</p>
+
+    <tpl:EntryTags>
+    <tpl:TagsHeader><ul class="post-tags"></tpl:TagsHeader>
+    <li><a href="{{tpl:TagURL}}">{{tpl:TagID}}</a></li>
+    <tpl:TagsFooter></ul></tpl:TagsFooter>
+    </tpl:EntryTags>
+
+    <!-- # --BEHAVIOR-- publicEntryBeforeContent -->
+    {{tpl:SysBehavior behavior="publicEntryBeforeContent"}}
+
+    <!-- # Entry with an excerpt -->
+    <tpl:EntryIf extended="1">
+      <div class="post-content">{{tpl:EntryExcerpt}}</div>
+      <p class="read-it"><a href="{{tpl:EntryURL}}"
+      title="{{tpl:lang Continue reading}} {{tpl:EntryTitle encode_html="1"}}">{{tpl:lang Continue
+      reading}}</a>...</p>
+    </tpl:EntryIf>
+
+    <!-- # Entry without excerpt -->
+    <tpl:EntryIf extended="0">
+      <div class="post-content">{{tpl:EntryContent}}</div>
+    </tpl:EntryIf>
+
+    <!-- # --BEHAVIOR-- publicEntryAfterContent -->
+    {{tpl:SysBehavior behavior="publicEntryAfterContent"}}
+
+    <!-- # Number of comments, trackbacks and attachments -->
+    <tpl:EntryIf operator="or" show_comments="1" show_pings="1" has_attachment="1">
+      <p class="post-info-co">
+    </tpl:EntryIf>
+    <tpl:EntryIf show_comments="1">
+      <a href="{{tpl:EntryURL}}#comments" class="comment_count">{{tpl:EntryCommentCount}}</a>
+    </tpl:EntryIf>
+    <tpl:EntryIf show_pings="1">
+      <a href="{{tpl:EntryURL}}#pings" class="ping_count">{{tpl:EntryPingCount}}</a></tpl:EntryIf>
+    <tpl:EntryIf has_attachment="1">
+      <a href="{{tpl:EntryURL}}#attachments" class="attach_count">{{tpl:EntryAttachmentCount}}</a></tpl:EntryIf>
+    <tpl:EntryIf operator="or" show_comments="1" show_pings="1" has_attachment="1">
+      </p>
+    </tpl:EntryIf>
+    </div>
+
+    <tpl:EntriesFooter>
+      <tpl:Pagination>
+        <p class="pagination"><tpl:PaginationIf end="0"><a href="{{tpl:PaginationURL offset="+1"}}" class="prev">&#171;
+        {{tpl:lang previous entries}}</a> - </tpl:PaginationIf>
+        {{tpl:lang page}} {{tpl:PaginationCurrent}} {{tpl:lang of}} {{tpl:PaginationCounter}}
+        <tpl:PaginationIf start="0"> - <a href="{{tpl:PaginationURL offset="-1"}}" class="next">{{tpl:lang next entries}}
+        &#187;</a></tpl:PaginationIf></p>
+      </tpl:Pagination>
+    </tpl:EntriesFooter>
+  </tpl:Entries>
+  </div>
+</div> <!-- End #main -->
+
+<div id="sidebar">
+  <div id="blognav">
+    {{tpl:Widgets type="nav"}}
+  </div> <!-- End #blognav -->
+
+  <div id="blogextra">
+    {{tpl:Widgets type="extra"}}
+  </div> <!-- End #blogextra -->
+</div>
+
+</div> <!-- End #wrapper -->
+
+{{tpl:include src="_footer.html"}}
+</div> <!-- End #page -->
+</body>
+</html>
Index: nc/public/default-templates/currywurst/404.html
===================================================================
--- inc/public/default-templates/currywurst/404.html	(revision 2603)
+++ 	(revision )
@@ -1,58 +1,0 @@
-<!DOCTYPE html>
-<html lang="{{tpl:BlogLanguage}}">
-<head>
-	<meta charset="UTF-8" />
-	<meta name="ROBOTS" content="{{tpl:BlogMetaRobots robots="NOINDEX,NOARCHIVE"}}" />
-
-	<title>{{tpl:lang Document not found}} - {{tpl:BlogName encode_html="1"}}</title>
-	<meta name="copyright" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
-	<meta name="author" content="{{tpl:BlogEditor encode_html="1"}}" />
-
-	<link rel="schema.dc" href="http://purl.org/dc/elements/1.1/" />
-	<meta property="dc.title" lang="{{tpl:BlogLanguage}}" content="{{tpl:lang Document not found}} - {{tpl:BlogName encode_html="1"}}" />
-	<meta property="dc.language" content="{{tpl:BlogLanguage}}" />
-	<meta property="dc.publisher" content="{{tpl:BlogEditor encode_html="1"}}" />
-	<meta property="dc.rights" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
-	<meta property="dc.type" content="text" />
-	<meta property="dc.format" content="text/html" />
-
-	<link rel="top" href="{{tpl:BlogURL}}" title="{{tpl:lang Home}}" />
-	<link rel="contents" title="{{tpl:lang Archives}}" href="{{tpl:BlogArchiveURL}}" />
-	<link rel="alternate" type="application/atom+xml" title="Atom 1.0" href="{{tpl:BlogFeedURL type="atom"}}" />
-
-	{{tpl:include src="_head.html"}}
-</head>
-<body class="dc-404">
-	<div id="page">
-		{{tpl:include src="_top.html"}}
-
-		<div id="wrapper">
-
-			<div id="main" role="main">
-				<div id="content">
-
-					<div id="content-info">
-						<h2>{{tpl:lang Document not found}}</h2>
-						<p>{{tpl:lang URL you've tried has typos, or the page has been deleted or moved.}}</p>
-					</div>
-
-					<div class="content-inner">
-						<h3>{{tpl:lang Suggestions:}}</h3>
-						<ul>
-							<li><a href="{{tpl:BlogURL}}">{{tpl:lang Go to homepage}}</a></li>
-							<li><a href="#search">{{tpl:lang Use search form}}</a></li>
-							<li><a href="{{tpl:BlogURL}}archive">{{tpl:lang Explore archives}}</a></li>
-						</ul>
-					</div> <!-- End #content-inner -->
-
-				</div> <!-- End #content -->
-			</div> <!-- End #main -->
-
-			{{tpl:include src="_sidebar.html"}}
-
-		</div> <!-- End #wrapper -->
-
-		{{tpl:include src="_footer.html"}}
-	</div> <!-- End #page -->
-</body>
-</html>
Index: nc/public/default-templates/currywurst/README.md
===================================================================
--- inc/public/default-templates/currywurst/README.md	(revision 2623)
+++ 	(revision )
@@ -1,70 +1,0 @@
-# Currywurst
-
-Un nouveau jeu de templates par défaut pour Dotclear (versions ≥ 2.7)
-
-## Motivations
-
-Le jeu de templates Currywurst répond à divers objectifs :
-
-- Proposer un jeu de templates en HTML 5.
-- Pouvoir ainsi y introduire des balises [http://fr.wikipedia.org/wiki/Accessible_Rich_Internet_Applications](ARIA) pour une meilleure accessibilité.
-- Améliorer la sémantique des tags html (par exemple ne plus présenter les commentaires dans une liste de définition).
-- Factoriser les éléments récurrents dès que c'est possible sans pâtir à la compréhension.
-- Préparer le passage à la syntaxe [http://twig.sensiolabs.org/](twig).
-- Adopter une nomenclature inspirée de [http://csswizardry.com/2013/01/mindbemding-getting-your-head-round-bem-syntax/](BEM) – sans en faire une religion dogmatique toutefois. Voir aussi [http://coding.smashingmagazine.com/2011/12/12/an-introduction-to-object-oriented-css-oocss/](OOCSS).
-- Faire en sorte de réduire l'obligation de recourir aux sélecteurs enfants (`#top h1 {}` par exemple) ou aux ID dans les CSS.
-
-## Revue fichier par fichier
-
-Ne sont pas listées les modifications systématiques : ajout de classes sur tous les éléments « probablement stylés » ou ne possédant qu'un id ; syntaxe html5.
-
-Les modifications nécessitant des explications sont listées de la façon suivante :
-
-    <Description courte> : <motivation>. <Explication>.
-
-Les motivations sont abrégées en :
-- a11y : amélioration accessibilité
-- sém. : amélioration ou correction sémantique (html)
-- cont. : amélioration du contenu
-- ergo : amélioration ergonomique
-
-Par convention l'ordre des attributs dans les balises html est *class, id, autres attributs*.
-
-Toutes les listes (ul ou ol) comportent le terme "list" dans leur nom de class.
-
-### _top.html
-
-Déplacement des liens d'accès rapides au-dessus du titre du blog : **a11y**, **ergo**. *Le titre de fenêtre étant lu avant tout par les aides techniques, l'internaute sait déjà où il se trouve. L'accès est également plus rapide au clavier. Côté design, la plupart des créateurs de thèmes ont pris l'habitude de déplacer ce bloc en haut de la page ; ils n'auront plus besoin de passer par des position absolute pour ce faire.*
-
-### _simple-entry.html
-
-(aka contexte du billet seul entier avec commentaires etc.)
-
-Formulaire de dépôt de commentaire :
-- remplacement des inputs par des buttons
-- typage des champs
-- ajout des attributs required quand nécessaire
-
-Découpage en deux grandes div : post et post-feedback.
-- post
-  - post-title : titre
-  - post-meta
-    - post-info
-    - post-tags-list
-  - post-excerpt
-  - post-content
-  - post-attachments
-    - post-attachments-title
-    - post-attachments-list
-- post-feedback
-  - feedback__comments
-    - comments-feed
-    - comments-list
-  - comment-form
-  - send-trackback
-
-***
-
-A réfléchir : inclusion par défaut de liens "sociaux" ?
-
-***
Index: nc/public/default-templates/currywurst/_entry-full.html
===================================================================
--- inc/public/default-templates/currywurst/_entry-full.html	(revision 2623)
+++ 	(revision )
@@ -1,55 +1,0 @@
-<div id="p{{tpl:EntryID}}" class="post {{tpl:EntryIfOdd}} {{tpl:EntryIfFirst}} full" lang="{{tpl:EntryLang}}" role="article">
-
-	<!-- # New day date -->
-	<tpl:DateHeader><p class="post-day-date">{{tpl:EntryDate}}</p></tpl:DateHeader>
-
-	<h2 class="post-title"><a href="{{tpl:EntryURL}}">{{tpl:EntryTitle encode_html="1"}}</a></h2>
-
-	<!-- # --BEHAVIOR-- publicEntryBeforeContent -->
-	{{tpl:SysBehavior behavior="publicEntryBeforeContent"}}
-
-	<tpl:EntryIf extended="1">
-	<div class="post-excerpt">{{tpl:EntryExcerpt}}</div>
-	</tpl:EntryIf>
-
-	<div class="post-content">{{tpl:EntryContent}}</div>
-
-	<!-- # --BEHAVIOR-- publicEntryAfterContent -->
-	{{tpl:SysBehavior behavior="publicEntryAfterContent"}}
-
-	<div class="post-meta">
-		<p class="post-info">
-			<span class="post-author">{{tpl:lang By}} {{tpl:EntryAuthorLink}}, </span>
-			<span class="post-date">{{tpl:EntryDate}}.</span>
-			<tpl:EntryIf has_category="1">
-			<span class="post-cat"><tpl:EntryCategoriesBreadcrumb><a
-				href="{{tpl:CategoryURL}}">{{tpl:CategoryTitle encode_html="1"}}</a> › </tpl:EntryCategoriesBreadcrumb><a
-				href="{{tpl:EntryCategoryURL}}">{{tpl:EntryCategory encode_html="1"}}</a>
-			</span>
-			</tpl:EntryIf>
-		</p>
-
-		<tpl:EntryTags>
-			<tpl:TagsHeader>
-			<ul class="post-tags-list">
-			</tpl:TagsHeader>
-				<li class="post-tags-item"><a href="{{tpl:TagURL}}">{{tpl:TagID}}</a></li>
-			<tpl:TagsFooter>
-			</ul>
-			</tpl:TagsFooter>
-		</tpl:EntryTags>
-
-		<!-- # Number of comments, trackbacks and attachments -->
-		<tpl:EntryIf operator="or" show_comments="1" show_pings="1" has_attachment="1">
-			<p class="post-info-co">
-			<tpl:EntryIf show_comments="1">
-			<a href="{{tpl:EntryURL}}#comments" class="comment_count">{{tpl:EntryCommentCount}}</a>
-			</tpl:EntryIf>
-			<tpl:EntryIf show_pings="1">
-			<a href="{{tpl:EntryURL}}#pings" class="ping_count">{{tpl:EntryPingCount}}</a></tpl:EntryIf>
-			<tpl:EntryIf has_attachment="1">
-			<a href="{{tpl:EntryURL}}#attachments" class="attach_count">{{tpl:EntryAttachmentCount}}</a></tpl:EntryIf>
-			</p>
-		</tpl:EntryIf>
-	</div>
-</div>
Index: nc/public/default-templates/currywurst/_entry-short.html
===================================================================
--- inc/public/default-templates/currywurst/_entry-short.html	(revision 2625)
+++ 	(revision )
@@ -1,72 +1,0 @@
-<div id="p{{tpl:EntryID}}" class="post short {{tpl:EntryIfOdd}} {{tpl:EntryIfFirst}}" lang="{{tpl:EntryLang}}" role="article">
-
-	<!-- # New day date -->
-	<tpl:DateHeader><p class="post-day-date">{{tpl:EntryDate}}</p></tpl:DateHeader>
-
-	<h2 class="post-title"><a href="{{tpl:EntryURL}}">{{tpl:EntryTitle encode_html="1"}}</a></h2>
-
-	<!-- # --BEHAVIOR-- publicEntryBeforeContent -->
-	{{tpl:SysBehavior behavior="publicEntryBeforeContent"}}
-
-	<!-- # Entry with an excerpt -->
-	<tpl:EntryIf extended="1">
-		<div class="post-content">
-			{{tpl:EntryFirstImage size="t" class="post-icon"}}
-			{{tpl:EntryExcerpt}}
-		</div>
-		<p class="post-read-it"><a href="{{tpl:EntryURL}}"
-		 title="{{tpl:lang Continue reading}} {{tpl:EntryTitle encode_html="1"}}">{{tpl:lang Continue reading}}</a></p>
-	</tpl:EntryIf>
-
-	<!-- # Entry without excerpt -->
-	<tpl:EntryIf extended="0">
-		<div class="post-content">
-			{{tpl:EntryFirstImage size="t" class="post-icon"}}
-			<p>
-				{{tpl:EntryContent encode_html="1" remove_html="1" cut_string="300"}}
-			</p>
-		</div>
-		<p class="post-read-it"><a href="{{tpl:EntryURL}}"
-		 title="{{tpl:lang Continue reading}} {{tpl:EntryTitle encode_html="1"}}">{{tpl:lang Continue reading}}</a></p>
-	</tpl:EntryIf>
-
-	<!-- # --BEHAVIOR-- publicEntryAfterContent -->
-	{{tpl:SysBehavior behavior="publicEntryAfterContent"}}
-
-	<div class="post-meta">
-		<p class="post-info">
-			<span class="post-author">{{tpl:lang By}} {{tpl:EntryAuthorLink}}, </span>
-			<span class="post-date">{{tpl:EntryDate}}.</span>
-			<tpl:EntryIf has_category="1">
-			<span class="post-cat"><tpl:EntryCategoriesBreadcrumb><a
-				href="{{tpl:CategoryURL}}">{{tpl:CategoryTitle encode_html="1"}}</a> › </tpl:EntryCategoriesBreadcrumb><a
-				href="{{tpl:EntryCategoryURL}}">{{tpl:EntryCategory encode_html="1"}}</a></span>
-			</tpl:EntryIf>
-		</p>
-
-		<tpl:EntryTags>
-			<tpl:TagsHeader>
-				<ul class="post-tags-list">
-			</tpl:TagsHeader>
-				<li class="post-tags-item"><a href="{{tpl:TagURL}}">{{tpl:TagID}}</a></li>
-			<tpl:TagsFooter>
-				</ul>
-			</tpl:TagsFooter>
-		</tpl:EntryTags>
-
-		<!-- # Number of comments, trackbacks and attachments -->
-		<tpl:EntryIf operator="or" show_comments="1" show_pings="1" has_attachment="1">
-			<p class="post-info-co">
-		</tpl:EntryIf>
-			<tpl:EntryIf show_comments="1">
-				<a href="{{tpl:EntryURL}}#comments" class="comment_count">{{tpl:EntryCommentCount}}</a>
-			</tpl:EntryIf>
-			<tpl:EntryIf show_pings="1">
-				<a href="{{tpl:EntryURL}}#pings" class="ping_count">{{tpl:EntryPingCount}}</a></tpl:EntryIf>
-			<tpl:EntryIf has_attachment="1">
-				<a href="{{tpl:EntryURL}}#attachments" class="attach_count">{{tpl:EntryAttachmentCount}}</a></tpl:EntryIf>
-		<tpl:EntryIf operator="or" show_comments="1" show_pings="1" has_attachment="1">
-			</p>
-		</tpl:EntryIf>
-	</div>
-</div>
Index: nc/public/default-templates/currywurst/_entry-title.html
===================================================================
--- inc/public/default-templates/currywurst/_entry-title.html	(revision 2619)
+++ 	(revision )
@@ -1,41 +1,0 @@
-<div id="p{{tpl:EntryID}}" class="post {{tpl:EntryIfOdd}} {{tpl:EntryIfFirst}} title" lang="{{tpl:EntryLang}}" role="article">
-
-	<!-- # New day date -->
-	<tpl:DateHeader><p class="day-date">{{tpl:EntryDate}}</p></tpl:DateHeader>
-
-	<h2 class="post-title"><a href="{{tpl:EntryURL}}">{{tpl:EntryTitle encode_html="1"}}</a></h2>
-
-	<div class="post-meta">
-		<p class="post-info">
-			<span class="post-author">{{tpl:lang By}} {{tpl:EntryAuthorLink}}, </span>
-			<span class="post-date">{{tpl:EntryDate}}. </span>
-			<tpl:EntryIf has_category="1">
-				<tpl:EntryCategoriesBreadcrumb>
-					<span class="post-breadcrumb-cat"><a href="{{tpl:CategoryURL}}">{{tpl:CategoryTitle encode_html="1"}}</a></span> ›
-				</tpl:EntryCategoriesBreadcrumb>
-				<span class="post-cat"><a href="{{tpl:EntryCategoryURL}}">{{tpl:EntryCategory encode_html="1"}}</a></span>
-			</tpl:EntryIf>
-		</p>
-	</div>
-
-	<!-- # --BEHAVIOR-- publicEntryBeforeContent -->
-	{{tpl:SysBehavior behavior="publicEntryBeforeContent"}}
-
-	<!-- # --BEHAVIOR-- publicEntryAfterContent -->
-	{{tpl:SysBehavior behavior="publicEntryAfterContent"}}
-
-	<!-- # Number of comments, trackbacks and attachments -->
-	<tpl:EntryIf operator="or" show_comments="1" show_pings="1" has_attachment="1">
-		<p class="post-info-co">
-	</tpl:EntryIf>
-	<tpl:EntryIf show_comments="1">
-			<a href="{{tpl:EntryURL}}#comments" class="comment_count">{{tpl:EntryCommentCount}}</a>
-	</tpl:EntryIf>
-	<tpl:EntryIf show_pings="1">
-			<a href="{{tpl:EntryURL}}#pings" class="ping_count">{{tpl:EntryPingCount}}</a></tpl:EntryIf>
-	<tpl:EntryIf has_attachment="1">
-			<a href="{{tpl:EntryURL}}#attachments" class="attach_count">{{tpl:EntryAttachmentCount}}</a></tpl:EntryIf>
-	<tpl:EntryIf operator="or" show_comments="1" show_pings="1" has_attachment="1">
-		</p>
-	</tpl:EntryIf>
-</div>
Index: nc/public/default-templates/currywurst/_flv_player.html
===================================================================
--- inc/public/default-templates/currywurst/_flv_player.html	(revision 2600)
+++ 	(revision )
@@ -1,8 +1,0 @@
-<object type="application/x-shockwave-flash" data="{{tpl:BlogQmarkURL}}pf=player_flv.swf"
-width="400" height="300">
-<param name="movie" value="{{tpl:BlogQmarkURL}}pf=player_flv.swf" />
-<param name="wmode" value="transparent" />
-<param name="allowFullScreen" value="true" />
-<param name="FlashVars" value="flv={{tpl:MediaURL}}&amp;width=400&amp;height=300&amp;margin=1&amp;showfullscreen=1&amp;showvolume=1&amp;showtime=1" />
-{{tpl:lang Embedded Audio Player}}
-</object>
Index: nc/public/default-templates/currywurst/_footer.html
===================================================================
--- inc/public/default-templates/currywurst/_footer.html	(revision 2621)
+++ 	(revision )
@@ -1,14 +1,0 @@
-<p id="gotop"><a href="#top">Haut de page</a></p>
-
-<div id="footer" role="contentinfo">
-	<div id="blogcustom">
-		{{tpl:Widgets type="custom"}}
-	</div> <!-- End #custom widgets -->
-
-	{{tpl:SysBehavior behavior="publicInsideFooter"}}
-
-	<p>{{tpl:SysPoweredBy}}</p>
-</div>
-{{tpl:SysBehavior behavior="publicFooterContent"}}
-
-{{tpl:include src="user_footer.html"}}
Index: nc/public/default-templates/currywurst/_head.html
===================================================================
--- inc/public/default-templates/currywurst/_head.html	(revision 2600)
+++ 	(revision )
@@ -1,17 +1,0 @@
-<!-- media queries -->
-<meta name="viewport" content="width=device-width, initial-scale=1.0" />
-
-<!-- compat media queries -->
-<!--[if lt IE 9]>
-	<script src="http://css3-mediaqueries-js.googlecode.com/svn/trunk/css3-mediaqueries.js"></script>
-	<link rel="stylesheet" type="text/css" href="{{tpl:BlogThemeURL}}/ie.css" media="screen" />
-<![endif]-->
-
-<link rel="stylesheet" type="text/css" href="{{tpl:BlogThemeURL}}/style.css" media="screen" />
-<link rel="stylesheet" type="text/css" href="{{tpl:BlogThemeURL}}/../default/print.css" media="print" />
-
-<script type="text/javascript" src="{{tpl:BlogThemeURL}}/../default/js/jquery.js"></script>
-<script type="text/javascript" src="{{tpl:BlogThemeURL}}/../default/js/jquery.cookie.js"></script>
-
-{{tpl:include src="user_head.html"}}
-{{tpl:SysBehavior behavior="publicHeadContent"}}
Index: nc/public/default-templates/currywurst/_mp3_player.html
===================================================================
--- inc/public/default-templates/currywurst/_mp3_player.html	(revision 2600)
+++ 	(revision )
@@ -1,6 +1,0 @@
-<object type="application/x-shockwave-flash" data="{{tpl:BlogQmarkURL}}pf=player_mp3.swf" width="200" height="20">
-<param name="movie" value="{{tpl:BlogQmarkURL}}pf=player_mp3.swf" />
-<param name="wmode" value="transparent" />
-<param name="FlashVars" value="mp3={{tpl:MediaURL}}&amp;showvolume=1&amp;loadingcolor=ff9900&amp;bgcolor1=eeeeee&amp;bgcolor2=cccccc&amp;buttoncolor=0066cc&amp;buttonovercolor=ff9900&amp;slidercolor1=cccccc&amp;slidercolor2=999999&amp;sliderovercolor=0066cc" />
-{{tpl:lang Embedded Audio Player}}
-</object>
Index: nc/public/default-templates/currywurst/_pagination.html
===================================================================
--- inc/public/default-templates/currywurst/_pagination.html	(revision 2600)
+++ 	(revision )
@@ -1,13 +1,0 @@
-<tpl:Pagination>
-	<p class="pagination">
-		<tpl:PaginationIf end="0">
-			<a href="{{tpl:PaginationURL offset="+1"}}" class="prev">&#171; {{tpl:lang previous entries}}</a> -
-		</tpl:PaginationIf>
-
-		{{tpl:lang page}} {{tpl:PaginationCurrent}} {{tpl:lang of}} {{tpl:PaginationCounter}}
-
-		<tpl:PaginationIf start="0"> - <a href="{{tpl:PaginationURL offset="-1"}}" class="next">
-			{{tpl:lang next entries}} &#187;</a>
-		</tpl:PaginationIf>
-	</p>
-</tpl:Pagination>
Index: nc/public/default-templates/currywurst/_sidebar.html
===================================================================
--- inc/public/default-templates/currywurst/_sidebar.html	(revision 2603)
+++ 	(revision )
@@ -1,8 +1,0 @@
-<div id="sidebar" role="complementary">
-	<div id="blognav">
-		{{tpl:Widgets type="nav"}}
-	</div> <!-- End #blognav -->
-	<div id="blogextra">
-		{{tpl:Widgets type="extra"}}
-	</div> <!-- End #blogextra -->
-</div>
Index: nc/public/default-templates/currywurst/_simple-entry.html
===================================================================
--- inc/public/default-templates/currywurst/_simple-entry.html	(revision 2623)
+++ 	(revision )
@@ -1,182 +1,0 @@
-<div class="post simple" id="p{{tpl:EntryID}}" role="article">
-	<h2 class="post-title">{{tpl:EntryTitle encode_html="1"}}</h2>
-
-	<div class="post-meta">
-		<p class="post-info">
-			<span class="post-author">{{tpl:lang By}} {{tpl:EntryAuthorLink}}, </span>
-			<span class="post-date">{{tpl:EntryDate}}. </span>
-			<span class="post-permalink"><a href="{{tpl:EntryURL}}">{{tpl:lang Permalink}}</a></span>
-			<tpl:EntryIf has_category="1">
-				<span class="post-cat"><tpl:EntryCategoriesBreadcrumb><a
-				href="{{tpl:CategoryURL}}">{{tpl:CategoryTitle encode_html="1"}}</a> › </tpl:EntryCategoriesBreadcrumb><a
-				href="{{tpl:EntryCategoryURL}}">{{tpl:EntryCategory encode_html="1"}}</a></span>
-			</tpl:EntryIf>
-		</p>
-
-		<tpl:EntryTags>
-			<tpl:TagsHeader>
-				<ul class="post-tags-list">
-			</tpl:TagsHeader>
-				<li class="post-tags-item"><a href="{{tpl:TagURL}}">{{tpl:TagID}}</a></li>
-			<tpl:TagsFooter>
-				</ul>
-			</tpl:TagsFooter>
-		</tpl:EntryTags>
-	</div>
-
-	<!-- # --BEHAVIOR-- publicEntryBeforeContent -->
-	{{tpl:SysBehavior behavior="publicEntryBeforeContent"}}
-
-	<!-- # Entry with an excerpt -->
-	<tpl:EntryIf extended="1">
-		<div class="post-excerpt">{{tpl:EntryExcerpt}}</div>
-	</tpl:EntryIf>
-
-	<div class="post-content">{{tpl:EntryContent}}</div>
-
-	<!-- # --BEHAVIOR-- publicEntryAfterContent -->
-	{{tpl:SysBehavior behavior="publicEntryAfterContent"}}
-
-<!-- # Attachments -->
-<tpl:Attachments>
-	<tpl:AttachmentsHeader>
-	<div class="post-attachments" id="attachments">
-		<h3 class="post-attachments-title">{{tpl:lang Attachments}}</h3>
-		<ul class="post-attachments-list">
-	</tpl:AttachmentsHeader>
-				<li class="post-attachments-item {{tpl:AttachmentType}}">
-					<tpl:AttachmentIf is_mp3="1">
-						{{tpl:include src="_mp3_player.html"/}} -
-					</tpl:AttachmentIf>
-					<tpl:AttachmentIf is_flv="1">
-						{{tpl:include src="_flv_player.html"/}}
-					</tpl:AttachmentIf>
-					<tpl:AttachmentIf is_flv="0">
-						<a href="{{tpl:AttachmentURL}}"
-						 title="{{tpl:AttachmentFileName}} ({{tpl:AttachmentSize}})">{{tpl:AttachmentTitle}}</a>
-					</tpl:AttachmentIf>
-				</li>
-	<tpl:AttachmentsFooter>
-			</ul>
-		</div>
-	</tpl:AttachmentsFooter>
-</tpl:Attachments>
-</div>
-
-<tpl:EntryIf operator="or" show_comments="1" show_pings="1">
-	<div class="post-feedback">
-</tpl:EntryIf>
-
-<!-- # Comments -->
-<tpl:EntryIf show_comments="1">
-	<tpl:Comments with_pings="1">
-		<tpl:CommentsHeader>
-			<div class="feedback__comments" id="comments">
-				<h3>{{tpl:EntryCommentCount count_all="1" none="no reactions" one="one reaction" more="%s reactions"}}</h3>
-				<tpl:EntryIf operator="or" comments_active="1" pings_active="1">
-					<p id="comments-feed"><a class="feed" href="{{tpl:BlogFeedURL type="atom"}}/comments/{{tpl:EntryID}}"
-						title="{{tpl:lang This post's comments Atom feed}}">{{tpl:lang This post's comments feed}}</a></p>
-				</tpl:EntryIf>
-				<ul class="comments-list">
-		</tpl:CommentsHeader>
-					<tpl:CommentIf is_ping="0">
-						<li id="c{{tpl:CommentID}}" class="comment {{tpl:CommentIfMe}} {{tpl:CommentIfOdd}} {{tpl:CommentIfFirst}}">
-					</tpl:CommentIf>
-					<tpl:CommentIf is_ping="1">
-						<li id="c{{tpl:PingID}}" class="ping {{tpl:PingIfOdd}} {{tpl:PingIfFirst}}">
-					</tpl:CommentIf>
-							<p class="comment-info"><a href="#c{{tpl:CommentID}}" class="comment-number">{{tpl:CommentOrderNumber}}</a>
-								{{tpl:lang From}} {{tpl:CommentAuthorLink}} - {{tpl:CommentDate format="%d"}}/{{tpl:CommentDate format="%m"}}/{{tpl:CommentDate format="%Y"}}, {{tpl:CommentTime}}
-							</p>
-							<div class="comment-content">
-								<!-- # --BEHAVIOR-- publicCommentBeforeContent -->
-								{{tpl:SysBehavior behavior="publicCommentBeforeContent"}}
-
-								{{tpl:CommentContent}}
-
-								<!-- # --BEHAVIOR-- publicCommentAfterContent -->
-								{{tpl:SysBehavior behavior="publicCommentAfterContent"}}
-							</div>
-						</li>
-		<tpl:CommentsFooter>
-					</ul>
-				</div>
-		</tpl:CommentsFooter>
-	</tpl:Comments>
-</tpl:EntryIf>
-
-<tpl:EntryIf comments_active="1">
-	<tpl:SysIfFormError>
-		<p class="error" id="pr">{{tpl:SysFormError}}</p>
-	</tpl:SysIfFormError>
-
-	<tpl:SysIfCommentPublished>
-		<p class="message" id="pr">{{tpl:lang Your comment has been published.}}</p>
-	</tpl:SysIfCommentPublished>
-
-	<tpl:SysIfCommentPending>
-		<p class="message" id="pr">{{tpl:lang Your comment has been submitted and will be reviewed for publication.}}</p>
-	</tpl:SysIfCommentPending>
-
-	<!-- # Comment form -->
-	<form class="comment-form" action="{{tpl:EntryURL}}#pr" method="post" id="comment-form" role="form">
-		<tpl:IfCommentPreview>
-			<div id="pr">
-				<h3>{{tpl:lang Your comment}}</h3>
-				<div class="comment-preview">{{tpl:CommentPreviewContent}}</div>
-				<p class="buttons"><button type="submit" class="submit" value="{{tpl:lang Send}}">{{tpl:lang Send}}</button></p>
-			</div>
-		</tpl:IfCommentPreview>
-
-		<h3>{{tpl:lang Add a comment}}</h3>
-			<!-- # --BEHAVIOR-- publicCommentFormBeforeContent -->
-			{{tpl:SysBehavior behavior="publicCommentFormBeforeContent"}}
-
-			<p class="field name-field"><label for="c_name">{{tpl:lang Name or nickname}}<abbr title="{{tpl:lang Required field}}">*</abbr>&nbsp;:</label>
-				<input name="c_name" id="c_name" type="text" size="30" maxlength="255"
-				 value="{{tpl:CommentPreviewName encode_html="1"}}" required />
-			</p>
-
-			<p class="field mail-field"><label for="c_mail">{{tpl:lang Email address}}<abbr title="{{tpl:lang Required field}}">*</abbr>&nbsp;:</label>
-				<input name="c_mail" id="c_mail" type="email" size="30" maxlength="255"
-				 value="{{tpl:CommentPreviewEmail encode_html="1"}}" required />
-			</p>
-
-			<p class="field site-field"><label for="c_site">{{tpl:lang Website}}&nbsp;:</label>
-				<input name="c_site" id="c_site" type="url" size="30" maxlength="255"
-				 value="{{tpl:CommentPreviewSite encode_html="1"}}" />
-			</p>
-
-			<p style="display:none">
-				<input name="f_mail" type="text" size="30" maxlength="255" value="" />
-			</p>
-
-			<p class="field field-content"><label for="c_content">{{tpl:lang Comment}}<abbr title="{{tpl:lang Required field}}">*</abbr>&nbsp;:</label>
-				<textarea name="c_content" id="c_content" cols="35"
-				 rows="7" required>{{tpl:CommentPreviewContent raw="1" encode_html="1"}}</textarea>
-			</p>
-
-			<p class="form-help">{{tpl:CommentHelp}}</p>
-
-			<!-- # --BEHAVIOR-- publicCommentFormAfterContent -->
-			{{tpl:SysBehavior behavior="publicCommentFormAfterContent"}}
-
-			<p class="buttons">
-				<button type="submit" class="preview" name="preview" value="{{tpl:lang Preview}}">{{tpl:lang Preview}}</button>
-		        <tpl:IfCommentPreview>
-		        	<button type="submit" class="submit" value="{{tpl:lang Send}}">{{tpl:lang Send}}</button>
-		        </tpl:IfCommentPreview>
-			</p>
-	</form>
-</tpl:EntryIf>
-
-<tpl:EntryIf pings_active="1">
-	<div class="send-ping">
-		<h3>{{tpl:lang Add ping}}</h3>
-		<p id="ping-url">{{tpl:lang Trackback URL}}&nbsp;: {{tpl:EntryPingLink}}</p>
-	</div>
-</tpl:EntryIf>
-
-<tpl:EntryIf operator="or" show_comments="1" show_pings="1">
-	</div> <!-- end post-feedback -->
-</tpl:EntryIf>
Index: nc/public/default-templates/currywurst/_top.html
===================================================================
--- inc/public/default-templates/currywurst/_top.html	(revision 2621)
+++ 	(revision )
@@ -1,18 +1,0 @@
-<div class="header">
-	<ul class="skip-links" id="prelude" role="navigation">
-		<li><a href="#main">{{tpl:lang To content}}</a></li>
-		<li><a href="#blognav">{{tpl:lang To menu}}</a></li>
-		<li><a href="#search">{{tpl:lang To search}}</a></li>
-	</ul>
-
-	<div class="banner" role="banner">
-		<h1 class="site-title"><a class="site-title__link"
-			href="{{tpl:BlogURL}}"><span class="site-title__text">{{tpl:BlogName encode_html="1"}}</span></a></h1>
-		<p class="site-baseline">{{tpl:BlogDescription}}</p>
-	</div>
-
-	<!-- # --BEHAVIOR-- publicTopAfterContent -->
-	{{tpl:SysBehavior behavior="publicTopAfterContent"}}
-
-	{{tpl:SimpleMenu class="nav header__nav"}}
-</div>
Index: nc/public/default-templates/currywurst/archive.html
===================================================================
--- inc/public/default-templates/currywurst/archive.html	(revision 2603)
+++ 	(revision )
@@ -1,143 +1,0 @@
-<!DOCTYPE html>
-<html lang="{{tpl:BlogLanguage}}">
-<head>
-	<meta charset="UTF-8" />
-	<meta name="ROBOTS" content="{{tpl:BlogMetaRobots}}" />
-
-	<title>{{tpl:lang Archives}} - {{tpl:BlogName encode_html="1"}}</title>
-	<meta name="copyright" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
-	<meta name="author" content="{{tpl:BlogEditor encode_html="1"}}" />
-	<meta name="date" content="{{tpl:BlogUpdateDate iso8601="1"}}" />
-
-	<link rel="schema.dc" href="http://purl.org/dc/elements/1.1/" />
-	<meta property="dc.title" lang="{{tpl:BlogLanguage}}" content="{{tpl:lang Archives}} - {{tpl:BlogName encode_html="1"}}" />
-	<meta property="dc.language" content="{{tpl:BlogLanguage}}" />
-	<meta property="dc.publisher" content="{{tpl:BlogEditor encode_html="1"}}" />
-	<meta property="dc.rights" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
-	<meta property="dc.date" content="{{tpl:BlogUpdateDate iso8601="1"}}" />
-	<meta property="dc.type" content="text" />
-	<meta property="dc.format" content="text/html" />
-
-	<link rel="top" href="{{tpl:BlogURL}}" title="{{tpl:lang Home}}" />
-
-	<tpl:Archives>
-		<link rel="chapter" href="{{tpl:ArchiveURL}}" title="{{tpl:ArchiveDate encode_html="1"}}" />
-	</tpl:Archives>
-
-	<link rel="contents" title="{{tpl:lang Archives}}" href="{{tpl:BlogArchiveURL}}" />
-	<tpl:Categories>
-		<link rel="section" href="{{tpl:CategoryURL}}" title="{{tpl:CategoryTitle encode_html="1"}}" />
-	</tpl:Categories>
-	<link rel="alternate" type="application/atom+xml" title="Atom 1.0" href="{{tpl:BlogFeedURL type="atom"}}" />
-
-	{{tpl:include src="_head.html"}}
-</head>
-<body class="dc-archive">
-	<div id="page">
-		{{tpl:include src="_top.html"}}
-
-		<div id="wrapper">
-
-			<div id="main" role="main">
-				<div id="content">
-
-					<div id="content-info">
-						<h2>{{tpl:lang Archives}}</h2>
-					</div>
-
-					<div class="content-inner">
-
-						<div id="time-criteria"><!-- entries sorted by date -->
-							<div id="by-date" class="arch-block">
-								<h3>{{tpl:lang By date}}</h3>
-								<p class="fromto">{{tpl:lang FromDay}} <tpl:Entries no_content="1" order="asc" lastn="1"><a href="{{tpl:EntryURL}}">{{tpl:EntryDate format="%e %B %Y"}}</a></tpl:Entries> {{tpl:lang toDay}} <tpl:Entries no_content="1" order="desc" lastn="1"><a href="{{tpl:EntryURL}}">{{tpl:EntryDate format="%e %B %Y"}}</a></tpl:Entries></p>
-								<tpl:Archives order="asc">
-									<tpl:ArchivesYearHeader>
-										<div>
-											<h4>{{tpl:ArchiveDate format="%Y"}}</h4>
-											<ul>
-									</tpl:ArchivesYearHeader>
-												<li><a href="{{tpl:ArchiveURL}}" title="{{tpl:ArchiveDate encode_html="1"}}">{{tpl:ArchiveDate encode_html="1" format="%B"}}</a>
-													<span>({{tpl:ArchiveEntriesCount}})</span></li>
-									<tpl:ArchivesYearFooter>
-											</ul>
-										</div>
-									</tpl:ArchivesYearFooter>
-								</tpl:Archives>
-							</div>
-						</div>
-
-						<div id="other-criteria"><!-- entries sorted by others criterias -->
-							<tpl:Categories level="1">
-								<tpl:CategoriesHeader>
-									<div id="by-cat" class="arch-block">
-										<h3>{{tpl:lang By category}}</h3>
-										<ul>
-								</tpl:CategoriesHeader>
-											<li><a href="{{tpl:CategoryURL}}">{{tpl:CategoryTitle encode_html="1"}}</a>
-								<tpl:CategoryFirstChildren>
-									<tpl:CategoriesHeader>
-												<ul>
-									</tpl:CategoriesHeader>
-														<li><a href="{{tpl:CategoryURL}}">{{tpl:CategoryTitle encode_html="1"}}</a></li>
-									<tpl:CategoriesFooter>
-												</ul>
-									</tpl:CategoriesFooter>
-								</tpl:CategoryFirstChildren>
-											</li>
-								<tpl:CategoriesFooter>
-										</ul>
-									</div>
-								</tpl:CategoriesFooter>
-							</tpl:Categories>
-
-							<tpl:Tags sortby="count" order="desc">
-								<tpl:TagsHeader>
-									<div id="by-tag" class="arch-block">
-										<h3>{{tpl:lang By tag}}</h3>
-										<ul>
-								</tpl:TagsHeader>
-											<li><a href="{{tpl:TagURL}}" class="tag{{tpl:TagRoundPercent}}">{{tpl:TagID}}</a></li>
-								<tpl:TagsFooter>
-										</ul>
-									</div>
-								</tpl:TagsFooter>
-							</tpl:Tags>
-						</div>
-
-						<div id="more-arch"><!-- others things -->
-							<div class="arch-block">
-								<tpl:Entries type="page" no_content="1" lastn="0" selected="0">
-									<tpl:EntriesHeader>
-										<h3>{{tpl:lang Pages}}</h3>
-										<ul>
-									</tpl:EntriesHeader>
-											<li><a href="{{tpl:EntryURL}}">{{tpl:EntryTitle encode_html="1"}}</a></li>
-									<tpl:EntriesFooter>
-										</ul>
-									</tpl:EntriesFooter>
-								</tpl:Entries>
-							</div>
-						</div>
-					</div> <!-- End .content-inner -->
-
-				</div> <!-- End #content -->
-			</div> <!-- End #main -->
-
-			<div id="sidebar" role="complementary">
-				<div id="blognav">
-					<tpl:Widget id="search">
-					</tpl:Widget>
-				</div> <!-- End #blognav -->
-
-				<div id="blogextra">
-					{{tpl:Widgets type="extra"}}
-				</div> <!-- End #blogextra -->
-
-			</div> <!-- End #sidebar -->
-		</div> <!-- End #wrapper -->
-
-		{{tpl:include src="_footer.html"}}
-	</div> <!-- End #page -->
-</body>
-</html>
Index: nc/public/default-templates/currywurst/archive_month.html
===================================================================
--- inc/public/default-templates/currywurst/archive_month.html	(revision 2603)
+++ 	(revision )
@@ -1,75 +1,0 @@
-<!DOCTYPE html>
-<html lang="{{tpl:BlogLanguage}}">
-<head>
-	<meta charset="UTF-8" />
-	<meta name="ROBOTS" content="{{tpl:BlogMetaRobots robots="NOINDEX"}}" />
-
-	<title>{{tpl:lang Archives}} - {{tpl:ArchiveDate}} - {{tpl:BlogName encode_html="1"}}</title>
-	<meta name="copyright" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
-	<meta name="author" content="{{tpl:BlogEditor encode_html="1"}}" />
-	<meta name="date" content="{{tpl:BlogUpdateDate iso8601="1"}}" />
-
-	<link rel="schema.dc" href="http://purl.org/dc/elements/1.1/" />
-	<meta property="dc.title" lang="{{tpl:BlogLanguage}}" content="{{tpl:lang Archives}} - {{tpl:ArchiveDate}} - {{tpl:BlogName encode_html="1"}}" />
-	<meta property="dc.language" content="{{tpl:BlogLanguage}}" />
-	<meta property="dc.publisher" content="{{tpl:BlogEditor encode_html="1"}}" />
-	<meta property="dc.rights" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
-	<meta property="dc.date" content="{{tpl:BlogUpdateDate iso8601="1"}}" />
-	<meta property="dc.type" content="text" />
-	<meta property="dc.format" content="text/html" />
-
-	<link rel="top" href="{{tpl:BlogURL}}" title="{{tpl:lang Home}}" />
-	<link rel="up" href="{{tpl:BlogArchiveURL}}" title="{{tpl:lang Archives}}" />
-	<link rel="contents" href="{{tpl:BlogArchiveURL}}" title="{{tpl:lang Archives}}" />
-
-	<tpl:ArchiveNext><link rel="next" href="{{tpl:ArchiveURL}}" title="{{tpl:ArchiveDate encode_html="1"}}" /></tpl:ArchiveNext>
-	<tpl:ArchivePrevious><link rel="prev" href="{{tpl:ArchiveURL}}" title="{{tpl:ArchiveDate encode_html="1"}}" /></tpl:ArchivePrevious>
-
-	<tpl:Entries no_content="1">
-		<link rel="chapter" href="{{tpl:EntryURL}}" title="{{tpl:EntryTitle encode_html="1"}}" />
-	</tpl:Entries>
-
-	{{tpl:include src="_head.html"}}
-</head>
-<body class="dc-archive-month">
-	<div id="page">
-		{{tpl:include src="_top.html"}}
-
-		<div id="wrapper">
-
-			<div id="main" role="main">
-				<div id="content">
-
-					<p class="navlinks topnl">
-						<tpl:ArchivePrevious><a href="{{tpl:ArchiveURL}}" class="prev">&#171; {{tpl:ArchiveDate encode_html="1"}}</a> - </tpl:ArchivePrevious>
-						{{tpl:ArchiveDate}}
-						<tpl:ArchiveNext> - <a href="{{tpl:ArchiveURL}}" class="next">{{tpl:ArchiveDate encode_html="1"}} &#187;</a></tpl:ArchiveNext>
-					</p>
-
-					<div id="content-info">
-						<h2>{{tpl:ArchiveDate}} <span>({{tpl:ArchiveEntriesCount}})</span></h2>
-					</div>
-
-					<div class="content-inner">
-						<tpl:Entries>
-							{{tpl:include src="_entry-short.html"}}
-						</tpl:Entries>
-					</div>
-
-					<p class="navlinks">
-						<tpl:ArchivePrevious><a href="{{tpl:ArchiveURL}}" class="prev">&#171; {{tpl:ArchiveDate encode_html="1"}}</a> - </tpl:ArchivePrevious>
-						{{tpl:ArchiveDate}}
-						<tpl:ArchiveNext> - <a href="{{tpl:ArchiveURL}}" class="next">{{tpl:ArchiveDate encode_html="1"}} &#187;</a></tpl:ArchiveNext>
-					</p>
-
-				</div>
-			</div> <!-- End #main -->
-
-			{{tpl:include src="_sidebar.html"}}
-
-		</div> <!-- End #wrapper -->
-
-		{{tpl:include src="_footer.html"}}
-	</div> <!-- End #page -->
-</body>
-</html>
Index: nc/public/default-templates/currywurst/atom-comments.xml
===================================================================
--- inc/public/default-templates/currywurst/atom-comments.xml	(revision 2600)
+++ 	(revision )
@@ -1,47 +1,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="{{tpl:BlogLanguage}}">
-
-  <title type="html">{{tpl:BlogName encode_xml="1"}}{{tpl:SysFeedSubtitle encode_xml="1"}}
-  - {{tpl:lang Comments}}</title>
-  <subtitle type="html">{{tpl:BlogDescription encode_xml="1"}}</subtitle>
-  <link href="{{tpl:SysSelfURI}}" rel="self" type="application/atom+xml"/>
-  <link href="{{tpl:BlogURL}}" rel="alternate" type="text/html"
-  title="{{tpl:BlogDescription encode_xml="1"}}"/>
-  <updated>{{tpl:BlogUpdateDate iso8601="1"}}</updated>
-  <author>
-    <name>{{tpl:BlogEditor encode_xml="1"}}</name>
-  </author>
-  <id>{{tpl:BlogFeedID}}</id>
-  <generator uri="http://www.dotclear.org/">Dotclear</generator>
-
-  <tpl:Comments order="desc" with_pings="1">
-
-  <tpl:CommentIf is_ping="1">
-  <entry>
-    <title>[ping] {{tpl:PingEntryTitle encode_xml="1"}} - {{tpl:PingBlogName encode_xml="1"}}</title>
-    <link href="{{tpl:PingPostURL encode_xml="1"}}#c{{tpl:PingID}}" rel="alternate" type="text/html"
-    title="[ping] {{tpl:PingEntryTitle encode_xml="1"}} - {{tpl:PingBlogName encode_xml="1"}}" />
-    <id>{{tpl:PingFeedID}}</id>
-    <published>{{tpl:PingDate iso8601="1"}}</published>
-    <updated>{{tpl:PingDate iso8601="1" upddt="1"}}</updated>
-    <author><name>{{tpl:PingBlogName encode_xml="1"}}</name></author>
-    <content type="html">&lt;p&gt;&lt;a href="{{tpl:PingAuthorURL encode_xml="1"}}"&gt;{{tpl:PingTitle encode_xml="1"}}&lt;/a&gt;&lt;/p&gt; {{tpl:PingContent encode_xml="1"}}</content>
-  </entry>
-
-  </tpl:CommentIf>
-
-  <tpl:CommentIf is_ping="0">
-  <entry>
-    <title>{{tpl:CommentEntryTitle encode_xml="1"}} - {{tpl:CommentAuthor encode_xml="1"}}</title>
-    <link href="{{tpl:CommentPostURL encode_xml="1"}}#c{{tpl:CommentID}}" rel="alternate" type="text/html"
-    title="{{tpl:CommentEntryTitle encode_xml="1"}} - {{tpl:CommentAuthor encode_xml="1"}}" />
-    <id>{{tpl:CommentFeedID}}</id>
-    <published>{{tpl:CommentDate iso8601="1"}}</published>
-    <updated>{{tpl:CommentDate iso8601="1" upddt="1"}}</updated>
-    <author><name>{{tpl:CommentAuthor encode_xml="1"}}</name></author>
-    <content type="html">{{tpl:CommentContent absolute_urls="1" encode_xml="1"}}</content>
-  </entry>
-  </tpl:CommentIf>
-  </tpl:Comments>
-
-</feed>
Index: nc/public/default-templates/currywurst/atom.xml
===================================================================
--- inc/public/default-templates/currywurst/atom.xml	(revision 2600)
+++ 	(revision )
@@ -1,55 +1,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<feed xmlns="http://www.w3.org/2005/Atom"
-  xmlns:dc="http://purl.org/dc/elements/1.1/"
-  xmlns:wfw="http://wellformedweb.org/CommentAPI/"
-  xml:lang="{{tpl:BlogLanguage}}">
-
-  <title type="html">{{tpl:BlogName encode_xml="1"}}{{tpl:SysFeedSubtitle encode_xml="1"}}</title>
-  <subtitle type="html">{{tpl:BlogDescription encode_xml="1"}}</subtitle>
-  <link href="{{tpl:SysSelfURI}}" rel="self" type="application/atom+xml"/>
-  <link href="{{tpl:BlogURL}}" rel="alternate" type="text/html"
-  title="{{tpl:BlogDescription encode_xml="1"}}"/>
-  <updated>{{tpl:BlogUpdateDate iso8601="1"}}</updated>
-  <author>
-    <name>{{tpl:BlogEditor encode_xml="1"}}</name>
-  </author>
-  <id>{{tpl:BlogFeedID}}</id>
-  <generator uri="http://www.dotclear.org/">Dotclear</generator>
-
-  <tpl:Entries>
-
-  <entry>
-    <title>{{tpl:EntryTitle encode_xml="1"}}</title>
-    <link href="{{tpl:EntryURL}}" rel="alternate" type="text/html"
-    title="{{tpl:EntryTitle encode_xml="1"}}" />
-    <id>{{tpl:EntryFeedID}}</id>
-    <published>{{tpl:EntryDate iso8601="1"}}</published>
-    <tpl:EntryIf republished="1">
-      <updated>{{tpl:EntryDate iso8601="1" upddt="1"}}</updated>
-    </tpl:EntryIf>
-    <tpl:EntryIf republished="0">
-      <updated>{{tpl:EntryDate iso8601="1"}}</updated>
-    </tpl:EntryIf>
-    <author><name>{{tpl:EntryAuthorCommonName encode_xml="1"}}</name></author>
-    <tpl:EntryIf has_category="1">
-    <dc:subject>{{tpl:EntryCategory encode_html="1"}}</dc:subject>
-    </tpl:EntryIf>
-    <tpl:EntryTags><dc:subject>{{tpl:TagID}}</dc:subject></tpl:EntryTags>
-
-    <content type="html">{{tpl:EntryExcerpt absolute_urls="1" encode_xml="1"}}
-    {{tpl:EntryContent absolute_urls="1" encode_xml="1"}}</content>
-
-    <tpl:Attachments>
-      <link rel="enclosure" href="{{tpl:AttachmentURL}}"
-      length="{{tpl:AttachmentSize full="1"}}" type="{{tpl:AttachmentMimeType}}" />
-    </tpl:Attachments>
-
-
-    <tpl:EntryIf comments_active="1">
-      <wfw:comment>{{tpl:EntryURL}}#comment-form</wfw:comment>
-      <wfw:commentRss>{{tpl:BlogFeedURL type="atom"}}/comments/{{tpl:EntryID}}</wfw:commentRss>
-    </tpl:EntryIf>
-  </entry>
-  </tpl:Entries>
-
-</feed>
Index: nc/public/default-templates/currywurst/category.html
===================================================================
--- inc/public/default-templates/currywurst/category.html	(revision 2603)
+++ 	(revision )
@@ -1,109 +1,0 @@
-<!DOCTYPE html>
-<html lang="{{tpl:BlogLanguage}}">
-<head>
-	<meta charset="UTF-8" />
-	<meta name="ROBOTS" content="{{tpl:BlogMetaRobots robots="NOINDEX"}}" />
-
-	<title>{{tpl:CategoryTitle encode_html="1"}} - {{tpl:BlogName encode_html="1"}}<tpl:PaginationIf start="0"> - {{tpl:lang page}} {{tpl:PaginationCurrent}}</tpl:PaginationIf></title>
-	<meta name="description" lang="{{tpl:BlogLanguage}}" content="{{tpl:CategoryDescription cut_string="180" remove_html="1"}}" />
-	<meta name="copyright" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
-	<meta name="author" content="{{tpl:BlogEditor encode_html="1"}}" />
-	<meta name="date" content="{{tpl:BlogUpdateDate iso8601="1"}}" />
-
-	<link rel="schema.dc" href="http://purl.org/dc/elements/1.1/" />
-	<meta property="dc.title" lang="{{tpl:BlogLanguage}}" content="{{tpl:CategoryTitle encode_html="1"}} - {{tpl:BlogName encode_html="1"}}<tpl:PaginationIf start="0"> - {{tpl:lang page}} {{tpl:PaginationCurrent}}</tpl:PaginationIf>" />
-	<meta property="dc.description" lang="{{tpl:BlogLanguage}}" content="{{tpl:CategoryDescription remove_html="1"}}" />
-	<meta property="dc.language" content="{{tpl:BlogLanguage}}" />
-	<meta property="dc.publisher" content="{{tpl:BlogEditor encode_html="1"}}" />
-	<meta property="dc.rights" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
-	<meta property="dc.date" content="{{tpl:BlogUpdateDate iso8601="1"}}" />
-	<meta property="dc.type" content="text" />
-	<meta property="dc.format" content="text/html" />
-
-	<link rel="top" href="{{tpl:BlogURL}}" title="{{tpl:lang Home}}" />
-	<link rel="contents" href="{{tpl:BlogArchiveURL}}" title="{{tpl:lang Archives}}" />
-
-	<tpl:Entries no_content="1">
-		<tpl:EntriesHeader>
-			<tpl:Pagination>
-				<tpl:PaginationIf end="0">
-					<link rel="prev" title="{{tpl:lang previous entries}}" href="{{tpl:PaginationURL offset="1"}}" />
-				</tpl:PaginationIf>
-
-				<tpl:PaginationIf start="0">
-					<link rel="next" title="{{tpl:lang next entries}}" href="{{tpl:PaginationURL offset="-1"}}" />
-				</tpl:PaginationIf>
-			</tpl:Pagination>
-		</tpl:EntriesHeader>
-
-		<link rel="chapter" href="{{tpl:EntryURL}}" title="{{tpl:EntryTitle encode_html="1"}}" />
-	</tpl:Entries>
-
-	<link rel="alternate" type="application/atom+xml" title="Atom 1.0" href="{{tpl:CategoryFeedURL type="atom"}}" />
-
-	{{tpl:include src="_head.html"}}
-</head>
-<body class="dc-category">
-	<div id="page">
-		{{tpl:include src="_top.html"}}
-
-		<div id="wrapper">
-
-			<div id="main" role="main">
-				<div id="content">
-
-					<div id="content-info">
-						<h2>
-							<tpl:CategoryParents>
-								<a href="{{tpl:CategoryURL}}">{{tpl:CategoryTitle encode_html="1"}}</a> &rsaquo;
-							</tpl:CategoryParents>
-							{{tpl:CategoryTitle encode_html="1"}}
-						</h2>
-						{{tpl:CategoryDescription}}
-
-						<tpl:CategoryIf has_entries="1">
-							<p class="feed-info">
-								<a type="application/atom+xml" href="{{tpl:CategoryFeedURL type="atom"}}"
-								 title="{{tpl:lang This category's entries Atom feed}}" class="feed">{{tpl:lang Entries feed}}</a>
-
-								<tpl:SysIf operator="or" comments_active="1" pings_active="1">
-									 - <a type="application/atom+xml" href="{{tpl:CategoryFeedURL type="atom"}}/comments"
-									 title="{{tpl:lang This category's comments Atom feed}}" class="feed">{{tpl:lang Comments feed}}</a>
-								</tpl:SysIf>
-							</p>
-						</tpl:CategoryIf>
-
-						<tpl:CategoryFirstChildren>
-							<tpl:CategoriesHeader>
-								<div id="subcategories">
-									<h3>{{tpl:lang Subcategories}}</h3>
-									<ul>
-							</tpl:CategoriesHeader>
-										<li class="post-cat"><a href="{{tpl:CategoryURL}}">{{tpl:CategoryTitle encode_html="1"}}</a></li>
-							<tpl:CategoriesFooter>
-									</ul>
-								</div>
-							</tpl:CategoriesFooter>
-						</tpl:CategoryFirstChildren>
-					</div>
-
-					<div class="content-inner">
-						<tpl:Entries>
-							{{tpl:include src="_entry-short.html"}}
-
-							<tpl:EntriesFooter>
-								{{tpl:include src="_pagination.html"}}
-							</tpl:EntriesFooter>
-						</tpl:Entries>
-					</div> <!-- End #content-inner -->
-				</div> <!-- End #content -->
-			</div> <!-- End #main -->
-
-			{{tpl:include src="_sidebar.html"}}
-
-		</div> <!-- End #wrapper -->
-
-		{{tpl:include src="_footer.html"}}
-	</div> <!-- End #page -->
-</body>
-</html>
Index: nc/public/default-templates/currywurst/home.html
===================================================================
--- inc/public/default-templates/currywurst/home.html	(revision 2603)
+++ 	(revision )
@@ -1,94 +1,0 @@
-<!DOCTYPE html>
-<html lang="{{tpl:BlogLanguage}}">
-<head>
-	<meta charset="UTF-8" />
-	<meta name="ROBOTS" content="{{tpl:BlogMetaRobots}}" />
-
-	<title>{{tpl:BlogName encode_html="1"}}<tpl:PaginationIf start="0"> - {{tpl:lang page}} {{tpl:PaginationCurrent}}</tpl:PaginationIf></title>
-	<meta name="description" lang="{{tpl:BlogLanguage}}" content="{{tpl:BlogDescription cut_string="180" encode_html="1"}}<tpl:PaginationIf start="0"> - {{tpl:lang page}} {{tpl:PaginationCurrent}}</tpl:PaginationIf>" />
-	<meta name="copyright" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
-	<meta name="author" content="{{tpl:BlogEditor encode_html="1"}}" />
-	<meta name="date" content="{{tpl:BlogUpdateDate iso8601="1"}}" />
-
-	<link rel="schema.dc" href="http://purl.org/dc/elements/1.1/" />
-	<meta property="dc.title" lang="{{tpl:BlogLanguage}}" content="{{tpl:BlogName encode_html="1"}}<tpl:PaginationIf start="0"> - {{tpl:lang page}} {{tpl:PaginationCurrent}}</tpl:PaginationIf>" />
-	<meta property="dc.description" lang="{{tpl:BlogLanguage}}" content="{{tpl:BlogDescription encode_html="1"}}" />
-	<meta property="dc.language" content="{{tpl:BlogLanguage}}" />
-	<meta property="dc.publisher" content="{{tpl:BlogEditor encode_html="1"}}" />
-	<meta property="dc.rights" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
-	<meta property="dc.date" content="{{tpl:BlogUpdateDate iso8601="1"}}" />
-	<meta property="dc.type" content="text" />
-	<meta property="dc.format" content="text/html" />
-
-	<link rel="contents" title="{{tpl:lang Archives}}" href="{{tpl:BlogArchiveURL}}" />
-	<tpl:Categories>
-		<link rel="section" href="{{tpl:CategoryURL}}" title="{{tpl:CategoryTitle encode_html="1"}}" />
-	</tpl:Categories>
-
-	<tpl:Entries no_content="1">
-		<tpl:EntriesHeader>
-			<tpl:Pagination>
-				<tpl:PaginationIf end="0">
-					<link rel="prev" title="{{tpl:lang previous entries}}" href="{{tpl:PaginationURL offset="1"}}" />
-				</tpl:PaginationIf>
-
-				<tpl:PaginationIf start="0">
-					<link rel="next" title="{{tpl:lang next entries}}" href="{{tpl:PaginationURL offset="-1"}}" />
-				</tpl:PaginationIf>
-			</tpl:Pagination>
-		</tpl:EntriesHeader>
-
-		<link rel="chapter" href="{{tpl:EntryURL}}" title="{{tpl:EntryTitle encode_html="1"}}" />
-	</tpl:Entries>
-
-	<link rel="alternate" type="application/atom+xml" title="Atom 1.0" href="{{tpl:BlogFeedURL type="atom"}}" />
-	<link rel="EditURI" type="application/rsd+xml" title="RSD" href="{{tpl:BlogRSDURL}}" />
-	<link rel="meta" type="application/xbel+xml" title="Blogroll" href="{{tpl:BlogrollXbelLink}}" />
-
-	{{tpl:include src="_head.html"}}
-</head>
-<body class="dc-home <tpl:SysIf current_mode="default">dc-home-first</tpl:SysIf>">
-	<div id="page">
-		{{tpl:include src="_top.html"}}
-
-		<div id="wrapper">
-
-			<div id="main" role="main">
-				<div id="content">
-
-					<tpl:Entries>
-
-						<!-- First page -->
-						<tpl:SysIf current_mode="default">
-							<tpl:LoopPosition start="1" length="1">
-								{{tpl:include src="_entry-full.html"}}
-							</tpl:LoopPosition>
-
-							<tpl:LoopPosition start="2">
-								{{tpl:include src="_entry-short.html"}}
-							</tpl:LoopPosition>
-						</tpl:SysIf>
-
-						<!-- Next pages -->
-						<tpl:SysIf current_mode="!default">
-							{{tpl:include src="_entry-short.html"}}
-						</tpl:SysIf>
-
-						<!-- Pagination -->
-						<tpl:EntriesFooter>
-							{{tpl:include src="_pagination.html"}}
-						</tpl:EntriesFooter>
-
-					</tpl:Entries>
-
-				</div> <!-- End #content -->
-			</div> <!-- End #main -->
-
-			{{tpl:include src="_sidebar.html"}}
-
-		</div> <!-- End #wrapper -->
-
-		{{tpl:include src="_footer.html"}}
-	</div> <!-- End #page -->
-</body>
-</html>
Index: nc/public/default-templates/currywurst/password-form.html
===================================================================
--- inc/public/default-templates/currywurst/password-form.html	(revision 2603)
+++ 	(revision )
@@ -1,40 +1,0 @@
-<!DOCTYPE html>
-<html lang="{{tpl:BlogLanguage}}">
-<head>
-  <meta charset="UTF-8" />
-  <meta name="ROBOTS" content="NOARCHIVE,NOINDEX,NOFOLLOW" />
-  <title>{{tpl:lang Password needed}} - {{tpl:BlogName encode_html="1"}}</title>
-
-  <style type="text/css">
-  body {
-  font: 0.8em Verdana,Arial,Geneva,sans-serif;
-  }
-
-  form {
-  display : block;
-  width : 500px;
-  margin : 0 auto;
-  padding : 1em;
-  background : #eee;
-  }
-
-  h2 { font : 140% Arial,Helvetica,sans-serif; margin : 0; }
-
-  label { font-weight : bold; }
-
-  input { border-width : 1px; }
-  </style>
-</head>
-
-<body>
-
-<form action="{{tpl:EntryURL}}" method="post" role="form">
-<h2>{{tpl:lang Password needed}}</h2>
-
-<p>{{tpl:lang You must give a password to access this area.}}</p>
-<p><label>{{tpl:lang Password:}} <input type="password" name="password" value="" /></label> <input type="submit" value="ok" /></p>
-
-</form>
-
-</body>
-</html>
Index: nc/public/default-templates/currywurst/post.html
===================================================================
--- inc/public/default-templates/currywurst/post.html	(revision 2603)
+++ 	(revision )
@@ -1,82 +1,0 @@
-<!DOCTYPE html>
-<html lang="{{tpl:BlogLanguage}}">
-<head>
-	<meta charset="UTF-8" />
-	<meta name="ROBOTS" content="{{tpl:BlogMetaRobots}}" />
-
-	<title>{{tpl:EntryTitle encode_html="1"}} - {{tpl:BlogName encode_html="1"}}</title>
-	<meta name="description" lang="{{tpl:EntryLang}}" content="{{tpl:EntryContent full="1" encode_html="1" remove_html="1" cut_string="180"}}" />
-	<meta name="copyright" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
-	<meta name="author" content="{{tpl:EntryAuthorCommonName encode_html="1"}}" />
-	<meta name="date" content="{{tpl:EntryDate iso8601="1"}}" />
-
-	<link rel="schema.dc" href="http://purl.org/dc/elements/1.1/" />
-	<meta property="dc.title" content="{{tpl:EntryTitle encode_html="1"}}" />
-	<meta property="dc.description" lang="{{tpl:EntryLang}}" content="{{tpl:EntryContent full="1" encode_html="1" remove_html="1" cut_string="180"}}" />
-	<meta property="dc.creator" content="{{tpl:EntryAuthorCommonName encode_html="1"}}" />
-	<meta property="dc.language" content="{{tpl:EntryLang}}" />
-	<meta property="dc.publisher" content="{{tpl:BlogEditor encode_html="1"}}" />
-	<meta property="dc.rights" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
-	<meta property="dc.date" content="{{tpl:EntryDate iso8601="1"}}" />
-	<meta property="dc.type" content="text" />
-	<meta property="dc.format" content="text/html" />
-
-	<link rel="top" href="{{tpl:BlogURL}}" title="{{tpl:lang Home}}" />
-	<link rel="contents" href="{{tpl:BlogArchiveURL}}" title="{{tpl:lang Archives}}" />
-
-	<tpl:EntryNext><link rel="next" href="{{tpl:EntryURL}}" title="{{tpl:EntryTitle encode_html="1"}}" /></tpl:EntryNext>
-	<tpl:EntryPrevious><link rel="prev" href="{{tpl:EntryURL}}" title="{{tpl:EntryTitle encode_html="1"}}" /></tpl:EntryPrevious>
-
-	<link rel="alternate" type="application/atom+xml" title="Atom 1.0" href="{{tpl:BlogFeedURL type="atom"}}" />
-
-	{{tpl:include src="_head.html"}}
-
-	<script type="text/javascript" src="{{tpl:BlogThemeURL}}/../default/js/post.js"></script>
-	<script type="text/javascript">
-		//<![CDATA[
-		var post_remember_str = '{{tpl:lang Remember me on this blog}}';
-		//]]>
-	</script>
-</head>
-<body class="dc-post">
-	<div id="page">
-		{{tpl:EntryPingData}}
-
-		{{tpl:include src="_top.html"}}
-
-		<div id="wrapper">
-
-			<div id="main" role="main">
-				<div id="content">
-
-					<p class="navlinks topnl">
-						<tpl:EntryPrevious><a href="{{tpl:EntryURL}}"
-						 title="{{tpl:EntryTitle encode_html="1"}}" class="prev">&#171; {{tpl:EntryTitle encode_html="1"
-						 cut_string="50"}}</a></tpl:EntryPrevious>
-						<tpl:EntryNext> <span>-</span> <a href="{{tpl:EntryURL}}"
-						 title="{{tpl:EntryTitle encode_html="1"}}" class="next">{{tpl:EntryTitle encode_html="1"
-						 cut_string="50"}} &#187;</a></tpl:EntryNext>
-					</p>
-
-					{{tpl:include src="_simple-entry.html"}}
-
-					<p class="navlinks">
-						<tpl:EntryPrevious><a href="{{tpl:EntryURL}}"
-						 title="{{tpl:EntryTitle encode_html="1"}}" class="prev">&#171; {{tpl:EntryTitle encode_html="1"
-						 cut_string="50"}}</a></tpl:EntryPrevious>
-						<tpl:EntryNext> <span>-</span> <a href="{{tpl:EntryURL}}"
-						 title="{{tpl:EntryTitle encode_html="1"}}" class="next">{{tpl:EntryTitle encode_html="1"
-						 cut_string="50"}} &#187;</a></tpl:EntryNext>
-					</p>
-
-				</div>
-			</div> <!-- End #main -->
-
-			{{tpl:include src="_sidebar.html"}}
-
-		</div> <!-- End #wrapper -->
-
-		{{tpl:include src="_footer.html"}}
-	</div> <!-- End #page -->
-</body>
-</html>
Index: nc/public/default-templates/currywurst/rss2-comments.xml
===================================================================
--- inc/public/default-templates/currywurst/rss2-comments.xml	(revision 2600)
+++ 	(revision )
@@ -1,48 +1,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<?xml-stylesheet title="XSL formatting" type="text/xsl" href="{{tpl:BlogURL}}feed/rss2/xslt" ?>
-<rss version="2.0"
-  xmlns:dc="http://purl.org/dc/elements/1.1/"
-  xmlns:content="http://purl.org/rss/1.0/modules/content/"
-  xmlns:atom="http://www.w3.org/2005/Atom">
-<channel>
-  <title>{{tpl:BlogName encode_xml="1"}}{{tpl:SysFeedSubtitle encode_xml="1"}}
-  - {{tpl:lang Comments}}</title>
-  <link>{{tpl:BlogURL}}</link>
-  <atom:link href="{{tpl:SysSelfURI}}" rel="self" type="application/rss+xml"/>
-  <description>{{tpl:BlogDescription encode_xml="1"}}</description>
-  <language>{{tpl:BlogLanguage}}</language>
-  <pubDate>{{tpl:BlogUpdateDate rfc822="1"}}</pubDate>
-  <copyright>{{tpl:BlogCopyrightNotice encode_xml="1"}}</copyright>
-  <docs>http://blogs.law.harvard.edu/tech/rss</docs>
-  <generator>Dotclear</generator>
-
-  <tpl:Comments order="desc" with_pings="1">
-
-  <tpl:CommentIf is_ping="1">
-  <item>
-    <title>[ping] {{tpl:PingEntryTitle encode_xml="1"}} - {{tpl:PingBlogName encode_xml="1"}}</title>
-    <link>{{tpl:PingPostURL encode_xml="1"}}#c{{tpl:PingID}}</link>
-    <guid isPermaLink="false">{{tpl:PingFeedID}}</guid>
-    <pubDate>{{tpl:PingDate rfc822="1"}}</pubDate>
-    <dc:creator>{{tpl:PingBlogName encode_xml="1"}}</dc:creator>
-
-    <description>&lt;p&gt;&lt;a href="{{tpl:PingAuthorURL encode_xml="1"}}"&gt;{{tpl:PingTitle encode_xml="1"}}&lt;/a&gt;&lt;/p&gt;
-    {{tpl:PingContent encode_xml="1"}}</description>
-  </item>
-  </tpl:CommentIf>
-
-  <tpl:CommentIf is_ping="0">
-  <item>
-    <title>{{tpl:CommentEntryTitle encode_xml="1"}} - {{tpl:CommentAuthor encode_xml="1"}}</title>
-    <link>{{tpl:CommentPostURL encode_xml="1"}}#c{{tpl:CommentID}}</link>
-    <guid isPermaLink="false">{{tpl:CommentFeedID}}</guid>
-    <pubDate>{{tpl:CommentDate rfc822="1"}}</pubDate>
-    <dc:creator>{{tpl:CommentAuthor encode_xml="1"}}</dc:creator>
-
-    <description>{{tpl:CommentContent absolute_urls="1" encode_xml="1"}}</description>
-  </item>
-  </tpl:CommentIf>
-  </tpl:Comments>
-
-</channel>
-</rss>
Index: nc/public/default-templates/currywurst/rss2.xml
===================================================================
--- inc/public/default-templates/currywurst/rss2.xml	(revision 2600)
+++ 	(revision )
@@ -1,49 +1,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<?xml-stylesheet title="XSL formatting" type="text/xsl" href="{{tpl:BlogURL}}feed/rss2/xslt" ?>
-<rss version="2.0"
-  xmlns:dc="http://purl.org/dc/elements/1.1/"
-  xmlns:wfw="http://wellformedweb.org/CommentAPI/"
-  xmlns:content="http://purl.org/rss/1.0/modules/content/"
-  xmlns:atom="http://www.w3.org/2005/Atom">
-<channel>
-  <title>{{tpl:BlogName encode_xml="1"}}{{tpl:SysFeedSubtitle encode_xml="1"}}</title>
-  <link>{{tpl:BlogURL}}</link>
-  <atom:link href="{{tpl:SysSelfURI}}" rel="self" type="application/rss+xml"/>
-  <description>{{tpl:BlogDescription encode_xml="1"}}</description>
-  <language>{{tpl:BlogLanguage}}</language>
-  <pubDate>{{tpl:BlogUpdateDate rfc822="1"}}</pubDate>
-  <copyright>{{tpl:BlogCopyrightNotice encode_xml="1"}}</copyright>
-  <docs>http://blogs.law.harvard.edu/tech/rss</docs>
-  <generator>Dotclear</generator>
-
-  <tpl:Entries>
-
-  <item>
-    <title>{{tpl:EntryTitle encode_xml="1"}}</title>
-    <link>{{tpl:EntryURL}}</link>
-    <guid isPermaLink="false">{{tpl:EntryFeedID}}</guid>
-    <pubDate>{{tpl:EntryDate rfc822="1"}}</pubDate>
-    <dc:creator>{{tpl:EntryAuthorCommonName encode_xml="1"}}</dc:creator>
-    <tpl:EntryIf has_category="1">
-    <category>{{tpl:EntryCategory encode_html="1"}}</category>
-    </tpl:EntryIf>
-    <tpl:EntryTags><category>{{tpl:TagID}}</category></tpl:EntryTags>
-
-    <description>{{tpl:EntryExcerpt absolute_urls="1" encode_xml="1"}}
-    {{tpl:EntryContent absolute_urls="1" encode_xml="1"}}</description>
-
-    <tpl:Attachments>
-      <enclosure url="{{tpl:AttachmentURL}}"
-      length="{{tpl:AttachmentSize full="1"}}" type="{{tpl:AttachmentMimeType}}" />
-    </tpl:Attachments>
-
-    <tpl:EntryIf comments_active="1">
-      <comments>{{tpl:EntryURL}}#comment-form</comments>
-      <wfw:comment>{{tpl:EntryURL}}#comment-form</wfw:comment>
-      <wfw:commentRss>{{tpl:BlogFeedURL}}/comments/{{tpl:EntryID}}</wfw:commentRss>
-    </tpl:EntryIf>
-  </item>
-  </tpl:Entries>
-
-</channel>
-</rss>
Index: nc/public/default-templates/currywurst/rss2.xsl
===================================================================
--- inc/public/default-templates/currywurst/rss2.xsl	(revision 2600)
+++ 	(revision )
@@ -1,120 +1,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xsl:stylesheet version="1.0"
-xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
-xmlns:content="http://purl.org/rss/1.0/modules/content/"
-xmlns="http://www.w3.org/1999/xhtml">
-
-<xsl:output method="html"/>
-
-<xsl:template match="/">
-<html>
-  <head>
-    <title>{{tpl:lang Subscribe to}} <xsl:value-of select="/rss/channel/title"/></title>
-    <style type="text/css">
-    <![CDATA[
-    body {
-      font: 80% Verdana,Arial,sans-serif;
-      margin: 20px 0;
-      padding: 0 0;
-      background: #fff;
-      color: #000;
-    }
-    a { color: #039; }
-    h1, h2 { font-family: Arial,sans-serif; }
-    h1 { font-size: 160%; margin: 0; }
-    h2 { font-size: 140%; font-weight: bold; margin: 0.5em 0 0.2em 0; }
-    h2 a { text-decoration: none; }
-    p { margin: 0 0 0.5em 0; }
-    #page {
-      margin: 0 80px;
-    }
-    #top {
-      background: #036;
-      padding : 1em;
-      color: #fff;
-    }
-    #top a {
-      color: #fff;
-      text-decoration: none;
-    }
-    #what {
-      padding: 1em;
-      background: #eee;
-      border-bottom: 1px solid #000;
-      font-size: 80%;
-    }
-    #what p {
-      margin: 0 0 0.5em 0;
-    }
-    #footer {
-      border-top: 1px solid #000;
-    }
-    #items {
-      background: #fff;
-      color: inherit;
-    }
-    #items div {
-      margin: 0 0 1em 0;
-    }
-    ]]>
-    </style>
-    <script type="text/javascript"><![CDATA[
-    window.onload = function() {
-      document.getElementById('feedurl').value = window.location.href;
-
-      // Ugly but works ;)
-      var c = document.getElementsByTagName('div');
-      var t = '';
-      for (var i=0; c.length-i != 0; i++) {
-        if (c[i].className == 'item-content') {
-          if (c[i].textContent) {
-            t = c[i].textContent;
-          } else if (c[i].innerText) {
-            t = c[i].innerText;
-          } else {
-            t = '';
-          }
-
-          if (t) { c[i].innerHTML = t; }
-        }
-      }
-    };
-    ]]></script>
-  </head>
-  <body>
-    <div id="page">
-      <div id="top">
-        <h1><a href="{/rss/channel/link}"><xsl:value-of select="/rss/channel/title"/></a></h1>
-        <p><xsl:value-of select="/rss/channel/description"/></p>
-      </div>
-      <div id="what">
-      <h3>{{tpl:lang What is an RSS feed?}}</h3>
-      <p>{{tpl:lang RSS feed is a free blog summary. It provides content
-      (either posts or comments) or  summaries of content, together with links
-      to the full versions, and other metadata. The last published items may
-      then be read by your favorite RSS
-      <a href="http://en.wikipedia.org/wiki/Aggregator">aggregator</a>.}}</p>
-      <h3>{{tpl:lang Subscribe}}</h3>
-      <p>{{tpl:lang Simply copy the following URL into your aggregator:}}</p>
-      <p><input type="text" size="60" value="" id="feedurl" /></p>
-      </div>
-      <div id="items">
-        <xsl:apply-templates select="//item"/>
-      </div>
-      <div id="footer">
-        <p><xsl:value-of select="/rss/channel/copyright"/></p>
-      </div>
-    </div>
-  </body>
-</html>
-</xsl:template>
-
-<!-- Item template -->
-<xsl:template match="item">
-  <div>
-    <h2><a href="{link}"><xsl:value-of select="title"/></a></h2>
-    <div class="item-content"><xsl:value-of select="description" /></div>
-  </div>
-</xsl:template>
-
-</xsl:stylesheet>
Index: nc/public/default-templates/currywurst/search.html
===================================================================
--- inc/public/default-templates/currywurst/search.html	(revision 2603)
+++ 	(revision )
@@ -1,96 +1,0 @@
-<!DOCTYPE html>
-<html lang="{{tpl:BlogLanguage}}">
-<head>
-	<meta charset="UTF-8" />
-	<meta name="ROBOTS" content="{{tpl:BlogMetaRobots robots="NOINDEX,NOARCHIVE"}}" />
-
-	<title>{{tpl:lang Search}} - {{tpl:SysSearchString encode_html="1"}} - {{tpl:BlogName encode_html="1"}}<tpl:PaginationIf start="0"> - {{tpl:lang page}} {{tpl:PaginationCurrent}}</tpl:PaginationIf></title>
-	<meta name="copyright" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
-	<meta name="author" content="{{tpl:BlogEditor encode_html="1"}}" />
-	<meta name="date" content="{{tpl:BlogUpdateDate iso8601="1"}}" />
-
-	<link rel="schema.dc" href="http://purl.org/dc/elements/1.1/" />
-	<meta property="dc.title" lang="{{tpl:BlogLanguage}}" content="{{tpl:lang Search}} - {{tpl:SysSearchString encode_html="1"}} - {{tpl:BlogName encode_html="1"}}<tpl:PaginationIf start="0"> - {{tpl:lang page}} {{tpl:PaginationCurrent}}</tpl:PaginationIf>" />
-	<meta property="dc.language" content="{{tpl:BlogLanguage}}" />
-	<meta property="dc.publisher" content="{{tpl:BlogEditor encode_html="1"}}" />
-	<meta property="dc.rights" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
-	<meta property="dc.date" content="{{tpl:BlogUpdateDate iso8601="1"}}" />
-	<meta property="dc.type" content="text" />
-	<meta property="dc.format" content="text/html" />
-
-	<link rel="top" href="{{tpl:BlogURL}}" title="{{tpl:lang Home}}" />
-	<link rel="contents" href="{{tpl:BlogArchiveURL}}" title="{{tpl:lang Archives}}" />
-
-	<tpl:Entries no_content="1">
-		<tpl:EntriesHeader>
-			<tpl:Pagination>
-				<tpl:PaginationIf end="0">
-					<link rel="prev" title="{{tpl:lang previous entries}}" href="{{tpl:PaginationURL offset="1"}}" />
-				</tpl:PaginationIf>
-
-				<tpl:PaginationIf start="0">
-					<link rel="next" title="{{tpl:lang next entries}}" href="{{tpl:PaginationURL offset="-1"}}" />
-				</tpl:PaginationIf>
-			</tpl:Pagination>
-		</tpl:EntriesHeader>
-
-		<link rel="chapter" href="{{tpl:EntryURL}}" title="{{tpl:EntryTitle encode_html="1"}}" />
-	</tpl:Entries>
-
-	<link rel="meta" type="application/xbel+xml" title="Blogroll" href="{{tpl:BlogrollXbelLink}}" />
-
-	{{tpl:include src="_head.html"}}
-</head>
-<body class="dc-search">
-	<div id="page">
-		{{tpl:include src="_top.html"}}
-
-		<div id="wrapper">
-
-			<div id="main" role="main">
-				<div id="content">
-
-					<div id="content-info">
-						<h2>{{tpl:lang Search}}</h2>
-						<tpl:SysIf search_count="==0">
-							<p>{{tpl:SysSearchString encode_html="1" string="Your search for <em>%1$s</em> returned no result."}}</p>
-						</tpl:SysIf>
-						<tpl:SysIf search_count="==1">
-							<p>{{tpl:SysSearchString encode_html="1" string="Your search for <em>%1$s</em> returned <strong>%2$s</strong> result."}}</p>
-						</tpl:SysIf>
-						<tpl:SysIf search_count="&gt;1">
-							<p>{{tpl:SysSearchString encode_html="1" string="Your search for <em>%1$s</em> returned <strong>%2$s</strong> results."}}</p>
-						</tpl:SysIf>
-					</div>
-
-					<div class="content-inner">
-						<tpl:Entries type="post,page">
-
-							{{tpl:include src="_entry-short.html"}}
-
-							<tpl:EntriesFooter>
-								<tpl:Pagination>
-									<p class="pagination">
-										<tpl:PaginationIf end="0">
-											<a href="{{tpl:PaginationURL offset="+1"}}" class="prev">&#171; {{tpl:lang previous entries}}</a> -
-										</tpl:PaginationIf>
-										 {{tpl:lang page}} {{tpl:PaginationCurrent}} {{tpl:lang of}} {{tpl:PaginationCounter}}
-										<tpl:PaginationIf start="0">
-											 - <a href="{{tpl:PaginationURL offset="-1"}}" class="next">{{tpl:lang next entries}} &#187;</a>
-										</tpl:PaginationIf>
-									</p>
-								</tpl:Pagination>
-							</tpl:EntriesFooter>
-						</tpl:Entries>
-					</div> <!-- End #content-inner -->
-				</div> <!-- End #content -->
-			</div> <!-- End #main -->
-
-			{{tpl:include src="_sidebar.html"}}
-
-		</div> <!-- End #wrapper -->
-
-		{{tpl:include src="_footer.html"}}
-	</div> <!-- End #page -->
-</body>
-</html>
Index: nc/public/default-templates/currywurst/user_head.html
===================================================================
--- inc/public/default-templates/currywurst/user_head.html	(revision 2600)
+++ 	(revision )
@@ -1,1 +1,0 @@
-<!-- # This template is included at the end of _head.html template -->
Index: inc/public/default-templates/home.html
===================================================================
--- inc/public/default-templates/home.html	(revision 2566)
+++ inc/public/default-templates/home.html	(revision 2566)
@@ -0,0 +1,144 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="{{tpl:BlogLanguage}}" lang="{{tpl:BlogLanguage}}">
+<head>
+  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+  <meta name="ROBOTS" content="{{tpl:BlogMetaRobots}}" />
+
+  <title>{{tpl:BlogName encode_html="1"}}<tpl:PaginationIf start="0"> - {{tpl:lang page}} {{tpl:PaginationCurrent}}</tpl:PaginationIf></title>
+  <meta name="description" lang="{{tpl:BlogLanguage}}" content="{{tpl:BlogDescription cut_string="180" encode_html="1"}}<tpl:PaginationIf start="0"> - {{tpl:lang page}} {{tpl:PaginationCurrent}}</tpl:PaginationIf>" />
+  <meta name="copyright" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
+  <meta name="author" content="{{tpl:BlogEditor encode_html="1"}}" />
+  <meta name="date" scheme="W3CDTF" content="{{tpl:BlogUpdateDate iso8601="1"}}" />
+
+  <link rel="schema.dc" href="http://purl.org/dc/elements/1.1/" />
+  <meta name="dc.title" lang="{{tpl:BlogLanguage}}" content="{{tpl:BlogName encode_html="1"}}<tpl:PaginationIf start="0"> - {{tpl:lang page}} {{tpl:PaginationCurrent}}</tpl:PaginationIf>" />
+  <meta name="dc.description" lang="{{tpl:BlogLanguage}}" content="{{tpl:BlogDescription encode_html="1"}}" />
+  <meta name="dc.language" content="{{tpl:BlogLanguage}}" />
+  <meta name="dc.publisher" content="{{tpl:BlogEditor encode_html="1"}}" />
+  <meta name="dc.rights" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
+  <meta name="dc.date" scheme="W3CDTF" content="{{tpl:BlogUpdateDate iso8601="1"}}" />
+  <meta name="dc.type" content="text" />
+  <meta name="dc.format" content="text/html" />
+
+  <link rel="contents" title="{{tpl:lang Archives}}" href="{{tpl:BlogArchiveURL}}" />
+  <tpl:Categories>
+  <link rel="section" href="{{tpl:CategoryURL}}" title="{{tpl:CategoryTitle encode_html="1"}}" />
+  </tpl:Categories>
+
+  <tpl:Entries no_content="1">
+    <tpl:EntriesHeader>
+      <tpl:Pagination>
+        <tpl:PaginationIf end="0">
+        <link rel="prev" title="{{tpl:lang previous entries}}" href="{{tpl:PaginationURL offset="1"}}" />
+        </tpl:PaginationIf>
+
+        <tpl:PaginationIf start="0">
+        <link rel="next" title="{{tpl:lang next entries}}" href="{{tpl:PaginationURL offset="-1"}}" />
+        </tpl:PaginationIf>
+      </tpl:Pagination>
+    </tpl:EntriesHeader>
+
+    <link rel="chapter" href="{{tpl:EntryURL}}" title="{{tpl:EntryTitle encode_html="1"}}" />
+  </tpl:Entries>
+
+  <link rel="alternate" type="application/atom+xml" title="Atom 1.0" href="{{tpl:BlogFeedURL type="atom"}}" />
+  <link rel="EditURI" type="application/rsd+xml" title="RSD" href="{{tpl:BlogRSDURL}}" />
+  <link rel="meta" type="application/xbel+xml" title="Blogroll" href="{{tpl:BlogrollXbelLink}}" />
+
+  {{tpl:include src="_head.html"}}
+</head>
+
+<body class="dc-home">
+<div id="page">
+{{tpl:include src="_top.html"}}
+
+<div id="wrapper">
+
+<div id="main">
+  <div id="content">
+  <tpl:Entries>
+    <div id="p{{tpl:EntryID}}" class="post {{tpl:EntryIfOdd}} {{tpl:EntryIfFirst}}" lang="{{tpl:EntryLang}}" xml:lang="{{tpl:EntryLang}}">
+    <!-- # New day date -->
+    <tpl:DateHeader><p class="day-date">{{tpl:EntryDate}}</p></tpl:DateHeader>
+
+    <h2 class="post-title"><a
+    href="{{tpl:EntryURL}}">{{tpl:EntryTitle encode_html="1"}}</a></h2>
+
+    <p class="post-info">{{tpl:lang By}} {{tpl:EntryAuthorLink}}
+    {{tpl:lang on}} {{tpl:EntryDate}}, {{tpl:EntryTime}}
+    <tpl:EntryIf has_category="1">
+    - <a href="{{tpl:EntryCategoryURL}}">{{tpl:EntryCategory encode_html="1"}}</a>
+    </tpl:EntryIf>
+    </p>
+
+    <tpl:EntryTags>
+    <tpl:TagsHeader><ul class="post-tags"></tpl:TagsHeader>
+    <li><a href="{{tpl:TagURL}}">{{tpl:TagID}}</a></li>
+    <tpl:TagsFooter></ul></tpl:TagsFooter>
+    </tpl:EntryTags>
+
+    <!-- # --BEHAVIOR-- publicEntryBeforeContent -->
+    {{tpl:SysBehavior behavior="publicEntryBeforeContent"}}
+
+    <!-- # Entry with an excerpt -->
+    <tpl:EntryIf extended="1">
+      <div class="post-content">{{tpl:EntryExcerpt}}</div>
+      <p class="read-it"><a href="{{tpl:EntryURL}}"
+      title="{{tpl:lang Continue reading}} {{tpl:EntryTitle encode_html="1"}}">{{tpl:lang Continue
+      reading}}</a>...</p>
+    </tpl:EntryIf>
+
+    <!-- # Entry without excerpt -->
+    <tpl:EntryIf extended="0">
+      <div class="post-content">{{tpl:EntryContent}}</div>
+    </tpl:EntryIf>
+
+    <!-- # --BEHAVIOR-- publicEntryAfterContent -->
+    {{tpl:SysBehavior behavior="publicEntryAfterContent"}}
+
+    <!-- # Number of comments, trackbacks and attachments -->
+    <tpl:EntryIf operator="or" show_comments="1" show_pings="1" has_attachment="1">
+      <p class="post-info-co">
+    </tpl:EntryIf>
+    <tpl:EntryIf show_comments="1">
+      <a href="{{tpl:EntryURL}}#comments" class="comment_count">{{tpl:EntryCommentCount}}</a>
+    </tpl:EntryIf>
+    <tpl:EntryIf show_pings="1">
+      <a href="{{tpl:EntryURL}}#pings" class="ping_count">{{tpl:EntryPingCount}}</a></tpl:EntryIf>
+    <tpl:EntryIf has_attachment="1">
+      <a href="{{tpl:EntryURL}}#attachments" class="attach_count">{{tpl:EntryAttachmentCount}}</a></tpl:EntryIf>
+    <tpl:EntryIf operator="or" show_comments="1" show_pings="1" has_attachment="1">
+      </p>
+    </tpl:EntryIf>
+    </div>
+
+    <tpl:EntriesFooter>
+      <tpl:Pagination>
+        <p class="pagination"><tpl:PaginationIf end="0"><a href="{{tpl:PaginationURL offset="+1"}}" class="prev">&#171;
+        {{tpl:lang previous entries}}</a> - </tpl:PaginationIf>
+        {{tpl:lang page}} {{tpl:PaginationCurrent}} {{tpl:lang of}} {{tpl:PaginationCounter}}
+        <tpl:PaginationIf start="0"> - <a href="{{tpl:PaginationURL offset="-1"}}" class="next">{{tpl:lang next entries}}
+        &#187;</a></tpl:PaginationIf></p>
+      </tpl:Pagination>
+    </tpl:EntriesFooter>
+  </tpl:Entries>
+  </div>
+</div> <!-- End #main -->
+
+<div id="sidebar">
+  <div id="blognav">
+    {{tpl:Widgets type="nav"}}
+  </div> <!-- End #blognav -->
+
+  <div id="blogextra">
+    {{tpl:Widgets type="extra"}}
+  </div> <!-- End #blogextra -->
+</div>
+
+</div> <!-- End #wrapper -->
+
+{{tpl:include src="_footer.html"}}
+</div> <!-- End #page -->
+</body>
+</html>
Index: nc/public/default-templates/mustek/404.html
===================================================================
--- inc/public/default-templates/mustek/404.html	(revision 2603)
+++ 	(revision )
@@ -1,61 +1,0 @@
-<!DOCTYPE html>
-<html lang="{{tpl:BlogLanguage}}">
-<head>
-  <meta charset="UTF-8" />
-  <meta name="ROBOTS" content="{{tpl:BlogMetaRobots robots="NOINDEX,NOARCHIVE"}}" />
-
-  <title>{{tpl:lang Document not found}} - {{tpl:BlogName encode_html="1"}}</title>
-  <meta name="copyright" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
-  <meta name="author" content="{{tpl:BlogEditor encode_html="1"}}" />
-
-  <link rel="schema.dc" href="http://purl.org/dc/elements/1.1/" />
-  <meta property="dc.title" lang="{{tpl:BlogLanguage}}" content="{{tpl:lang Document not found}} - {{tpl:BlogName encode_html="1"}}" />
-  <meta property="dc.language" content="{{tpl:BlogLanguage}}" />
-  <meta property="dc.publisher" content="{{tpl:BlogEditor encode_html="1"}}" />
-  <meta property="dc.rights" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
-  <meta property="dc.type" content="text" />
-  <meta property="dc.format" content="text/html" />
-
-  <link rel="top" href="{{tpl:BlogURL}}" title="{{tpl:lang Home}}" />
-  <link rel="contents" title="{{tpl:lang Archives}}" href="{{tpl:BlogArchiveURL}}" />
-  <link rel="alternate" type="application/atom+xml" title="Atom 1.0" href="{{tpl:BlogFeedURL type="atom"}}" />
-
-  {{tpl:include src="_head.html"}}
-</head>
-
-<body class="dc-404">
-<div id="page">
-{{tpl:include src="_top.html"}}
-
-<div id="wrapper">
-
-<div id="main" role="main">
-  <div id="content">
-
-  <div id="content-info">
-    <h2>{{tpl:lang Document not found}}</h2>
-  </div>
-
-  <div class="content-inner">
-    <p>{{tpl:lang The document you are looking for does not exist.}}</p>
-  </div>
-
-  </div>
-</div>
-
-<div id="sidebar" role="complementary">
-  <div id="blognav">
-    {{tpl:Widgets type="nav"}}
-  </div> <!-- End #blognav -->
-
-  <div id="blogextra">
-    {{tpl:Widgets type="extra"}}
-  </div> <!-- End #blogextra -->
-</div>
-
-</div> <!-- End #wrapper -->
-
-{{tpl:include src="_footer.html"}}
-</div> <!-- End #page -->
-</body>
-</html>
Index: nc/public/default-templates/mustek/_flv_player.html
===================================================================
--- inc/public/default-templates/mustek/_flv_player.html	(revision 2599)
+++ 	(revision )
@@ -1,8 +1,0 @@
-<object type="application/x-shockwave-flash" data="{{tpl:BlogQmarkURL}}pf=player_flv.swf"
-width="400" height="300">
-<param name="movie" value="{{tpl:BlogQmarkURL}}pf=player_flv.swf" />
-<param name="wmode" value="transparent" />
-<param name="allowFullScreen" value="true" />
-<param name="FlashVars" value="flv={{tpl:MediaURL}}&amp;width=400&amp;height=300&amp;margin=1&amp;showfullscreen=1&amp;showvolume=1&amp;showtime=1" />
-{{tpl:lang Embedded Audio Player}}
-</object>
Index: nc/public/default-templates/mustek/_footer.html
===================================================================
--- inc/public/default-templates/mustek/_footer.html	(revision 2603)
+++ 	(revision )
@@ -1,5 +1,0 @@
-<div id="footer" role="contentinfo">
-  <p>{{tpl:SysPoweredBy}}</p>
-</div>
-
-{{tpl:SysBehavior behavior="publicFooterContent"}}
Index: nc/public/default-templates/mustek/_head.html
===================================================================
--- inc/public/default-templates/mustek/_head.html	(revision 2599)
+++ 	(revision )
@@ -1,8 +1,0 @@
-<link rel="stylesheet" type="text/css" href="{{tpl:BlogThemeURL}}/style.css" media="screen" />
-<link rel="stylesheet" type="text/css" href="{{tpl:BlogThemeURL}}/../default/print.css" media="print" />
-
-<script type="text/javascript" src="{{tpl:BlogThemeURL}}/../default/js/jquery.js"></script>
-<script type="text/javascript" src="{{tpl:BlogThemeURL}}/../default/js/jquery.cookie.js"></script>
-
-{{tpl:include src="user_head.html"}}
-{{tpl:SysBehavior behavior="publicHeadContent"}}
Index: nc/public/default-templates/mustek/_mp3_player.html
===================================================================
--- inc/public/default-templates/mustek/_mp3_player.html	(revision 2599)
+++ 	(revision )
@@ -1,6 +1,0 @@
-<object type="application/x-shockwave-flash" data="{{tpl:BlogQmarkURL}}pf=player_mp3.swf" width="200" height="20">
-<param name="movie" value="{{tpl:BlogQmarkURL}}pf=player_mp3.swf" />
-<param name="wmode" value="transparent" />
-<param name="FlashVars" value="mp3={{tpl:MediaURL}}&amp;showvolume=1&amp;loadingcolor=ff9900&amp;bgcolor1=eeeeee&amp;bgcolor2=cccccc&amp;buttoncolor=0066cc&amp;buttonovercolor=ff9900&amp;slidercolor1=cccccc&amp;slidercolor2=999999&amp;sliderovercolor=0066cc" />
-{{tpl:lang Embedded Audio Player}}
-</object>
Index: nc/public/default-templates/mustek/_top.html
===================================================================
--- inc/public/default-templates/mustek/_top.html	(revision 2603)
+++ 	(revision )
@@ -1,10 +1,0 @@
-<div id="top" role="banner">
-  <h1><span><a href="{{tpl:BlogURL}}">{{tpl:BlogName encode_html="1"}}</a></span></h1>
-
-  <!-- # --BEHAVIOR-- publicTopAfterContent -->
-  {{tpl:SysBehavior behavior="publicTopAfterContent"}}
-</div>
-
-<p id="prelude" role="navigation"><a href="#main">{{tpl:lang To content}}</a> |
-<a href="#blognav">{{tpl:lang To menu}}</a> |
-<a href="#search">{{tpl:lang To search}}</a></p>
Index: nc/public/default-templates/mustek/archive.html
===================================================================
--- inc/public/default-templates/mustek/archive.html	(revision 2603)
+++ 	(revision )
@@ -1,78 +1,0 @@
-<!DOCTYPE html>
-<html lang="{{tpl:BlogLanguage}}">
-<head>
-  <meta charset="UTF-8" />
-  <meta name="ROBOTS" content="{{tpl:BlogMetaRobots}}" />
-
-  <title>{{tpl:lang Archives}} - {{tpl:BlogName encode_html="1"}}</title>
-  <meta name="copyright" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
-  <meta name="author" content="{{tpl:BlogEditor encode_html="1"}}" />
-  <meta name="date" content="{{tpl:BlogUpdateDate iso8601="1"}}" />
-
-  <link rel="schema.dc" href="http://purl.org/dc/elements/1.1/" />
-  <meta property="dc.title" lang="{{tpl:BlogLanguage}}" content="{{tpl:lang Archives}} - {{tpl:BlogName encode_html="1"}}" />
-  <meta property="dc.language" content="{{tpl:BlogLanguage}}" />
-  <meta property="dc.publisher" content="{{tpl:BlogEditor encode_html="1"}}" />
-  <meta property="dc.rights" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
-  <meta property="dc.date" content="{{tpl:BlogUpdateDate iso8601="1"}}" />
-  <meta property="dc.type" content="text" />
-  <meta property="dc.format" content="text/html" />
-
-  <link rel="top" href="{{tpl:BlogURL}}" title="{{tpl:lang Home}}" />
-
-  <tpl:Archives>
-    <link rel="chapter" href="{{tpl:ArchiveURL}}" title="{{tpl:ArchiveDate encode_html="1"}}" />
-  </tpl:Archives>
-
-  <link rel="alternate" type="application/atom+xml" title="Atom 1.0" href="{{tpl:BlogFeedURL type="atom"}}" />
-
-  {{tpl:include src="_head.html"}}
-</head>
-
-<body class="dc-archive">
-<div id="page">
-{{tpl:include src="_top.html"}}
-
-<div id="wrapper">
-
-<div id="main" role="main">
-  <div id="content">
-
-  <div id="content-info">
-    <h2>{{tpl:lang Archives}}</h2>
-  </div>
-
-  <div class="content-inner">
-  <tpl:Archives>
-    <tpl:ArchivesYearHeader>
-      <h3>{{tpl:ArchiveDate format="%Y"}}</h3>
-      <ul>
-    </tpl:ArchivesYearHeader>
-      <li><a href="{{tpl:ArchiveURL}}"
-      title="{{tpl:ArchiveDate encode_html="1"}}">{{tpl:ArchiveDate encode_html="1" format="%B"}}</a>
-      ({{tpl:ArchiveEntriesCount}})</li>
-    <tpl:ArchivesYearFooter>
-      </ul>
-    </tpl:ArchivesYearFooter>
-  </tpl:Archives>
-  </div>
-
-  </div>
-</div> <!-- End #main -->
-
-<div id="sidebar" role="complementary">
-  <div id="blognav">
-    {{tpl:Widgets type="nav"}}
-  </div> <!-- End #blognav -->
-
-  <div id="blogextra">
-    {{tpl:Widgets type="extra"}}
-  </div> <!-- End #blogextra -->
-</div>
-
-</div> <!-- End #wrapper -->
-
-{{tpl:include src="_footer.html"}}
-</div> <!-- End #page -->
-</body>
-</html>
Index: nc/public/default-templates/mustek/archive_month.html
===================================================================
--- inc/public/default-templates/mustek/archive_month.html	(revision 2604)
+++ 	(revision )
@@ -1,95 +1,0 @@
-<!DOCTYPE html>
-<html lang="{{tpl:BlogLanguage}}">
-<head>
-  <meta charset="UTF-8" />
-  <meta name="ROBOTS" content="{{tpl:BlogMetaRobots robots="NOINDEX"}}" />
-
-  <title>{{tpl:lang Archives}} - {{tpl:ArchiveDate}} - {{tpl:BlogName encode_html="1"}}</title>
-  <meta name="copyright" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
-  <meta name="author" content="{{tpl:BlogEditor encode_html="1"}}" />
-  <meta name="date" content="{{tpl:BlogUpdateDate iso8601="1"}}" />
-
-  <link rel="schema.dc" href="http://purl.org/dc/elements/1.1/" />
-  <meta property="dc.title" lang="{{tpl:BlogLanguage}}" content="{{tpl:lang Archives}} - {{tpl:ArchiveDate}} - {{tpl:BlogName encode_html="1"}}" />
-  <meta property="dc.language" content="{{tpl:BlogLanguage}}" />
-  <meta property="dc.publisher" content="{{tpl:BlogEditor encode_html="1"}}" />
-  <meta property="dc.rights" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
-  <meta property="dc.date" content="{{tpl:BlogUpdateDate iso8601="1"}}" />
-  <meta property="dc.type" content="text" />
-  <meta property="dc.format" content="text/html" />
-
-  <link rel="top" href="{{tpl:BlogURL}}" title="{{tpl:lang Home}}" />
-  <link rel="up" href="{{tpl:BlogArchiveURL}}" title="{{tpl:lang Archives}}" />
-  <link rel="contents" href="{{tpl:BlogArchiveURL}}" title="{{tpl:lang Archives}}" />
-
-
-  <tpl:ArchiveNext><link rel="next" href="{{tpl:ArchiveURL}}"
-  title="{{tpl:ArchiveDate encode_html="1"}}" /></tpl:ArchiveNext>
-  <tpl:ArchivePrevious><link rel="prev" href="{{tpl:ArchiveURL}}"
-  title="{{tpl:ArchiveDate encode_html="1"}}" /></tpl:ArchivePrevious>
-
-  <tpl:Entries no_content="1">
-  <link rel="chapter" href="{{tpl:EntryURL}}" title="{{tpl:EntryTitle encode_html="1"}}" />
-  </tpl:Entries>
-
-  {{tpl:include src="_head.html"}}
-</head>
-
-<body class="dc-archive-month">
-<div id="page">
-{{tpl:include src="_top.html"}}
-
-<div id="wrapper">
-
-<div id="main" role="main">
-  <div id="content">
-
-  <p id="navlinks">
-  <tpl:ArchivePrevious><a href="{{tpl:ArchiveURL}}" class="prev">&#171; {{tpl:ArchiveDate encode_html="1"}}</a>
-  - </tpl:ArchivePrevious>
-  <a href="{{tpl:BlogArchiveURL}}">{{tpl:lang Archives}}</a>
-  <tpl:ArchiveNext> - <a href="{{tpl:ArchiveURL}}" class="next">{{tpl:ArchiveDate encode_html="1"}} &#187;</a></tpl:ArchiveNext>
-  </p>
-
-  <div id="content-info">
-    <h2>{{tpl:ArchiveDate}}</h2>
-  </div>
-
-  <div class="content-inner">
-  <tpl:Entries no_content="1">
-    <!-- # New day date -->
-    <tpl:DateHeader><p class="day-date">{{tpl:EntryDate}}</p></tpl:DateHeader>
-
-    <h2 id="p{{tpl:EntryID}}" class="post-title" lang="{{tpl:EntryLang}}"><a
-    href="{{tpl:EntryURL}}" title="{{tpl:lang Read}} {{tpl:EntryTitle encode_html="1"}}">{{tpl:EntryTitle encode_html="1"}}</a></h2>
-
-    <p class="post-info">{{tpl:lang By}} {{tpl:EntryAuthorLink}}
-    <tpl:EntryIf show_comments="1">
-    - <a href="{{tpl:EntryURL}}#comments">{{tpl:EntryCommentCount}}</a>
-    </tpl:EntryIf>
-    <tpl:EntryIf show_pings="1">
-    - <a href="{{tpl:EntryURL}}#pings">{{tpl:EntryPingCount}}</a></tpl:EntryIf>
-    <tpl:EntryIf has_attachment="1">
-    - <a href="{{tpl:EntryURL}}#attachments">{{tpl:EntryAttachmentCount}}</a></tpl:EntryIf>
-    </p>
-  </tpl:Entries>
-  </div>
-  </div>
-</div> <!-- End #main -->
-
-<div id="sidebar" role="complementary">
-  <div id="blognav">
-    {{tpl:Widgets type="nav"}}
-  </div> <!-- End #blognav -->
-
-  <div id="blogextra">
-    {{tpl:Widgets type="extra"}}
-  </div> <!-- End #blogextra -->
-</div>
-
-</div> <!-- End #wrapper -->
-
-{{tpl:include src="_footer.html"}}
-</div> <!-- End #page -->
-</body>
-</html>
Index: nc/public/default-templates/mustek/atom-comments.xml
===================================================================
--- inc/public/default-templates/mustek/atom-comments.xml	(revision 2599)
+++ 	(revision )
@@ -1,47 +1,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="{{tpl:BlogLanguage}}">
-
-  <title type="html">{{tpl:BlogName encode_xml="1"}}{{tpl:SysFeedSubtitle encode_xml="1"}}
-  - {{tpl:lang Comments}}</title>
-  <subtitle type="html">{{tpl:BlogDescription encode_xml="1"}}</subtitle>
-  <link href="{{tpl:SysSelfURI}}" rel="self" type="application/atom+xml"/>
-  <link href="{{tpl:BlogURL}}" rel="alternate" type="text/html"
-  title="{{tpl:BlogDescription encode_xml="1"}}"/>
-  <updated>{{tpl:BlogUpdateDate iso8601="1"}}</updated>
-  <author>
-    <name>{{tpl:BlogEditor encode_xml="1"}}</name>
-  </author>
-  <id>{{tpl:BlogFeedID}}</id>
-  <generator uri="http://www.dotclear.org/">Dotclear</generator>
-
-  <tpl:Comments order="desc" with_pings="1">
-
-  <tpl:CommentIf is_ping="1">
-  <entry>
-    <title>[ping] {{tpl:PingEntryTitle encode_xml="1"}} - {{tpl:PingBlogName encode_xml="1"}}</title>
-    <link href="{{tpl:PingPostURL encode_xml="1"}}#c{{tpl:PingID}}" rel="alternate" type="text/html"
-    title="[ping] {{tpl:PingEntryTitle encode_xml="1"}} - {{tpl:PingBlogName encode_xml="1"}}" />
-    <id>{{tpl:PingFeedID}}</id>
-    <published>{{tpl:PingDate iso8601="1"}}</published>
-    <updated>{{tpl:PingDate iso8601="1" upddt="1"}}</updated>
-    <author><name>{{tpl:PingBlogName encode_xml="1"}}</name></author>
-    <content type="html">&lt;p&gt;&lt;a href="{{tpl:PingAuthorURL encode_xml="1"}}"&gt;{{tpl:PingTitle encode_xml="1"}}&lt;/a&gt;&lt;/p&gt; {{tpl:PingContent encode_xml="1"}}</content>
-  </entry>
-
-  </tpl:CommentIf>
-
-  <tpl:CommentIf is_ping="0">
-  <entry>
-    <title>{{tpl:CommentEntryTitle encode_xml="1"}} - {{tpl:CommentAuthor encode_xml="1"}}</title>
-    <link href="{{tpl:CommentPostURL encode_xml="1"}}#c{{tpl:CommentID}}" rel="alternate" type="text/html"
-    title="{{tpl:CommentEntryTitle encode_xml="1"}} - {{tpl:CommentAuthor encode_xml="1"}}" />
-    <id>{{tpl:CommentFeedID}}</id>
-    <published>{{tpl:CommentDate iso8601="1"}}</published>
-    <updated>{{tpl:CommentDate iso8601="1" upddt="1"}}</updated>
-    <author><name>{{tpl:CommentAuthor encode_xml="1"}}</name></author>
-    <content type="html">{{tpl:CommentContent absolute_urls="1" encode_xml="1"}}</content>
-  </entry>
-  </tpl:CommentIf>
-  </tpl:Comments>
-
-</feed>
Index: nc/public/default-templates/mustek/atom.xml
===================================================================
--- inc/public/default-templates/mustek/atom.xml	(revision 2599)
+++ 	(revision )
@@ -1,55 +1,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<feed xmlns="http://www.w3.org/2005/Atom"
-  xmlns:dc="http://purl.org/dc/elements/1.1/"
-  xmlns:wfw="http://wellformedweb.org/CommentAPI/"
-  xml:lang="{{tpl:BlogLanguage}}">
-
-  <title type="html">{{tpl:BlogName encode_xml="1"}}{{tpl:SysFeedSubtitle encode_xml="1"}}</title>
-  <subtitle type="html">{{tpl:BlogDescription encode_xml="1"}}</subtitle>
-  <link href="{{tpl:SysSelfURI}}" rel="self" type="application/atom+xml"/>
-  <link href="{{tpl:BlogURL}}" rel="alternate" type="text/html"
-  title="{{tpl:BlogDescription encode_xml="1"}}"/>
-  <updated>{{tpl:BlogUpdateDate iso8601="1"}}</updated>
-  <author>
-    <name>{{tpl:BlogEditor encode_xml="1"}}</name>
-  </author>
-  <id>{{tpl:BlogFeedID}}</id>
-  <generator uri="http://www.dotclear.org/">Dotclear</generator>
-
-  <tpl:Entries>
-
-  <entry>
-    <title>{{tpl:EntryTitle encode_xml="1"}}</title>
-    <link href="{{tpl:EntryURL}}" rel="alternate" type="text/html"
-    title="{{tpl:EntryTitle encode_xml="1"}}" />
-    <id>{{tpl:EntryFeedID}}</id>
-    <published>{{tpl:EntryDate iso8601="1"}}</published>
-    <tpl:EntryIf republished="1">
-      <updated>{{tpl:EntryDate iso8601="1" upddt="1"}}</updated>
-    </tpl:EntryIf>
-    <tpl:EntryIf republished="0">
-      <updated>{{tpl:EntryDate iso8601="1"}}</updated>
-    </tpl:EntryIf>
-    <author><name>{{tpl:EntryAuthorCommonName encode_xml="1"}}</name></author>
-    <tpl:EntryIf has_category="1">
-    <dc:subject>{{tpl:EntryCategory encode_html="1"}}</dc:subject>
-    </tpl:EntryIf>
-    <tpl:EntryTags><dc:subject>{{tpl:TagID}}</dc:subject></tpl:EntryTags>
-
-    <content type="html">{{tpl:EntryExcerpt absolute_urls="1" encode_xml="1"}}
-    {{tpl:EntryContent absolute_urls="1" encode_xml="1"}}</content>
-
-    <tpl:Attachments>
-      <link rel="enclosure" href="{{tpl:AttachmentURL}}"
-      length="{{tpl:AttachmentSize full="1"}}" type="{{tpl:AttachmentMimeType}}" />
-    </tpl:Attachments>
-
-
-    <tpl:EntryIf comments_active="1">
-      <wfw:comment>{{tpl:EntryURL}}#comment-form</wfw:comment>
-      <wfw:commentRss>{{tpl:BlogFeedURL type="atom"}}/comments/{{tpl:EntryID}}</wfw:commentRss>
-    </tpl:EntryIf>
-  </entry>
-  </tpl:Entries>
-
-</feed>
Index: nc/public/default-templates/mustek/category.html
===================================================================
--- inc/public/default-templates/mustek/category.html	(revision 2604)
+++ 	(revision )
@@ -1,166 +1,0 @@
-<!DOCTYPE html>
-<html lang="{{tpl:BlogLanguage}}">
-<head>
-  <meta charset="UTF-8" />
-  <meta name="ROBOTS" content="{{tpl:BlogMetaRobots robots="NOINDEX"}}" />
-
-  <title>{{tpl:CategoryTitle encode_html="1"}} - {{tpl:BlogName encode_html="1"}}<tpl:PaginationIf start="0"> - {{tpl:lang page}} {{tpl:PaginationCurrent}}</tpl:PaginationIf></title>
-  <meta name="description" lang="{{tpl:BlogLanguage}}" content="{{tpl:CategoryDescription cut_string="180" remove_html="1"}}" />
-  <meta name="copyright" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
-  <meta name="author" content="{{tpl:BlogEditor encode_html="1"}}" />
-  <meta name="date" content="{{tpl:BlogUpdateDate iso8601="1"}}" />
-
-  <link rel="schema.dc" href="http://purl.org/dc/elements/1.1/" />
-  <meta property="dc.title" lang="{{tpl:BlogLanguage}}" content="{{tpl:CategoryTitle encode_html="1"}} - {{tpl:BlogName encode_html="1"}}<tpl:PaginationIf start="0"> - {{tpl:lang page}} {{tpl:PaginationCurrent}}</tpl:PaginationIf>" />
-  <meta property="dc.description" lang="{{tpl:BlogLanguage}}" content="{{tpl:CategoryDescription remove_html="1"}}" />
-  <meta property="dc.language" content="{{tpl:BlogLanguage}}" />
-  <meta property="dc.publisher" content="{{tpl:BlogEditor encode_html="1"}}" />
-  <meta property="dc.rights" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
-  <meta property="dc.date" content="{{tpl:BlogUpdateDate iso8601="1"}}" />
-  <meta property="dc.type" content="text" />
-  <meta property="dc.format" content="text/html" />
-
-  <link rel="top" href="{{tpl:BlogURL}}" title="{{tpl:lang Home}}" />
-  <link rel="contents" href="{{tpl:BlogArchiveURL}}" title="{{tpl:lang Archives}}" />
-
-  <tpl:Entries no_content="1">
-    <tpl:EntriesHeader>
-      <tpl:Pagination>
-        <tpl:PaginationIf end="0">
-        <link rel="prev" title="{{tpl:lang previous entries}}" href="{{tpl:PaginationURL offset="1"}}" />
-        </tpl:PaginationIf>
-
-        <tpl:PaginationIf start="0">
-        <link rel="next" title="{{tpl:lang next entries}}" href="{{tpl:PaginationURL offset="-1"}}" />
-        </tpl:PaginationIf>
-      </tpl:Pagination>
-    </tpl:EntriesHeader>
-
-    <link rel="chapter" href="{{tpl:EntryURL}}" title="{{tpl:EntryTitle encode_html="1"}}" />
-  </tpl:Entries>
-
-  <link rel="alternate" type="application/atom+xml" title="Atom 1.0" href="{{tpl:CategoryFeedURL type="atom"}}" />
-
-  {{tpl:include src="_head.html"}}
-</head>
-
-<body class="dc-category">
-<div id="page">
-{{tpl:include src="_top.html"}}
-
-<div id="wrapper">
-
-<div id="main" role="main">
-  <div id="content">
-
-  <div id="content-info">
-    <h2><tpl:CategoryParents><a href="{{tpl:CategoryURL}}">{{tpl:CategoryTitle encode_html="1"}}</a> &rsaquo; </tpl:CategoryParents>
-    {{tpl:CategoryTitle encode_html="1"}}</h2>
-    {{tpl:CategoryDescription}}
-
-    <tpl:CategoryIf has_entries="1">
-      <p><a type="application/atom+xml" href="{{tpl:CategoryFeedURL type="atom"}}"
-      title="{{tpl:lang This category's entries Atom feed}}" class="feed">{{tpl:lang Entries feed}}</a>
-
-      <tpl:SysIf operator="or" comments_active="1" pings_active="1">
-      - <a type="application/atom+xml" href="{{tpl:CategoryFeedURL type="atom"}}/comments"
-      title="{{tpl:lang This category's comments Atom feed}}" class="feed">{{tpl:lang Comments feed}}</a>
-      </tpl:SysIf>
-      </p>
-    </tpl:CategoryIf>
-  </div>
-
-  <tpl:CategoryFirstChildren>
-    <tpl:CategoriesHeader>
-      <div id="subcategories">
-      <h3>{{tpl:lang Subcategories}}</h3>
-      <ul>
-    </tpl:CategoriesHeader>
-    <li><a href="{{tpl:CategoryURL}}">{{tpl:CategoryTitle encode_html="1"}}</a></li>
-    <tpl:CategoriesFooter>
-      </ul>
-      </div>
-    </tpl:CategoriesFooter>
-  </tpl:CategoryFirstChildren>
-
-  <tpl:Entries>
-    <div id="p{{tpl:EntryID}}" class="post {{tpl:EntryIfOdd}} {{tpl:EntryIfFirst}}" lang="{{tpl:EntryLang}}" role="article">
-    <!-- # New day date -->
-    <tpl:DateHeader><p class="day-date">{{tpl:EntryDate}}</p></tpl:DateHeader>
-
-    <h2 class="post-title"><a
-    href="{{tpl:EntryURL}}">{{tpl:EntryTitle encode_html="1"}}</a></h2>
-
-    <p class="post-info">{{tpl:lang By}} {{tpl:EntryAuthorLink}}
-    {{tpl:lang on}} {{tpl:EntryDate}}, {{tpl:EntryTime}}</p>
-
-    <tpl:EntryTags>
-    <tpl:TagsHeader><ul class="post-tags"></tpl:TagsHeader>
-    <li><a href="{{tpl:TagURL}}">{{tpl:TagID}}</a></li>
-    <tpl:TagsFooter></ul></tpl:TagsFooter>
-    </tpl:EntryTags>
-
-    <!-- # --BEHAVIOR-- publicEntryBeforeContent -->
-    {{tpl:SysBehavior behavior="publicEntryBeforeContent"}}
-
-    <!-- # Entry with an excerpt -->
-    <tpl:EntryIf extended="1">
-      <div class="post-content">{{tpl:EntryExcerpt}}</div>
-      <p class="read-it"><a href="{{tpl:EntryURL}}"
-      title="{{tpl:lang Continue reading}} {{tpl:EntryTitle encode_html="1"}}">{{tpl:lang Continue
-      reading}}</a>...</p>
-    </tpl:EntryIf>
-
-    <!-- # Entry without excerpt -->
-    <tpl:EntryIf extended="0">
-      <div class="post-content">{{tpl:EntryContent}}</div>
-    </tpl:EntryIf>
-
-    <!-- # --BEHAVIOR-- publicEntryAfterContent -->
-    {{tpl:SysBehavior behavior="publicEntryAfterContent"}}
-
-    <!-- # Number of comments, trackbacks and attachments -->
-    <tpl:EntryIf operator="or" show_comments="1" show_pings="1" has_attachment="1">
-      <p class="post-info-co">
-    </tpl:EntryIf>
-    <tpl:EntryIf show_comments="1">
-      <a href="{{tpl:EntryURL}}#comments" class="comment_count">{{tpl:EntryCommentCount}}</a>
-    </tpl:EntryIf>
-    <tpl:EntryIf show_pings="1">
-      <a href="{{tpl:EntryURL}}#pings" class="ping_count">{{tpl:EntryPingCount}}</a></tpl:EntryIf>
-    <tpl:EntryIf has_attachment="1">
-      <a href="{{tpl:EntryURL}}#attachments" class="attach_count">{{tpl:EntryAttachmentCount}}</a></tpl:EntryIf>
-    <tpl:EntryIf operator="or" show_comments="1" show_pings="1" has_attachment="1">
-      </p>
-    </tpl:EntryIf>
-    </div>
-
-    <tpl:EntriesFooter>
-      <tpl:Pagination>
-        <p class="pagination"><tpl:PaginationIf end="0"><a href="{{tpl:PaginationURL offset="+1"}}" class="prev">&#171;
-        {{tpl:lang previous entries}}</a> - </tpl:PaginationIf>
-        {{tpl:lang page}} {{tpl:PaginationCurrent}} {{tpl:lang of}} {{tpl:PaginationCounter}}
-        <tpl:PaginationIf start="0"> - <a href="{{tpl:PaginationURL offset="-1"}}" class="next">{{tpl:lang next entries}}
-        &#187;</a></tpl:PaginationIf></p>
-      </tpl:Pagination>
-    </tpl:EntriesFooter>
-  </tpl:Entries>
-  </div>
-</div> <!-- End #main -->
-
-<div id="sidebar" role="complementary">
-  <div id="blognav">
-    {{tpl:Widgets type="nav"}}
-  </div> <!-- End #blognav -->
-
-  <div id="blogextra">
-    {{tpl:Widgets type="extra"}}
-  </div> <!-- End #blogextra -->
-</div>
-
-</div> <!-- End #wrapper -->
-
-{{tpl:include src="_footer.html"}}
-</div> <!-- End #page -->
-</body>
-</html>
Index: nc/public/default-templates/mustek/home.html
===================================================================
--- inc/public/default-templates/mustek/home.html	(revision 2604)
+++ 	(revision )
@@ -1,143 +1,0 @@
-<!DOCTYPE html>
-<html lang="{{tpl:BlogLanguage}}">
-<head>
-  <meta charset="UTF-8" />
-  <meta name="ROBOTS" content="{{tpl:BlogMetaRobots}}" />
-
-  <title>{{tpl:BlogName encode_html="1"}}<tpl:PaginationIf start="0"> - {{tpl:lang page}} {{tpl:PaginationCurrent}}</tpl:PaginationIf></title>
-  <meta name="description" lang="{{tpl:BlogLanguage}}" content="{{tpl:BlogDescription cut_string="180" encode_html="1"}}<tpl:PaginationIf start="0"> - {{tpl:lang page}} {{tpl:PaginationCurrent}}</tpl:PaginationIf>" />
-  <meta name="copyright" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
-  <meta name="author" content="{{tpl:BlogEditor encode_html="1"}}" />
-  <meta name="date" content="{{tpl:BlogUpdateDate iso8601="1"}}" />
-
-  <link rel="schema.dc" href="http://purl.org/dc/elements/1.1/" />
-  <meta property="dc.title" lang="{{tpl:BlogLanguage}}" content="{{tpl:BlogName encode_html="1"}}<tpl:PaginationIf start="0"> - {{tpl:lang page}} {{tpl:PaginationCurrent}}</tpl:PaginationIf>" />
-  <meta property="dc.description" lang="{{tpl:BlogLanguage}}" content="{{tpl:BlogDescription encode_html="1"}}" />
-  <meta property="dc.language" content="{{tpl:BlogLanguage}}" />
-  <meta property="dc.publisher" content="{{tpl:BlogEditor encode_html="1"}}" />
-  <meta property="dc.rights" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
-  <meta property="dc.date" content="{{tpl:BlogUpdateDate iso8601="1"}}" />
-  <meta property="dc.type" content="text" />
-  <meta property="dc.format" content="text/html" />
-
-  <link rel="contents" title="{{tpl:lang Archives}}" href="{{tpl:BlogArchiveURL}}" />
-  <tpl:Categories>
-  <link rel="section" href="{{tpl:CategoryURL}}" title="{{tpl:CategoryTitle encode_html="1"}}" />
-  </tpl:Categories>
-
-  <tpl:Entries no_content="1">
-    <tpl:EntriesHeader>
-      <tpl:Pagination>
-        <tpl:PaginationIf end="0">
-        <link rel="prev" title="{{tpl:lang previous entries}}" href="{{tpl:PaginationURL offset="1"}}" />
-        </tpl:PaginationIf>
-
-        <tpl:PaginationIf start="0">
-        <link rel="next" title="{{tpl:lang next entries}}" href="{{tpl:PaginationURL offset="-1"}}" />
-        </tpl:PaginationIf>
-      </tpl:Pagination>
-    </tpl:EntriesHeader>
-
-    <link rel="chapter" href="{{tpl:EntryURL}}" title="{{tpl:EntryTitle encode_html="1"}}" />
-  </tpl:Entries>
-
-  <link rel="alternate" type="application/atom+xml" title="Atom 1.0" href="{{tpl:BlogFeedURL type="atom"}}" />
-  <link rel="EditURI" type="application/rsd+xml" title="RSD" href="{{tpl:BlogRSDURL}}" />
-  <link rel="meta" type="application/xbel+xml" title="Blogroll" href="{{tpl:BlogrollXbelLink}}" />
-
-  {{tpl:include src="_head.html"}}
-</head>
-
-<body class="dc-home">
-<div id="page">
-{{tpl:include src="_top.html"}}
-
-<div id="wrapper">
-
-<div id="main" role="main">
-  <div id="content">
-  <tpl:Entries>
-    <div id="p{{tpl:EntryID}}" class="post {{tpl:EntryIfOdd}} {{tpl:EntryIfFirst}}" lang="{{tpl:EntryLang}}" role="article">
-    <!-- # New day date -->
-    <tpl:DateHeader><p class="day-date">{{tpl:EntryDate}}</p></tpl:DateHeader>
-
-    <h2 class="post-title"><a
-    href="{{tpl:EntryURL}}">{{tpl:EntryTitle encode_html="1"}}</a></h2>
-
-    <p class="post-info">{{tpl:lang By}} {{tpl:EntryAuthorLink}}
-    {{tpl:lang on}} {{tpl:EntryDate}}, {{tpl:EntryTime}}
-    <tpl:EntryIf has_category="1">
-    - <a href="{{tpl:EntryCategoryURL}}">{{tpl:EntryCategory encode_html="1"}}</a>
-    </tpl:EntryIf>
-    </p>
-
-    <tpl:EntryTags>
-    <tpl:TagsHeader><ul class="post-tags"></tpl:TagsHeader>
-    <li><a href="{{tpl:TagURL}}">{{tpl:TagID}}</a></li>
-    <tpl:TagsFooter></ul></tpl:TagsFooter>
-    </tpl:EntryTags>
-
-    <!-- # --BEHAVIOR-- publicEntryBeforeContent -->
-    {{tpl:SysBehavior behavior="publicEntryBeforeContent"}}
-
-    <!-- # Entry with an excerpt -->
-    <tpl:EntryIf extended="1">
-      <div class="post-content">{{tpl:EntryExcerpt}}</div>
-      <p class="read-it"><a href="{{tpl:EntryURL}}"
-      title="{{tpl:lang Continue reading}} {{tpl:EntryTitle encode_html="1"}}">{{tpl:lang Continue
-      reading}}</a>...</p>
-    </tpl:EntryIf>
-
-    <!-- # Entry without excerpt -->
-    <tpl:EntryIf extended="0">
-      <div class="post-content">{{tpl:EntryContent}}</div>
-    </tpl:EntryIf>
-
-    <!-- # --BEHAVIOR-- publicEntryAfterContent -->
-    {{tpl:SysBehavior behavior="publicEntryAfterContent"}}
-
-    <!-- # Number of comments, trackbacks and attachments -->
-    <tpl:EntryIf operator="or" show_comments="1" show_pings="1" has_attachment="1">
-      <p class="post-info-co">
-    </tpl:EntryIf>
-    <tpl:EntryIf show_comments="1">
-      <a href="{{tpl:EntryURL}}#comments" class="comment_count">{{tpl:EntryCommentCount}}</a>
-    </tpl:EntryIf>
-    <tpl:EntryIf show_pings="1">
-      <a href="{{tpl:EntryURL}}#pings" class="ping_count">{{tpl:EntryPingCount}}</a></tpl:EntryIf>
-    <tpl:EntryIf has_attachment="1">
-      <a href="{{tpl:EntryURL}}#attachments" class="attach_count">{{tpl:EntryAttachmentCount}}</a></tpl:EntryIf>
-    <tpl:EntryIf operator="or" show_comments="1" show_pings="1" has_attachment="1">
-      </p>
-    </tpl:EntryIf>
-    </div>
-
-    <tpl:EntriesFooter>
-      <tpl:Pagination>
-        <p class="pagination"><tpl:PaginationIf end="0"><a href="{{tpl:PaginationURL offset="+1"}}" class="prev">&#171;
-        {{tpl:lang previous entries}}</a> - </tpl:PaginationIf>
-        {{tpl:lang page}} {{tpl:PaginationCurrent}} {{tpl:lang of}} {{tpl:PaginationCounter}}
-        <tpl:PaginationIf start="0"> - <a href="{{tpl:PaginationURL offset="-1"}}" class="next">{{tpl:lang next entries}}
-        &#187;</a></tpl:PaginationIf></p>
-      </tpl:Pagination>
-    </tpl:EntriesFooter>
-  </tpl:Entries>
-  </div>
-</div> <!-- End #main -->
-
-<div id="sidebar" role="complementary">
-  <div id="blognav">
-    {{tpl:Widgets type="nav"}}
-  </div> <!-- End #blognav -->
-
-  <div id="blogextra">
-    {{tpl:Widgets type="extra"}}
-  </div> <!-- End #blogextra -->
-</div>
-
-</div> <!-- End #wrapper -->
-
-{{tpl:include src="_footer.html"}}
-</div> <!-- End #page -->
-</body>
-</html>
Index: nc/public/default-templates/mustek/password-form.html
===================================================================
--- inc/public/default-templates/mustek/password-form.html	(revision 2603)
+++ 	(revision )
@@ -1,40 +1,0 @@
-<!DOCTYPE html>
-<html lang="{{tpl:BlogLanguage}}">
-<head>
-  <meta charset="UTF-8" />
-  <meta name="ROBOTS" content="NOARCHIVE,NOINDEX,NOFOLLOW" />
-  <title>{{tpl:lang Password needed}} - {{tpl:BlogName encode_html="1"}}</title>
-
-  <style type="text/css">
-  body {
-  font: 0.8em Verdana,Arial,Geneva,sans-serif;
-  }
-
-  form {
-  display : block;
-  width : 500px;
-  margin : 0 auto;
-  padding : 1em;
-  background : #eee;
-  }
-
-  h2 { font : 140% Arial,Helvetica,sans-serif; margin : 0; }
-
-  label { font-weight : bold; }
-
-  input { border-width : 1px; }
-  </style>
-</head>
-
-<body>
-
-<form action="{{tpl:EntryURL}}" method="post" role="form">
-<h2>{{tpl:lang Password needed}}</h2>
-
-<p>{{tpl:lang You must give a password to access this area.}}</p>
-<p><label>{{tpl:lang Password:}} <input type="password" name="password" value="" /></label> <input type="submit" value="ok" /></p>
-
-</form>
-
-</body>
-</html>
Index: nc/public/default-templates/mustek/post.html
===================================================================
--- inc/public/default-templates/mustek/post.html	(revision 2603)
+++ 	(revision )
@@ -1,274 +1,0 @@
-<!DOCTYPE html>
-<html lang="{{tpl:BlogLanguage}}">
-<head>
-  <meta charset="UTF-8" />
-  <meta name="ROBOTS" content="{{tpl:BlogMetaRobots}}" />
-
-  <title>{{tpl:EntryTitle encode_html="1"}} - {{tpl:BlogName encode_html="1"}}</title>
-  <meta name="description" lang="{{tpl:EntryLang}}" content="{{tpl:EntryContent full="1" encode_html="1" remove_html="1" cut_string="180"}}" />
-  <meta name="copyright" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
-  <meta name="author" content="{{tpl:EntryAuthorCommonName encode_html="1"}}" />
-  <meta name="date" content="{{tpl:EntryDate iso8601="1"}}" />
-
-  <link rel="schema.dc" href="http://purl.org/dc/elements/1.1/" />
-  <meta property="dc.title" content="{{tpl:EntryTitle encode_html="1"}}" />
-  <meta property="dc.description" lang="{{tpl:EntryLang}}" content="{{tpl:EntryContent full="1" encode_html="1" remove_html="1" cut_string="180"}}" />
-  <meta property="dc.creator" content="{{tpl:EntryAuthorCommonName encode_html="1"}}" />
-  <meta property="dc.language" content="{{tpl:EntryLang}}" />
-  <meta property="dc.publisher" content="{{tpl:BlogEditor encode_html="1"}}" />
-  <meta property="dc.rights" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
-  <meta property="dc.date" content="{{tpl:EntryDate iso8601="1"}}" />
-  <meta property="dc.type" content="text" />
-  <meta property="dc.format" content="text/html" />
-
-  <link rel="top" href="{{tpl:BlogURL}}" title="{{tpl:lang Home}}" />
-  <link rel="contents" href="{{tpl:BlogArchiveURL}}" title="{{tpl:lang Archives}}" />
-  <tpl:EntryIf pings_active="1"><link rel="pingback" href="{{tpl:BlogXMLRPCURL}}" /></tpl:EntryIf>
-
-  <tpl:EntryNext><link rel="next" href="{{tpl:EntryURL}}"
-  title="{{tpl:EntryTitle encode_html="1"}}" /></tpl:EntryNext>
-
-  <tpl:EntryPrevious><link rel="prev" href="{{tpl:EntryURL}}"
-  title="{{tpl:EntryTitle encode_html="1"}}" /></tpl:EntryPrevious>
-
-  <link rel="alternate" type="application/atom+xml" title="Atom 1.0" href="{{tpl:BlogFeedURL type="atom"}}" />
-
-  {{tpl:include src="_head.html"}}
-
-  <script type="text/javascript" src="{{tpl:BlogThemeURL}}/../default/js/post.js"></script>
-  <script type="text/javascript">
-  //<![CDATA[
-  var post_remember_str = '{{tpl:lang Remember me on this blog}}';
-  //]]>
-  </script>
-</head>
-
-<body class="dc-post">
-<div id="page">
-{{tpl:EntryPingData}}
-
-{{tpl:include src="_top.html"}}
-
-<div id="wrapper">
-
-<div id="main" role="main">
-  <div id="content">
-
-  <p id="navlinks">
-  <tpl:EntryPrevious><a href="{{tpl:EntryURL}}"
-  title="{{tpl:EntryTitle encode_html="1"}}" class="prev">&#171; {{tpl:EntryTitle encode_html="1"
-  cut_string="50"}}</a></tpl:EntryPrevious>
-  <tpl:EntryNext> <span>-</span> <a href="{{tpl:EntryURL}}"
-  title="{{tpl:EntryTitle encode_html="1"}}" class="next">{{tpl:EntryTitle encode_html="1"
-  cut_string="50"}} &#187;</a></tpl:EntryNext>
-  </p>
-
-  <div id="p{{tpl:EntryID}}" class="post" role="article">
-    <h2 class="post-title">{{tpl:EntryTitle encode_html="1"}}</h2>
-
-    <p class="post-info">{{tpl:lang By}} {{tpl:EntryAuthorLink}}
-    {{tpl:lang on}} {{tpl:EntryDate}}, {{tpl:EntryTime}}
-    <tpl:EntryIf has_category="1">
-    - <a href="{{tpl:EntryCategoryURL}}">{{tpl:EntryCategory encode_html="1"}}</a>
-    </tpl:EntryIf>
-    - <a href="{{tpl:EntryURL}}">{{tpl:lang Permalink}}</a>
-    </p>
-
-    <tpl:EntryTags>
-    <tpl:TagsHeader><ul class="post-tags"></tpl:TagsHeader>
-    <li><a href="{{tpl:TagURL}}" rel="tag">{{tpl:TagID}}</a></li>
-    <tpl:TagsFooter></ul></tpl:TagsFooter>
-    </tpl:EntryTags>
-
-    <!-- # --BEHAVIOR-- publicEntryBeforeContent -->
-    {{tpl:SysBehavior behavior="publicEntryBeforeContent"}}
-
-    <!-- # Entry with an excerpt -->
-    <tpl:EntryIf extended="1">
-      <div class="post-excerpt">{{tpl:EntryExcerpt}}</div>
-    </tpl:EntryIf>
-
-    <div class="post-content">{{tpl:EntryContent}}</div>
-
-    <!-- # --BEHAVIOR-- publicEntryAfterContent -->
-    {{tpl:SysBehavior behavior="publicEntryAfterContent"}}
-  </div>
-
-  <!-- # Attachments -->
-  <tpl:Attachments>
-    <tpl:AttachmentsHeader>
-      <div id="attachments">
-      <h3>{{tpl:lang Attachments}}</h3>
-      <ul>
-    </tpl:AttachmentsHeader>
-      <li class="{{tpl:AttachmentType}}">
-        <tpl:AttachmentIf is_mp3="1">
-          {{tpl:include src="_mp3_player.html"/}} -
-        </tpl:AttachmentIf>
-        <tpl:AttachmentIf is_flv="1">
-	     {{tpl:include src="_flv_player.html"/}}
-	   </tpl:AttachmentIf>
-	   <tpl:AttachmentIf is_flv="0">
-	   	<a href="{{tpl:AttachmentURL}}"
-		title="{{tpl:AttachmentFileName}} ({{tpl:AttachmentSize}})">{{tpl:AttachmentTitle}}</a>
-        </tpl:AttachmentIf>
-      </li>
-    <tpl:AttachmentsFooter>
-      </ul>
-      </div>
-    </tpl:AttachmentsFooter>
-  </tpl:Attachments>
-
-  <!-- # Comments -->
-  <tpl:EntryIf show_comments="1">
-    <tpl:Comments>
-    <tpl:CommentsHeader>
-      <div id="comments">
-        <h3>{{tpl:lang Comments}}</h3>
-      <dl>
-    </tpl:CommentsHeader>
-      <dt id="c{{tpl:CommentID}}" class="{{tpl:CommentIfMe}} {{tpl:CommentIfOdd}} {{tpl:CommentIfFirst}}"><a
-      href="#c{{tpl:CommentID}}" class="comment-number">{{tpl:CommentOrderNumber}}.</a>
-      {{tpl:lang On}} {{tpl:CommentDate}}, {{tpl:CommentTime}}
-      {{tpl:lang by}} {{tpl:CommentAuthorLink}}</dt>
-
-      <dd class="{{tpl:CommentIfMe}} {{tpl:CommentIfOdd}} {{tpl:CommentIfFirst}}">
-      <!-- # --BEHAVIOR-- publicCommentBeforeContent -->
-      {{tpl:SysBehavior behavior="publicCommentBeforeContent"}}
-
-      {{tpl:CommentContent}}
-
-      <!-- # --BEHAVIOR-- publicCommentAfterContent -->
-      {{tpl:SysBehavior behavior="publicCommentAfterContent"}}
-      </dd>
-    <tpl:CommentsFooter>
-      </dl>
-      </div>
-    </tpl:CommentsFooter>
-    </tpl:Comments>
-  </tpl:EntryIf>
-
-  <tpl:EntryIf comments_active="1">
-    <tpl:SysIfFormError>
-      <p class="error" id="pr">{{tpl:SysFormError}}</p>
-    </tpl:SysIfFormError>
-
-    <tpl:SysIfCommentPublished>
-      <p class="message" id="pr">{{tpl:lang Your comment has been published.}}</p>
-    </tpl:SysIfCommentPublished>
-
-    <tpl:SysIfCommentPending>
-      <p class="message" id="pr">{{tpl:lang Your comment has been submitted and
-      will be reviewed for publication.}}</p>
-    </tpl:SysIfCommentPending>
-
-    <!-- # Comment form -->
-    <form action="{{tpl:EntryURL}}#pr" method="post" id="comment-form" role="form">
-      <tpl:IfCommentPreview>
-        <div id="pr">
-          <h3>{{tpl:lang Your comment}}</h3>
-          <dl>
-            <dd class="comment-preview">{{tpl:CommentPreviewContent}}</dd>
-          </dl>
-          <p class="buttons"><input type="submit" class="submit" value="{{tpl:lang send}}" /></p>
-        </div>
-      </tpl:IfCommentPreview>
-
-      <h3>{{tpl:lang Add a comment}}</h3>
-      <fieldset>
-        <!-- # --BEHAVIOR-- publicCommentFormBeforeContent -->
-        {{tpl:SysBehavior behavior="publicCommentFormBeforeContent"}}
-
-        <p class="field"><label for="c_name">{{tpl:lang Name or nickname}}&nbsp;:</label>
-        <input name="c_name" id="c_name" type="text" size="30" maxlength="255"
-        value="{{tpl:CommentPreviewName encode_html="1"}}" />
-        </p>
-
-        <p class="field"><label for="c_mail">{{tpl:lang Email address}}&nbsp;:</label>
-        <input name="c_mail" id="c_mail" type="text" size="30" maxlength="255"
-        value="{{tpl:CommentPreviewEmail encode_html="1"}}" />
-        </p>
-
-        <p class="field"><label for="c_site">{{tpl:lang Website}} ({{tpl:lang optional}})&nbsp;:</label>
-        <input name="c_site" id="c_site" type="text" size="30" maxlength="255"
-        value="{{tpl:CommentPreviewSite encode_html="1"}}" />
-        </p>
-
-        <p style="display:none"><input name="f_mail" type="text" size="30"
-        maxlength="255" value="" /></p>
-
-        <p class="field"><label for="c_content">{{tpl:lang Comment}}&nbsp;:</label>
-        <textarea name="c_content" id="c_content" cols="35"
-        rows="7">{{tpl:CommentPreviewContent raw="1" encode_html="1"}}</textarea>
-        </p>
-        <p class="form-help">{{tpl:CommentHelp}}</p>
-
-        <!-- # --BEHAVIOR-- publicCommentFormAfterContent -->
-        {{tpl:SysBehavior behavior="publicCommentFormAfterContent"}}
-      </fieldset>
-
-      <fieldset>
-        <p class="buttons"><input type="submit" class="preview" name="preview" value="{{tpl:lang preview}}" />
-        <tpl:IfCommentPreview><input type="submit" class="submit" value="{{tpl:lang send}}" /></tpl:IfCommentPreview></p>
-      </fieldset>
-    </form>
-  </tpl:EntryIf>
-
-  <!-- # Trackbacks -->
-  <tpl:EntryIf show_pings="1">
-    <div id="pings">
-    <h3>{{tpl:lang They posted on the same topic}}</h3>
-    <tpl:Pings>
-      <tpl:PingsHeader>
-      <dl>
-      </tpl:PingsHeader>
-        <dt id="c{{tpl:PingID}}" class="{{tpl:PingIfOdd}} {{tpl:PingIfFirst}}"><a href="#c{{tpl:PingID}}"
-        class="ping-number">{{tpl:PingOrderNumber}}.</a>
-        {{tpl:lang On}} {{tpl:PingDate}}, {{tpl:PingTime}}
-        {{tpl:lang by}} {{tpl:PingBlogName encode_html="1"}}</dt>
-
-        <dd class="{{tpl:PingIfOdd}} {{tpl:PingIfFirst}}">
-        <!-- # --BEHAVIOR-- publicPingBeforeContent -->
-        {{tpl:SysBehavior behavior="publicPingBeforeContent"}}
-
-        <p><a href="{{tpl:PingAuthorURL}}"
-        {{tpl:PingNoFollow}}>{{tpl:PingTitle encode_html="1"}}</a></p>
-        {{tpl:PingContent}}
-
-        <!-- # --BEHAVIOR-- publicPingAfterContent -->
-        {{tpl:SysBehavior behavior="publicPingAfterContent"}}
-        </dd>
-      <tpl:PingsFooter>
-      </dl>
-      </tpl:PingsFooter>
-    </tpl:Pings>
-    </div>
-  </tpl:EntryIf>
-
-  <tpl:EntryIf pings_active="1">
-    <p id="ping-url">{{tpl:lang Trackback URL}}&nbsp;: {{tpl:EntryPingLink}}</p>
-  </tpl:EntryIf>
-
-  <tpl:EntryIf operator="or" comments_active="1" pings_active="1">
-  <p id="comments-feed"><a class="feed" href="{{tpl:BlogFeedURL type="atom"}}/comments/{{tpl:EntryID}}"
-  title="{{tpl:lang This post's comments Atom feed}}">{{tpl:lang This post's comments feed}}</a></p>
-  </tpl:EntryIf>
-  </div>
-</div> <!-- End #main -->
-
-<div id="sidebar" role="complementary">
-  <div id="blognav">
-    {{tpl:Widgets type="nav"}}
-  </div> <!-- End #blognav -->
-
-  <div id="blogextra">
-    {{tpl:Widgets type="extra"}}
-  </div> <!-- End #blogextra -->
-</div>
-
-</div> <!-- End #wrapper -->
-
-{{tpl:include src="_footer.html"}}
-</div> <!-- End #page -->
-</body>
-</html>
Index: nc/public/default-templates/mustek/rss2-comments.xml
===================================================================
--- inc/public/default-templates/mustek/rss2-comments.xml	(revision 2599)
+++ 	(revision )
@@ -1,48 +1,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<?xml-stylesheet title="XSL formatting" type="text/xsl" href="{{tpl:BlogURL}}feed/rss2/xslt" ?>
-<rss version="2.0"
-  xmlns:dc="http://purl.org/dc/elements/1.1/"
-  xmlns:content="http://purl.org/rss/1.0/modules/content/"
-  xmlns:atom="http://www.w3.org/2005/Atom">
-<channel>
-  <title>{{tpl:BlogName encode_xml="1"}}{{tpl:SysFeedSubtitle encode_xml="1"}}
-  - {{tpl:lang Comments}}</title>
-  <link>{{tpl:BlogURL}}</link>
-  <atom:link href="{{tpl:SysSelfURI}}" rel="self" type="application/rss+xml"/>
-  <description>{{tpl:BlogDescription encode_xml="1"}}</description>
-  <language>{{tpl:BlogLanguage}}</language>
-  <pubDate>{{tpl:BlogUpdateDate rfc822="1"}}</pubDate>
-  <copyright>{{tpl:BlogCopyrightNotice encode_xml="1"}}</copyright>
-  <docs>http://blogs.law.harvard.edu/tech/rss</docs>
-  <generator>Dotclear</generator>
-
-  <tpl:Comments order="desc" with_pings="1">
-
-  <tpl:CommentIf is_ping="1">
-  <item>
-    <title>[ping] {{tpl:PingEntryTitle encode_xml="1"}} - {{tpl:PingBlogName encode_xml="1"}}</title>
-    <link>{{tpl:PingPostURL encode_xml="1"}}#c{{tpl:PingID}}</link>
-    <guid isPermaLink="false">{{tpl:PingFeedID}}</guid>
-    <pubDate>{{tpl:PingDate rfc822="1"}}</pubDate>
-    <dc:creator>{{tpl:PingBlogName encode_xml="1"}}</dc:creator>
-
-    <description>&lt;p&gt;&lt;a href="{{tpl:PingAuthorURL encode_xml="1"}}"&gt;{{tpl:PingTitle encode_xml="1"}}&lt;/a&gt;&lt;/p&gt;
-    {{tpl:PingContent encode_xml="1"}}</description>
-  </item>
-  </tpl:CommentIf>
-
-  <tpl:CommentIf is_ping="0">
-  <item>
-    <title>{{tpl:CommentEntryTitle encode_xml="1"}} - {{tpl:CommentAuthor encode_xml="1"}}</title>
-    <link>{{tpl:CommentPostURL encode_xml="1"}}#c{{tpl:CommentID}}</link>
-    <guid isPermaLink="false">{{tpl:CommentFeedID}}</guid>
-    <pubDate>{{tpl:CommentDate rfc822="1"}}</pubDate>
-    <dc:creator>{{tpl:CommentAuthor encode_xml="1"}}</dc:creator>
-
-    <description>{{tpl:CommentContent absolute_urls="1" encode_xml="1"}}</description>
-  </item>
-  </tpl:CommentIf>
-  </tpl:Comments>
-
-</channel>
-</rss>
Index: nc/public/default-templates/mustek/rss2.xml
===================================================================
--- inc/public/default-templates/mustek/rss2.xml	(revision 2599)
+++ 	(revision )
@@ -1,49 +1,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<?xml-stylesheet title="XSL formatting" type="text/xsl" href="{{tpl:BlogURL}}feed/rss2/xslt" ?>
-<rss version="2.0"
-  xmlns:dc="http://purl.org/dc/elements/1.1/"
-  xmlns:wfw="http://wellformedweb.org/CommentAPI/"
-  xmlns:content="http://purl.org/rss/1.0/modules/content/"
-  xmlns:atom="http://www.w3.org/2005/Atom">
-<channel>
-  <title>{{tpl:BlogName encode_xml="1"}}{{tpl:SysFeedSubtitle encode_xml="1"}}</title>
-  <link>{{tpl:BlogURL}}</link>
-  <atom:link href="{{tpl:SysSelfURI}}" rel="self" type="application/rss+xml"/>
-  <description>{{tpl:BlogDescription encode_xml="1"}}</description>
-  <language>{{tpl:BlogLanguage}}</language>
-  <pubDate>{{tpl:BlogUpdateDate rfc822="1"}}</pubDate>
-  <copyright>{{tpl:BlogCopyrightNotice encode_xml="1"}}</copyright>
-  <docs>http://blogs.law.harvard.edu/tech/rss</docs>
-  <generator>Dotclear</generator>
-
-  <tpl:Entries>
-
-  <item>
-    <title>{{tpl:EntryTitle encode_xml="1"}}</title>
-    <link>{{tpl:EntryURL}}</link>
-    <guid isPermaLink="false">{{tpl:EntryFeedID}}</guid>
-    <pubDate>{{tpl:EntryDate rfc822="1"}}</pubDate>
-    <dc:creator>{{tpl:EntryAuthorCommonName encode_xml="1"}}</dc:creator>
-    <tpl:EntryIf has_category="1">
-    <category>{{tpl:EntryCategory encode_html="1"}}</category>
-    </tpl:EntryIf>
-    <tpl:EntryTags><category>{{tpl:TagID}}</category></tpl:EntryTags>
-
-    <description>{{tpl:EntryExcerpt absolute_urls="1" encode_xml="1"}}
-    {{tpl:EntryContent absolute_urls="1" encode_xml="1"}}</description>
-
-    <tpl:Attachments>
-      <enclosure url="{{tpl:AttachmentURL}}"
-      length="{{tpl:AttachmentSize full="1"}}" type="{{tpl:AttachmentMimeType}}" />
-    </tpl:Attachments>
-
-    <tpl:EntryIf comments_active="1">
-      <comments>{{tpl:EntryURL}}#comment-form</comments>
-      <wfw:comment>{{tpl:EntryURL}}#comment-form</wfw:comment>
-      <wfw:commentRss>{{tpl:BlogFeedURL}}/comments/{{tpl:EntryID}}</wfw:commentRss>
-    </tpl:EntryIf>
-  </item>
-  </tpl:Entries>
-
-</channel>
-</rss>
Index: nc/public/default-templates/mustek/rss2.xsl
===================================================================
--- inc/public/default-templates/mustek/rss2.xsl	(revision 2599)
+++ 	(revision )
@@ -1,120 +1,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xsl:stylesheet version="1.0"
-xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
-xmlns:content="http://purl.org/rss/1.0/modules/content/"
-xmlns="http://www.w3.org/1999/xhtml">
-
-<xsl:output method="html"/>
-
-<xsl:template match="/">
-<html>
-  <head>
-    <title>{{tpl:lang Subscribe to}} <xsl:value-of select="/rss/channel/title"/></title>
-    <style type="text/css">
-    <![CDATA[
-    body {
-      font: 80% Verdana,Arial,sans-serif;
-      margin: 20px 0;
-      padding: 0 0;
-      background: #fff;
-      color: #000;
-    }
-    a { color: #039; }
-    h1, h2 { font-family: Arial,sans-serif; }
-    h1 { font-size: 160%; margin: 0; }
-    h2 { font-size: 140%; font-weight: bold; margin: 0.5em 0 0.2em 0; }
-    h2 a { text-decoration: none; }
-    p { margin: 0 0 0.5em 0; }
-    #page {
-      margin: 0 80px;
-    }
-    #top {
-      background: #036;
-      padding : 1em;
-      color: #fff;
-    }
-    #top a {
-      color: #fff;
-      text-decoration: none;
-    }
-    #what {
-      padding: 1em;
-      background: #eee;
-      border-bottom: 1px solid #000;
-      font-size: 80%;
-    }
-    #what p {
-      margin: 0 0 0.5em 0;
-    }
-    #footer {
-      border-top: 1px solid #000;
-    }
-    #items {
-      background: #fff;
-      color: inherit;
-    }
-    #items div {
-      margin: 0 0 1em 0;
-    }
-    ]]>
-    </style>
-    <script type="text/javascript"><![CDATA[
-    window.onload = function() {
-      document.getElementById('feedurl').value = window.location.href;
-
-      // Ugly but works ;)
-      var c = document.getElementsByTagName('div');
-      var t = '';
-      for (var i=0; c.length-i != 0; i++) {
-        if (c[i].className == 'item-content') {
-          if (c[i].textContent) {
-            t = c[i].textContent;
-          } else if (c[i].innerText) {
-            t = c[i].innerText;
-          } else {
-            t = '';
-          }
-
-          if (t) { c[i].innerHTML = t; }
-        }
-      }
-    };
-    ]]></script>
-  </head>
-  <body>
-    <div id="page">
-      <div id="top">
-        <h1><a href="{/rss/channel/link}"><xsl:value-of select="/rss/channel/title"/></a></h1>
-        <p><xsl:value-of select="/rss/channel/description"/></p>
-      </div>
-      <div id="what">
-      <h3>{{tpl:lang What is an RSS feed?}}</h3>
-      <p>{{tpl:lang RSS feed is a free blog summary. It provides content
-      (either posts or comments) or  summaries of content, together with links
-      to the full versions, and other metadata. The last published items may
-      then be read by your favorite RSS
-      <a href="http://en.wikipedia.org/wiki/Aggregator">aggregator</a>.}}</p>
-      <h3>{{tpl:lang Subscribe}}</h3>
-      <p>{{tpl:lang Simply copy the following URL into your aggregator:}}</p>
-      <p><input type="text" size="60" value="" id="feedurl" /></p>
-      </div>
-      <div id="items">
-        <xsl:apply-templates select="//item"/>
-      </div>
-      <div id="footer">
-        <p><xsl:value-of select="/rss/channel/copyright"/></p>
-      </div>
-    </div>
-  </body>
-</html>
-</xsl:template>
-
-<!-- Item template -->
-<xsl:template match="item">
-  <div>
-    <h2><a href="{link}"><xsl:value-of select="title"/></a></h2>
-    <div class="item-content"><xsl:value-of select="description" /></div>
-  </div>
-</xsl:template>
-
-</xsl:stylesheet>
Index: nc/public/default-templates/mustek/search.html
===================================================================
--- inc/public/default-templates/mustek/search.html	(revision 2604)
+++ 	(revision )
@@ -1,151 +1,0 @@
-<!DOCTYPE html>
-<html lang="{{tpl:BlogLanguage}}">
-<head>
-  <meta charset="UTF-8" />
-  <meta name="ROBOTS" content="{{tpl:BlogMetaRobots robots="NOINDEX,NOARCHIVE"}}" />
-
-  <title>{{tpl:lang Search}} - {{tpl:SysSearchString encode_html="1"}} - {{tpl:BlogName encode_html="1"}}<tpl:PaginationIf start="0"> - {{tpl:lang page}} {{tpl:PaginationCurrent}}</tpl:PaginationIf></title>
-  <meta name="copyright" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
-  <meta name="author" content="{{tpl:BlogEditor encode_html="1"}}" />
-  <meta name="date" content="{{tpl:BlogUpdateDate iso8601="1"}}" />
-
-  <link rel="schema.dc" href="http://purl.org/dc/elements/1.1/" />
-  <meta property="dc.title" lang="{{tpl:BlogLanguage}}" content="{{tpl:lang Search}} - {{tpl:SysSearchString encode_html="1"}} - {{tpl:BlogName encode_html="1"}}<tpl:PaginationIf start="0"> - {{tpl:lang page}} {{tpl:PaginationCurrent}}</tpl:PaginationIf>" />
-  <meta property="dc.language" content="{{tpl:BlogLanguage}}" />
-  <meta property="dc.publisher" content="{{tpl:BlogEditor encode_html="1"}}" />
-  <meta property="dc.rights" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
-  <meta property="dc.date" content="{{tpl:BlogUpdateDate iso8601="1"}}" />
-  <meta property="dc.type" content="text" />
-  <meta property="dc.format" content="text/html" />
-
-  <link rel="top" href="{{tpl:BlogURL}}" title="{{tpl:lang Home}}" />
-  <link rel="contents" href="{{tpl:BlogArchiveURL}}" title="{{tpl:lang Archives}}" />
-
-  <tpl:Entries no_content="1">
-    <tpl:EntriesHeader>
-      <tpl:Pagination>
-        <tpl:PaginationIf end="0">
-        <link rel="prev" title="{{tpl:lang previous entries}}" href="{{tpl:PaginationURL offset="1"}}" />
-        </tpl:PaginationIf>
-
-        <tpl:PaginationIf start="0">
-        <link rel="next" title="{{tpl:lang next entries}}" href="{{tpl:PaginationURL offset="-1"}}" />
-        </tpl:PaginationIf>
-      </tpl:Pagination>
-    </tpl:EntriesHeader>
-
-    <link rel="chapter" href="{{tpl:EntryURL}}" title="{{tpl:EntryTitle encode_html="1"}}" />
-  </tpl:Entries>
-
-  <link rel="meta" type="application/xbel+xml" title="Blogroll" href="{{tpl:BlogrollXbelLink}}" />
-
-  {{tpl:include src="_head.html"}}
-</head>
-
-<body class="dc-search">
-<div id="page">
-{{tpl:include src="_top.html"}}
-
-<div id="wrapper">
-
-<div id="main" role="main">
-  <div id="content">
-
-  <div id="content-info">
-    <h2>{{tpl:lang Search}}</h2>
-    <tpl:SysIf search_count="==0">
-      <p>{{tpl:SysSearchString encode_html="1" string="Your search for <em>%1$s</em> returned no result."}}</p>
-    </tpl:SysIf>
-    <tpl:SysIf search_count="==1">
-      <p>{{tpl:SysSearchString encode_html="1" string="Your search for <em>%1$s</em> returned <strong>%2$s</strong> result."}}</p>
-    </tpl:SysIf>
-    <tpl:SysIf search_count="&gt;1">
-      <p>{{tpl:SysSearchString encode_html="1" string="Your search for <em>%1$s</em> returned <strong>%2$s</strong> results."}}</p>
-    </tpl:SysIf>
-  </div>
-
-  <tpl:Entries>
-    <div id="p{{tpl:EntryID}}" class="post {{tpl:EntryIfOdd}} {{tpl:EntryIfFirst}}" lang="{{tpl:EntryLang}}" role="article">
-    <!-- # New day date -->
-    <tpl:DateHeader><p class="day-date">{{tpl:EntryDate}}</p></tpl:DateHeader>
-
-    <h2 class="post-title"><a
-    href="{{tpl:EntryURL}}">{{tpl:EntryTitle encode_html="1"}}</a></h2>
-
-    <p class="post-info">{{tpl:lang By}} {{tpl:EntryAuthorLink}}
-    {{tpl:lang on}} {{tpl:EntryDate}}, {{tpl:EntryTime}}
-    <tpl:EntryIf has_category="1">
-    - <a href="{{tpl:EntryCategoryURL}}">{{tpl:EntryCategory encode_html="1"}}</a>
-    </tpl:EntryIf>
-    </p>
-
-    <tpl:EntryTags>
-    <tpl:TagsHeader><ul class="post-tags"></tpl:TagsHeader>
-    <li><a href="{{tpl:TagURL}}">{{tpl:TagID}}</a></li>
-    <tpl:TagsFooter></ul></tpl:TagsFooter>
-    </tpl:EntryTags>
-
-    <!-- # --BEHAVIOR-- publicEntryBeforeContent -->
-    {{tpl:SysBehavior behavior="publicEntryBeforeContent"}}
-
-    <!-- # Entry with an excerpt -->
-    <tpl:EntryIf extended="1">
-      <div class="post-content">{{tpl:EntryExcerpt}}</div>
-      <p class="read-it"><a href="{{tpl:EntryURL}}"
-      title="{{tpl:lang Continue reading}} {{tpl:EntryTitle encode_html="1"}}">{{tpl:lang Continue
-      reading}}</a>...</p>
-    </tpl:EntryIf>
-
-    <!-- # Entry without excerpt -->
-    <tpl:EntryIf extended="0">
-      <div class="post-content">{{tpl:EntryContent}}</div>
-    </tpl:EntryIf>
-
-    <!-- # --BEHAVIOR-- publicEntryAfterContent -->
-    {{tpl:SysBehavior behavior="publicEntryAfterContent"}}
-
-    <!-- # Number of comments, trackbacks and attachments -->
-    <tpl:EntryIf operator="or" show_comments="1" show_pings="1" has_attachment="1">
-      <p class="post-info-co">
-    </tpl:EntryIf>
-    <tpl:EntryIf show_comments="1">
-      <a href="{{tpl:EntryURL}}#comments" class="comment_count">{{tpl:EntryCommentCount}}</a>
-    </tpl:EntryIf>
-    <tpl:EntryIf show_pings="1">
-      <a href="{{tpl:EntryURL}}#pings" class="ping_count">{{tpl:EntryPingCount}}</a></tpl:EntryIf>
-    <tpl:EntryIf has_attachment="1">
-      <a href="{{tpl:EntryURL}}#attachments" class="attach_count">{{tpl:EntryAttachmentCount}}</a></tpl:EntryIf>
-    <tpl:EntryIf operator="or" show_comments="1" show_pings="1" has_attachment="1">
-      </p>
-    </tpl:EntryIf>
-    </div>
-
-    <tpl:EntriesFooter>
-      <tpl:Pagination>
-        <p class="pagination"><tpl:PaginationIf end="0"><a href="{{tpl:PaginationURL offset="+1"}}" class="prev">&#171;
-        {{tpl:lang previous entries}}</a> - </tpl:PaginationIf>
-        {{tpl:lang page}} {{tpl:PaginationCurrent}} {{tpl:lang of}} {{tpl:PaginationCounter}}
-        <tpl:PaginationIf start="0"> - <a href="{{tpl:PaginationURL offset="-1"}}" class="next">{{tpl:lang next entries}}
-        &#187;</a></tpl:PaginationIf></p>
-      </tpl:Pagination>
-    </tpl:EntriesFooter>
-  </tpl:Entries>
-  </div>
-</div> <!-- End #main -->
-
-<div id="sidebar" role="complementary">
-  <div id="blognav">
-    {{tpl:Widgets type="nav"}}
-  </div> <!-- End #blognav -->
-
-  <div id="blogextra">
-    {{tpl:Widgets type="extra"}}
-  </div> <!-- End #blogextra -->
-</div>
-
-</div> <!-- End #wrapper -->
-
-{{tpl:include src="_footer.html"}}
-</div> <!-- End #page -->
-</body>
-</html>
Index: nc/public/default-templates/mustek/user_head.html
===================================================================
--- inc/public/default-templates/mustek/user_head.html	(revision 2599)
+++ 	(revision )
@@ -1,1 +1,0 @@
-<!-- # This template is included at the end of _head.html template -->
Index: inc/public/default-templates/password-form.html
===================================================================
--- inc/public/default-templates/password-form.html	(revision 2566)
+++ inc/public/default-templates/password-form.html	(revision 2566)
@@ -0,0 +1,41 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+  <meta name="ROBOTS" content="NOARCHIVE,NOINDEX,NOFOLLOW" />
+  <title>{{tpl:lang Password needed}} - {{tpl:BlogName encode_html="1"}}</title>
+
+  <style type="text/css">
+  body {
+  font: 0.8em Verdana,Arial,Geneva,sans-serif;
+  }
+
+  form {
+  display : block;
+  width : 500px;
+  margin : 0 auto;
+  padding : 1em;
+  background : #eee;
+  }
+
+  h2 { font : 140% Arial,Helvetica,sans-serif; margin : 0; }
+
+  label { font-weight : bold; }
+
+  input { border-width : 1px; }
+  </style>
+</head>
+
+<body>
+
+<form action="{{tpl:EntryURL}}" method="post">
+<h2>{{tpl:lang Password needed}}</h2>
+
+<p>{{tpl:lang You must give a password to access this area.}}</p>
+<p><label>{{tpl:lang Password:}} <input type="password" name="password" value="" /></label> <input type="submit" value="ok" /></p>
+
+</form>
+
+</body>
+</html>
Index: inc/public/default-templates/post.html
===================================================================
--- inc/public/default-templates/post.html	(revision 2566)
+++ inc/public/default-templates/post.html	(revision 2566)
@@ -0,0 +1,275 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="{{tpl:BlogLanguage}}" lang="{{tpl:BlogLanguage}}">
+<head>
+  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+  <meta name="ROBOTS" content="{{tpl:BlogMetaRobots}}" />
+
+  <title>{{tpl:EntryTitle encode_html="1"}} - {{tpl:BlogName encode_html="1"}}</title>
+  <meta name="description" lang="{{tpl:EntryLang}}" content="{{tpl:EntryContent full="1" encode_html="1" remove_html="1" cut_string="180"}}" />
+  <meta name="copyright" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
+  <meta name="author" content="{{tpl:EntryAuthorCommonName encode_html="1"}}" />
+  <meta name="date" scheme="W3CDTF" content="{{tpl:EntryDate iso8601="1"}}" />
+
+  <link rel="schema.dc" href="http://purl.org/dc/elements/1.1/" />
+  <meta name="dc.title" content="{{tpl:EntryTitle encode_html="1"}}" />
+  <meta name="dc.description" lang="{{tpl:EntryLang}}" content="{{tpl:EntryContent full="1" encode_html="1" remove_html="1" cut_string="180"}}" />
+  <meta name="dc.creator" content="{{tpl:EntryAuthorCommonName encode_html="1"}}" />
+  <meta name="dc.language" content="{{tpl:EntryLang}}" />
+  <meta name="dc.publisher" content="{{tpl:BlogEditor encode_html="1"}}" />
+  <meta name="dc.rights" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
+  <meta name="dc.date" scheme="W3CDTF" content="{{tpl:EntryDate iso8601="1"}}" />
+  <meta name="dc.type" content="text" />
+  <meta name="dc.format" content="text/html" />
+
+  <link rel="top" href="{{tpl:BlogURL}}" title="{{tpl:lang Home}}" />
+  <link rel="contents" href="{{tpl:BlogArchiveURL}}" title="{{tpl:lang Archives}}" />
+  <tpl:EntryIf pings_active="1"><link rel="pingback" href="{{tpl:BlogXMLRPCURL}}" /></tpl:EntryIf>
+
+  <tpl:EntryNext><link rel="next" href="{{tpl:EntryURL}}"
+  title="{{tpl:EntryTitle encode_html="1"}}" /></tpl:EntryNext>
+
+  <tpl:EntryPrevious><link rel="prev" href="{{tpl:EntryURL}}"
+  title="{{tpl:EntryTitle encode_html="1"}}" /></tpl:EntryPrevious>
+
+  <link rel="alternate" type="application/atom+xml" title="Atom 1.0" href="{{tpl:BlogFeedURL type="atom"}}" />
+
+  {{tpl:include src="_head.html"}}
+
+  <script type="text/javascript" src="{{tpl:BlogThemeURL}}/../default/js/post.js"></script>
+  <script type="text/javascript">
+  //<![CDATA[
+  var post_remember_str = '{{tpl:lang Remember me on this blog}}';
+  //]]>
+  </script>
+</head>
+
+<body class="dc-post">
+<div id="page">
+{{tpl:EntryPingData}}
+
+{{tpl:include src="_top.html"}}
+
+<div id="wrapper">
+
+<div id="main">
+  <div id="content">
+
+  <p id="navlinks">
+  <tpl:EntryPrevious><a href="{{tpl:EntryURL}}"
+  title="{{tpl:EntryTitle encode_html="1"}}" class="prev">&#171; {{tpl:EntryTitle encode_html="1"
+  cut_string="50"}}</a></tpl:EntryPrevious>
+  <tpl:EntryNext> <span>-</span> <a href="{{tpl:EntryURL}}"
+  title="{{tpl:EntryTitle encode_html="1"}}" class="next">{{tpl:EntryTitle encode_html="1"
+  cut_string="50"}} &#187;</a></tpl:EntryNext>
+  </p>
+
+  <div id="p{{tpl:EntryID}}" class="post">
+    <h2 class="post-title">{{tpl:EntryTitle encode_html="1"}}</h2>
+
+    <p class="post-info">{{tpl:lang By}} {{tpl:EntryAuthorLink}}
+    {{tpl:lang on}} {{tpl:EntryDate}}, {{tpl:EntryTime}}
+    <tpl:EntryIf has_category="1">
+    - <a href="{{tpl:EntryCategoryURL}}">{{tpl:EntryCategory encode_html="1"}}</a>
+    </tpl:EntryIf>
+    - <a href="{{tpl:EntryURL}}">{{tpl:lang Permalink}}</a>
+    </p>
+
+    <tpl:EntryTags>
+    <tpl:TagsHeader><ul class="post-tags"></tpl:TagsHeader>
+    <li><a href="{{tpl:TagURL}}" rel="tag">{{tpl:TagID}}</a></li>
+    <tpl:TagsFooter></ul></tpl:TagsFooter>
+    </tpl:EntryTags>
+
+    <!-- # --BEHAVIOR-- publicEntryBeforeContent -->
+    {{tpl:SysBehavior behavior="publicEntryBeforeContent"}}
+
+    <!-- # Entry with an excerpt -->
+    <tpl:EntryIf extended="1">
+      <div class="post-excerpt">{{tpl:EntryExcerpt}}</div>
+    </tpl:EntryIf>
+
+    <div class="post-content">{{tpl:EntryContent}}</div>
+
+    <!-- # --BEHAVIOR-- publicEntryAfterContent -->
+    {{tpl:SysBehavior behavior="publicEntryAfterContent"}}
+  </div>
+
+  <!-- # Attachments -->
+  <tpl:Attachments>
+    <tpl:AttachmentsHeader>
+      <div id="attachments">
+      <h3>{{tpl:lang Attachments}}</h3>
+      <ul>
+    </tpl:AttachmentsHeader>
+      <li class="{{tpl:AttachmentType}}">
+        <tpl:AttachmentIf is_mp3="1">
+          {{tpl:include src="_mp3_player.html"/}} -
+        </tpl:AttachmentIf>
+        <tpl:AttachmentIf is_flv="1">
+	     {{tpl:include src="_flv_player.html"/}}
+	   </tpl:AttachmentIf>
+	   <tpl:AttachmentIf is_flv="0">
+	   	<a href="{{tpl:AttachmentURL}}"
+		title="{{tpl:AttachmentFileName}} ({{tpl:AttachmentSize}})">{{tpl:AttachmentTitle}}</a>
+        </tpl:AttachmentIf>
+      </li>
+    <tpl:AttachmentsFooter>
+      </ul>
+      </div>
+    </tpl:AttachmentsFooter>
+  </tpl:Attachments>
+
+  <!-- # Comments -->
+  <tpl:EntryIf show_comments="1">
+    <tpl:Comments>
+    <tpl:CommentsHeader>
+      <div id="comments">
+        <h3>{{tpl:lang Comments}}</h3>
+      <dl>
+    </tpl:CommentsHeader>
+      <dt id="c{{tpl:CommentID}}" class="{{tpl:CommentIfMe}} {{tpl:CommentIfOdd}} {{tpl:CommentIfFirst}}"><a
+      href="#c{{tpl:CommentID}}" class="comment-number">{{tpl:CommentOrderNumber}}.</a>
+      {{tpl:lang On}} {{tpl:CommentDate}}, {{tpl:CommentTime}}
+      {{tpl:lang by}} {{tpl:CommentAuthorLink}}</dt>
+
+      <dd class="{{tpl:CommentIfMe}} {{tpl:CommentIfOdd}} {{tpl:CommentIfFirst}}">
+      <!-- # --BEHAVIOR-- publicCommentBeforeContent -->
+      {{tpl:SysBehavior behavior="publicCommentBeforeContent"}}
+
+      {{tpl:CommentContent}}
+
+      <!-- # --BEHAVIOR-- publicCommentAfterContent -->
+      {{tpl:SysBehavior behavior="publicCommentAfterContent"}}
+      </dd>
+    <tpl:CommentsFooter>
+      </dl>
+      </div>
+    </tpl:CommentsFooter>
+    </tpl:Comments>
+  </tpl:EntryIf>
+
+  <tpl:EntryIf comments_active="1">
+    <tpl:SysIfFormError>
+      <p class="error" id="pr">{{tpl:SysFormError}}</p>
+    </tpl:SysIfFormError>
+
+    <tpl:SysIfCommentPublished>
+      <p class="message" id="pr">{{tpl:lang Your comment has been published.}}</p>
+    </tpl:SysIfCommentPublished>
+
+    <tpl:SysIfCommentPending>
+      <p class="message" id="pr">{{tpl:lang Your comment has been submitted and
+      will be reviewed for publication.}}</p>
+    </tpl:SysIfCommentPending>
+
+    <!-- # Comment form -->
+    <form action="{{tpl:EntryURL}}#pr" method="post" id="comment-form">
+      <tpl:IfCommentPreview>
+        <div id="pr">
+          <h3>{{tpl:lang Your comment}}</h3>
+          <dl>
+            <dd class="comment-preview">{{tpl:CommentPreviewContent}}</dd>
+          </dl>
+          <p class="buttons"><input type="submit" class="submit" value="{{tpl:lang send}}" /></p>
+        </div>
+      </tpl:IfCommentPreview>
+
+      <h3>{{tpl:lang Add a comment}}</h3>
+      <fieldset>
+        <!-- # --BEHAVIOR-- publicCommentFormBeforeContent -->
+        {{tpl:SysBehavior behavior="publicCommentFormBeforeContent"}}
+
+        <p class="field"><label for="c_name">{{tpl:lang Name or nickname}}&nbsp;:</label>
+        <input name="c_name" id="c_name" type="text" size="30" maxlength="255"
+        value="{{tpl:CommentPreviewName encode_html="1"}}" />
+        </p>
+
+        <p class="field"><label for="c_mail">{{tpl:lang Email address}}&nbsp;:</label>
+        <input name="c_mail" id="c_mail" type="text" size="30" maxlength="255"
+        value="{{tpl:CommentPreviewEmail encode_html="1"}}" />
+        </p>
+
+        <p class="field"><label for="c_site">{{tpl:lang Website}} ({{tpl:lang optional}})&nbsp;:</label>
+        <input name="c_site" id="c_site" type="text" size="30" maxlength="255"
+        value="{{tpl:CommentPreviewSite encode_html="1"}}" />
+        </p>
+
+        <p style="display:none"><input name="f_mail" type="text" size="30"
+        maxlength="255" value="" /></p>
+
+        <p class="field"><label for="c_content">{{tpl:lang Comment}}&nbsp;:</label>
+        <textarea name="c_content" id="c_content" cols="35"
+        rows="7">{{tpl:CommentPreviewContent raw="1" encode_html="1"}}</textarea>
+        </p>
+        <p class="form-help">{{tpl:CommentHelp}}</p>
+
+        <!-- # --BEHAVIOR-- publicCommentFormAfterContent -->
+        {{tpl:SysBehavior behavior="publicCommentFormAfterContent"}}
+      </fieldset>
+
+      <fieldset>
+        <p class="buttons"><input type="submit" class="preview" name="preview" value="{{tpl:lang preview}}" />
+        <tpl:IfCommentPreview><input type="submit" class="submit" value="{{tpl:lang send}}" /></tpl:IfCommentPreview></p>
+      </fieldset>
+    </form>
+  </tpl:EntryIf>
+
+  <!-- # Trackbacks -->
+  <tpl:EntryIf show_pings="1">
+    <div id="pings">
+    <h3>{{tpl:lang They posted on the same topic}}</h3>
+    <tpl:Pings>
+      <tpl:PingsHeader>
+      <dl>
+      </tpl:PingsHeader>
+        <dt id="c{{tpl:PingID}}" class="{{tpl:PingIfOdd}} {{tpl:PingIfFirst}}"><a href="#c{{tpl:PingID}}"
+        class="ping-number">{{tpl:PingOrderNumber}}.</a>
+        {{tpl:lang On}} {{tpl:PingDate}}, {{tpl:PingTime}}
+        {{tpl:lang by}} {{tpl:PingBlogName encode_html="1"}}</dt>
+
+        <dd class="{{tpl:PingIfOdd}} {{tpl:PingIfFirst}}">
+        <!-- # --BEHAVIOR-- publicPingBeforeContent -->
+        {{tpl:SysBehavior behavior="publicPingBeforeContent"}}
+
+        <p><a href="{{tpl:PingAuthorURL}}"
+        {{tpl:PingNoFollow}}>{{tpl:PingTitle encode_html="1"}}</a></p>
+        {{tpl:PingContent}}
+
+        <!-- # --BEHAVIOR-- publicPingAfterContent -->
+        {{tpl:SysBehavior behavior="publicPingAfterContent"}}
+        </dd>
+      <tpl:PingsFooter>
+      </dl>
+      </tpl:PingsFooter>
+    </tpl:Pings>
+    </div>
+  </tpl:EntryIf>
+
+  <tpl:EntryIf pings_active="1">
+    <p id="ping-url">{{tpl:lang Trackback URL}}&nbsp;: {{tpl:EntryPingLink}}</p>
+  </tpl:EntryIf>
+
+  <tpl:EntryIf operator="or" comments_active="1" pings_active="1">
+  <p id="comments-feed"><a class="feed" href="{{tpl:BlogFeedURL type="atom"}}/comments/{{tpl:EntryID}}"
+  title="{{tpl:lang This post's comments Atom feed}}">{{tpl:lang This post's comments feed}}</a></p>
+  </tpl:EntryIf>
+  </div>
+</div> <!-- End #main -->
+
+<div id="sidebar">
+  <div id="blognav">
+    {{tpl:Widgets type="nav"}}
+  </div> <!-- End #blognav -->
+
+  <div id="blogextra">
+    {{tpl:Widgets type="extra"}}
+  </div> <!-- End #blogextra -->
+</div>
+
+</div> <!-- End #wrapper -->
+
+{{tpl:include src="_footer.html"}}
+</div> <!-- End #page -->
+</body>
+</html>
Index: inc/public/default-templates/rss2-comments.xml
===================================================================
--- inc/public/default-templates/rss2-comments.xml	(revision 2566)
+++ inc/public/default-templates/rss2-comments.xml	(revision 2566)
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="utf-8"?>
+<?xml-stylesheet title="XSL formatting" type="text/xsl" href="{{tpl:BlogURL}}feed/rss2/xslt" ?>
+<rss version="2.0"
+  xmlns:dc="http://purl.org/dc/elements/1.1/"
+  xmlns:content="http://purl.org/rss/1.0/modules/content/"
+  xmlns:atom="http://www.w3.org/2005/Atom">
+<channel>
+  <title>{{tpl:BlogName encode_xml="1"}}{{tpl:SysFeedSubtitle encode_xml="1"}}
+  - {{tpl:lang Comments}}</title>
+  <link>{{tpl:BlogURL}}</link>
+  <atom:link href="{{tpl:SysSelfURI}}" rel="self" type="application/rss+xml"/>
+  <description>{{tpl:BlogDescription encode_xml="1"}}</description>
+  <language>{{tpl:BlogLanguage}}</language>
+  <pubDate>{{tpl:BlogUpdateDate rfc822="1"}}</pubDate>
+  <copyright>{{tpl:BlogCopyrightNotice encode_xml="1"}}</copyright>
+  <docs>http://blogs.law.harvard.edu/tech/rss</docs>
+  <generator>Dotclear</generator>
+
+  <tpl:Comments order="desc" with_pings="1">
+
+  <tpl:CommentIf is_ping="1">
+  <item>
+    <title>[ping] {{tpl:PingEntryTitle encode_xml="1"}} - {{tpl:PingBlogName encode_xml="1"}}</title>
+    <link>{{tpl:PingPostURL encode_xml="1"}}#c{{tpl:PingID}}</link>
+    <guid isPermaLink="false">{{tpl:PingFeedID}}</guid>
+    <pubDate>{{tpl:PingDate rfc822="1"}}</pubDate>
+    <dc:creator>{{tpl:PingBlogName encode_xml="1"}}</dc:creator>
+
+    <description>&lt;p&gt;&lt;a href="{{tpl:PingAuthorURL encode_xml="1"}}"&gt;{{tpl:PingTitle encode_xml="1"}}&lt;/a&gt;&lt;/p&gt;
+    {{tpl:PingContent encode_xml="1"}}</description>
+  </item>
+  </tpl:CommentIf>
+
+  <tpl:CommentIf is_ping="0">
+  <item>
+    <title>{{tpl:CommentEntryTitle encode_xml="1"}} - {{tpl:CommentAuthor encode_xml="1"}}</title>
+    <link>{{tpl:CommentPostURL encode_xml="1"}}#c{{tpl:CommentID}}</link>
+    <guid isPermaLink="false">{{tpl:CommentFeedID}}</guid>
+    <pubDate>{{tpl:CommentDate rfc822="1"}}</pubDate>
+    <dc:creator>{{tpl:CommentAuthor encode_xml="1"}}</dc:creator>
+
+    <description>{{tpl:CommentContent absolute_urls="1" encode_xml="1"}}</description>
+  </item>
+  </tpl:CommentIf>
+  </tpl:Comments>
+
+</channel>
+</rss>
Index: inc/public/default-templates/rss2.xml
===================================================================
--- inc/public/default-templates/rss2.xml	(revision 2566)
+++ inc/public/default-templates/rss2.xml	(revision 2566)
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="utf-8"?>
+<?xml-stylesheet title="XSL formatting" type="text/xsl" href="{{tpl:BlogURL}}feed/rss2/xslt" ?>
+<rss version="2.0"
+  xmlns:dc="http://purl.org/dc/elements/1.1/"
+  xmlns:wfw="http://wellformedweb.org/CommentAPI/"
+  xmlns:content="http://purl.org/rss/1.0/modules/content/"
+  xmlns:atom="http://www.w3.org/2005/Atom">
+<channel>
+  <title>{{tpl:BlogName encode_xml="1"}}{{tpl:SysFeedSubtitle encode_xml="1"}}</title>
+  <link>{{tpl:BlogURL}}</link>
+  <atom:link href="{{tpl:SysSelfURI}}" rel="self" type="application/rss+xml"/>
+  <description>{{tpl:BlogDescription encode_xml="1"}}</description>
+  <language>{{tpl:BlogLanguage}}</language>
+  <pubDate>{{tpl:BlogUpdateDate rfc822="1"}}</pubDate>
+  <copyright>{{tpl:BlogCopyrightNotice encode_xml="1"}}</copyright>
+  <docs>http://blogs.law.harvard.edu/tech/rss</docs>
+  <generator>Dotclear</generator>
+
+  <tpl:Entries>
+
+  <item>
+    <title>{{tpl:EntryTitle encode_xml="1"}}</title>
+    <link>{{tpl:EntryURL}}</link>
+    <guid isPermaLink="false">{{tpl:EntryFeedID}}</guid>
+    <pubDate>{{tpl:EntryDate rfc822="1"}}</pubDate>
+    <dc:creator>{{tpl:EntryAuthorCommonName encode_xml="1"}}</dc:creator>
+    <tpl:EntryIf has_category="1">
+    <category>{{tpl:EntryCategory encode_html="1"}}</category>
+    </tpl:EntryIf>
+    <tpl:EntryTags><category>{{tpl:TagID}}</category></tpl:EntryTags>
+
+    <description>{{tpl:EntryExcerpt absolute_urls="1" encode_xml="1"}}
+    {{tpl:EntryContent absolute_urls="1" encode_xml="1"}}</description>
+
+    <tpl:Attachments>
+      <enclosure url="{{tpl:AttachmentURL}}"
+      length="{{tpl:AttachmentSize full="1"}}" type="{{tpl:AttachmentMimeType}}" />
+    </tpl:Attachments>
+
+    <tpl:EntryIf comments_active="1">
+      <comments>{{tpl:EntryURL}}#comment-form</comments>
+      <wfw:comment>{{tpl:EntryURL}}#comment-form</wfw:comment>
+      <wfw:commentRss>{{tpl:BlogFeedURL}}/comments/{{tpl:EntryID}}</wfw:commentRss>
+    </tpl:EntryIf>
+  </item>
+  </tpl:Entries>
+
+</channel>
+</rss>
Index: inc/public/default-templates/rss2.xsl
===================================================================
--- inc/public/default-templates/rss2.xsl	(revision 2566)
+++ inc/public/default-templates/rss2.xsl	(revision 2566)
@@ -0,0 +1,120 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsl:stylesheet version="1.0"
+xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+xmlns:content="http://purl.org/rss/1.0/modules/content/"
+xmlns="http://www.w3.org/1999/xhtml">
+
+<xsl:output method="html"/>
+
+<xsl:template match="/">
+<html>
+  <head>
+    <title>{{tpl:lang Subscribe to}} <xsl:value-of select="/rss/channel/title"/></title>
+    <style type="text/css">
+    <![CDATA[
+    body {
+      font: 80% Verdana,Arial,sans-serif;
+      margin: 20px 0;
+      padding: 0 0;
+      background: #fff;
+      color: #000;
+    }
+    a { color: #039; }
+    h1, h2 { font-family: Arial,sans-serif; }
+    h1 { font-size: 160%; margin: 0; }
+    h2 { font-size: 140%; font-weight: bold; margin: 0.5em 0 0.2em 0; }
+    h2 a { text-decoration: none; }
+    p { margin: 0 0 0.5em 0; }
+    #page {
+      margin: 0 80px;
+    }
+    #top {
+      background: #036;
+      padding : 1em;
+      color: #fff;
+    }
+    #top a {
+      color: #fff;
+      text-decoration: none;
+    }
+    #what {
+      padding: 1em;
+      background: #eee;
+      border-bottom: 1px solid #000;
+      font-size: 80%;
+    }
+    #what p {
+      margin: 0 0 0.5em 0;
+    }
+    #footer {
+      border-top: 1px solid #000;
+    }
+    #items {
+      background: #fff;
+      color: inherit;
+    }
+    #items div {
+      margin: 0 0 1em 0;
+    }
+    ]]>
+    </style>
+    <script type="text/javascript"><![CDATA[
+    window.onload = function() {
+      document.getElementById('feedurl').value = window.location.href;
+
+      // Ugly but works ;)
+      var c = document.getElementsByTagName('div');
+      var t = '';
+      for (var i=0; c.length-i != 0; i++) {
+        if (c[i].className == 'item-content') {
+          if (c[i].textContent) {
+            t = c[i].textContent;
+          } else if (c[i].innerText) {
+            t = c[i].innerText;
+          } else {
+            t = '';
+          }
+
+          if (t) { c[i].innerHTML = t; }
+        }
+      }
+    };
+    ]]></script>
+  </head>
+  <body>
+    <div id="page">
+      <div id="top">
+        <h1><a href="{/rss/channel/link}"><xsl:value-of select="/rss/channel/title"/></a></h1>
+        <p><xsl:value-of select="/rss/channel/description"/></p>
+      </div>
+      <div id="what">
+      <h3>{{tpl:lang What is an RSS feed?}}</h3>
+      <p>{{tpl:lang RSS feed is a free blog summary. It provides content
+      (either posts or comments) or  summaries of content, together with links
+      to the full versions, and other metadata. The last published items may
+      then be read by your favorite RSS
+      <a href="http://en.wikipedia.org/wiki/Aggregator">aggregator</a>.}}</p>
+      <h3>{{tpl:lang Subscribe}}</h3>
+      <p>{{tpl:lang Simply copy the following URL into your aggregator:}}</p>
+      <p><input type="text" size="60" value="" id="feedurl" /></p>
+      </div>
+      <div id="items">
+        <xsl:apply-templates select="//item"/>
+      </div>
+      <div id="footer">
+        <p><xsl:value-of select="/rss/channel/copyright"/></p>
+      </div>
+    </div>
+  </body>
+</html>
+</xsl:template>
+
+<!-- Item template -->
+<xsl:template match="item">
+  <div>
+    <h2><a href="{link}"><xsl:value-of select="title"/></a></h2>
+    <div class="item-content"><xsl:value-of select="description" /></div>
+  </div>
+</xsl:template>
+
+</xsl:stylesheet>
Index: inc/public/default-templates/search.html
===================================================================
--- inc/public/default-templates/search.html	(revision 2566)
+++ inc/public/default-templates/search.html	(revision 2566)
@@ -0,0 +1,152 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="{{tpl:BlogLanguage}}" lang="{{tpl:BlogLanguage}}">
+<head>
+  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+  <meta name="ROBOTS" content="{{tpl:BlogMetaRobots robots="NOINDEX,NOARCHIVE"}}" />
+
+  <title>{{tpl:lang Search}} - {{tpl:SysSearchString encode_html="1"}} - {{tpl:BlogName encode_html="1"}}<tpl:PaginationIf start="0"> - {{tpl:lang page}} {{tpl:PaginationCurrent}}</tpl:PaginationIf></title>
+  <meta name="copyright" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
+  <meta name="author" content="{{tpl:BlogEditor encode_html="1"}}" />
+  <meta name="date" scheme="W3CDTF" content="{{tpl:BlogUpdateDate iso8601="1"}}" />
+
+  <link rel="schema.dc" href="http://purl.org/dc/elements/1.1/" />
+  <meta name="dc.title" lang="{{tpl:BlogLanguage}}" content="{{tpl:lang Search}} - {{tpl:SysSearchString encode_html="1"}} - {{tpl:BlogName encode_html="1"}}<tpl:PaginationIf start="0"> - {{tpl:lang page}} {{tpl:PaginationCurrent}}</tpl:PaginationIf>" />
+  <meta name="dc.language" content="{{tpl:BlogLanguage}}" />
+  <meta name="dc.publisher" content="{{tpl:BlogEditor encode_html="1"}}" />
+  <meta name="dc.rights" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
+  <meta name="dc.date" scheme="W3CDTF" content="{{tpl:BlogUpdateDate iso8601="1"}}" />
+  <meta name="dc.type" content="text" />
+  <meta name="dc.format" content="text/html" />
+
+  <link rel="top" href="{{tpl:BlogURL}}" title="{{tpl:lang Home}}" />
+  <link rel="contents" href="{{tpl:BlogArchiveURL}}" title="{{tpl:lang Archives}}" />
+
+  <tpl:Entries no_content="1">
+    <tpl:EntriesHeader>
+      <tpl:Pagination>
+        <tpl:PaginationIf end="0">
+        <link rel="prev" title="{{tpl:lang previous entries}}" href="{{tpl:PaginationURL offset="1"}}" />
+        </tpl:PaginationIf>
+
+        <tpl:PaginationIf start="0">
+        <link rel="next" title="{{tpl:lang next entries}}" href="{{tpl:PaginationURL offset="-1"}}" />
+        </tpl:PaginationIf>
+      </tpl:Pagination>
+    </tpl:EntriesHeader>
+
+    <link rel="chapter" href="{{tpl:EntryURL}}" title="{{tpl:EntryTitle encode_html="1"}}" />
+  </tpl:Entries>
+
+  <link rel="meta" type="application/xbel+xml" title="Blogroll" href="{{tpl:BlogrollXbelLink}}" />
+
+  {{tpl:include src="_head.html"}}
+</head>
+
+<body class="dc-search">
+<div id="page">
+{{tpl:include src="_top.html"}}
+
+<div id="wrapper">
+
+<div id="main">
+  <div id="content">
+
+  <div id="content-info">
+    <h2>{{tpl:lang Search}}</h2>
+    <tpl:SysIf search_count="==0">
+      <p>{{tpl:SysSearchString encode_html="1" string="Your search for <em>%1$s</em> returned no result."}}</p>
+    </tpl:SysIf>
+    <tpl:SysIf search_count="==1">
+      <p>{{tpl:SysSearchString encode_html="1" string="Your search for <em>%1$s</em> returned <strong>%2$s</strong> result."}}</p>
+    </tpl:SysIf>
+    <tpl:SysIf search_count="&gt;1">
+      <p>{{tpl:SysSearchString encode_html="1" string="Your search for <em>%1$s</em> returned <strong>%2$s</strong> results."}}</p>
+    </tpl:SysIf>
+  </div>
+
+  <tpl:Entries>
+    <div id="p{{tpl:EntryID}}" class="post {{tpl:EntryIfOdd}} {{tpl:EntryIfFirst}}" lang="{{tpl:EntryLang}}" xml:lang="{{tpl:EntryLang}}">
+    <!-- # New day date -->
+    <tpl:DateHeader><p class="day-date">{{tpl:EntryDate}}</p></tpl:DateHeader>
+
+    <h2 class="post-title"><a
+    href="{{tpl:EntryURL}}">{{tpl:EntryTitle encode_html="1"}}</a></h2>
+
+    <p class="post-info">{{tpl:lang By}} {{tpl:EntryAuthorLink}}
+    {{tpl:lang on}} {{tpl:EntryDate}}, {{tpl:EntryTime}}
+    <tpl:EntryIf has_category="1">
+    - <a href="{{tpl:EntryCategoryURL}}">{{tpl:EntryCategory encode_html="1"}}</a>
+    </tpl:EntryIf>
+    </p>
+
+    <tpl:EntryTags>
+    <tpl:TagsHeader><ul class="post-tags"></tpl:TagsHeader>
+    <li><a href="{{tpl:TagURL}}">{{tpl:TagID}}</a></li>
+    <tpl:TagsFooter></ul></tpl:TagsFooter>
+    </tpl:EntryTags>
+
+    <!-- # --BEHAVIOR-- publicEntryBeforeContent -->
+    {{tpl:SysBehavior behavior="publicEntryBeforeContent"}}
+
+    <!-- # Entry with an excerpt -->
+    <tpl:EntryIf extended="1">
+      <div class="post-content">{{tpl:EntryExcerpt}}</div>
+      <p class="read-it"><a href="{{tpl:EntryURL}}"
+      title="{{tpl:lang Continue reading}} {{tpl:EntryTitle encode_html="1"}}">{{tpl:lang Continue
+      reading}}</a>...</p>
+    </tpl:EntryIf>
+
+    <!-- # Entry without excerpt -->
+    <tpl:EntryIf extended="0">
+      <div class="post-content">{{tpl:EntryContent}}</div>
+    </tpl:EntryIf>
+
+    <!-- # --BEHAVIOR-- publicEntryAfterContent -->
+    {{tpl:SysBehavior behavior="publicEntryAfterContent"}}
+
+    <!-- # Number of comments, trackbacks and attachments -->
+    <tpl:EntryIf operator="or" show_comments="1" show_pings="1" has_attachment="1">
+      <p class="post-info-co">
+    </tpl:EntryIf>
+    <tpl:EntryIf show_comments="1">
+      <a href="{{tpl:EntryURL}}#comments" class="comment_count">{{tpl:EntryCommentCount}}</a>
+    </tpl:EntryIf>
+    <tpl:EntryIf show_pings="1">
+      <a href="{{tpl:EntryURL}}#pings" class="ping_count">{{tpl:EntryPingCount}}</a></tpl:EntryIf>
+    <tpl:EntryIf has_attachment="1">
+      <a href="{{tpl:EntryURL}}#attachments" class="attach_count">{{tpl:EntryAttachmentCount}}</a></tpl:EntryIf>
+    <tpl:EntryIf operator="or" show_comments="1" show_pings="1" has_attachment="1">
+      </p>
+    </tpl:EntryIf>
+    </div>
+
+    <tpl:EntriesFooter>
+      <tpl:Pagination>
+        <p class="pagination"><tpl:PaginationIf end="0"><a href="{{tpl:PaginationURL offset="+1"}}" class="prev">&#171;
+        {{tpl:lang previous entries}}</a> - </tpl:PaginationIf>
+        {{tpl:lang page}} {{tpl:PaginationCurrent}} {{tpl:lang of}} {{tpl:PaginationCounter}}
+        <tpl:PaginationIf start="0"> - <a href="{{tpl:PaginationURL offset="-1"}}" class="next">{{tpl:lang next entries}}
+        &#187;</a></tpl:PaginationIf></p>
+      </tpl:Pagination>
+    </tpl:EntriesFooter>
+  </tpl:Entries>
+  </div>
+</div> <!-- End #main -->
+
+<div id="sidebar">
+  <div id="blognav">
+    {{tpl:Widgets type="nav"}}
+  </div> <!-- End #blognav -->
+
+  <div id="blogextra">
+    {{tpl:Widgets type="extra"}}
+  </div> <!-- End #blogextra -->
+</div>
+
+</div> <!-- End #wrapper -->
+
+{{tpl:include src="_footer.html"}}
+</div> <!-- End #page -->
+</body>
+</html>
Index: inc/public/default-templates/user_head.html
===================================================================
--- inc/public/default-templates/user_head.html	(revision 2566)
+++ inc/public/default-templates/user_head.html	(revision 2566)
@@ -0,0 +1,1 @@
+<!-- # This template is included at the end of _head.html template -->
Index: inc/public/lib.tpl.context.php
===================================================================
--- inc/public/lib.tpl.context.php	(revision 2577)
+++ inc/public/lib.tpl.context.php	(revision 2566)
@@ -206,5 +206,7 @@
 
 		$nb_posts = $_ctx->pagination->f(0);
-		$nb_pages = ceil(($nb_posts - $_ctx->nb_entry_first_page) / $_ctx->nb_entry_per_page + 1);
+		$nb_per_page = $_ctx->post_params['limit'][1];
+
+		$nb_pages = ceil($nb_posts/$nb_per_page);
 
 		return $nb_pages;
Index: inc/public/lib.urlhandlers.php
===================================================================
--- inc/public/lib.urlhandlers.php	(revision 2585)
+++ inc/public/lib.urlhandlers.php	(revision 2566)
@@ -86,7 +86,4 @@
 			$_ctx->nb_entry_per_page = $core->blog->settings->system->nb_post_per_page;
 		}
-		if ($_ctx->nb_entry_first_page === null) {
-			$_ctx->nb_entry_first_page = $_ctx->nb_entry_per_page;
-		}
 
 		$tpl_file = $core->tpl->getFilePath($tpl);
@@ -191,5 +188,4 @@
 		else
 		{
-			$_ctx =& $GLOBALS['_ctx'];
 			$core =& $GLOBALS['core'];
 
@@ -200,7 +196,4 @@
 
 			if (empty($_GET['q'])) {
-				if ($core->blog->settings->system->nb_post_for_home !== null) {
-					$_ctx->nb_entry_first_page = $core->blog->settings->system->nb_post_for_home;
-				}
 				self::serveDocument('home.html');
 				$core->blog->publishScheduledEntries();
@@ -418,16 +411,10 @@
 					if ($content != '')
 					{
-						# --BEHAVIOR-- publicBeforeCommentTransform
-						$buffer = $core->callBehavior('publicBeforeCommentTransform',$content);
-						if ($buffer != '') {
-							$content = $buffer;
+						if ($core->blog->settings->system->wiki_comments) {
+							$core->initWikiComment();
 						} else {
-							if ($core->blog->settings->system->wiki_comments) {
-								$core->initWikiComment();
-							} else {
-								$core->initWikiSimpleComment();
-							}
-							$content = $core->wikiTransform($content);
+							$core->initWikiSimpleComment();
 						}
+						$content = $core->wikiTransform($content);
 						$content = $core->HTMLfilter($content);
 					}
Index: inc/public/prepend.php
===================================================================
--- inc/public/prepend.php	(revision 2567)
+++ inc/public/prepend.php	(revision 2566)
@@ -134,15 +134,10 @@
 	$__theme_tpl_path[] = $core->blog->themes_path.'/'.$__parent_theme.'/tpl';
 }
-$tplset = $core->themes->moduleInfo($core->blog->settings->system->theme,'tplset');
-if (!empty($tplset) && is_dir(dirname(__FILE__).'/default-templates/'.$tplset)) {
-	$core->tpl->setPath(
-		$__theme_tpl_path,
-		dirname(__FILE__).'/default-templates/'.$tplset,
-		$core->tpl->getPath());
-} else {
-	$core->tpl->setPath(
-		$__theme_tpl_path,
-		$core->tpl->getPath());
-}
+
+$core->tpl->setPath(
+	$__theme_tpl_path,
+	dirname(__FILE__).'/default-templates',
+	$core->tpl->getPath());
+
 $core->url->mode = $core->blog->settings->system->url_scan;
 
Index: locales/fr/main.po
===================================================================
--- locales/fr/main.po	(revision 2577)
+++ locales/fr/main.po	(revision 2512)
@@ -399,8 +399,4 @@
 
 #, php-format
-msgid "Display %s entries on home page"
-msgstr "Afficher %s billets sur la page d'accueil"
-
-#, php-format
 msgid "Display %s entries per page"
 msgstr "Afficher %s billets par page"
Index: plugins/antispam/filters/class.dc.filter.linkslookup.php
===================================================================
--- plugins/antispam/filters/class.dc.filter.linkslookup.php	(revision 2567)
+++ plugins/antispam/filters/class.dc.filter.linkslookup.php	(revision 2566)
@@ -48,8 +48,4 @@
 
 			$i = count($domain_elem) - 1;
-			if ($i == 0) {
-				// "domain" is 1 word long, don't check it
-				return null;
-			}
 			$host = $domain_elem[$i];
 			do
Index: plugins/antispam/index.php
===================================================================
--- plugins/antispam/index.php	(revision 2567)
+++ plugins/antispam/index.php	(revision 2566)
@@ -117,5 +117,4 @@
 	echo
 		dcPage::jsLoad('js/jquery/jquery-ui.custom.js').
-		dcPage::jsLoad('js/jquery/jquery.ui.touch-punch.js').
 		dcPage::jsLoad('index.php?pf=antispam/antispam.js');
   }
Index: plugins/blogroll/index.php
===================================================================
--- plugins/blogroll/index.php	(revision 2567)
+++ plugins/blogroll/index.php	(revision 2566)
@@ -177,5 +177,4 @@
 	echo
 		dcPage::jsLoad('js/jquery/jquery-ui.custom.js').
-		dcPage::jsLoad('js/jquery/jquery.ui.touch-punch.js').
 		dcPage::jsLoad('index.php?pf=blogroll/blogroll.js');
 	}
Index: lugins/dcLegacyEditor/_admin.php
===================================================================
--- plugins/dcLegacyEditor/_admin.php	(revision 2614)
+++ 	(revision )
@@ -1,29 +1,0 @@
-<?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_ADMIN')) { return; }
-
-$_menu['Plugins']->addItem('dcLegacyEditor',
-'plugin.php?p=dcLegacyEditor',
-'index.php?pf=dcLegacyEditor/imgs/icon.png',
-preg_match('/plugin.php\?p=dcLegacyEditor/', $_SERVER['REQUEST_URI']),
-$core->auth->check('admin,contentadmin', $core->blog->id)
-);
-
-$self_ns = $core->blog->settings->addNamespace('dclegacyeditor');
-
-if ($self_ns->active) {
-    $core->addBehavior('adminPostEditor',array('dcLegacyEditorBehaviors','adminPostEditor'));
-    $core->addBehavior('adminPopupMedia',array('dcLegacyEditorBehaviors','adminPopupMedia'));
-    $core->addBehavior('adminPopupLink',array('dcLegacyEditorBehaviors','adminPopupLink'));
-    $core->addBehavior('adminPopupPosts',array('dcLegacyEditorBehaviors','adminPopupPosts'));
-}
Index: lugins/dcLegacyEditor/_define.php
===================================================================
--- plugins/dcLegacyEditor/_define.php	(revision 2614)
+++ 	(revision )
@@ -1,20 +1,0 @@
-<?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; }
-
-$this->registerModule(
-	/* Name */			"dcLegacyEditor",
-	/* Description*/	"dotclear legacy editor",
-	/* Author */		"dotclear Team",
-	/* Version */		'0.1.0',
-	/* Options */       array('permissions' => 'admin', 'type' => 'plugin')
-);
Index: lugins/dcLegacyEditor/_install.php
===================================================================
--- plugins/dcLegacyEditor/_install.php	(revision 2615)
+++ 	(revision )
@@ -1,26 +1,0 @@
-<?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_ADMIN')) { return; }
-
-$version = $core->plugins->moduleInfo('dclegacyeditor', 'version');
-if (version_compare($core->getVersion('dclegacyeditor'), $version,'>=')) {
-  return;
-}
-
-$settings = $core->blog->settings;
-$settings->addNamespace('dclegacyeditor');
-
-$settings->dclegacyeditor->put('active', true, 'boolean', 'dcLegacyEditor plugin activated ?', false);
-
-$core->setVersion('dclegacyeditor', $version);
-return true;
Index: lugins/dcLegacyEditor/_prepend.php
===================================================================
--- plugins/dcLegacyEditor/_prepend.php	(revision 2614)
+++ 	(revision )
@@ -1,15 +1,0 @@
-<?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; }
-
-$__autoload['dcLegacyEditorBehaviors'] = dirname(__FILE__).'/inc/dc.legacy.editor.behaviors.php';
Index: lugins/dcLegacyEditor/css/jsToolBar/jsToolBar.css
===================================================================
--- plugins/dcLegacyEditor/css/jsToolBar/jsToolBar.css	(revision 2614)
+++ 	(revision )
@@ -1,184 +1,0 @@
-.jstEditor {
-	border-width : 0 1px 1px 1px;
-	border-style : solid;
-	border-color : #ddd;
-	background : #f7f7f7;
-}
-.jstEditor textarea, .jstEditor iframe {
-	-webkit-box-sizing: border-box;
-	-moz-box-sizing: border-box;
-	box-sizing: border-box;
-	margin: 0;
-	border: 1px solid #fbfbfb;
-  	width: 100%;
-  	padding: .5em 0 0 0;
-  	min-height: 100px;
-}
-.jstHandle {
-	height: 8px;
-	background: #ccc url(?pf=dcLegacyEditor/css/jsToolBar/resize.png) no-repeat center center;
-	font-size: 0.1em;
-	cursor: s-resize;
-	border-color: #ccc #ccc #ccc #000;
-	border-width: 0 1px 1px 1px;
-	border-style: solid;
-}
-.jstEditor textarea:focus, .jstEditor iframe:focus {
-	border-color: #bee74b;
-}
-.jstElements {
-	-webkit-box-sizing: border-box;
-	-moz-box-sizing: border-box;
-	box-sizing: border-box;
-	padding: 0 32px 0 1rem;
-	border: 1px solid #dfdfdf;
-	overflow: hidden;
-	background: #f5f5f5;
-	border-radius: 4px 4px 0 0;
-	position: relative;
-	line-height: 30px;
-}
-.jstElements select, .jstElements button {
-	vertical-align: middle;
-}
-.jstElements select {
-	width: 12em;
-	margin-right: .6rem;
-	border: 1px solid #ddd;
-}
-.jstElements button {
-	width: 30px;
-	height: 28px;
-	border-style: solid;
-	border-width: 1px;
-	margin-left: 2px;
-	margin-bottom: 2px;
-	border-color: #e5e5e5 #ccc #ccc #e5e5e5;
-	background-color : #f7f7f7;
-	background-position : 50% 50%;
-	background-repeat: no-repeat;
-}
-.jstElements button:hover, .jstElements button:focus {
-	border-color : #ddd;
-	background-color: #fff;
-}
-.jstElements button span {
-	display: none;
-}
-.jstElements span {
-	display : inline-block;
-	vertical-align: top;
-}
-span.jstSpacer {
-	width : 8px;
-}
-.jstSwitcher {
-	display: block;
-	list-style: none;
-	margin: 0;
-	padding: 0 0 5px 0;
-	background: #dfdfdf;
-	border-top: 1px solid #999;
-}
-.jstSwitcher li {
-	display: inline;
-	margin: 0 0 0 5px;
-	padding: 2px 8px;
-}
-.jstSwitcher li.jstSwitcherCurrent {
-	color: #fff;
-	background: #677374;
-	border-radius: 0 0 2px 2px;
-}
-.jstSwitcher a {
-	font-weight: normal;
-	border-bottom: none !important;
-}
-
-/* Buttons
--------------------------------------------------------- */
-button.jstb_strong {
-	background-image: url(?pf=dcLegacyEditor/css/jsToolBar/bt_strong.png);
-}
-button.jstb_em {
-	background-image: url(?pf=dcLegacyEditor/css/jsToolBar/bt_em.png);
-}
-button.jstb_ins {
-	background-image: url(?pf=dcLegacyEditor/css/jsToolBar/bt_ins.png);
-}
-button.jstb_del {
-	background-image: url(?pf=dcLegacyEditor/css/jsToolBar/bt_del.png);
-}
-button.jstb_quote {
-	background-image: url(?pf=dcLegacyEditor/css/jsToolBar/bt_quote.png);
-}
-button.jstb_code {
-	background-image: url(?pf=dcLegacyEditor/css/jsToolBar/bt_code.png);
-}
-button.jstb_paragraph {
-	background-image: url(?pf=dcLegacyEditor/css/jsToolBar/bt_paragraph.png);
-}
-button.jstb_br {
-	background-image: url(?pf=dcLegacyEditor/css/jsToolBar/bt_br.png);
-}
-button.jstb_blockquote {
-	background-image: url(?pf=dcLegacyEditor/css/jsToolBar/bt_bquote.png);
-}
-button.jstb_pre {
-	background-image: url(?pf=dcLegacyEditor/css/jsToolBar/bt_pre.png);
-}
-button.jstb_ul {
-	background-image: url(?pf=dcLegacyEditor/css/jsToolBar/bt_ul.png);
-}
-button.jstb_ol {
-	background-image: url(?pf=dcLegacyEditor/css/jsToolBar/bt_ol.png);
-}
-button.jstb_link {
-	background-image: url(?pf=dcLegacyEditor/css/jsToolBar/bt_link.png);
-}
-button.jstb_img {
-	background-image: url(?pf=dcLegacyEditor/css/jsToolBar/bt_img.png);
-}
-button.jstb_img_select {
-	background-image: url(?pf=dcLegacyEditor/css/jsToolBar/bt_img_select.png);
-}
-button.jstb_post_link {
-	background-image: url(?pf=dcLegacyEditor/css/jsToolBar/bt_post.png);
-}
-button.jstb_removeFormat {
-	background-color: #e5e5e5;
-	background-image: url(?pf=dcLegacyEditor/css/jsToolBar/bt_clean.png);
-	position: absolute;
-	right: 2px;
-	top: 1px;
-	border-color: #ccc;
-}
-
-/* WYSIWYG Iframe */
-.wysiwygIframe {
-	border-width : 1px;
-	border-style : solid;
-	border-color : #000 #ccc #ccc #000;
-	width : 100%;
-}
-
-/* WYSIWYG Document */
-body.wysiwygDoc {
-	font: 12px "DejaVu Sans","Lucida Grande","Lucida Sans Unicode",Arial,sans-serif;
-	color : #000;
-	background: #f9f9f9;
-	margin: 0;
-	padding : 2px;
-	border: none;
-}
-.wysiwygDoc pre, .wysiwygDoc code, .wysiwygDoc kbd, .wysiwygDoc samp {
-	font-family:"Courier New",Courier,monospace;
-	font-size : 1.1em;
-}
-.wysiwygDoc code {
-	color : #666;
-	font-weight : bold;
-}
-body.wysiwygDoc  > p:first-child {
-	margin-top: 0;
-}
Index: lugins/dcLegacyEditor/inc/dc.legacy.editor.behaviors.php
===================================================================
--- plugins/dcLegacyEditor/inc/dc.legacy.editor.behaviors.php	(revision 2614)
+++ 	(revision )
@@ -1,119 +1,0 @@
-<?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 -----------------------------------------
-
-class dcLegacyEditorBehaviors
-{
-	protected static $p_url = 'index.php?pf=dcLegacyEditor';
-
-	public static function adminPostEditor() {
-		return
-			self::jsToolBar().
-			dcPage::jsLoad(self::$p_url.'/js/_post_editor.js');
-	}
-
-	public static function adminPopupMedia() {
-		return dcPage::jsLoad(self::$p_url.'/js/jsToolBar/popup_media.js');
-	}
-
-	public static function adminPopupLink() {
-		return dcPage::jsLoad(self::$p_url.'/js/jsToolBar/popup_link.js');
-	}
-
-	public static function adminPopupPosts() {
-		return dcPage::jsLoad(self::$p_url.'/js/jsToolBar/popup_posts.js');
-	}
-
-	protected static function jsToolBar() {
-		$res =
-		'<link rel="stylesheet" type="text/css" href="'.self::$p_url.'/css/jsToolBar/jsToolBar.css" />'.
-		'<script type="text/javascript" src="'.self::$p_url.'/js/jsToolBar/jsToolBar.js"></script>';
-
-		if (isset($GLOBALS['core']->auth) && $GLOBALS['core']->auth->getOption('enable_wysiwyg')) {
-			$res .= '<script type="text/javascript" src="'.self::$p_url.'/js/jsToolBar/jsToolBar.wysiwyg.js"></script>';
-		}
-
-		$res .=
-		'<script type="text/javascript" src="'.self::$p_url.'/js/jsToolBar/jsToolBar.dotclear.js"></script>'.
-		'<script type="text/javascript">'."\n".
-		"//<![CDATA[\n".
-		"jsToolBar.prototype.dialog_url = 'popup.php'; ".
-		"jsToolBar.prototype.iframe_css = '".
-		'body{'.
-		'font: 12px "DejaVu Sans","Lucida Grande","Lucida Sans Unicode",Arial,sans-serif;'.
-		'color : #000;'.
-		'background: #f9f9f9;'.
-		'margin: 0;'.
-		'padding : 2px;'.
-		'border: none;'.
-		(l10n::getTextDirection($GLOBALS['_lang']) == 'rtl' ? 'direction:rtl;' : '').
-		'}'.
-		'pre, code, kbd, samp {'.
-		'font-family:"Courier New",Courier,monospace;'.
-		'font-size : 1.1em;'.
-		'}'.
-		'code {'.
-		'color : #666;'.
-		'font-weight : bold;'.
-		'}'.
-		'body > p:first-child {'.
-		'margin-top: 0;'.
-		'}'.
-		"'; ".
-		"jsToolBar.prototype.base_url = '".html::escapeJS($GLOBALS['core']->blog->host)."'; ".
-		"jsToolBar.prototype.switcher_visual_title = '".html::escapeJS(__('visual'))."'; ".
-		"jsToolBar.prototype.switcher_source_title = '".html::escapeJS(__('source'))."'; ".
-		"jsToolBar.prototype.legend_msg = '".
-		html::escapeJS(__('You can use the following shortcuts to format your text.'))."'; ".
-		"jsToolBar.prototype.elements.blocks.options.none = '".html::escapeJS(__('-- none --'))."'; ".
-		"jsToolBar.prototype.elements.blocks.options.nonebis = '".html::escapeJS(__('-- block format --'))."'; ".
-		"jsToolBar.prototype.elements.blocks.options.p = '".html::escapeJS(__('Paragraph'))."'; ".
-		"jsToolBar.prototype.elements.blocks.options.h1 = '".html::escapeJS(__('Level 1 header'))."'; ".
-		"jsToolBar.prototype.elements.blocks.options.h2 = '".html::escapeJS(__('Level 2 header'))."'; ".
-		"jsToolBar.prototype.elements.blocks.options.h3 = '".html::escapeJS(__('Level 3 header'))."'; ".
-		"jsToolBar.prototype.elements.blocks.options.h4 = '".html::escapeJS(__('Level 4 header'))."'; ".
-		"jsToolBar.prototype.elements.blocks.options.h5 = '".html::escapeJS(__('Level 5 header'))."'; ".
-		"jsToolBar.prototype.elements.blocks.options.h6 = '".html::escapeJS(__('Level 6 header'))."'; ".
-		"jsToolBar.prototype.elements.strong.title = '".html::escapeJS(__('Strong emphasis'))."'; ".
-		"jsToolBar.prototype.elements.em.title = '".html::escapeJS(__('Emphasis'))."'; ".
-		"jsToolBar.prototype.elements.ins.title = '".html::escapeJS(__('Inserted'))."'; ".
-		"jsToolBar.prototype.elements.del.title = '".html::escapeJS(__('Deleted'))."'; ".
-		"jsToolBar.prototype.elements.quote.title = '".html::escapeJS(__('Inline quote'))."'; ".
-		"jsToolBar.prototype.elements.code.title = '".html::escapeJS(__('Code'))."'; ".
-		"jsToolBar.prototype.elements.br.title = '".html::escapeJS(__('Line break'))."'; ".
-		"jsToolBar.prototype.elements.blockquote.title = '".html::escapeJS(__('Blockquote'))."'; ".
-		"jsToolBar.prototype.elements.pre.title = '".html::escapeJS(__('Preformated text'))."'; ".
-		"jsToolBar.prototype.elements.ul.title = '".html::escapeJS(__('Unordered list'))."'; ".
-		"jsToolBar.prototype.elements.ol.title = '".html::escapeJS(__('Ordered list'))."'; ".
-
-		"jsToolBar.prototype.elements.link.title = '".html::escapeJS(__('Link'))."'; ".
-		"jsToolBar.prototype.elements.link.href_prompt = '".html::escapeJS(__('URL?'))."'; ".
-		"jsToolBar.prototype.elements.link.hreflang_prompt = '".html::escapeJS(__('Language?'))."'; ".
-
-		"jsToolBar.prototype.elements.img.title = '".html::escapeJS(__('External image'))."'; ".
-		"jsToolBar.prototype.elements.img.src_prompt = '".html::escapeJS(__('URL?'))."'; ".
-
-		"jsToolBar.prototype.elements.img_select.title = '".html::escapeJS(__('Media chooser'))."'; ".
-		"jsToolBar.prototype.elements.post_link.title = '".html::escapeJS(__('Link to an entry'))."'; ".
-		"jsToolBar.prototype.elements.removeFormat = jsToolBar.prototype.elements.removeFormat || {}; ".
-		"jsToolBar.prototype.elements.removeFormat.title = '".html::escapeJS(__('Remove text formating'))."'; ";
-
-		if (!$GLOBALS['core']->auth->check('media,media_admin',$GLOBALS['core']->blog->id)) {
-			$res .= "jsToolBar.prototype.elements.img_select.disabled = true;\n";
-		}
-
-		$res .=
-		"\n//]]>\n".
-		"</script>\n";
-
-		return $res;
-	}
-}
Index: lugins/dcLegacyEditor/index.php
===================================================================
--- plugins/dcLegacyEditor/index.php	(revision 2614)
+++ 	(revision )
@@ -1,32 +1,0 @@
-<?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_ADMIN')) { return; }
-
-$is_super_admin = $core->auth->isSuperAdmin();
-$core->blog->settings->addNameSpace('dclegacyeditor');
-$dclegacyeditor_active = $core->blog->settings->dclegacyeditor->active;
-
-if (!empty($_POST['saveconfig'])) {
-    try {
-        $dclegacyeditor_active = (empty($_POST['dclegacyeditor_active']))?false:true;
-        $core->blog->settings->dclegacyeditor->put('active', $dclegacyeditor_active, 'boolean');
-
-        dcPage::addSuccessNotice(__('The configuration has been updated.'));
-        http::redirect($p_url);
-    } catch(Exception $e) {
-		$core->error->add($e->getMessage());
-    }
-}
-
-include dirname(__FILE__).'/tpl/index.tpl';
-
Index: lugins/dcLegacyEditor/js/_post_editor.js
===================================================================
--- plugins/dcLegacyEditor/js/_post_editor.js	(revision 2614)
+++ 	(revision )
@@ -1,113 +1,0 @@
-$(function() {
-	if ($('#edit-entry').length==0) {return;}
-
-	// Get document format and prepare toolbars
-	var formatField = $('#post_format').get(0);
-	var last_post_format = $(formatField).val();
-	$(formatField).change(function() {
-		// Confirm post format change
-		if(window.confirm(dotclear.msg.confirm_change_post_format_noconvert)){
-			excerptTb.switchMode(this.value);
-			contentTb.switchMode(this.value);
-			last_post_format = $(this).val();
-		}else{
-			// Restore last format if change cancelled
-			$(this).val(last_post_format);
-		}
-
-		$('.format_control > *').addClass('hide');
-		$('.format_control:not(.control_no_'+$(this).val()+') > *').removeClass('hide');
-	});
-
-	var excerptTb = new jsToolBar(document.getElementById('post_excerpt'));
-	var contentTb = new jsToolBar(document.getElementById('post_content'));
-	excerptTb.context = contentTb.context = 'post';
-
-	$('.format_control > *').addClass('hide');
-	$('.format_control:not(.control_no_'+last_post_format+') > *').removeClass('hide');
-
-	if ($('#comment_content').length>0) {
-		var commentTb = new jsToolBar(document.getElementById('comment_content'));
-		commentTb.draw('xhtml');
-	}
-
-	$('#edit-entry').onetabload(function() {
-		// Markup validator
-		var v = $('<div class="format_control"><p><a id="a-validator"></a></p><div/>').get(0);
-		$('.format_control').before(v);
-		var a = $('#a-validator').get(0);
-		a.href = '#';
-		a.className = 'button ';
-		$(a).click(function() {
-
-			excerpt_content = $('#post_excerpt').css('display') != 'none' ? $('#post_excerpt').val() : $('#excerpt-area iframe').contents().find('body').html();
-			post_content	= $('#post_content').css('display') != 'none' ? $('#post_content').val() : $('#content-area iframe').contents().find('body').html();
-
-			var params = {
-				xd_check: dotclear.nonce,
-				f: 'validatePostMarkup',
-				excerpt: excerpt_content,
-				content: post_content,
-				format: $('#post_format').get(0).value,
-				lang: $('#post_lang').get(0).value
-			};
-
-			$.post('services.php',params,function(data) {
-				if ($(data).find('rsp').attr('status') != 'ok') {
-					alert($(data).find('rsp message').text());
-					return false;
-				}
-
-				$('.message, .success, .error, .warning-msg').remove();
-
-				if ($(data).find('valid').text() == 1) {
-					var p = document.createElement('p');
-					p.id = 'markup-validator';
-
-					$(p).addClass('success');
-					$(p).text(dotclear.msg.xhtml_valid);
-					$('#entry-content h3').after(p);
-					$(p).backgroundFade({sColor: dotclear.fadeColor.beginValidatorMsg, eColor: dotclear.fadeColor.endValidatorMsg, steps: 50},function() {
-						$(this).backgroundFade({sColor: dotclear.fadeColor.endValidatorMsg, eColor: dotclear.fadeColor.beginValidatorMsg});
-					});
-				} else {
-					var div = document.createElement('div');
-					div.id = 'markup-validator';
-
-					$(div).addClass('error');
-					$(div).html('<p><strong>' + dotclear.msg.xhtml_not_valid + '</strong></p>' + $(data).find('errors').text());
-					$('#entry-content h3').after(div);
-					$(div).backgroundFade({sColor: dotclear.fadeColor.beginValidatorErr,eColor: dotclear.fadeColor.endValidatorErr, steps: 50},function() {
-						$(this).backgroundFade({sColor: dotclear.fadeColor.endValidatorErr, eColor: dotclear.fadeColor.beginValidatorErr});
-					});
-				}
-
-				if ( $('#post_excerpt').text() != excerpt_content || $('#post_content').text() != post_content ) {
-					var pn = document.createElement('p');
-					$(pn).addClass('warning-msg');
-					$(pn).text(dotclear.msg.warning_validate_no_save_content);
-					$('#entry-content h3').after(pn);
-				}
-
-				return false;
-			});
-
-			return false;
-		});
-
-		a.appendChild(document.createTextNode(dotclear.msg.xhtml_validator));
-
-		// Load toolbars
-		contentTb.switchMode(formatField.value);
-		excerptTb.switchMode(formatField.value);
-
-		// Check unsaved changes before XHTML conversion
-		var excerpt = $('#post_excerpt').val();
-		var content = $('#post_content').val();
-		$('#convert-xhtml').click(function() {
-			if (excerpt != $('#post_excerpt').val() || content != $('#post_content').val()) {
-				return window.confirm(dotclear.msg.confirm_change_post_format);
-			}
-		});
-	});
-});
Index: lugins/dcLegacyEditor/js/jsToolBar/jsToolBar.dotclear.js
===================================================================
--- plugins/dcLegacyEditor/js/jsToolBar/jsToolBar.dotclear.js	(revision 2614)
+++ 	(revision )
@@ -1,386 +1,0 @@
-/* Change link button actions
--------------------------------------------------------- */
-jsToolBar.prototype.elements.link.data = {};
-jsToolBar.prototype.elements.link.fncall = {};
-jsToolBar.prototype.elements.link.open_url = 'popup_link.php';
-
-jsToolBar.prototype.elements.link.popup = function (args) {
-	window.the_toolbar = this;
-	args = args || '';
-
-	this.elements.link.data = {};
-	var url = this.elements.link.open_url+args;
-
-	var p_win = window.open(url,'dc_popup',
-	'alwaysRaised=yes,dependent=yes,toolbar=yes,height=420,width=520,'+
-	'menubar=no,resizable=yes,scrollbars=yes,status=no');
-};
-
-jsToolBar.prototype.elements.link.fn.wiki = function() {
-	this.elements.link.popup.call(this,'?hreflang='+this.elements.link.default_hreflang);
-};
-jsToolBar.prototype.elements.link.fncall.wiki = function() {
-	var data = this.elements.link.data;
-
-	if (data.href == '') { return; }
-
-	var etag = '|'+data.href;
-	if (data.hreflang) { etag += '|'+data.hreflang; }
-
-	if (data.title) {
-		if (!data.hreflang) { etag += '|'; }
-		etag += '|'+data.title;
-	}
-
-	if (data.content) {
-		this.encloseSelection('['+data.content,etag+']');
-	} else {
-		this.encloseSelection('[',etag+']');
-	}
-};
-
-jsToolBar.prototype.elements.link.fn.xhtml = function() {
-	this.elements.link.popup.call(this,'?hreflang='+this.elements.link.default_hreflang);
-};
-jsToolBar.prototype.elements.link.fncall.xhtml = function() {
-	var data = this.elements.link.data;
-
-	if (data.href == '') { return; }
-
-	var stag = '<a href="'+data.href+'"';
-
-	if (data.hreflang) { stag += ' hreflang="'+data.hreflang+'"'; }
-	if (data.title) { stag += ' title="'+data.title+'"'; }
-	stag += '>';
-	var etag = '</a>';
-
-	if (data.content) {
-		this.encloseSelection('','',function() {
-			return stag + data.content + etag;
-		});
-	} else {
-		this.encloseSelection(stag,etag);
-	}
-};
-
-jsToolBar.prototype.elements.link.fn.wysiwyg = function() {
-	var href, title, hreflang;
-	href = title = hreflang = '';
-	hreflang = this.elements.link.default_hreflang;
-
-	var a = this.getAncestor();
-
-	if (a.tagName == 'a') {
-		href= a.tag.href || '';
-		title = a.tag.title || '';
-		hreflang = a.tag.hreflang || '';
-	}
-
-	this.elements.link.popup.call(this,'?href='+href+'&hreflang='+hreflang+'&title='+title);
-};
-jsToolBar.prototype.elements.link.fncall.wysiwyg = function() {
-	var data = this.elements.link.data;
-
-	var a = this.getAncestor();
-
-	if (a.tagName == 'a') {
-		if (data.href == '') {
-			// Remove link
-			this.replaceNodeByContent(a.tag);
-			this.iwin.focus();
-			return;
-		} else {
-			// Update link
-			a.tag.href = data.href;
-			if (data.hreflang) {
-				a.tag.setAttribute('hreflang',data.hreflang);
-			} else {
-				a.tag.removeAttribute('hreflang');
-			}
-			if (data.title) {
-				a.tag.setAttribute('title',data.title);
-			} else {
-				a.tag.removeAttribute('title');
-			}
-			return;
-		}
-	}
-
-	// Create link
-	if (data.content) {
-		var n = document.createTextNode(data.content);
-	} else {
-		var n = this.getSelectedNode();
-	}
-	var a = this.iwin.document.createElement('a');
-	a.href = data.href;
-	if (data.hreflang) a.setAttribute('hreflang',data.hreflang);
-	if (data.title) a.setAttribute('title',data.title);
-	a.appendChild(n);
-	this.insertNode(a);
-};
-jsToolBar.prototype.getAncestor = function() {
-	var res = {};
-	var range, commonAncestorContainer;
-
-	if (this.iwin.getSelection) { //gecko
-		var selection = this.iwin.getSelection();
-		range = selection.getRangeAt(0);
-		commonAncestorContainer = range.commonAncestorContainer;
-		while (commonAncestorContainer.nodeType != 1) {
-			commonAncestorContainer = commonAncestorContainer.parentNode;
-		}
-	} else { //ie
-		range = this.iwin.document.selection.createRange();
-		commonAncestorContainer = range.parentElement();
-	}
-
-	var ancestorTagName = commonAncestorContainer.tagName.toLowerCase();
-	while (ancestorTagName!='a' && ancestorTagName!='body') {
-		commonAncestorContainer = commonAncestorContainer.parentNode;
-		ancestorTagName = commonAncestorContainer.tagName.toLowerCase();
-	}
-
-	res.tag = commonAncestorContainer;
-	res.tagName = ancestorTagName;
-
-	return res;
-};
-
-/* Image selector
--------------------------------------------------------- */
-jsToolBar.prototype.elements.img_select = {
-	type: 'button',
-	title: 'Image chooser',
-	fn: {},
-	fncall: {},
-	open_url: 'media.php?popup=1',
-	data: {},
-	popup: function() {
-		window.the_toolbar = this;
-		this.elements.img_select.data = {};
-
-		var p_win = window.open(this.elements.img_select.open_url,'dc_popup',
-		'alwaysRaised=yes,dependent=yes,toolbar=yes,height=500,width=760,'+
-		'menubar=no,resizable=yes,scrollbars=yes,status=no');
-	}
-};
-jsToolBar.prototype.elements.img_select.fn.wiki = function() {
-	this.elements.img_select.popup.call(this);
-};
-jsToolBar.prototype.elements.img_select.fncall.wiki = function() {
-	var d = this.elements.img_select.data;
-	if (d.src == undefined) { return; }
-
-	this.encloseSelection('','',function(str) {
-		var alt = (str) ? str : d.title;
-		var res = '(('+d.src+'|'+alt;
-
-		if (d.alignment == 'left') {
-			res += '|L';
-		} else if (d.alignment == 'right') {
-			res += '|R';
-		} else if (d.alignment == 'center') {
-			res += '|C';
-		} else if (d.description) {
-			res += '|';
-		}
-
-		if (d.description) {
-			res += '|'+d.description;
-		}
-
-		res += '))';
-
-		if (d.link) {
-			var ltitle = (alt) ? '||'+alt : '';
-			res = '['+res+'|'+d.url+ltitle+']';
-		}
-
-		return res;
-	});
-};
-jsToolBar.prototype.elements.img_select.fn.xhtml = function() {
-	this.elements.img_select.popup.call(this);
-};
-jsToolBar.prototype.elements.img_select.fncall.xhtml = function() {
-	var d = this.elements.img_select.data;
-	if (d.src == undefined) { return; }
-
-	this.encloseSelection('','',function(str) {
-		var alt = (str) ? str : d.title;
-		var res = '<img src="'+d.src+'" alt="'+alt.replace('&','&amp;').replace('>','&gt;').replace('<','&lt;').replace('"','&quot;')+'"';
-
-		if (d.alignment == 'left') {
-			res += ' style="float: left; margin: 0 1em 1em 0;"';
-		} else if (d.alignment == 'right') {
-			res += ' style="float: right; margin: 0 0 1em 1em;"';
-		} else if (d.alignment == 'center') {
-			res += ' style="margin: 0 auto; display: block;"';
-		}
-
-		if (d.description) {
-			res += ' title="'+d.description.replace('&','&amp;').replace('>','&gt;').replace('<','&lt;').replace('"','&quot;')+'"';
-		}
-
-		res += ' />';
-
-		if (d.link) {
-			var ltitle = (alt) ? ' title="'+alt.replace('&','&amp;').replace('>','&gt;').replace('<','&lt;').replace('"','&quot;')+'"' : '';
-			res = '<a href="'+d.url+'"'+ltitle+'>'+res+'</a>';
-		}
-
-		return res;
-	});
-};
-
-jsToolBar.prototype.elements.img.fn.wysiwyg = function() {
-	var src = this.elements.img.prompt.call(this);
-	if (!src) { return; }
-
-	var img = this.iwin.document.createElement('img');
-	img.src = src;
-	img.setAttribute('alt',this.getSelectedText());
-
-	this.insertNode(img);
-};
-
-jsToolBar.prototype.elements.img_select.fn.wysiwyg = function() {
-	this.elements.img_select.popup.call(this);
-};
-jsToolBar.prototype.elements.img_select.fncall.wysiwyg = function() {
-	var d = this.elements.img_select.data;
-	var alt = (this.getSelectedText()) ? this.getSelectedText() : d.title;
-	if (d.src == undefined) { return; }
-
-	var img = this.iwin.document.createElement('img');
-	img.src = d.src;
-	img.setAttribute('alt',alt);
-
-
-	if (d.alignment == 'left') {
-		if (img.style.styleFloat != undefined) {
-			img.style.styleFloat = 'left';
-		} else {
-			img.style.cssFloat = 'left';
-		}
-		img.style.marginTop = 0;
-		img.style.marginRight = '1em';
-		img.style.marginBottom = '1em';
-		img.style.marginLeft = 0;
-	} else if (d.alignment == 'right') {
-		if (img.style.styleFloat != undefined) {
-			img.style.styleFloat = 'right';
-		} else {
-			img.style.cssFloat = 'right';
-		}
-		img.style.marginTop = 0;
-		img.style.marginRight = 0;
-		img.style.marginBottom = '1em';
-		img.style.marginLeft = '1em';
-	} else if (d.alignment == 'center') {
-		img.style.marginTop = 0;
-		img.style.marginRight = 'auto';
-		img.style.marginBottom = 0;
-		img.style.marginLeft = 'auto';
-		img.style.display = 'block';
-	}
-
-	if (d.description) {
-		img.setAttribute('title',d.description);
-	}
-
-	if (d.link) {
-		var a = this.iwin.document.createElement('a');
-		a.href = d.url;
-		if (alt) {
-			a.setAttribute('title',alt);
-		}
-		a.appendChild(img);
-		this.insertNode(a);
-	} else {
-		this.insertNode(img);
-	}
-};
-
-// MP3 helpers
-jsToolBar.prototype.elements.mp3_insert = { fncall: {}, data: {} };
-jsToolBar.prototype.elements.mp3_insert.fncall.wiki = function() {
-	var d = this.elements.mp3_insert.data;
-	if (d.player == undefined) { return; }
-
-	this.encloseSelection('','',function(str) {
-		return '\n///html\n' + d.player + '///\n';
-	});
-};
-jsToolBar.prototype.elements.mp3_insert.fncall.xhtml = function() {
-	var d = this.elements.mp3_insert.data;
-	if (d.player == undefined) { return; }
-
-	this.encloseSelection('','',function(str) {
-		return '\n' + d.player + '\n';
-	});
-};
-jsToolBar.prototype.elements.mp3_insert.fncall.wysiwyg = function() {
-	return;
-};
-
-// FLV helpers
-jsToolBar.prototype.elements.flv_insert = { fncall: {}, data: {} };
-jsToolBar.prototype.elements.flv_insert.fncall.wiki = function() {
-	var d = this.elements.flv_insert.data;
-	if (d.player == undefined) { return; }
-
-	this.encloseSelection('','',function(str) {
-		return '\n///html\n' + d.player + '///\n';
-	});
-};
-jsToolBar.prototype.elements.flv_insert.fncall.xhtml = function() {
-	var d = this.elements.flv_insert.data;
-	if (d.player == undefined) { return; }
-
-	this.encloseSelection('','',function(str) {
-		return '\n' + d.player + '\n';
-	});
-};
-jsToolBar.prototype.elements.flv_insert.fncall.wysiwyg = function() {
-	return;
-};
-
-
-/* Posts selector
--------------------------------------------------------- */
-jsToolBar.prototype.elements.post_link = {
-	type: 'button',
-	title: 'Link to an entry',
-	fn: {},
-	open_url: 'popup_posts.php',
-	data: {},
-	popup: function() {
-		window.the_toolbar = this;
-		this.elements.img_select.data = {};
-
-		var p_win = window.open(this.elements.post_link.open_url,'dc_popup',
-		'alwaysRaised=yes,dependent=yes,toolbar=yes,height=500,width=760,'+
-		'menubar=no,resizable=yes,scrollbars=yes,status=no');
-	}
-};
-jsToolBar.prototype.elements.post_link.fn.wiki = function() {
-	this.elements.post_link.popup.call(this);
-};
-jsToolBar.prototype.elements.post_link.fn.xhtml = function() {
-	this.elements.post_link.popup.call(this);
-};
-jsToolBar.prototype.elements.post_link.fn.wysiwyg = function() {
-	this.elements.post_link.popup.call(this);
-};
-
-// Last space element
-jsToolBar.prototype.elements.space3 = {
-	type:'space',
-	format:{
-		wysiwyg:true,
-		wiki:true,
-		xhtml:true
-	}
-};
Index: lugins/dcLegacyEditor/js/jsToolBar/jsToolBar.js
===================================================================
--- plugins/dcLegacyEditor/js/jsToolBar/jsToolBar.js	(revision 2614)
+++ 	(revision )
@@ -1,612 +1,0 @@
-/* ***** BEGIN LICENSE BLOCK *****
- * This file is part of DotClear.
- * Copyright (c) 2005 Nicolas Martin & Olivier Meunier and contributors. All
- * rights reserved.
- *
- * DotClear is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * DotClear is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with DotClear; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- *
- * ***** END LICENSE BLOCK *****
-*/
-
-function jsToolBar(textarea) {
-	if (!document.createElement) { return; }
-
-	if (!textarea) { return; }
-
-	if ((typeof(document["selection"]) == "undefined")
-	&& (typeof(textarea["setSelectionRange"]) == "undefined")) {
-		return;
-	}
-
-	this.textarea = textarea;
-
-	this.editor = document.createElement('div');
-	this.editor.className = 'jstEditor';
-
-	this.textarea.parentNode.insertBefore(this.editor,this.textarea);
-	this.editor.appendChild(this.textarea);
-
-	this.toolbar = document.createElement("div");
-	this.toolbar.className = 'jstElements';
-	this.editor.parentNode.insertBefore(this.toolbar,this.editor);
-
-	// Dragable resizing (only for gecko)
-	if (navigator.appName == 'Microsoft Internet Explorer')
-	{
-		if (this.editor.addEventListener)
-		{
-			this.handle = document.createElement('div');
-			this.handle.className = 'jstHandle';
-			var dragStart = this.resizeDragStart;
-			var This = this;
-			this.handle.addEventListener('mousedown',function(event) { dragStart.call(This,event); },false);
-			this.editor.parentNode.insertBefore(this.handle,this.editor.nextSibling);
-		}
-	}
-
-	this.context = null;
-	this.toolNodes = {}; // lorsque la toolbar est dessinée , cet objet est garni
-					// de raccourcis vers les éléments DOM correspondants aux outils.
-};
-
-function jsButton(title, fn, scope, className) {
-	this.title = title || null;
-	this.fn = fn || function(){};
-	this.scope = scope || null;
-	this.className = className || null;
-};
-jsButton.prototype.draw = function() {
-	if (!this.scope) return null;
-
-	var button = document.createElement('button');
-	button.setAttribute('type','button');
-	if (this.className) button.className = this.className;
-	button.title = this.title;
-	var span = document.createElement('span');
-	span.appendChild(document.createTextNode(this.title));
-	button.appendChild(span);
-
-	if (this.icon != undefined) {
-		button.style.backgroundImage = 'url('+this.icon+')';
-	}
-	if (typeof(this.fn) == 'function') {
-		var This = this;
-		button.onclick = function() { try { This.fn.apply(This.scope, arguments) } catch (e) {} return false; };
-	}
-	return button;
-};
-
-function jsSpace(id) {
-	this.id = id || null;
-	this.width = null;
-};
-jsSpace.prototype.draw = function() {
-	var span = document.createElement('span');
-	if (this.id) span.id = this.id;
-	span.appendChild(document.createTextNode(String.fromCharCode(160)));
-	span.className = 'jstSpacer';
-	if (this.width) span.style.marginRight = this.width+'px';
-
-	return span;
-};
-
-function jsCombo(title, options, scope, fn, className) {
-	this.title = title || null;
-	this.options = options || null;
-	this.scope = scope || null;
-	this.fn = fn || function(){};
-	this.className = className || null;
-};
-jsCombo.prototype.draw = function() {
-	if (!this.scope || !this.options) return null;
-
-	var select = document.createElement('select');
-	if (this.className) select.className = className;
-	select.title = this.title;
-
-	for (var o in this.options) {
-		//var opt = this.options[o];
-		var option = document.createElement('option');
-		option.value = o;
-		option.appendChild(document.createTextNode(this.options[o]));
-		select.appendChild(option);
-	}
-
-	var This = this;
-	select.onchange = function() {
-		try {
-			This.fn.call(This.scope, this.value);
-		} catch (e) { alert(e); }
-
-		return false;
-	};
-
-	return select;
-};
-
-
-jsToolBar.prototype = {
-	base_url: '',
-	mode: 'xhtml',
-	elements: {},
-
-	getMode: function() {
-		return this.mode;
-	},
-
-	setMode: function(mode) {
-		this.mode = mode || 'xhtml';
-	},
-
-	switchMode: function(mode) {
-		mode = mode || 'xhtml';
-		this.draw(mode);
-	},
-
-	button: function(toolName) {
-		var tool = this.elements[toolName];
-		if (typeof tool.fn[this.mode] != 'function') return null;
-		var b = new jsButton(tool.title, tool.fn[this.mode], this, 'jstb_'+toolName);
-		if (tool.icon != undefined) {
-			b.icon = tool.icon;
-		}
-		return b;
-	},
-	space: function(toolName) {
-		var tool = new jsSpace(toolName);
-		if (this.elements[toolName].format != undefined && !this.elements[toolName].format[this.mode]) return null;
-		if (this.elements[toolName].width !== undefined) {
-			tool.width = this.elements[toolName].width;
-		}
-		return tool;
-	},
-	combo: function(toolName) {
-		var tool = this.elements[toolName];
-
-		if( tool[this.mode] != undefined) {
-
-			var length = tool[this.mode].list.length;
-
-			if (typeof tool[this.mode].fn != 'function' || length == 0) {
-				return null;
-			} else {
-				var options = {};
-				for (var i=0; i < length; i++) {
-					var opt = tool[this.mode].list[i];
-					options[opt] = tool.options[opt];
-				}
-				return new jsCombo(tool.title, options, this, tool[this.mode].fn);
-			}
-
-		}
-
-	},
-	draw: function(mode) {
-		this.setMode(mode);
-
-		// Empty toolbar
-		while (this.toolbar.hasChildNodes()) {
-			this.toolbar.removeChild(this.toolbar.firstChild)
-		}
-		this.toolNodes = {}; // vide les raccourcis DOM/**/
-
-		// Draw toolbar elements
-		var b, tool, newTool;
-
-		for (var i in this.elements) {
-			b = this.elements[i];
-
-			var disabled =
-			b.type == undefined || b.type == ''
-			|| (b.disabled != undefined && b.disabled)
-			|| (b.context != undefined && b.context != null && b.context != this.context);
-
-			if (!disabled && typeof this[b.type] == 'function') {
-				tool = this[b.type](i);
-				if (tool) newTool = tool.draw();
-				if (newTool) {
-					this.toolNodes[i] = newTool; //mémorise l'accès DOM pour usage éventuel ultérieur
-					this.toolbar.appendChild(newTool);
-				}
-			}
-		}
-	},
-
-	singleTag: function(stag,etag) {
-		stag = stag || null;
-		etag = etag || stag;
-
-		if (!stag || !etag) { return; }
-
-		this.encloseSelection(stag,etag);
-	},
-
-	encloseSelection: function(prefix, suffix, fn) {
-		this.textarea.focus();
-
-		prefix = prefix || '';
-		suffix = suffix || '';
-
-		var start, end, sel, scrollPos, subst, res;
-
-		if (typeof(document["selection"]) != "undefined") {
-			sel = document.selection.createRange().text;
-		} else if (typeof(this.textarea["setSelectionRange"]) != "undefined") {
-			start = this.textarea.selectionStart;
-			end = this.textarea.selectionEnd;
-			scrollPos = this.textarea.scrollTop;
-			sel = this.textarea.value.substring(start, end);
-		}
-
-		if (sel.match(/ $/)) { // exclude ending space char, if any
-			sel = sel.substring(0, sel.length - 1);
-			suffix = suffix + " ";
-		}
-
-		if (typeof(fn) == 'function') {
-			res = (sel) ? fn.call(this,sel) : fn('');
-		} else {
-			res = (sel) ? sel : '';
-		}
-
-		subst = prefix + res + suffix;
-
-		if (typeof(document["selection"]) != "undefined") {
-			var range = document.selection.createRange().text = subst;
-			this.textarea.caretPos -= suffix.length;
-		} else if (typeof(this.textarea["setSelectionRange"]) != "undefined") {
-			this.textarea.value = this.textarea.value.substring(0, start) + subst +
-			this.textarea.value.substring(end);
-			if (sel) {
-				this.textarea.setSelectionRange(start + subst.length, start + subst.length);
-			} else {
-				this.textarea.setSelectionRange(start + prefix.length, start + prefix.length);
-			}
-			this.textarea.scrollTop = scrollPos;
-		}
-	},
-
-	stripBaseURL: function(url) {
-		if (this.base_url != '') {
-			var pos = url.indexOf(this.base_url);
-			if (pos == 0) {
-				url = url.substr(this.base_url.length);
-			}
-		}
-
-		return url;
-	}
-};
-
-/** Resizer
--------------------------------------------------------- */
-jsToolBar.prototype.resizeSetStartH = function() {
-	this.dragStartH = this.textarea.offsetHeight + 0;
-};
-jsToolBar.prototype.resizeDragStart = function(event) {
-	var This = this;
-	this.dragStartY = event.clientY;
-	this.resizeSetStartH();
-	document.addEventListener('mousemove', this.dragMoveHdlr=function(event){This.resizeDragMove(event);}, false);
-	document.addEventListener('mouseup', this.dragStopHdlr=function(event){This.resizeDragStop(event);}, false);
-};
-
-jsToolBar.prototype.resizeDragMove = function(event) {
-	this.textarea.style.height = (this.dragStartH+event.clientY-this.dragStartY)+'px';
-};
-
-jsToolBar.prototype.resizeDragStop = function(event) {
-	document.removeEventListener('mousemove', this.dragMoveHdlr, false);
-	document.removeEventListener('mouseup', this.dragStopHdlr, false);
-};
-
-// Elements definition ------------------------------------
-// block format (paragraph, headers)
-jsToolBar.prototype.elements.blocks = {
-	type: 'combo',
-	title: 'block format',
-	options: {
-		none: '-- none --', // only for wysiwyg mode
-		nonebis: '- block format -', // only for xhtml mode
-		p: 'Paragraph',
-		h1: 'Header 1',
-		h2: 'Header 2',
-		h3: 'Header 3',
-		h4: 'Header 4',
-		h5: 'Header 5',
-		h6: 'Header 6'
-	},
-	xhtml: {
-		list: ['nonebis','p','h1','h2','h3','h4','h5','h6'],
-		fn: function(opt) {
-			if (opt=='nonebis')
-				this.textarea.focus();
-			else
-				try {this.singleTag('<'+opt+'>','</'+opt+'>');} catch(e){};
-			this.toolNodes.blocks.value = 'nonebis';
-		}
-	},
-	wiki: {
-		list: ['nonebis','h3','h4','h5'],
-		fn: function(opt) {
-			switch (opt) {
-				case 'nonebis': this.textarea.focus(); break;
-				case 'h3': this.encloseSelection('!!!'); break;
-				case 'h4': this.encloseSelection('!!'); break;
-				case 'h5': this.encloseSelection('!'); break;
-			}
-			this.toolNodes.blocks.value = 'nonebis';
-		}
-	}
-};
-
-// spacer
-jsToolBar.prototype.elements.space0 = {
-	type:'space',
-	format:{
-		wysiwyg:true,
-		wiki:true,
-		xhtml:true
-	}
-};
-
-// strong
-jsToolBar.prototype.elements.strong = {
-	type: 'button',
-	title: 'Strong emphasis',
-	fn: {
-		wiki: function() { this.singleTag('__') },
-		xhtml: function() { this.singleTag('<strong>','</strong>') }
-	}
-};
-
-// em
-jsToolBar.prototype.elements.em = {
-	type: 'button',
-	title: 'Emphasis',
-	fn: {
-		wiki: function() { this.singleTag("''") },
-		xhtml: function() { this.singleTag('<em>','</em>') }
-	}
-};
-
-// ins
-jsToolBar.prototype.elements.ins = {
-	type: 'button',
-	title: 'Inserted',
-	fn: {
-		wiki: function() { this.singleTag('++') },
-		xhtml: function() { this.singleTag('<ins>','</ins>') }
-	}
-};
-
-// del
-jsToolBar.prototype.elements.del = {
-	type: 'button',
-	title: 'Deleted',
-	fn: {
-		wiki: function() { this.singleTag('--') },
-		xhtml: function() { this.singleTag('<del>','</del>') }
-	}
-};
-
-// quote
-jsToolBar.prototype.elements.quote = {
-	type: 'button',
-	title: 'Inline quote',
-	fn: {
-		wiki: function() { this.singleTag('{{','}}') },
-		xhtml: function() { this.singleTag('<q>','</q>') }
-	}
-};
-
-// code
-jsToolBar.prototype.elements.code = {
-	type: 'button',
-	title: 'Code',
-	fn: {
-		wiki: function() { this.singleTag('@@') },
-		xhtml: function() { this.singleTag('<code>','</code>')}
-	}
-};
-
-// spacer
-jsToolBar.prototype.elements.space1 = {
-	type:'space',
-	format:{
-		wysiwyg:true,
-		wiki:true,
-		xhtml:true
-	}
-};
-
-// br
-jsToolBar.prototype.elements.br = {
-	type: 'button',
-	title: 'Line break',
-	fn: {
-		wiki: function() { this.encloseSelection("%%%\n",'') },
-		xhtml: function() { this.encloseSelection("<br />\n",'')}
-	}
-};
-
-// spacer
-jsToolBar.prototype.elements.space2 = {
-	type:'space',
-	format:{
-		wysiwyg:true,
-		wiki:true,
-		xhtml:true
-	}
-};
-
-// blockquote
-jsToolBar.prototype.elements.blockquote = {
-	type: 'button',
-	title: 'Blockquote',
-	fn: {
-		xhtml: function() { this.singleTag('<blockquote>','</blockquote>') },
-		wiki: function() {
-			this.encloseSelection("\n",'',
-			function(str) {
-				str = str.replace(/\r/g,'');
-				return '> '+str.replace(/\n/g,"\n> ");
-			});
-		}
-	}
-};
-
-// pre
-jsToolBar.prototype.elements.pre = {
-	type: 'button',
-	title: 'Preformated text',
-	fn: {
-		wiki: function() { this.singleTag("///\n","\n///") },
-		xhtml: function() { this.singleTag('<pre>','</pre>') }
-	}
-};
-
-// ul
-jsToolBar.prototype.elements.ul = {
-	type: 'button',
-	title: 'Unordered list',
-	fn: {
-		wiki: function() {
-			this.encloseSelection('','',function(str) {
-				str = str.replace(/\r/g,'');
-				return '* '+str.replace(/\n/g,"\n* ");
-			});
-		},
-		xhtml: function() {
-			this.encloseSelection('','',function(str) {
-				str = str.replace(/\r/g,'');
-				str = str.replace(/\n/g,"</li>\n <li>");
-				return "<ul>\n <li>"+str+"</li>\n</ul>";
-			});
-		}
-	}
-};
-
-// ol
-jsToolBar.prototype.elements.ol = {
-	type: 'button',
-	title: 'Ordered list',
-	fn: {
-		wiki: function() {
-			this.encloseSelection('','',function(str) {
-				str = str.replace(/\r/g,'');
-				return '# '+str.replace(/\n/g,"\n# ");
-			});
-		},
-		xhtml: function() {
-			this.encloseSelection('','',function(str) {
-				str = str.replace(/\r/g,'');
-				str = str.replace(/\n/g,"</li>\n <li>");
-				return "<ol>\n <li>"+str+"</li>\n</ol>";
-			});
-		}
-	}
-};
-
-// spacer
-jsToolBar.prototype.elements.space3 = {
-	type:'space',
-	format:{
-		wysiwyg:true,
-		wiki:true,
-		xhtml:true
-	}
-};
-
-// link
-jsToolBar.prototype.elements.link = {
-	type: 'button',
-	title: 'Link',
-	fn: {},
-	href_prompt: 'Please give page URL:',
-	hreflang_prompt: 'Language of this page:',
-	default_hreflang: '',
-	prompt: function(href,hreflang) {
-		href = href || '';
-		hreflang = hreflang || this.elements.link.default_hreflang;
-
-		href = window.prompt(this.elements.link.href_prompt,href);
-		if (!href) { return false; }
-
-		hreflang = window.prompt(this.elements.link.hreflang_prompt,
-		hreflang);
-
-		return { href: this.stripBaseURL(href), hreflang: hreflang };
-	}
-};
-
-jsToolBar.prototype.elements.link.fn.xhtml = function() {
-	var link = this.elements.link.prompt.call(this);
-	if (link) {
-		var stag = '<a href="'+link.href+'"';
-		if (link.hreflang) { stag = stag+' hreflang="'+link.hreflang+'"'; }
-		stag = stag+'>';
-		var etag = '</a>';
-
-		this.encloseSelection(stag,etag);
-	}
-};
-jsToolBar.prototype.elements.link.fn.wiki = function() {
-	var link = this.elements.link.prompt.call(this);
-	if (link) {
-		var stag = '[';
-		var etag = '|'+link.href;
-		if (link.hreflang) { etag = etag+'|'+link.hreflang; }
-		etag = etag+']';
-
-		this.encloseSelection(stag,etag);
-	}
-};
-
-// img
-jsToolBar.prototype.elements.img = {
-		type: 'button',
-		title: 'External image',
-		src_prompt: 'Please give image URL:',
-		fn: {},
-		prompt: function(src) {
-			src = src || '';
-			return this.stripBaseURL(window.prompt(this.elements.img.src_prompt,src));
-		}
-};
-jsToolBar.prototype.elements.img.fn.xhtml = function() {
-	var src = this.elements.img.prompt.call(this);
-	if (src) {
-		this.encloseSelection('','',function(str) {
-			if (str) {
-				return '<img src="'+src+'" alt="'+str+'" />';
-			} else {
-				return '<img src="'+src+'" alt="" />';
-			}
-		});
-	}
-};
-jsToolBar.prototype.elements.img.fn.wiki = function() {
-	var src = this.elements.img.prompt.call(this);
-	if (src) {
-		this.encloseSelection('','',function(str) {
-			if (str) {
-				return '(('+src+'|'+str+'))';
-			} else {
-				return '(('+src+'))';
-			}
-		});
-	}
-};
Index: lugins/dcLegacyEditor/js/jsToolBar/jsToolBar.wysiwyg.js
===================================================================
--- plugins/dcLegacyEditor/js/jsToolBar/jsToolBar.wysiwyg.js	(revision 2614)
+++ 	(revision )
@@ -1,801 +1,0 @@
-/* ***** BEGIN LICENSE BLOCK *****
- * This file is part of DotClear.
- * Copyright (c) 2005 Nicolas Martin & Olivier Meunier and contributors. All
- * rights reserved.
- *
- * DotClear is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * DotClear is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with DotClear; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- *
- * ***** END LICENSE BLOCK *****
-*/
-
-jsToolBar.prototype.can_wwg = (document.designMode != undefined);
-jsToolBar.prototype.iframe = null;
-jsToolBar.prototype.iwin = null;
-jsToolBar.prototype.ibody = null;
-jsToolBar.prototype.iframe_css = null;
-
-/* Editor methods
--------------------------------------------------------- */
-jsToolBar.prototype.drawToolBar = jsToolBar.prototype.draw;
-jsToolBar.prototype.draw = function(mode) {
-	mode = mode || 'xhtml';
-
-	if (this.can_wwg) {
-		this.mode = 'wysiwyg';
-		this.drawToolBar('wysiwyg');
-		this.initWindow();
-	} else {
-		this.drawToolBar(mode);
-	}
-};
-
-jsToolBar.prototype.switchMode = function(mode) {
-	mode = mode || 'xhtml';
-
-	if (mode == 'xhtml') {
-		this.wwg_mode = true;
-		this.draw(mode);
-	} else {
-		if (this.wwg_mode) {
-			this.syncContents('iframe');
-		}
-		this.wwg_mode = false;
-		this.removeEditor();
-		this.textarea.style.display = '';
-		this.drawToolBar(mode);
-	}
-};
-
-jsToolBar.prototype.syncContents = function(from) {
-	from = from || 'textarea';
-	var This = this;
-	if (from == 'textarea') {
-		initContent();
-	} else {
-		this.validBlockquote();
-		var html = this.applyHtmlFilters(this.ibody.innerHTML);
-		if (html == '<br />') { html = '<p></p>'; }
-		this.textarea.value = html;
-	}
-
-	function initContent() {
-		if (!This.iframe.contentWindow.document || !This.iframe.contentWindow.document.body) {
-			setTimeout(initContent, 1);
-			return;
-		}
-		This.ibody = This.iframe.contentWindow.document.body;
-
-		if (This.textarea.value != '' && This.textarea.value != '<p></p>') {
-			This.ibody.innerHTML = This.applyWysiwygFilters(This.textarea.value);
-			if (This.ibody.createTextRange) { //cursor at the begin for IE
-				var IErange = This.ibody.createTextRange();
-				IErange.execCommand("SelectAll");
-				IErange.collapse();
-				IErange.select();
-			}
-		} else {
-			var idoc = This.iwin.document;
-			var para = idoc.createElement('p');
-			para.appendChild(idoc.createElement('br'));
-			while (idoc.body.hasChildNodes()) {
-				idoc.body.removeChild(idoc.body.lastChild);
-			}
-			idoc.body.appendChild(para);
-		}
-	}
-};
-jsToolBar.prototype.htmlFilters = {
-	tagsoup: function(str){
-		return this.tagsoup2xhtml(str);
-	}
-};
-jsToolBar.prototype.applyHtmlFilters = function(str) {
-	for (var fn in this.htmlFilters) {
-		 str = this.htmlFilters[fn].call(this, str);
-	}
-	return str;
-};
-jsToolBar.prototype.wysiwygFilters = {};
-jsToolBar.prototype.applyWysiwygFilters = function( str) {
-	for (var fn in this.wysiwygFilters) {
-		 str = this.wysiwygFilters[fn].call(this, str);
-	}
-	return str;
-};
-
-jsToolBar.prototype.switchEdit = function() {
-	if (this.wwg_mode) {
-		this.textarea.style.display = '';
-		this.iframe.style.display = 'none';
-		this.syncContents('iframe');
-		this.drawToolBar('xhtml');
-		this.wwg_mode = false;
-		this.focusEditor();
-	} else {
-		this.iframe.style.display = '';
-		this.textarea.style.display = 'none';
-		this.syncContents('textarea');
-		this.drawToolBar('wysiwyg');
-		this.wwg_mode = true;
-		this.focusEditor();
-	}
-	this.setSwitcher();
-};
-
-/** Creates iframe for editor, inits a blank document
-*/
-jsToolBar.prototype.initWindow = function() {
-	var This = this;
-
-	this.iframe = document.createElement('iframe');
-	this.textarea.parentNode.insertBefore(this.iframe,this.textarea.nextSibling);
-
-	this.switcher = document.createElement('ul');
-	this.switcher.className = 'jstSwitcher';
-	this.editor.appendChild(this.switcher);
-
-	this.iframe.height = this.textarea.offsetHeight + 0;
-	this.iframe.width = this.textarea.offsetWidth + 0;
-
-	if (this.textarea.tabIndex != undefined) {
-		this.iframe.tabIndex = this.textarea.tabIndex;
-	}
-
-	function initIframe() {
-		var doc = This.iframe.contentWindow.document;
-		if (!doc) {
-			setTimeout(initIframe,1);
-			return false;
-		}
-
-		doc.open();
-		var html =
-		'<html>\n'+
-		'<head>\n'+
-		'<style type="text/css">'+This.iframe_css+'</style>\n'+
-		(This.base_url != '' ? '<base href="'+This.base_url+'" />' : '')+
-		'</head>\n'+
-		'<body>\n'+
-		'</body>\n'+
-		'</html>';
-
-		doc.write(html);
-		doc.close();
-		if (document.all) { // for IE
-			doc.designMode = 'on';
-			// warning : doc is now inaccessible for IE6 sp1
-		}
-
-		This.iwin = This.iframe.contentWindow;
-
-		This.syncContents('textarea');
-
-		if (This.wwg_mode == undefined) {
-			This.wwg_mode = true;
-		}
-
-		if (This.wwg_mode) {
-			This.textarea.style.display = 'none';
-		} else {
-			This.iframe.style.display = 'none';
-		}
-
-		// update textarea on submit
-		if (This.textarea.form) {
-			chainHandler(This.textarea.form,'onsubmit', function() {
-				if (This.wwg_mode) {
-					This.syncContents('iframe');
-				}
-			});
-		}
-
-		for (var evt in This.iwinEvents) {
-			var event = This.iwinEvents[evt];
-			This.addIwinEvent(This.iframe.contentWindow.document, event.type, event.fn, This);
-		}
-
-		This.setSwitcher();
-		try { This.iwin.document.designMode = 'on'; } catch (e) {}; // Firefox needs this
-
-		return true;
-	}
-	initIframe();
-};
-jsToolBar.prototype.addIwinEvent = function(target, type, fn, scope) {
-	var myFn = function(e){fn.call(scope, e)};
-	addEvent(target, type, myFn, true);
-	// fix memory leak
-	addEvent(scope.iwin, 'unload', function(){
-		removeEvent(target, type, myFn, true);
-	}, true);
-};
-jsToolBar.prototype.iwinEvents = {
-	block1: {
-		type: 'mouseup',
-		fn: function(){ this.adjustBlockLevelCombo() }
-	},
-	block2: {
-		type: 'keyup',
-		fn: function(){ this.adjustBlockLevelCombo() }
-	}
-};
-
-/** Insert a mode switcher after editor area
-*/
-jsToolBar.prototype.switcher_visual_title = 'visual';
-jsToolBar.prototype.switcher_source_title = 'source';
-jsToolBar.prototype.setSwitcher = function() {
-	while (this.switcher.hasChildNodes()) {
-		this.switcher.removeChild(this.switcher.firstChild);
-	}
-
-	var This = this;
-	function setLink(title,link) {
-		var li = document.createElement('li');
-		if (link) {
-			var a = document.createElement('a');
-			a.href = '#';
-			a.editor = This;
-			a.onclick = function() { this.editor.switchEdit(); return false; };
-			a.appendChild(document.createTextNode(title));
-		} else {
-			li.className = 'jstSwitcherCurrent';
-			a = document.createTextNode(title);
-		}
-
-		li.appendChild(a);
-		This.switcher.appendChild(li);
-	}
-
-	setLink(this.switcher_visual_title,!this.wwg_mode);
-	setLink(this.switcher_source_title,this.wwg_mode);
-};
-
-/** Removes editor area and mode switcher
-*/
-jsToolBar.prototype.removeEditor = function() {
-	if (this.iframe != null) {
-		this.iframe.parentNode.removeChild(this.iframe);
-		this.iframe = null;
-	}
-
-	if (this.switcher != undefined && this.switcher.parentNode != undefined) {
-		this.switcher.parentNode.removeChild(this.switcher);
-	}
-};
-
-/** Focus on the editor area
-*/
-jsToolBar.prototype.focusEditor = function() {
-	if (this.wwg_mode) {
-		try { this.iwin.document.designMode = 'on'; } catch (e) {}; // Firefox needs this
-		var This = this;
-		setTimeout(function() {This.iframe.contentWindow.focus()},1);
-	} else {
-		this.textarea.focus();
-	}
-};
-
-/** Resizer
-*/
-jsToolBar.prototype.resizeSetStartH = function() {
-	if (this.wwg_mode && this.iframe != undefined) {
-		this.dragStartH = this.iframe.offsetHeight;
-		return;
-	}
-	this.dragStartH = this.textarea.offsetHeight + 0;
-};
-jsToolBar.prototype.resizeDragMove = function(event) {
-	var new_height = (this.dragStartH+event.clientY-this.dragStartY)+'px';
-	if (this.iframe != undefined) {
-		this.iframe.style.height = new_height;
-	}
-	this.textarea.style.height = new_height;
-};
-
-/* Editing methods
--------------------------------------------------------- */
-/** Replaces current selection by given node
-*/
-jsToolBar.prototype.insertNode = function(node) {
-	var range;
-
-	if (this.iwin.getSelection) { // Gecko
-		var sel = this.iwin.getSelection();
-		range = sel.getRangeAt(0);
-
-		// deselect all ranges
-		sel.removeAllRanges();
-
-		// empty range
-		range.deleteContents();
-
-		// Insert node
-		range.insertNode(node);
-
-		range.selectNodeContents(node);
-		range.setEndAfter(node);
-		if (range.endContainer.childNodes.length > range.endOffset &&
-		range.endContainer.nodeType != Node.TEXT_NODE) {
-			range.setEnd(range.endContainer.childNodes[range.endOffset], 0);
-		} else {
-			range.setEnd(range.endContainer.childNodes[0]);
-		}
-		sel.addRange(range);
-
-		sel.collapseToEnd();
-	} else { // IE
-		// lambda element
-		var p = this.iwin.document.createElement('div');
-		p.appendChild(node);
-		range = this.iwin.document.selection.createRange();
-		range.execCommand('delete');
-		// insert innerHTML from element
-		range.pasteHTML(p.innerHTML);
-		range.collapse(false);
-		range.select();
-	}
-	this.iwin.focus();
-};
-
-/** Returns a document fragment with selected nodes
-*/
-jsToolBar.prototype.getSelectedNode = function() {
-	if (this.iwin.getSelection) { // Gecko
-		var sel = this.iwin.getSelection();
-		var range = sel.getRangeAt(0);
-		var content = range.cloneContents();
-	} else { // IE
-		var sel = this.iwin.document.selection;
-		var d = this.iwin.document.createElement('div');
-		d.innerHTML = sel.createRange().htmlText;
-		var content = this.iwin.document.createDocumentFragment();
-		for (var i=0; i < d.childNodes.length; i++) {
-			content.appendChild(d.childNodes[i].cloneNode(true));
-		}
-	}
-	return content;
-};
-
-/** Returns string representation for selected node
-*/
-jsToolBar.prototype.getSelectedText = function() {
-	if (this.iwin.getSelection) { // Gecko
-		return this.iwin.getSelection().toString();
-	} else { // IE
-		var range = this.iwin.document.selection.createRange();
-		return range.text;
-	}
-};
-
-jsToolBar.prototype.replaceNodeByContent = function(node) {
-	var content = this.iwin.document.createDocumentFragment();
-	for (var i=0; i < node.childNodes.length; i++) {
-		content.appendChild(node.childNodes[i].cloneNode(true));
-	}
-	node.parentNode.replaceChild(content, node);
-};
-
-jsToolBar.prototype.getBlockLevel = function() {
-	var blockElts = ['p','h1','h2','h3','h4','h5','h6'];
-
-	var range, commonAncestorContainer;
-	if (this.iwin.getSelection) { //gecko
-		var selection = this.iwin.getSelection();
-		range = selection.getRangeAt(0);
-		commonAncestorContainer = range.commonAncestorContainer;
-		while (commonAncestorContainer.nodeType != 1) {
-			commonAncestorContainer = commonAncestorContainer.parentNode;
-		}
-	} else { //ie
-		range = this.iwin.document.selection.createRange();
-		commonAncestorContainer = range.parentElement();
-	}
-
-	var ancestorTagName = commonAncestorContainer.tagName.toLowerCase();
-	while (arrayIndexOf(blockElts, ancestorTagName)==-1 && ancestorTagName!='body') {
-		commonAncestorContainer = commonAncestorContainer.parentNode;
-		ancestorTagName = commonAncestorContainer.tagName.toLowerCase();
-	}
-	if (ancestorTagName == 'body') return null;
-	else return commonAncestorContainer;
-};
-jsToolBar.prototype.adjustBlockLevelCombo = function() {
-	var blockLevel = this.getBlockLevel();
-	if (blockLevel !== null)
-		this.toolNodes.blocks.value = blockLevel.tagName.toLowerCase();
-	else {
-		if (this.mode == 'wysiwyg') this.toolNodes.blocks.value = 'none';
-		if (this.mode == 'xhtml') this.toolNodes.blocks.value = 'nonebis';
-	}
-};
-
-/** HTML code cleanup
--------------------------------------------------------- */
-jsToolBar.prototype.simpleCleanRegex = new Array(
-	/* Remove every tags we don't need */
-	[/<meta[\w\W]*?>/gim,''],
-	[/<style[\w\W]*?>[\w\W]*?<\/style>/gim, ''],
-	[/<\/?font[\w\W]*?>/gim, ''],
-
-
-	/* Replacements */
-	[/<(\/?)(B|b|STRONG)([\s>\/])/g, "<$1strong$3"],
-	[/<(\/?)(I|i|EM)([\s>\/])/g, "<$1em$3"],
-	[/<IMG ([^>]*?[^\/])>/gi, "<img $1 />"],
-	[/<INPUT ([^>]*?[^\/])>/gi, "<input $1 />"],
-	[/<COL ([^>]*?[^\/])>/gi, "<col $1 />"],
-	[/<AREA ([^>]*?[^\/])>/gi, "<area $1 />"],
-	[/<PARAM ([^>]*?[^\/])>/gi, "<param $1 />"],
-	[/<HR ([^>]*?[^\/])>/gi, "<hr $1/>"],
-	[/<BR ([^>]*?[^\/])>/gi, "<br $1/>"],
-	[/<(\/?)U([\s>\/])/gi, "<$1ins$2"],
-	[/<(\/?)STRIKE([\s>\/])/gi, "<$1del$2"],
-	[/<span style="font-weight: normal;">([\w\W]*?)<\/span>/gm, "$1"],
-	[/<span style="font-weight: bold;">([\w\W]*?)<\/span>/gm, "<strong>$1</strong>"],
-	[/<span style="font-style: italic;">([\w\W]*?)<\/span>/gm, "<em>$1</em>"],
-	[/<span style="text-decoration: underline;">([\w\W]*?)<\/span>/gm, "<ins>$1</ins>"],
-	[/<span style="text-decoration: line-through;">([\w\W]*?)<\/span>/gm, "<del>$1</del>"],
-	[/<span style="text-decoration: underline line-through;">([\w\W]*?)<\/span>/gm, "<del><ins>$1</ins></del>"],
-	[/<span style="(font-weight: bold; ?|font-style: italic; ?){2}">([\w\W]*?)<\/span>/gm, "<strong><em>$2</em></strong>"],
-	[/<span style="(font-weight: bold; ?|text-decoration: underline; ?){2}">([\w\W]*?)<\/span>/gm, "<ins><strong>$2</strong></ins>"],
-	[/<span style="(font-weight: italic; ?|text-decoration: underline; ?){2}">([\w\W]*?)<\/span>/gm, "<ins><em>$2</em></ins>"],
-	[/<span style="(font-weight: bold; ?|text-decoration: line-through; ?){2}">([\w\W]*?)<\/span>/gm, "<del><strong>$2</strong></del>"],
-	[/<span style="(font-weight: italic; ?|text-decoration: line-through; ?){2}">([\w\W]*?)<\/span>/gm, "<del><em>$2</em></del>"],
-	[/<span style="(font-weight: bold; ?|font-style: italic; ?|text-decoration: underline; ?){3}">([\w\W]*?)<\/span>/gm, "<ins><strong><em>$2</em></strong></ins>"],
-	[/<span style="(font-weight: bold; ?|font-style: italic; ?|text-decoration: line-through; ?){3}">([\w\W]*?)<\/span>/gm, "<del><strong><em>$2</em></strong></del>"],
-	[/<span style="(font-weight: bold; ?|font-style: italic; ?|text-decoration: underline line-through; ?){3}">([\w\W]*?)<\/span>/gm, "<del><ins><strong><em>$2</em></strong></ins></del>"],
-	[/<strong style="font-weight: normal;">([\w\W]*?)<\/strong>/gm, "$1"],
-	[/<([a-z]+) style="font-weight: normal;">([\w\W]*?)<\/\1>/gm, "<$1>$2</$1>"],
-	[/<([a-z]+) style="font-weight: bold;">([\w\W]*?)<\/\1>/gm, "<$1><strong>$2</strong></$1>"],
-	[/<([a-z]+) style="font-style: italic;">([\w\W]*?)<\/\1>/gm, "<$1><em>$2</em></$1>"],
-	[/<([a-z]+) style="text-decoration: underline;">([\w\W]*?)<\/\1>/gm, "<ins><$1>$2</$1></ins>"],
-	[/<([a-z]+) style="text-decoration: line-through;">([\w\W]*?)<\/\1>/gm, "<del><$1>$2</$1></del>"],
-	[/<([a-z]+) style="text-decoration: underline line-through;">([\w\W]*?)<\/\1>/gm, "<del><ins><$1>$2</$1></ins></del>"],
-	[/<([a-z]+) style="(font-weight: bold; ?|font-style: italic; ?){2}">([\w\W]*?)<\/\1>/gm, "<$1><strong><em>$3</em></strong></$1>"],
-	[/<([a-z]+) style="(font-weight: bold; ?|text-decoration: underline; ?){2}">([\w\W]*?)<\/\1>/gm, "<ins><$1><strong>$3</strong></$1></ins>"],
-	[/<([a-z]+) style="(font-weight: italic; ?|text-decoration: underline; ?){2}">([\w\W]*?)<\/\1>/gm, "<ins><$1><em>$3</em></$1></ins>"],
-	[/<([a-z]+) style="(font-weight: bold; ?|text-decoration: line-through; ?){2}">([\w\W]*?)<\/\1>/gm, "<del><$1><strong>$3</strong></$1></del>"],
-	[/<([a-z]+) style="(font-weight: italic; ?|text-decoration: line-through; ?){2}">([\w\W]*?)<\/\1>/gm, "<del><$1><em>$3</em></$1></del>"],
-	[/<([a-z]+) style="(font-weight: bold; ?|font-style: italic; ?|text-decoration: underline; ?){3}">([\w\W]*?)<\/\1>/gm, "<ins><$1><strong><em>$3</em></strong></$1></ins>"],
-	[/<([a-z]+) style="(font-weight: bold; ?|font-style: italic; ?|text-decoration: line-through; ?){3}">([\w\W]*?)<\/\1>/gm, "<del><$1><strong><em>$3</em></strong></$1></del>"],
-	[/<([a-z]+) style="(font-weight: bold; ?|font-style: italic; ?|text-decoration: underline line-through; ?){3}">([\w\W]*?)<\/\1>/gm, "<del><ins><$1><strong><em>$3</em></strong></$1></ins></del>"],
-	[/<p><blockquote>(.*)(\n)+<\/blockquote><\/p>/i,"<blockquote>$1</blockquote>\n"],
-	/* mise en forme identique contigue */
-	[/<\/(strong|em|ins|del|q|code)>(\s*?)<\1>/gim, "$2"],
-	[/<(br|BR)>/g, "<br />"],
-	[/<(hr|HR)>/g, "<hr />"],
-	/* opera est trop strict ;)) */
-	[/([^\s])\/>/g, "$1 />"],
-	/* br intempestifs de fin de block */
-	[/<br \/>\s*<\/(h1|h2|h3|h4|h5|h6|ul|ol|li|p|blockquote|div)/gi, "</$1"],
-	[/<\/(h1|h2|h3|h4|h5|h6|ul|ol|li|p|blockquote)>([^\n\u000B\r\f])/gi, "</$1>\n$2"],
-	[/<hr style="width: 100%; height: 2px;" \/>/g, "<hr />"]
-);
-
-/** Cleanup HTML code
-*/
-jsToolBar.prototype.tagsoup2xhtml = function(html) {
-	for (var reg in this.simpleCleanRegex) {
-		html = html.replace(this.simpleCleanRegex[reg][0], this.simpleCleanRegex[reg][1]);
-	}
-	/* tags vides */
-	/* note : on tente de ne pas tenir compte des commentaires html, ceux-ci
-	   permettent entre autre d'inserer des commentaires conditionnels pour ie */
-	while ( /(<[^\/!]>|<[^\/!][^>]*[^\/]>)\s*<\/[^>]*[^-]>/.test(html) ) {
-		html = html.replace(/(<[^\/!]>|<[^\/!][^>]*[^\/]>)\s*<\/[^>]*[^-]>/g, "");
-	}
-
-	/* tous les tags en minuscule */
-	html = html.replace(/<(\/?)([A-Z0-9]+)/g,
-			function(match0, match1, match2) {
-				return "<" + match1 + match2.toLowerCase();
-			});
-
-	/* IE laisse souvent des attributs sans guillemets */
-	var myRegexp = /<[^>]+((\s+\w+\s*=\s*)([^"'][\w~@+$,%\/:.#?=&;!*()-]*))[^>]*?>/;
-	while ( myRegexp.test(html)) {
-		html = html.replace(
-			myRegexp,
-			function (str, val1, val2, val3){
-				var tamponRegex = new RegExp(regexpEscape(val1));
-				return str.replace(tamponRegex, val2+'"'+val3+'"');
-			}
-		)
-	}
-
-	/* les navigateurs rajoutent une unite aux longueurs css nulles */
-	/* note: a ameliorer ! */
-	while ( /(<[^>]+style=(["'])[^>]+[\s:]+)0(pt|px)(\2|\s|;)/.test(html)) {
-		html = html.replace(/(<[^>]+style=(["'])[^>]+[\s:]+)0(pt|px)(\2|\s|;)/gi, "$1"+"0$4");
-	}
-
-	/* correction des fins de lignes : le textarea edite contient des \n
-	* le wysiwyg des \r\n , et le textarea mis a jour SANS etre affiche des \r\n ! */
-	html = html.replace(/\r\n/g,"\n");
-
-	/* Trim only if there's no pre tag */
-	pattern_pre = /<pre>[\s\S]*<\/pre>/gi;
-	if (!pattern_pre.test(html)) {
-		html = html.replace(/^\s+/gm,'');
-		html = html.replace(/\s+$/gm,'');
-	}
-
-	return html;
-};
-jsToolBar.prototype.validBlockquote = function() {
-	var blockElts = ['address','blockquote','dl','div','fieldset','form','h1',
-	                 'h2','h3','h4','h5','h6','hr','ol','p','pre','table','ul'];
-	var BQs = this.iwin.document.getElementsByTagName('blockquote');
-	var bqChilds;
-
-	for (var bq = 0; bq < BQs.length; bq++) {
-		bqChilds = BQs[bq].childNodes;
-		var frag = this.iwin.document.createDocumentFragment();
-		for (var i = (bqChilds.length-1); i >= 0; i--) {
-			if (bqChilds[i].nodeType == 1 && // Node.ELEMENT_NODE
-			    arrayIndexOf(blockElts, bqChilds[i].tagName.toLowerCase()) >= 0)
-			{
-				if (frag.childNodes.length > 0) {
-					var p = this.iwin.document.createElement('p');
-					p.appendChild(frag);
-					BQs[bq].replaceChild(p, bqChilds[i+1]);
-					frag = this.iwin.document.createDocumentFragment();
-				}
-			} else {
-				if (frag.childNodes.length > 0) BQs[bq].removeChild(bqChilds[i+1]);
-				frag.insertBefore(bqChilds[i].cloneNode(true), frag.firstChild);
-			}
-		}
-		if (frag.childNodes.length > 0) {
-			var p = this.iwin.document.createElement('p');
-			p.appendChild(frag);
-			BQs[bq].replaceChild(p, bqChilds[0]);
-		}
-	}
-};
-
-/* Removing text formating */
-jsToolBar.prototype.removeFormatRegexp = new Array(
-	[/(<[a-z][^>]*)margin\s*:[^;]*;/mg, "$1"],
-	[/(<[a-z][^>]*)margin-bottom\s*:[^;]*;/mg, "$1"],
-	[/(<[a-z][^>]*)margin-left\s*:[^;]*;/mg, "$1"],
-	[/(<[a-z][^>]*)margin-right\s*:[^;]*;/mg, "$1"],
-	[/(<[a-z][^>]*)margin-top\s*:[^;]*;/mg, "$1"],
-
-	[/(<[a-z][^>]*)padding\s*:[^;]*;/mg, "$1"],
-	[/(<[a-z][^>]*)padding-bottom\s*:[^;]*;/mg, "$1"],
-	[/(<[a-z][^>]*)padding-left\s*:[^;]*;/mg, "$1"],
-	[/(<[a-z][^>]*)padding-right\s*:[^;]*;/mg, "$1"],
-	[/(<[a-z][^>]*)padding-top\s*:[^;]*;/mg, "$1"],
-
-	[/(<[a-z][^>]*)font\s*:[^;]*;/mg, "$1"],
-	[/(<[a-z][^>]*)font-family\s*:[^;]*;/mg, "$1"],
-	[/(<[a-z][^>]*)font-size\s*:[^;]*;/mg, "$1"],
-	[/(<[a-z][^>]*)font-style\s*:[^;]*;/mg, "$1"],
-	[/(<[a-z][^>]*)font-variant\s*:[^;]*;/mg, "$1"],
-	[/(<[a-z][^>]*)font-weight\s*:[^;]*;/mg, "$1"],
-
-	[/(<[a-z][^>]*)color\s*:[^;]*;/mg, "$1"]
-);
-
-jsToolBar.prototype.removeTextFormating = function(html) {
-	for (var reg in this.removeFormatRegexp) {
-		html = html.replace(this.removeFormatRegexp[reg][0], this.removeFormatRegexp[reg][1]);
-	}
-
-	html = this.tagsoup2xhtml(html);
-	html = html.replace(/style="\s*?"/mgi,'');
-	return html;
-};
-
-/** Toolbar elements
--------------------------------------------------------- */
-jsToolBar.prototype.elements.blocks.wysiwyg = {
-	list: ['none','p','h1','h2','h3','h4','h5','h6'],
-	fn: function(opt) {
-		if (opt=='none') {
-			var blockLevel = this.getBlockLevel();
-			if (blockLevel !== null) {
-				this.replaceNodeByContent(blockLevel);
-			}
-			this.iwin.focus();
-		} else {
-			try { this.iwin.document.execCommand('formatblock',false,'<'+opt+'>');
-			} catch(e){};
-			this.iwin.focus();
-		}
-	}
-};
-
-jsToolBar.prototype.elements.strong.fn.wysiwyg = function() {
-	this.iwin.document.execCommand('bold', false, null);
-	this.iwin.focus();
-};
-
-jsToolBar.prototype.elements.em.fn.wysiwyg = function() {
-	this.iwin.document.execCommand('italic', false, null);
-	this.iwin.focus();
-};
-
-jsToolBar.prototype.elements.ins.fn.wysiwyg = function() {
-	this.iwin.document.execCommand('underline', false, null);
-	this.iwin.focus();
-};
-
-jsToolBar.prototype.elements.del.fn.wysiwyg = function() {
-	this.iwin.document.execCommand('strikethrough', false, null);
-	this.iwin.focus();
-};
-
-jsToolBar.prototype.elements.quote.fn.wysiwyg = function() {
-	var n = this.getSelectedNode();
-	var q = this.iwin.document.createElement('q');
-	q.appendChild(n);
-	this.insertNode(q);
-};
-
-jsToolBar.prototype.elements.code.fn.wysiwyg = function() {
-	var n = this.getSelectedNode();
-	var code = this.iwin.document.createElement('code');
-	code.appendChild(n);
-	this.insertNode(code);
-};
-
-jsToolBar.prototype.elements.br.fn.wysiwyg = function() {
-	var n = this.iwin.document.createElement('br');
-	this.insertNode(n);
-};
-
-jsToolBar.prototype.elements.blockquote.fn.wysiwyg = function() {
-	var n = this.getSelectedNode();
-	var q = this.iwin.document.createElement('blockquote');
-	q.appendChild(n);
-	this.insertNode(q);
-};
-
-jsToolBar.prototype.elements.pre.fn.wysiwyg = function() {
-	this.iwin.document.execCommand('formatblock',false,'<pre>');
-	this.iwin.focus();
-};
-
-jsToolBar.prototype.elements.ul.fn.wysiwyg = function() {
-	this.iwin.document.execCommand('insertunorderedlist',false,null);
-	this.iwin.focus();
-};
-
-jsToolBar.prototype.elements.ol.fn.wysiwyg = function() {
-	this.iwin.document.execCommand('insertorderedlist',false,null);
-	this.iwin.focus();
-};
-
-jsToolBar.prototype.elements.link.fn.wysiwyg = function() {
-	var href, hreflang;
-	var range, commonAncestorContainer;
-	if (this.iwin.getSelection) { //gecko
-		var selection = this.iwin.getSelection();
-		range = selection.getRangeAt(0);
-		commonAncestorContainer = range.commonAncestorContainer;
-		while (commonAncestorContainer.nodeType != 1) {
-			commonAncestorContainer = commonAncestorContainer.parentNode;
-		}
-	} else { //ie
-		range = this.iwin.document.selection.createRange();
-		commonAncestorContainer = range.parentElement();
-	}
-
-	var ancestorTagName = commonAncestorContainer.tagName.toLowerCase();
-	while (ancestorTagName!='a' && ancestorTagName!='body') {
-		commonAncestorContainer = commonAncestorContainer.parentNode;
-		ancestorTagName = commonAncestorContainer.tagName.toLowerCase();
-	}
-
-	// Update or remove link?
-	if (ancestorTagName == 'a') {
-		href = commonAncestorContainer.href || '';
-		hreflang = commonAncestorContainer.hreflang || '';
-	}
-
-	href = window.prompt(this.elements.link.href_prompt,href);
-
-	// Remove link
-	if (ancestorTagName == 'a' && href=='') {
-		this.replaceNodeByContent(commonAncestorContainer);
-	}
-	if (!href) return; // user cancel
-
-	hreflang = window.prompt(this.elements.link.hreflang_prompt, hreflang);
-
-	// Update link
-	if (ancestorTagName == 'a' && href) {
-		commonAncestorContainer.setAttribute('href', href);
-		if (hreflang) {
-			commonAncestorContainer.setAttribute('hreflang', hreflang);
-		} else {
-			commonAncestorContainer.removeAttribute('hreflang');
-		}
-		return;
-	}
-
-	// Create link
-	var n = this.getSelectedNode();
-	var a = this.iwin.document.createElement('a');
-	a.href = href;
-	if (hreflang) a.setAttribute('hreflang',hreflang);
-	a.appendChild(n);
-	this.insertNode(a);
-};
-
-
-
-// Remove format and Toggle
-jsToolBar.prototype.elements.removeFormat = {
-	type: 'button',
-	title: 'Remove text formating',
-	fn: {}
-};
-jsToolBar.prototype.elements.removeFormat.disabled = !jsToolBar.prototype.can_wwg;
-jsToolBar.prototype.elements.removeFormat.fn.xhtml = function() {
-	var html = this.textarea.value;
-	html = this.removeTextFormating(html);
-	this.textarea.value = html;
-};
-jsToolBar.prototype.elements.removeFormat.fn.wysiwyg = function() {
-	var html = this.iwin.document.body.innerHTML;
-	html = this.removeTextFormating(html);
-	this.iwin.document.body.innerHTML = html;
-};
-/** Utilities
--------------------------------------------------------- */
-function arrayIndexOf(aArray, aValue){
-	if (typeof Array.indexOf == 'function') {
-		return aArray.indexOf(aValue);
-	} else {
-		var index = -1;
-		var l = aArray.length;
-		for (var i = 0; i < l ; i++) {
-			if (aArray[i] === aValue) {
-				index = i;
-				break;
-			}
-		}
-		return index;
-	}
-};
-function addEvent(obj, evType, fn, useCapture) {
-	if (obj.addEventListener){
-		obj.addEventListener(evType, fn, useCapture);
-		return true;
-	} else if (obj.attachEvent){
-		var r = obj.attachEvent("on"+evType, fn);
-		return r;
-	} else {
-		return false;
-	}
-};
-function removeEvent(obj, evType, fn, useCapture) {
-	if (obj.removeEventListener){
-		obj.removeEventListener(evType, fn, useCapture);
-		return true;
-	} else if (obj.detachEvent){
-		var r = obj.detachEvent("on"+evType, fn);
-		return r;
-	} else {
-		return false;
-  }
-};
-function regexpEscape(s) {
-	return s.replace(/([\\\^\$*+[\]?{}.=!:(|)])/g,"\\$1")
-};
Index: lugins/dcLegacyEditor/js/jsToolBar/popup_link.js
===================================================================
--- plugins/dcLegacyEditor/js/jsToolBar/popup_link.js	(revision 2614)
+++ 	(revision )
@@ -1,23 +1,0 @@
-$(function() {
-	$('#link-insert-cancel').click(function() {
-		window.close();
-	});
-
-	$('#link-insert-ok').click(function() {
-		sendClose();
-		window.close();
-	});
-
-	function sendClose() {
-		var insert_form = $('#link-insert-form').get(0);
-		if (insert_form == undefined) { return; }
-
-		var tb = window.opener.the_toolbar;
-		var data = tb.elements.link.data;
-
-		data.href = tb.stripBaseURL(insert_form.elements.href.value);
-		data.title = insert_form.elements.title.value;
-		data.hreflang = insert_form.elements.hreflang.value;
-		tb.elements.link.fncall[tb.mode].call(tb);
-	};
-});
Index: lugins/dcLegacyEditor/js/jsToolBar/popup_media.js
===================================================================
--- plugins/dcLegacyEditor/js/jsToolBar/popup_media.js	(revision 2614)
+++ 	(revision )
@@ -1,92 +1,0 @@
-$(function() {
-	var toolBar = window.opener.the_toolbar.textarea;
-
-	$('#media-insert').onetabload(function() {
-		$('#media-insert-cancel').click(function() {
-			window.close();
-		});
-
-		$('#media-insert-ok').click(function() {
-			sendClose();
-			window.close();
-		});
-	});
-
-	function sendClose() {
-		var insert_form = $('#media-insert-form').get(0);
-		if (insert_form == undefined) { return; }
-
-		var tb = window.opener.the_toolbar;
-		var type = insert_form.elements.type.value;
-
-		var media_align_grid = {
-			left: 'float: left; margin: 0 1em 1em 0;',
-			right: 'float: right; margin: 0 0 1em 1em;',
-			center: 'text-align: center;'
-		};
-
-		if (type == 'image')
-		{
-			tb.elements.img_select.data.src = tb.stripBaseURL($('input[name="src"]:checked',insert_form).val());
-			tb.elements.img_select.data.alignment = $('input[name="alignment"]:checked',insert_form).val();
-			tb.elements.img_select.data.link = $('input[name="insertion"]:checked',insert_form).val() == 'link';
-
-			tb.elements.img_select.data.title = insert_form.elements.title.value;
-			tb.elements.img_select.data.description = $('input[name="description"]',insert_form).val();
-			tb.elements.img_select.data.url = tb.stripBaseURL(insert_form.elements.url.value);
-			tb.elements.img_select.fncall[tb.mode].call(tb);
-		}
-		else if (type == 'mp3')
-		{
-			var player = $('#public_player').val();
-			var align = $('input[name="alignment"]:checked',insert_form).val();
-
-			if (align != undefined && align != 'none') {
-				player = '<div style="' + media_align_grid[align] + '">' + player + '</div>';
-			}
-
-			tb.elements.mp3_insert.data.player = player.replace(/>/g,'>\n');
-			tb.elements.mp3_insert.fncall[tb.mode].call(tb);
-		}
-		else if (type == 'flv')
-		{
-			var oplayer = $('<div>'+$('#public_player').val()+'</div>');
-			var flashvars = $("[name=FlashVars]",oplayer).val();
-
-			var align = $('input[name="alignment"]:checked',insert_form).val();
-			var title = insert_form.elements.title.value;
-
-			if (title) {
-				flashvars = 'title='+encodeURI(title)+'&amp;'+flashvars;
-			}
-			$('object',oplayer).attr('width',$('#video_w').val());
-			$('object',oplayer).attr('height',$('#video_h').val());
-			flashvars = flashvars.replace(/(width=\d*)/,'width='+$('#video_w').val());
-			flashvars = flashvars.replace(/(height=\d*)/,'height='+$('#video_h').val());
-
-			$("[name=FlashVars]",oplayer).val(flashvars);
-			var player = oplayer.html();
-
-			if (align != undefined && align != 'none') {
-				player = '<div style="' + media_align_grid[align] + '">' + player + '</div>';
-			}
-
-			tb.elements.flv_insert.data.player = player.replace(/>/g,'>\n');
-			tb.elements.flv_insert.fncall[tb.mode].call(tb);
-		}
-		else
-		{
-			tb.elements.link.data.href = tb.stripBaseURL(insert_form.elements.url.value);
-			tb.elements.link.data.content = insert_form.elements.title.value;
-			tb.elements.link.fncall[tb.mode].call(tb);
-		}
-	};
-
-	function playerFormat(s) {
-		s = s.replace(/&lt;/g,'<');
-		s = s.replace(/&gt;/g,'>\n');
-		s = s.replace(/&amp;/g,'&');
-
-		return s;
-	};
-});
Index: lugins/dcLegacyEditor/js/jsToolBar/popup_posts.js
===================================================================
--- plugins/dcLegacyEditor/js/jsToolBar/popup_posts.js	(revision 2614)
+++ 	(revision )
@@ -1,16 +1,0 @@
-$(function() {
-	$('#link-insert-cancel').click(function() {
-		window.close();
-	});
-
-	$('#form-entries tr>td.maximal>a').click(function() {
-		// Get post_id
-		var tb = window.opener.the_toolbar;
-		var data = tb.elements.link.data;
-
-		data.href = tb.stripBaseURL($(this).attr('title'));
-
-		tb.elements.link.fncall[tb.mode].call(tb);
-		window.close();
-	});
-});
Index: lugins/dcLegacyEditor/locales/en/help/legacy_editor.html
===================================================================
--- plugins/dcLegacyEditor/locales/en/help/legacy_editor.html	(revision 2614)
+++ 	(revision )
@@ -1,9 +1,0 @@
-<html>
-  <head>
-    <title>dcLegacyEditor</title>
-  </head>
-  <body>
-    <h4>dcLegacyEditor</h4>
-    <p>Legacy dotclear editor.</p>
-  </body>
-</html>
Index: lugins/dcLegacyEditor/locales/en/resources.php
===================================================================
--- plugins/dcLegacyEditor/locales/en/resources.php	(revision 2614)
+++ 	(revision )
@@ -1,13 +1,0 @@
-<?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 -----------------------------------------
-
-$__resources['help']['dcLegacyEditor'] = dirname(__FILE__).'/help/legacy_editor.html';
Index: lugins/dcLegacyEditor/locales/fr/help/legacy_editor.html
===================================================================
--- plugins/dcLegacyEditor/locales/fr/help/legacy_editor.html	(revision 2614)
+++ 	(revision )
@@ -1,9 +1,0 @@
-<html>
-  <head>
-    <title>dcLegacyEditor</title>
-  </head>
-  <body>
-    <h4>Editeur</h4>
-    <p>Editeur historique de dotclear.</p>
-  </body>
-</html>
Index: lugins/dcLegacyEditor/locales/fr/resources.php
===================================================================
--- plugins/dcLegacyEditor/locales/fr/resources.php	(revision 2614)
+++ 	(revision )
@@ -1,13 +1,0 @@
-<?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 -----------------------------------------
-
-$__resources['help']['dcLegacyEditor'] = dirname(__FILE__).'/help/legacy_editor.html';
Index: lugins/dcLegacyEditor/tpl/index.tpl
===================================================================
--- plugins/dcLegacyEditor/tpl/index.tpl	(revision 2614)
+++ 	(revision )
@@ -1,33 +1,0 @@
-<html>
-  <head>
-    <title>dcLegacyEditor</title>
-  </head>
-  <body>
-    <h2><?php echo html::escapeHTML($core->blog->name);?> &gt; dcLegacyEditor</h2>
-    <?php if (!empty($message)):?>
-    <p class="message"><?php echo $message;?></p>
-    <?php endif;?>
-
-    <?php if ($is_super_admin):?>
-    <h3 class="hidden-if-js"><?php echo __('Settings');?></h3>
-    <form action="<?php echo $p_url;?>" method="post" enctype="multipart/form-data">
-      <div class="fieldset">
-	<h3><?php echo __('Plugin activation');?></h3>
-	<p>
-	  <label class="classic" for="dclegacyeditor_active">
-	    <?php echo form::checkbox('dclegacyeditor_active', 1, $dclegacyeditor_active);?>
-	    <?php echo __('Enable dcLegacyEditor plugin');?>
-	  </label>
-	</p>
-      </div>
-      
-      <p>
-	<input type="hidden" name="p" value="dcLegacyEditor"/>
-	<?php echo $core->formNonce();?>
-	<input type="submit" name="saveconfig" value="<?php echo __('Save configuration');?>" />
-      </p>
-    </form>
-    <?php endif;?>
-    <?php dcPage::helpBlock('dcLegacyEditor');?>
-  </body>
-</html>
Index: plugins/pages/_public.php
===================================================================
--- plugins/pages/_public.php	(revision 2607)
+++ plugins/pages/_public.php	(revision 2566)
@@ -112,16 +112,10 @@
 					if ($content != '')
 					{
-						# --BEHAVIOR-- publicBeforeCommentTransform
-						$buffer = $core->callBehavior('publicBeforeCommentTransform',$content);
-						if ($buffer != '') {
-							$content = $buffer;
+						if ($core->blog->settings->system->wiki_comments) {
+							$core->initWikiComment();
 						} else {
-							if ($core->blog->settings->system->wiki_comments) {
-								$core->initWikiComment();
-							} else {
-								$core->initWikiSimpleComment();
-							}
-							$content = $core->wikiTransform($content);
+							$core->initWikiSimpleComment();
 						}
+						$content = $core->wikiTransform($content);
 						$content = $core->HTMLfilter($content);
 					}
@@ -190,11 +184,5 @@
 					header('X-Pingback: '.$core->blog->url.$core->url->getURLFor("xmlrpc",$core->blog->id));
 				}
-
-				$tplset = $core->themes->moduleInfo($core->blog->settings->system->theme,'tplset');
-				if (!empty($tplset) && is_dir(dirname(__FILE__).'/default-templates/'.$tplset)) {
-					$core->tpl->setPath($core->tpl->getPath(), dirname(__FILE__).'/default-templates/'.$tplset);
-				} else {
-					$core->tpl->setPath($core->tpl->getPath(), dirname(__FILE__).'/default-templates/'.DC_DEFAULT_TPLSET);
-				}
+				$core->tpl->setPath($core->tpl->getPath(), dirname(__FILE__).'/default-templates');
 				self::serveDocument('page.html');
 			}
Index: lugins/pages/default-templates/currywurst/page.html
===================================================================
--- plugins/pages/default-templates/currywurst/page.html	(revision 2603)
+++ 	(revision )
@@ -1,61 +1,0 @@
-<!DOCTYPE html>
-<html lang="{{tpl:BlogLanguage}}">
-<head>
-  <meta charset="UTF-8" />
-  <meta name="ROBOTS" content="{{tpl:BlogMetaRobots}}" />
-
-  <title>{{tpl:EntryTitle encode_html="1"}} - {{tpl:BlogName encode_html="1"}}</title>
-  <meta name="description" lang="{{tpl:EntryLang}}" content="{{tpl:EntryContent full="1" encode_html="1" remove_html="1" cut_string="180"}}" />
-  <meta name="copyright" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
-  <meta name="author" content="{{tpl:EntryAuthorCommonName encode_html="1"}}" />
-  <meta name="date" content="{{tpl:EntryDate iso8601="1"}}" />
-
-  <link rel="schema.dc" href="http://purl.org/dc/elements/1.1/" />
-  <meta property="dc.title" content="{{tpl:EntryTitle encode_html="1"}}" />
-  <meta property="dc.description" lang="{{tpl:EntryLang}}" content="{{tpl:EntryContent full="1" encode_html="1" remove_html="1" cut_string="180"}}" />
-  <meta property="dc.creator" content="{{tpl:EntryAuthorCommonName encode_html="1"}}" />
-  <meta property="dc.language" content="{{tpl:EntryLang}}" />
-  <meta property="dc.publisher" content="{{tpl:BlogEditor encode_html="1"}}" />
-  <meta property="dc.rights" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
-  <meta property="dc.date" content="{{tpl:EntryDate iso8601="1"}}" />
-  <meta property="dc.type" content="text" />
-  <meta property="dc.format" content="text/html" />
-
-  <link rel="top" href="{{tpl:BlogURL}}" title="{{tpl:lang Home}}" />
-  <link rel="contents" href="{{tpl:BlogArchiveURL}}" title="{{tpl:lang Archives}}" />
-
-  <link rel="alternate" type="application/atom+xml" title="Atom 1.0" href="{{tpl:BlogFeedURL type="atom"}}" />
-
-  {{tpl:include src="_head.html"}}
-
-  <script type="text/javascript" src="{{tpl:BlogThemeURL}}/../default/js/post.js"></script>
-  <script type="text/javascript">
-    //<![CDATA[
-    var post_remember_str = '{{tpl:lang Remember me on this blog}}';
-    //]]>
-  </script>
-</head>
-<body class="dc-page">
-  <div id="page">
-    {{tpl:EntryPingData}}
-
-    {{tpl:include src="_top.html"}}
-
-    <div id="wrapper">
-
-      <div id="main">
-        <div id="content">
-
-          {{tpl:include src="_simple-entry.html"}}
-
-        </div>
-      </div> <!-- End #main -->
-
-      {{tpl:include src="_sidebar.html"}}
-
-    </div> <!-- End #wrapper -->
-
-    {{tpl:include src="_footer.html"}}
-  </div> <!-- End #page -->
-</body>
-</html>
Index: lugins/pages/default-templates/mustek/page.html
===================================================================
--- plugins/pages/default-templates/mustek/page.html	(revision 2603)
+++ 	(revision )
@@ -1,247 +1,0 @@
-<!DOCTYPE html>
-<html lang="{{tpl:BlogLanguage}}">
-<head>
-  <meta charset="UTF-8" />
-  <meta name="ROBOTS" content="{{tpl:BlogMetaRobots}}" />
-
-  <title>{{tpl:EntryTitle encode_html="1"}} - {{tpl:BlogName encode_html="1"}}</title>
-  <meta name="description" lang="{{tpl:EntryLang}}" content="{{tpl:EntryContent full="1" encode_html="1" remove_html="1" cut_string="180"}}" />
-  <meta name="copyright" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
-  <meta name="author" content="{{tpl:EntryAuthorCommonName encode_html="1"}}" />
-  <meta name="date" content="{{tpl:EntryDate iso8601="1"}}" />
-
-  <link rel="schema.dc" href="http://purl.org/dc/elements/1.1/" />
-  <meta property="dc.title" content="{{tpl:EntryTitle encode_html="1"}}" />
-  <meta property="dc.description" lang="{{tpl:EntryLang}}" content="{{tpl:EntryContent full="1" encode_html="1" remove_html="1" cut_string="180"}}" />
-  <meta property="dc.creator" content="{{tpl:EntryAuthorCommonName encode_html="1"}}" />
-  <meta property="dc.language" content="{{tpl:EntryLang}}" />
-  <meta property="dc.publisher" content="{{tpl:BlogEditor encode_html="1"}}" />
-  <meta property="dc.rights" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
-  <meta property="dc.date" content="{{tpl:EntryDate iso8601="1"}}" />
-  <meta property="dc.type" content="text" />
-  <meta property="dc.format" content="text/html" />
-
-  <link rel="top" href="{{tpl:BlogURL}}" title="{{tpl:lang Home}}" />
-  <link rel="contents" href="{{tpl:BlogArchiveURL}}" title="{{tpl:lang Archives}}" />
-  <tpl:EntryIf pings_active="1"><link rel="pingback" href="{{tpl:BlogXMLRPCURL}}" /></tpl:EntryIf>
-
-  <link rel="alternate" type="application/atom+xml" title="Atom 1.0" href="{{tpl:BlogFeedURL type="atom"}}" />
-
-  {{tpl:include src="_head.html"}}
-
-  <script type="text/javascript" src="{{tpl:BlogThemeURL}}/../default/js/post.js"></script>
-  <script type="text/javascript">
-  //<![CDATA[
-  var post_remember_str = '{{tpl:lang Remember me on this blog}}';
-  //]]>
-  </script>
-</head>
-
-<body class="dc-page">
-<div id="page">
-{{tpl:EntryPingData}}
-
-{{tpl:include src="_top.html"}}
-
-<div id="wrapper">
-
-<div id="main" role="main">
-  <div id="content">
-
-  <div id="p{{tpl:EntryID}}" class="post" role="article">
-    <h2 class="post-title">{{tpl:EntryTitle encode_html="1"}}</h2>
-
-    <!-- # --BEHAVIOR-- publicEntryBeforeContent -->
-    {{tpl:SysBehavior behavior="publicEntryBeforeContent"}}
-
-    <tpl:EntryIf extended="1">
-      <div class="post-excerpt">{{tpl:EntryExcerpt}}</div>
-    </tpl:EntryIf>
-    <div class="post-content">{{tpl:EntryContent}}</div>
-
-    <p class="page-info">{{tpl:lang Published on}} {{tpl:EntryDate}}
-    {{tpl:lang by}} {{tpl:EntryAuthorLink}}</p>
-
-    <!-- # --BEHAVIOR-- publicEntryAfterContent -->
-    {{tpl:SysBehavior behavior="publicEntryAfterContent"}}
-  </div>
-
-  <!-- # Attachments -->
-  <tpl:Attachments>
-    <tpl:AttachmentsHeader>
-      <div id="attachments">
-      <h3>{{tpl:lang Attachments}}</h3>
-      <ul>
-    </tpl:AttachmentsHeader>
-      <li class="{{tpl:AttachmentType}}">
-        <tpl:AttachmentIf is_mp3="1">
-          {{tpl:include src="_mp3_player.html"/}} -
-        </tpl:AttachmentIf>
-        <tpl:AttachmentIf is_flv="1">
-	     {{tpl:include src="_flv_player.html"/}}
-	   </tpl:AttachmentIf>
-	   <tpl:AttachmentIf is_flv="0">
-	   	<a href="{{tpl:AttachmentURL}}"
-		title="{{tpl:AttachmentFileName}} ({{tpl:AttachmentSize}})">{{tpl:AttachmentTitle}}</a>
-        </tpl:AttachmentIf>
-      </li>
-    <tpl:AttachmentsFooter>
-      </ul>
-      </div>
-    </tpl:AttachmentsFooter>
-  </tpl:Attachments>
-
-  <!-- # Comments -->
-  <tpl:EntryIf show_comments="1">
-    <tpl:Comments>
-    <tpl:CommentsHeader>
-    <div id="comments">
-      <h3>{{tpl:lang Comments}}</h3>
-      <dl>
-    </tpl:CommentsHeader>
-      <dt id="c{{tpl:CommentID}}" class="{{tpl:CommentIfMe}} {{tpl:CommentIfOdd}} {{tpl:CommentIfFirst}}"><a
-      href="#c{{tpl:CommentID}}" class="comment-number">{{tpl:CommentOrderNumber}}.</a>
-      {{tpl:lang On}} {{tpl:CommentDate}}, {{tpl:CommentTime}}
-      {{tpl:lang by}} {{tpl:CommentAuthorLink}}</dt>
-
-      <dd class="{{tpl:CommentIfMe}} {{tpl:CommentIfOdd}} {{tpl:CommentIfFirst}}">
-      <!-- # --BEHAVIOR-- publicCommentBeforeContent -->
-      {{tpl:SysBehavior behavior="publicCommentBeforeContent"}}
-
-      {{tpl:CommentContent}}
-
-      <!-- # --BEHAVIOR-- publicCommentAfterContent -->
-      {{tpl:SysBehavior behavior="publicCommentAfterContent"}}
-      </dd>
-    <tpl:CommentsFooter>
-      </dl>
-    </div>
-    </tpl:CommentsFooter>
-    </tpl:Comments>
-  </tpl:EntryIf>
-
-  <tpl:EntryIf comments_active="1">
-    <tpl:SysIfFormError>
-      <p class="error" id="pr">{{tpl:SysFormError}}</p>
-    </tpl:SysIfFormError>
-
-    <tpl:SysIfCommentPublished>
-      <p class="message" id="pr">{{tpl:lang Your comment has been published.}}</p>
-    </tpl:SysIfCommentPublished>
-
-    <tpl:SysIfCommentPending>
-      <p class="message" id="pr">{{tpl:lang Your comment has been submitted and
-      will be reviewed for publication.}}</p>
-    </tpl:SysIfCommentPending>
-
-    <!-- # Comment form -->
-    <form action="{{tpl:EntryURL}}#pr" method="post" id="comment-form" role="form">
-      <tpl:IfCommentPreview>
-        <div id="pr">
-          <h3>{{tpl:lang Your comment}}</h3>
-          <dl>
-            <dd class="comment-preview">{{tpl:CommentPreviewContent}}</dd>
-          </dl>
-          <p class="buttons"><input type="submit" class="submit" value="{{tpl:lang send}}" /></p>
-        </div>
-      </tpl:IfCommentPreview>
-
-      <h3>{{tpl:lang Add a comment}}</h3>
-      <fieldset>
-        <!-- # --BEHAVIOR-- publicCommentFormBeforeContent -->
-        {{tpl:SysBehavior behavior="publicCommentFormBeforeContent"}}
-
-        <p class="field"><label for="c_name">{{tpl:lang Name or nickname}}&nbsp;:</label>
-        <input name="c_name" id="c_name" type="text" size="30" maxlength="255"
-        value="{{tpl:CommentPreviewName encode_html="1"}}" />
-        </p>
-
-        <p class="field"><label for="c_mail">{{tpl:lang Email address}}&nbsp;:</label>
-        <input name="c_mail" id="c_mail" type="text" size="30" maxlength="255"
-        value="{{tpl:CommentPreviewEmail encode_html="1"}}" />
-        </p>
-
-        <p class="field"><label for="c_site">{{tpl:lang Website}} ({{tpl:lang optional}})&nbsp;:</label>
-        <input name="c_site" id="c_site" type="text" size="30" maxlength="255"
-        value="{{tpl:CommentPreviewSite encode_html="1"}}" />
-        </p>
-
-        <p style="display:none"><input name="f_mail" type="text" size="30"
-        maxlength="255" value="" /></p>
-
-        <p class="field"><label for="c_content">{{tpl:lang Comment}}&nbsp;:</label>
-        <textarea name="c_content" id="c_content" cols="35"
-        rows="7">{{tpl:CommentPreviewContent raw="1" encode_html="1"}}</textarea>
-        </p>
-
-        <p class="form-help">{{tpl:CommentHelp}}</p>
-
-        <!-- # --BEHAVIOR-- publicCommentFormAfterContent -->
-        {{tpl:SysBehavior behavior="publicCommentFormAfterContent"}}
-      </fieldset>
-
-      <fieldset>
-        <p class="buttons"><input type="submit" class="preview" name="preview" value="{{tpl:lang preview}}" />
-        <tpl:IfCommentPreview><input type="submit" class="submit" value="{{tpl:lang send}}" /></tpl:IfCommentPreview></p>
-      </fieldset>
-    </form>
-  </tpl:EntryIf>
-
-  <!-- # Trackbacks -->
-  <tpl:EntryIf show_pings="1">
-    <div id="pings">
-    <h3>{{tpl:lang They posted on the same topic}}</h3>
-    <tpl:Pings>
-      <tpl:PingsHeader>
-      <dl>
-      </tpl:PingsHeader>
-        <dt id="c{{tpl:PingID}}" class="{{tpl:PingIfOdd}} {{tpl:PingIfFirst}}"><a href="#c{{tpl:PingID}}"
-        class="ping-number">{{tpl:PingOrderNumber}}.</a>
-        {{tpl:lang On}} {{tpl:PingDate}}, {{tpl:PingTime}}
-        {{tpl:lang by}} {{tpl:PingBlogName encode_html="1"}}</dt>
-
-        <dd class="{{tpl:PingIfOdd}} {{tpl:PingIfFirst}}">
-        <!-- # --BEHAVIOR-- publicPingBeforeContent -->
-        {{tpl:SysBehavior behavior="publicPingBeforeContent"}}
-
-        <p><a href="{{tpl:PingAuthorURL}}"
-        {{tpl:PingNoFollow}}>{{tpl:PingTitle encode_html="1"}}</a></p>
-        {{tpl:PingContent}}
-
-        <!-- # --BEHAVIOR-- publicPingAfterContent -->
-        {{tpl:SysBehavior behavior="publicPingAfterContent"}}
-        </dd>
-      <tpl:PingsFooter>
-      </dl>
-      </tpl:PingsFooter>
-    </tpl:Pings>
-    </div>
-  </tpl:EntryIf>
-
-  <tpl:EntryIf pings_active="1">
-    <p id="ping-url">{{tpl:lang Trackback URL}}&nbsp;: {{tpl:EntryPingLink}}</p>
-  </tpl:EntryIf>
-
-  <tpl:EntryIf operator="or" comments_active="1" pings_active="1">
-  <p id="comments-feed"><a class="feed" href="{{tpl:BlogFeedURL type="atom"}}/comments/{{tpl:EntryID}}"
-  title="{{tpl:lang This page's comments feed}}">{{tpl:lang This page's comments feed}}</a></p>
-  </tpl:EntryIf>
-  </div>
-</div> <!-- End #main -->
-
-<div id="sidebar" role="complementary">
-  <div id="blognav">
-    {{tpl:Widgets type="nav"}}
-  </div> <!-- End #blognav -->
-
-  <div id="blogextra">
-    {{tpl:Widgets type="extra"}}
-  </div> <!-- End #blogextra -->
-</div>
-
-</div> <!-- End #wrapper -->
-
-{{tpl:include src="_footer.html"}}
-</div> <!-- End #page -->
-</body>
-</html>
Index: plugins/pages/default-templates/page.html
===================================================================
--- plugins/pages/default-templates/page.html	(revision 2566)
+++ plugins/pages/default-templates/page.html	(revision 2566)
@@ -0,0 +1,248 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="{{tpl:BlogLanguage}}" lang="{{tpl:BlogLanguage}}">
+<head>
+  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+  <meta name="ROBOTS" content="{{tpl:BlogMetaRobots}}" />
+
+  <title>{{tpl:EntryTitle encode_html="1"}} - {{tpl:BlogName encode_html="1"}}</title>
+  <meta name="description" lang="{{tpl:EntryLang}}" content="{{tpl:EntryContent full="1" encode_html="1" remove_html="1" cut_string="180"}}" />
+  <meta name="copyright" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
+  <meta name="author" content="{{tpl:EntryAuthorCommonName encode_html="1"}}" />
+  <meta name="date" scheme="W3CDTF" content="{{tpl:EntryDate iso8601="1"}}" />
+
+  <link rel="schema.dc" href="http://purl.org/dc/elements/1.1/" />
+  <meta name="dc.title" content="{{tpl:EntryTitle encode_html="1"}}" />
+  <meta name="dc.description" lang="{{tpl:EntryLang}}" content="{{tpl:EntryContent full="1" encode_html="1" remove_html="1" cut_string="180"}}" />
+  <meta name="dc.creator" content="{{tpl:EntryAuthorCommonName encode_html="1"}}" />
+  <meta name="dc.language" content="{{tpl:EntryLang}}" />
+  <meta name="dc.publisher" content="{{tpl:BlogEditor encode_html="1"}}" />
+  <meta name="dc.rights" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
+  <meta name="dc.date" scheme="W3CDTF" content="{{tpl:EntryDate iso8601="1"}}" />
+  <meta name="dc.type" content="text" />
+  <meta name="dc.format" content="text/html" />
+
+  <link rel="top" href="{{tpl:BlogURL}}" title="{{tpl:lang Home}}" />
+  <link rel="contents" href="{{tpl:BlogArchiveURL}}" title="{{tpl:lang Archives}}" />
+  <tpl:EntryIf pings_active="1"><link rel="pingback" href="{{tpl:BlogXMLRPCURL}}" /></tpl:EntryIf>
+
+  <link rel="alternate" type="application/atom+xml" title="Atom 1.0" href="{{tpl:BlogFeedURL type="atom"}}" />
+
+  {{tpl:include src="_head.html"}}
+
+  <script type="text/javascript" src="{{tpl:BlogThemeURL}}/../default/js/post.js"></script>
+  <script type="text/javascript">
+  //<![CDATA[
+  var post_remember_str = '{{tpl:lang Remember me on this blog}}';
+  //]]>
+  </script>
+</head>
+
+<body class="dc-page">
+<div id="page">
+{{tpl:EntryPingData}}
+
+{{tpl:include src="_top.html"}}
+
+<div id="wrapper">
+
+<div id="main">
+  <div id="content">
+
+  <div id="p{{tpl:EntryID}}" class="post">
+    <h2 class="post-title">{{tpl:EntryTitle encode_html="1"}}</h2>
+
+    <!-- # --BEHAVIOR-- publicEntryBeforeContent -->
+    {{tpl:SysBehavior behavior="publicEntryBeforeContent"}}
+
+    <tpl:EntryIf extended="1">
+      <div class="post-excerpt">{{tpl:EntryExcerpt}}</div>
+    </tpl:EntryIf>
+    <div class="post-content">{{tpl:EntryContent}}</div>
+
+    <p class="page-info">{{tpl:lang Published on}} {{tpl:EntryDate}}
+    {{tpl:lang by}} {{tpl:EntryAuthorLink}}</p>
+
+    <!-- # --BEHAVIOR-- publicEntryAfterContent -->
+    {{tpl:SysBehavior behavior="publicEntryAfterContent"}}
+  </div>
+
+  <!-- # Attachments -->
+  <tpl:Attachments>
+    <tpl:AttachmentsHeader>
+      <div id="attachments">
+      <h3>{{tpl:lang Attachments}}</h3>
+      <ul>
+    </tpl:AttachmentsHeader>
+      <li class="{{tpl:AttachmentType}}">
+        <tpl:AttachmentIf is_mp3="1">
+          {{tpl:include src="_mp3_player.html"/}} -
+        </tpl:AttachmentIf>
+        <tpl:AttachmentIf is_flv="1">
+	     {{tpl:include src="_flv_player.html"/}}
+	   </tpl:AttachmentIf>
+	   <tpl:AttachmentIf is_flv="0">
+	   	<a href="{{tpl:AttachmentURL}}"
+		title="{{tpl:AttachmentFileName}} ({{tpl:AttachmentSize}})">{{tpl:AttachmentTitle}}</a>
+        </tpl:AttachmentIf>
+      </li>
+    <tpl:AttachmentsFooter>
+      </ul>
+      </div>
+    </tpl:AttachmentsFooter>
+  </tpl:Attachments>
+
+  <!-- # Comments -->
+  <tpl:EntryIf show_comments="1">
+    <tpl:Comments>
+    <tpl:CommentsHeader>
+    <div id="comments">
+      <h3>{{tpl:lang Comments}}</h3>
+      <dl>
+    </tpl:CommentsHeader>
+      <dt id="c{{tpl:CommentID}}" class="{{tpl:CommentIfMe}} {{tpl:CommentIfOdd}} {{tpl:CommentIfFirst}}"><a
+      href="#c{{tpl:CommentID}}" class="comment-number">{{tpl:CommentOrderNumber}}.</a>
+      {{tpl:lang On}} {{tpl:CommentDate}}, {{tpl:CommentTime}}
+      {{tpl:lang by}} {{tpl:CommentAuthorLink}}</dt>
+
+      <dd class="{{tpl:CommentIfMe}} {{tpl:CommentIfOdd}} {{tpl:CommentIfFirst}}">
+      <!-- # --BEHAVIOR-- publicCommentBeforeContent -->
+      {{tpl:SysBehavior behavior="publicCommentBeforeContent"}}
+
+      {{tpl:CommentContent}}
+
+      <!-- # --BEHAVIOR-- publicCommentAfterContent -->
+      {{tpl:SysBehavior behavior="publicCommentAfterContent"}}
+      </dd>
+    <tpl:CommentsFooter>
+      </dl>
+    </div>
+    </tpl:CommentsFooter>
+    </tpl:Comments>
+  </tpl:EntryIf>
+
+  <tpl:EntryIf comments_active="1">
+    <tpl:SysIfFormError>
+      <p class="error" id="pr">{{tpl:SysFormError}}</p>
+    </tpl:SysIfFormError>
+
+    <tpl:SysIfCommentPublished>
+      <p class="message" id="pr">{{tpl:lang Your comment has been published.}}</p>
+    </tpl:SysIfCommentPublished>
+
+    <tpl:SysIfCommentPending>
+      <p class="message" id="pr">{{tpl:lang Your comment has been submitted and
+      will be reviewed for publication.}}</p>
+    </tpl:SysIfCommentPending>
+
+    <!-- # Comment form -->
+    <form action="{{tpl:EntryURL}}#pr" method="post" id="comment-form">
+      <tpl:IfCommentPreview>
+        <div id="pr">
+          <h3>{{tpl:lang Your comment}}</h3>
+          <dl>
+            <dd class="comment-preview">{{tpl:CommentPreviewContent}}</dd>
+          </dl>
+          <p class="buttons"><input type="submit" class="submit" value="{{tpl:lang send}}" /></p>
+        </div>
+      </tpl:IfCommentPreview>
+
+      <h3>{{tpl:lang Add a comment}}</h3>
+      <fieldset>
+        <!-- # --BEHAVIOR-- publicCommentFormBeforeContent -->
+        {{tpl:SysBehavior behavior="publicCommentFormBeforeContent"}}
+
+        <p class="field"><label for="c_name">{{tpl:lang Name or nickname}}&nbsp;:</label>
+        <input name="c_name" id="c_name" type="text" size="30" maxlength="255"
+        value="{{tpl:CommentPreviewName encode_html="1"}}" />
+        </p>
+
+        <p class="field"><label for="c_mail">{{tpl:lang Email address}}&nbsp;:</label>
+        <input name="c_mail" id="c_mail" type="text" size="30" maxlength="255"
+        value="{{tpl:CommentPreviewEmail encode_html="1"}}" />
+        </p>
+
+        <p class="field"><label for="c_site">{{tpl:lang Website}} ({{tpl:lang optional}})&nbsp;:</label>
+        <input name="c_site" id="c_site" type="text" size="30" maxlength="255"
+        value="{{tpl:CommentPreviewSite encode_html="1"}}" />
+        </p>
+
+        <p style="display:none"><input name="f_mail" type="text" size="30"
+        maxlength="255" value="" /></p>
+
+        <p class="field"><label for="c_content">{{tpl:lang Comment}}&nbsp;:</label>
+        <textarea name="c_content" id="c_content" cols="35"
+        rows="7">{{tpl:CommentPreviewContent raw="1" encode_html="1"}}</textarea>
+        </p>
+
+        <p class="form-help">{{tpl:CommentHelp}}</p>
+
+        <!-- # --BEHAVIOR-- publicCommentFormAfterContent -->
+        {{tpl:SysBehavior behavior="publicCommentFormAfterContent"}}
+      </fieldset>
+
+      <fieldset>
+        <p class="buttons"><input type="submit" class="preview" name="preview" value="{{tpl:lang preview}}" />
+        <tpl:IfCommentPreview><input type="submit" class="submit" value="{{tpl:lang send}}" /></tpl:IfCommentPreview></p>
+      </fieldset>
+    </form>
+  </tpl:EntryIf>
+
+  <!-- # Trackbacks -->
+  <tpl:EntryIf show_pings="1">
+    <div id="pings">
+    <h3>{{tpl:lang They posted on the same topic}}</h3>
+    <tpl:Pings>
+      <tpl:PingsHeader>
+      <dl>
+      </tpl:PingsHeader>
+        <dt id="c{{tpl:PingID}}" class="{{tpl:PingIfOdd}} {{tpl:PingIfFirst}}"><a href="#c{{tpl:PingID}}"
+        class="ping-number">{{tpl:PingOrderNumber}}.</a>
+        {{tpl:lang On}} {{tpl:PingDate}}, {{tpl:PingTime}}
+        {{tpl:lang by}} {{tpl:PingBlogName encode_html="1"}}</dt>
+
+        <dd class="{{tpl:PingIfOdd}} {{tpl:PingIfFirst}}">
+        <!-- # --BEHAVIOR-- publicPingBeforeContent -->
+        {{tpl:SysBehavior behavior="publicPingBeforeContent"}}
+
+        <p><a href="{{tpl:PingAuthorURL}}"
+        {{tpl:PingNoFollow}}>{{tpl:PingTitle encode_html="1"}}</a></p>
+        {{tpl:PingContent}}
+
+        <!-- # --BEHAVIOR-- publicPingAfterContent -->
+        {{tpl:SysBehavior behavior="publicPingAfterContent"}}
+        </dd>
+      <tpl:PingsFooter>
+      </dl>
+      </tpl:PingsFooter>
+    </tpl:Pings>
+    </div>
+  </tpl:EntryIf>
+
+  <tpl:EntryIf pings_active="1">
+    <p id="ping-url">{{tpl:lang Trackback URL}}&nbsp;: {{tpl:EntryPingLink}}</p>
+  </tpl:EntryIf>
+
+  <tpl:EntryIf operator="or" comments_active="1" pings_active="1">
+  <p id="comments-feed"><a class="feed" href="{{tpl:BlogFeedURL type="atom"}}/comments/{{tpl:EntryID}}"
+  title="{{tpl:lang This page's comments feed}}">{{tpl:lang This page's comments feed}}</a></p>
+  </tpl:EntryIf>
+  </div>
+</div> <!-- End #main -->
+
+<div id="sidebar">
+  <div id="blognav">
+    {{tpl:Widgets type="nav"}}
+  </div> <!-- End #blognav -->
+
+  <div id="blogextra">
+    {{tpl:Widgets type="extra"}}
+  </div> <!-- End #blogextra -->
+</div>
+
+</div> <!-- End #wrapper -->
+
+{{tpl:include src="_footer.html"}}
+</div> <!-- End #page -->
+</body>
+</html>
Index: plugins/pages/list.php
===================================================================
--- plugins/pages/list.php	(revision 2567)
+++ plugins/pages/list.php	(revision 2566)
@@ -55,7 +55,5 @@
   <title><?php echo __('Pages'); ?></title>
   <?php
-  	echo
-  		dcPage::jsLoad('js/jquery/jquery-ui.custom.js').
-		dcPage::jsLoad('js/jquery/jquery.ui.touch-punch.js').
+  	echo dcPage::jsLoad('js/jquery/jquery-ui.custom.js').
 		dcPage::jsLoad('index.php?pf=pages/list.js').
 		'<script type="text/javascript">'.
Index: plugins/pages/page.php
===================================================================
--- plugins/pages/page.php	(revision 2614)
+++ plugins/pages/page.php	(revision 2511)
@@ -289,7 +289,7 @@
   <?php echo
   dcPage::jsDatePicker().
+  dcPage::jsToolBar().
   dcPage::jsModal().
   dcPage::jsLoad('js/_post.js').
-  $core->callBehavior('adminPostEditor').
   dcPage::jsConfirmClose('entry-form','comment-form').
   # --BEHAVIOR-- adminPageHeaders
Index: plugins/simpleMenu/_public.php
===================================================================
--- plugins/simpleMenu/_public.php	(revision 2605)
+++ plugins/simpleMenu/_public.php	(revision 2576)
@@ -127,5 +127,5 @@
 			// Final rendering
 			if ($ret) {
-				$ret = '<ul '.($id ? 'id="'.$id.'"' : '').' class="simple-menu'.($class ? ' '.$class : '').'" role="navigation">'."\n".$ret."\n".'</ul>';
+				$ret = '<ul '.($id ? 'id="'.$id.'"' : '').' class="simple-menu'.($class ? ' '.$class : '').'">'."\n".$ret."\n".'</ul>';
 			}
 		}
Index: plugins/simpleMenu/index.php
===================================================================
--- plugins/simpleMenu/index.php	(revision 2588)
+++ plugins/simpleMenu/index.php	(revision 2576)
@@ -347,5 +347,4 @@
 			echo
 				dcPage::jsLoad('js/jquery/jquery-ui.custom.js').
-				dcPage::jsLoad('js/jquery/jquery.ui.touch-punch.js').
 				dcPage::jsLoad('index.php?pf=simpleMenu/simplemenu.js');
 		}
Index: plugins/tags/_public.php
===================================================================
--- plugins/tags/_public.php	(revision 2607)
+++ plugins/tags/_public.php	(revision 2566)
@@ -82,10 +82,5 @@
 	public static function addTplPath($core)
 	{
-		$tplset = $core->themes->moduleInfo($core->blog->settings->system->theme,'tplset');
-		if (!empty($tplset) && is_dir(dirname(__FILE__).'/default-templates/'.$tplset)) {
-			$core->tpl->setPath($core->tpl->getPath(), dirname(__FILE__).'/default-templates/'.$tplset);
-		} else {
-			$core->tpl->setPath($core->tpl->getPath(), dirname(__FILE__).'/default-templates/'.DC_DEFAULT_TPLSET);
-		}
+		$core->tpl->setPath($core->tpl->getPath(), dirname(__FILE__).'/default-templates');
 	}
 
Index: lugins/tags/default-templates/currywurst/tag.html
===================================================================
--- plugins/tags/default-templates/currywurst/tag.html	(revision 2603)
+++ 	(revision )
@@ -1,85 +1,0 @@
-<!DOCTYPE html>
-<html lang="{{tpl:BlogLanguage}}">
-<head>
-  <meta charset="UTF-8" />
-  <meta name="ROBOTS" content="{{tpl:BlogMetaRobots}}" />
-
-  <title>{{tpl:lang Tag}} - {{tpl:TagID}} - {{tpl:BlogName encode_html="1"}}<tpl:PaginationIf start="0"> - {{tpl:lang page}} {{tpl:PaginationCurrent}}</tpl:PaginationIf></title>
-  <meta name="copyright" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
-  <meta name="author" content="{{tpl:BlogEditor encode_html="1"}}" />
-  <meta name="date" content="{{tpl:BlogUpdateDate iso8601="1"}}" />
-
-  <link rel="schema.dc" href="http://purl.org/dc/elements/1.1/" />
-  <meta property="dc.title" lang="{{tpl:BlogLanguage}}" content="{{tpl:lang Tag}} - {{tpl:TagID}} - {{tpl:BlogName encode_html="1"}}<tpl:PaginationIf start="0"> - {{tpl:lang page}} {{tpl:PaginationCurrent}}</tpl:PaginationIf>" />
-  <meta property="dc.language" content="{{tpl:BlogLanguage}}" />
-  <meta property="dc.publisher" content="{{tpl:BlogEditor encode_html="1"}}" />
-  <meta property="dc.rights" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
-  <meta property="dc.date" content="{{tpl:BlogUpdateDate iso8601="1"}}" />
-  <meta property="dc.type" content="text" />
-  <meta property="dc.format" content="text/html" />
-
-  <link rel="top" href="{{tpl:BlogURL}}" title="{{tpl:lang Home}}" />
-  <link rel="contents" href="{{tpl:BlogArchiveURL}}" title="{{tpl:lang Archives}}" />
-
-  <tpl:Entries no_content="1">
-    <tpl:EntriesHeader>
-      <tpl:Pagination>
-        <tpl:PaginationIf end="0">
-          <link rel="prev" title="{{tpl:lang previous entries}}" href="{{tpl:PaginationURL offset="1"}}" />
-        </tpl:PaginationIf>
-
-        <tpl:PaginationIf start="0">
-          <link rel="next" title="{{tpl:lang next entries}}" href="{{tpl:PaginationURL offset="-1"}}" />
-        </tpl:PaginationIf>
-      </tpl:Pagination>
-    </tpl:EntriesHeader>
-
-    <link rel="chapter" href="{{tpl:EntryURL}}" title="{{tpl:EntryTitle encode_html="1"}}" />
-  </tpl:Entries>
-
-  <link rel="alternate" type="application/atom+xml" title="Atom 1.0" href="{{tpl:TagFeedURL type="atom"}}" />
-  <link rel="meta" type="application/xbel+xml" title="Blogroll" href="{{tpl:BlogrollXbelLink}}" />
-
-  {{tpl:include src="_head.html"}}
-</head>
-<body class="dc-tag">
-  <div id="page">
-    {{tpl:include src="_top.html"}}
-
-    <div id="wrapper">
-
-      <div id="main" role="main">
-        <div id="content">
-
-          <div id="content-info">
-            <h2>{{tpl:lang Tag}} - {{tpl:TagID}}</h2>
-            <p><a type="application/atom+xml" href="{{tpl:TagFeedURL type="atom"}}"
-              title="{{tpl:lang This tag's entries Atom feed}}" class="feed">{{tpl:lang Entries feed}}</a>
-              <tpl:SysIf operator="or" comments_active="1" pings_active="1">
-                 - <a type="application/atom+xml" href="{{tpl:TagFeedURL type="atom"}}/comments"
-                title="{{tpl:lang This tag's comments Atom feed}}" class="feed">{{tpl:lang Comments feed}}</a>
-              </tpl:SysIf>
-            </p>
-          </div>
-
-          <div class"content-inner">
-            <tpl:Entries>
-              {{tpl:include src="_entry-short.html"}}
-
-              <tpl:EntriesFooter>
-                {{tpl:include src="_pagination.html"}}
-              </tpl:EntriesFooter>
-
-            </tpl:Entries>
-          </div> <!-- End #content-inner -->
-        </div> <!-- End #content -->
-      </div> <!-- End #main -->
-
-      {{tpl:include src="_sidebar.html"}}
-
-    </div> <!-- End #wrapper -->
-
-    {{tpl:include src="_footer.html"}}
-  </div> <!-- End #page -->
-</body>
-</html>
Index: lugins/tags/default-templates/currywurst/tags.html
===================================================================
--- plugins/tags/default-templates/currywurst/tags.html	(revision 2603)
+++ 	(revision )
@@ -1,59 +1,0 @@
-<!DOCTYPE html>
-<html lang="{{tpl:BlogLanguage}}">
-<head>
-  <meta charset="UTF-8" />
-  <meta name="ROBOTS" content="{{tpl:BlogMetaRobots robots="NOINDEX"}}" />
-
-  <title>{{tpl:lang Tags}} - {{tpl:BlogName encode_html="1"}}</title>
-  <meta name="copyright" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
-  <meta name="author" content="{{tpl:BlogEditor encode_html="1"}}" />
-  <meta name="date" content="{{tpl:BlogUpdateDate iso8601="1"}}" />
-
-  <link rel="schema.dc" href="http://purl.org/dc/elements/1.1/" />
-  <meta property="dc.title" lang="{{tpl:BlogLanguage}}" content="{{tpl:lang Tags}} - {{tpl:BlogName encode_html="1"}}" />
-  <meta property="dc.language" content="{{tpl:BlogLanguage}}" />
-  <meta property="dc.publisher" content="{{tpl:BlogEditor encode_html="1"}}" />
-  <meta property="dc.rights" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
-  <meta property="dc.date" content="{{tpl:BlogUpdateDate iso8601="1"}}" />
-  <meta property="dc.type" content="text" />
-  <meta property="dc.format" content="text/html" />
-
-  <link rel="top" href="{{tpl:BlogURL}}" title="{{tpl:lang Home}}" />
-  <link rel="contents" href="{{tpl:BlogArchiveURL}}" title="{{tpl:lang Archives}}" />
-
-  <link rel="meta" type="application/xbel+xml" title="Blogroll" href="{{tpl:BlogrollXbelLink}}" />
-
-  {{tpl:include src="_head.html"}}
-</head>
-<body class="dc-tags">
-  <div id="page">
-    {{tpl:include src="_top.html"}}
-
-    <div id="wrapper">
-
-      <div id="main" role="main">
-        <div id="content">
-
-          <div id="content-info">
-            <h2>{{tpl:lang Tags}}</h2>
-          </div>
-
-          <div class="content-inner">
-            <ul class="tags">
-              <tpl:Tags>
-                <li><a href="{{tpl:TagURL}}" class="tag{{tpl:TagRoundPercent}}">{{tpl:TagID}}</a></li>
-              </tpl:Tags>
-            </ul>
-          </div>
-
-        </div>
-      </div> <!-- End #main -->
-
-      {{tpl:include src="_sidebar.html"}}
-
-    </div> <!-- End #wrapper -->
-
-    {{tpl:include src="_footer.html"}}
-  </div> <!-- End #page -->
-</body>
-</html>
Index: lugins/tags/default-templates/mustek/tag.html
===================================================================
--- plugins/tags/default-templates/mustek/tag.html	(revision 2604)
+++ 	(revision )
@@ -1,152 +1,0 @@
-<!DOCTYPE html>
-<html lang="{{tpl:BlogLanguage}}">
-<head>
-  <meta charset="UTF-8" />
-  <meta name="ROBOTS" content="{{tpl:BlogMetaRobots}}" />
-
-  <title>{{tpl:lang Tag}} - {{tpl:TagID}} - {{tpl:BlogName encode_html="1"}}<tpl:PaginationIf start="0"> - {{tpl:lang page}} {{tpl:PaginationCurrent}}</tpl:PaginationIf></title>
-  <meta name="copyright" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
-  <meta name="author" content="{{tpl:BlogEditor encode_html="1"}}" />
-  <meta name="date" content="{{tpl:BlogUpdateDate iso8601="1"}}" />
-
-  <link rel="schema.dc" href="http://purl.org/dc/elements/1.1/" />
-  <meta property="dc.title" lang="{{tpl:BlogLanguage}}" content="{{tpl:lang Tag}} - {{tpl:TagID}} - {{tpl:BlogName encode_html="1"}}<tpl:PaginationIf start="0"> - {{tpl:lang page}} {{tpl:PaginationCurrent}}</tpl:PaginationIf>" />
-  <meta property="dc.language" content="{{tpl:BlogLanguage}}" />
-  <meta property="dc.publisher" content="{{tpl:BlogEditor encode_html="1"}}" />
-  <meta property="dc.rights" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
-  <meta property="dc.date" content="{{tpl:BlogUpdateDate iso8601="1"}}" />
-  <meta property="dc.type" content="text" />
-  <meta property="dc.format" content="text/html" />
-
-  <link rel="top" href="{{tpl:BlogURL}}" title="{{tpl:lang Home}}" />
-  <link rel="contents" href="{{tpl:BlogArchiveURL}}" title="{{tpl:lang Archives}}" />
-
-  <tpl:Entries no_content="1">
-    <tpl:EntriesHeader>
-      <tpl:Pagination>
-        <tpl:PaginationIf end="0">
-        <link rel="prev" title="{{tpl:lang previous entries}}" href="{{tpl:PaginationURL offset="1"}}" />
-        </tpl:PaginationIf>
-
-        <tpl:PaginationIf start="0">
-        <link rel="next" title="{{tpl:lang next entries}}" href="{{tpl:PaginationURL offset="-1"}}" />
-        </tpl:PaginationIf>
-      </tpl:Pagination>
-    </tpl:EntriesHeader>
-
-    <link rel="chapter" href="{{tpl:EntryURL}}" title="{{tpl:EntryTitle encode_html="1"}}" />
-  </tpl:Entries>
-
-  <link rel="alternate" type="application/atom+xml" title="Atom 1.0" href="{{tpl:TagFeedURL type="atom"}}" />
-  <link rel="meta" type="application/xbel+xml" title="Blogroll" href="{{tpl:BlogrollXbelLink}}" />
-
-  {{tpl:include src="_head.html"}}
-</head>
-
-<body class="dc-tag">
-<div id="page">
-{{tpl:include src="_top.html"}}
-
-<div id="wrapper">
-
-<div id="main" role="main">
-  <div id="content">
-
-  <div id="content-info">
-    <h2>{{tpl:lang Tag}} - {{tpl:TagID}}</h2>
-
-    <p><a type="application/atom+xml" href="{{tpl:TagFeedURL type="atom"}}"
-    title="{{tpl:lang This tag's entries Atom feed}}" class="feed">{{tpl:lang Entries feed}}</a>
-
-    <tpl:SysIf operator="or" comments_active="1" pings_active="1">
-    - <a type="application/atom+xml" href="{{tpl:TagFeedURL type="atom"}}/comments"
-    title="{{tpl:lang This tag's comments Atom feed}}" class="feed">{{tpl:lang Comments feed}}</a>
-    </tpl:SysIf>
-    </p>
-  </div>
-
-  <tpl:Entries>
-    <div id="p{{tpl:EntryID}}" class="post {{tpl:EntryIfOdd}} {{tpl:EntryIfFirst}}" lang="{{tpl:EntryLang}}" role="article">
-    <!-- # New day date -->
-    <tpl:DateHeader><p class="day-date">{{tpl:EntryDate}}</p></tpl:DateHeader>
-
-    <h2 class="post-title"><a
-    href="{{tpl:EntryURL}}">{{tpl:EntryTitle encode_html="1"}}</a></h2>
-
-    <p class="post-info">{{tpl:lang By}} {{tpl:EntryAuthorLink}}
-    {{tpl:lang on}} {{tpl:EntryDate}}, {{tpl:EntryTime}}
-    <tpl:EntryIf has_category="1">
-    - <a href="{{tpl:EntryCategoryURL}}">{{tpl:EntryCategory encode_html="1"}}</a>
-    </tpl:EntryIf>
-    </p>
-
-    <tpl:EntryTags>
-    <tpl:TagsHeader><ul class="post-tags"></tpl:TagsHeader>
-    <li><a href="{{tpl:TagURL}}">{{tpl:TagID}}</a></li>
-    <tpl:TagsFooter></ul></tpl:TagsFooter>
-    </tpl:EntryTags>
-
-    <!-- # --BEHAVIOR-- publicEntryBeforeContent -->
-    {{tpl:SysBehavior behavior="publicEntryBeforeContent"}}
-
-    <!-- # Entry with an excerpt -->
-    <tpl:EntryIf extended="1">
-      <div class="post-content">{{tpl:EntryExcerpt}}</div>
-      <p class="read-it"><a href="{{tpl:EntryURL}}"
-      title="{{tpl:lang Continue reading}} {{tpl:EntryTitle encode_html="1"}}">{{tpl:lang Continue
-      reading}}</a>...</p>
-    </tpl:EntryIf>
-
-    <!-- # Entry without excerpt -->
-    <tpl:EntryIf extended="0">
-      <div class="post-content">{{tpl:EntryContent}}</div>
-    </tpl:EntryIf>
-
-    <!-- # --BEHAVIOR-- publicEntryAfterContent -->
-    {{tpl:SysBehavior behavior="publicEntryAfterContent"}}
-
-    <!-- # Number of comments, trackbacks and attachments -->
-    <tpl:EntryIf operator="or" show_comments="1" show_pings="1" has_attachment="1">
-      <p class="post-info-co">
-    </tpl:EntryIf>
-    <tpl:EntryIf show_comments="1">
-      <a href="{{tpl:EntryURL}}#comments" class="comment_count">{{tpl:EntryCommentCount}}</a>
-    </tpl:EntryIf>
-    <tpl:EntryIf show_pings="1">
-      <a href="{{tpl:EntryURL}}#pings" class="ping_count">{{tpl:EntryPingCount}}</a></tpl:EntryIf>
-    <tpl:EntryIf has_attachment="1">
-      <a href="{{tpl:EntryURL}}#attachments" class="attach_count">{{tpl:EntryAttachmentCount}}</a></tpl:EntryIf>
-    <tpl:EntryIf operator="or" show_comments="1" show_pings="1" has_attachment="1">
-      </p>
-    </tpl:EntryIf>
-    </div>
-
-    <tpl:EntriesFooter>
-      <tpl:Pagination>
-        <p class="pagination"><tpl:PaginationIf end="0"><a href="{{tpl:PaginationURL offset="+1"}}" class="prev">&#171;
-        {{tpl:lang previous entries}}</a> - </tpl:PaginationIf>
-        {{tpl:lang page}} {{tpl:PaginationCurrent}} {{tpl:lang of}} {{tpl:PaginationCounter}}
-        <tpl:PaginationIf start="0"> - <a href="{{tpl:PaginationURL offset="-1"}}" class="next">{{tpl:lang next entries}}
-        &#187;</a></tpl:PaginationIf></p>
-      </tpl:Pagination>
-    </tpl:EntriesFooter>
-  </tpl:Entries>
-  </div>
-</div> <!-- End #main -->
-
-<div id="sidebar" role="complementary">
-  <div id="blognav">
-    {{tpl:Widgets type="nav"}}
-  </div> <!-- End #blognav -->
-
-  <div id="blogextra">
-    {{tpl:Widgets type="extra"}}
-  </div> <!-- End #blogextra -->
-</div>
-
-</div> <!-- End #wrapper -->
-
-{{tpl:include src="_footer.html"}}
-</div> <!-- End #page -->
-</body>
-</html>
Index: lugins/tags/default-templates/mustek/tags.html
===================================================================
--- plugins/tags/default-templates/mustek/tags.html	(revision 2603)
+++ 	(revision )
@@ -1,68 +1,0 @@
-<!DOCTYPE html>
-<html lang="{{tpl:BlogLanguage}}">
-<head>
-  <meta charset="UTF-8" />
-  <meta name="ROBOTS" content="{{tpl:BlogMetaRobots robots="NOINDEX"}}" />
-
-  <title>{{tpl:lang Tags}} - {{tpl:BlogName encode_html="1"}}</title>
-  <meta name="copyright" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
-  <meta name="author" content="{{tpl:BlogEditor encode_html="1"}}" />
-  <meta name="date" content="{{tpl:BlogUpdateDate iso8601="1"}}" />
-
-  <link rel="schema.dc" href="http://purl.org/dc/elements/1.1/" />
-  <meta property="dc.title" lang="{{tpl:BlogLanguage}}" content="{{tpl:lang Tags}} - {{tpl:BlogName encode_html="1"}}" />
-  <meta property="dc.language" content="{{tpl:BlogLanguage}}" />
-  <meta property="dc.publisher" content="{{tpl:BlogEditor encode_html="1"}}" />
-  <meta property="dc.rights" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
-  <meta property="dc.date" content="{{tpl:BlogUpdateDate iso8601="1"}}" />
-  <meta property="dc.type" content="text" />
-  <meta property="dc.format" content="text/html" />
-
-  <link rel="top" href="{{tpl:BlogURL}}" title="{{tpl:lang Home}}" />
-  <link rel="contents" href="{{tpl:BlogArchiveURL}}" title="{{tpl:lang Archives}}" />
-
-  <link rel="meta" type="application/xbel+xml" title="Blogroll" href="{{tpl:BlogrollXbelLink}}" />
-
-  {{tpl:include src="_head.html"}}
-</head>
-
-<body class="dc-tags">
-<div id="page">
-{{tpl:include src="_top.html"}}
-
-<div id="wrapper">
-
-<div id="main" role="main">
-  <div id="content">
-
-  <div id="content-info">
-    <h2>{{tpl:lang Tags}}</h2>
-  </div>
-
-  <div class="content-inner">
-  <ul class="tags">
-    <tpl:Tags>
-      <li><a href="{{tpl:TagURL}}" class="tag{{tpl:TagRoundPercent}}">{{tpl:TagID}}</a></li>
-    </tpl:Tags>
-    </ul>
-  </div>
-
-  </div>
-</div> <!-- End #main -->
-
-<div id="sidebar" role="complementary">
-  <div id="blognav">
-    {{tpl:Widgets type="nav"}}
-  </div> <!-- End #blognav -->
-
-  <div id="blogextra">
-    {{tpl:Widgets type="extra"}}
-  </div> <!-- End #blogextra -->
-</div>
-
-</div> <!-- End #wrapper -->
-
-{{tpl:include src="_footer.html"}}
-</div> <!-- End #page -->
-</body>
-</html>
Index: plugins/tags/default-templates/tag.html
===================================================================
--- plugins/tags/default-templates/tag.html	(revision 2566)
+++ plugins/tags/default-templates/tag.html	(revision 2566)
@@ -0,0 +1,153 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="{{tpl:BlogLanguage}}" lang="{{tpl:BlogLanguage}}">
+<head>
+  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+  <meta name="ROBOTS" content="{{tpl:BlogMetaRobots}}" />
+
+  <title>{{tpl:lang Tag}} - {{tpl:TagID}} - {{tpl:BlogName encode_html="1"}}<tpl:PaginationIf start="0"> - {{tpl:lang page}} {{tpl:PaginationCurrent}}</tpl:PaginationIf></title>
+  <meta name="copyright" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
+  <meta name="author" content="{{tpl:BlogEditor encode_html="1"}}" />
+  <meta name="date" scheme="W3CDTF" content="{{tpl:BlogUpdateDate iso8601="1"}}" />
+
+  <link rel="schema.dc" href="http://purl.org/dc/elements/1.1/" />
+  <meta name="dc.title" lang="{{tpl:BlogLanguage}}" content="{{tpl:lang Tag}} - {{tpl:TagID}} - {{tpl:BlogName encode_html="1"}}<tpl:PaginationIf start="0"> - {{tpl:lang page}} {{tpl:PaginationCurrent}}</tpl:PaginationIf>" />
+  <meta name="dc.language" content="{{tpl:BlogLanguage}}" />
+  <meta name="dc.publisher" content="{{tpl:BlogEditor encode_html="1"}}" />
+  <meta name="dc.rights" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
+  <meta name="dc.date" scheme="W3CDTF" content="{{tpl:BlogUpdateDate iso8601="1"}}" />
+  <meta name="dc.type" content="text" />
+  <meta name="dc.format" content="text/html" />
+
+  <link rel="top" href="{{tpl:BlogURL}}" title="{{tpl:lang Home}}" />
+  <link rel="contents" href="{{tpl:BlogArchiveURL}}" title="{{tpl:lang Archives}}" />
+
+  <tpl:Entries no_content="1">
+    <tpl:EntriesHeader>
+      <tpl:Pagination>
+        <tpl:PaginationIf end="0">
+        <link rel="prev" title="{{tpl:lang previous entries}}" href="{{tpl:PaginationURL offset="1"}}" />
+        </tpl:PaginationIf>
+
+        <tpl:PaginationIf start="0">
+        <link rel="next" title="{{tpl:lang next entries}}" href="{{tpl:PaginationURL offset="-1"}}" />
+        </tpl:PaginationIf>
+      </tpl:Pagination>
+    </tpl:EntriesHeader>
+
+    <link rel="chapter" href="{{tpl:EntryURL}}" title="{{tpl:EntryTitle encode_html="1"}}" />
+  </tpl:Entries>
+
+  <link rel="alternate" type="application/atom+xml" title="Atom 1.0" href="{{tpl:TagFeedURL type="atom"}}" />
+  <link rel="meta" type="application/xbel+xml" title="Blogroll" href="{{tpl:BlogrollXbelLink}}" />
+
+  {{tpl:include src="_head.html"}}
+</head>
+
+<body class="dc-tag">
+<div id="page">
+{{tpl:include src="_top.html"}}
+
+<div id="wrapper">
+
+<div id="main">
+  <div id="content">
+
+  <div id="content-info">
+    <h2>{{tpl:lang Tag}} - {{tpl:TagID}}</h2>
+
+    <p><a type="application/atom+xml" href="{{tpl:TagFeedURL type="atom"}}"
+    title="{{tpl:lang This tag's entries Atom feed}}" class="feed">{{tpl:lang Entries feed}}</a>
+
+    <tpl:SysIf operator="or" comments_active="1" pings_active="1">
+    - <a type="application/atom+xml" href="{{tpl:TagFeedURL type="atom"}}/comments"
+    title="{{tpl:lang This tag's comments Atom feed}}" class="feed">{{tpl:lang Comments feed}}</a>
+    </tpl:SysIf>
+    </p>
+  </div>
+
+  <tpl:Entries>
+    <div id="p{{tpl:EntryID}}" class="post {{tpl:EntryIfOdd}} {{tpl:EntryIfFirst}}" lang="{{tpl:EntryLang}}" xml:lang="{{tpl:EntryLang}}">
+    <!-- # New day date -->
+    <tpl:DateHeader><p class="day-date">{{tpl:EntryDate}}</p></tpl:DateHeader>
+
+    <h2 class="post-title"><a
+    href="{{tpl:EntryURL}}">{{tpl:EntryTitle encode_html="1"}}</a></h2>
+
+    <p class="post-info">{{tpl:lang By}} {{tpl:EntryAuthorLink}}
+    {{tpl:lang on}} {{tpl:EntryDate}}, {{tpl:EntryTime}}
+    <tpl:EntryIf has_category="1">
+    - <a href="{{tpl:EntryCategoryURL}}">{{tpl:EntryCategory encode_html="1"}}</a>
+    </tpl:EntryIf>
+    </p>
+
+    <tpl:EntryTags>
+    <tpl:TagsHeader><ul class="post-tags"></tpl:TagsHeader>
+    <li><a href="{{tpl:TagURL}}">{{tpl:TagID}}</a></li>
+    <tpl:TagsFooter></ul></tpl:TagsFooter>
+    </tpl:EntryTags>
+
+    <!-- # --BEHAVIOR-- publicEntryBeforeContent -->
+    {{tpl:SysBehavior behavior="publicEntryBeforeContent"}}
+
+    <!-- # Entry with an excerpt -->
+    <tpl:EntryIf extended="1">
+      <div class="post-content">{{tpl:EntryExcerpt}}</div>
+      <p class="read-it"><a href="{{tpl:EntryURL}}"
+      title="{{tpl:lang Continue reading}} {{tpl:EntryTitle encode_html="1"}}">{{tpl:lang Continue
+      reading}}</a>...</p>
+    </tpl:EntryIf>
+
+    <!-- # Entry without excerpt -->
+    <tpl:EntryIf extended="0">
+      <div class="post-content">{{tpl:EntryContent}}</div>
+    </tpl:EntryIf>
+
+    <!-- # --BEHAVIOR-- publicEntryAfterContent -->
+    {{tpl:SysBehavior behavior="publicEntryAfterContent"}}
+
+    <!-- # Number of comments, trackbacks and attachments -->
+    <tpl:EntryIf operator="or" show_comments="1" show_pings="1" has_attachment="1">
+      <p class="post-info-co">
+    </tpl:EntryIf>
+    <tpl:EntryIf show_comments="1">
+      <a href="{{tpl:EntryURL}}#comments" class="comment_count">{{tpl:EntryCommentCount}}</a>
+    </tpl:EntryIf>
+    <tpl:EntryIf show_pings="1">
+      <a href="{{tpl:EntryURL}}#pings" class="ping_count">{{tpl:EntryPingCount}}</a></tpl:EntryIf>
+    <tpl:EntryIf has_attachment="1">
+      <a href="{{tpl:EntryURL}}#attachments" class="attach_count">{{tpl:EntryAttachmentCount}}</a></tpl:EntryIf>
+    <tpl:EntryIf operator="or" show_comments="1" show_pings="1" has_attachment="1">
+      </p>
+    </tpl:EntryIf>
+    </div>
+
+    <tpl:EntriesFooter>
+      <tpl:Pagination>
+        <p class="pagination"><tpl:PaginationIf end="0"><a href="{{tpl:PaginationURL offset="+1"}}" class="prev">&#171;
+        {{tpl:lang previous entries}}</a> - </tpl:PaginationIf>
+        {{tpl:lang page}} {{tpl:PaginationCurrent}} {{tpl:lang of}} {{tpl:PaginationCounter}}
+        <tpl:PaginationIf start="0"> - <a href="{{tpl:PaginationURL offset="-1"}}" class="next">{{tpl:lang next entries}}
+        &#187;</a></tpl:PaginationIf></p>
+      </tpl:Pagination>
+    </tpl:EntriesFooter>
+  </tpl:Entries>
+  </div>
+</div> <!-- End #main -->
+
+<div id="sidebar">
+  <div id="blognav">
+    {{tpl:Widgets type="nav"}}
+  </div> <!-- End #blognav -->
+
+  <div id="blogextra">
+    {{tpl:Widgets type="extra"}}
+  </div> <!-- End #blogextra -->
+</div>
+
+</div> <!-- End #wrapper -->
+
+{{tpl:include src="_footer.html"}}
+</div> <!-- End #page -->
+</body>
+</html>
Index: plugins/tags/default-templates/tags.html
===================================================================
--- plugins/tags/default-templates/tags.html	(revision 2566)
+++ plugins/tags/default-templates/tags.html	(revision 2566)
@@ -0,0 +1,69 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="{{tpl:BlogLanguage}}" lang="{{tpl:BlogLanguage}}">
+<head>
+  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+  <meta name="ROBOTS" content="{{tpl:BlogMetaRobots robots="NOINDEX"}}" />
+
+  <title>{{tpl:lang Tags}} - {{tpl:BlogName encode_html="1"}}</title>
+  <meta name="copyright" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
+  <meta name="author" content="{{tpl:BlogEditor encode_html="1"}}" />
+  <meta name="date" scheme="W3CDTF" content="{{tpl:BlogUpdateDate iso8601="1"}}" />
+
+  <link rel="schema.dc" href="http://purl.org/dc/elements/1.1/" />
+  <meta name="dc.title" lang="{{tpl:BlogLanguage}}" content="{{tpl:lang Tags}} - {{tpl:BlogName encode_html="1"}}" />
+  <meta name="dc.language" content="{{tpl:BlogLanguage}}" />
+  <meta name="dc.publisher" content="{{tpl:BlogEditor encode_html="1"}}" />
+  <meta name="dc.rights" content="{{tpl:BlogCopyrightNotice encode_html="1"}}" />
+  <meta name="dc.date" scheme="W3CDTF" content="{{tpl:BlogUpdateDate iso8601="1"}}" />
+  <meta name="dc.type" content="text" />
+  <meta name="dc.format" content="text/html" />
+
+  <link rel="top" href="{{tpl:BlogURL}}" title="{{tpl:lang Home}}" />
+  <link rel="contents" href="{{tpl:BlogArchiveURL}}" title="{{tpl:lang Archives}}" />
+
+  <link rel="meta" type="application/xbel+xml" title="Blogroll" href="{{tpl:BlogrollXbelLink}}" />
+
+  {{tpl:include src="_head.html"}}
+</head>
+
+<body class="dc-tags">
+<div id="page">
+{{tpl:include src="_top.html"}}
+
+<div id="wrapper">
+
+<div id="main">
+  <div id="content">
+
+  <div id="content-info">
+    <h2>{{tpl:lang Tags}}</h2>
+  </div>
+
+  <div class="content-inner">
+  <ul class="tags">
+    <tpl:Tags>
+      <li><a href="{{tpl:TagURL}}" class="tag{{tpl:TagRoundPercent}}">{{tpl:TagID}}</a></li>
+    </tpl:Tags>
+    </ul>
+  </div>
+
+  </div>
+</div> <!-- End #main -->
+
+<div id="sidebar">
+  <div id="blognav">
+    {{tpl:Widgets type="nav"}}
+  </div> <!-- End #blognav -->
+
+  <div id="blogextra">
+    {{tpl:Widgets type="extra"}}
+  </div> <!-- End #blogextra -->
+</div>
+
+</div> <!-- End #wrapper -->
+
+{{tpl:include src="_footer.html"}}
+</div> <!-- End #page -->
+</body>
+</html>
Index: plugins/themeEditor/class.themeEditor.php
===================================================================
--- plugins/themeEditor/class.themeEditor.php	(revision 2607)
+++ plugins/themeEditor/class.themeEditor.php	(revision 2566)
@@ -16,8 +16,9 @@
 	protected $core;
 
+	protected $default_theme;
 	protected $user_theme;
 	protected $parent_theme;
-	protected $tplset_theme;
-
+
+	protected $default_tpl = array();
 	public $tpl = array();
 	public $css = array();
@@ -30,13 +31,8 @@
 		$this->default_theme = path::real($this->core->blog->themes_path.'/default');
 		$this->user_theme = path::real($this->core->blog->themes_path.'/'.$this->core->blog->settings->system->theme);
-		$this->tplset_theme = DC_ROOT.'/inc/public/default-templates/'.DC_DEFAULT_TPLSET;
 		if (null !== $this->core->themes) {
 			$parent_theme = $this->core->themes->moduleInfo($this->core->blog->settings->system->theme,'parent');
 			if ($parent_theme) {
 				$this->parent_theme = path::real($this->core->blog->themes_path.'/'.$parent_theme);
-			}
-			$tplset = $this->core->themes->moduleInfo($this->core->blog->settings->system->theme,'tplset');
-			if ($tplset) {
-				$this->tplset_theme = DC_ROOT.'/inc/public/default-templates/'.$tplset;
 			}
 		}
@@ -211,9 +207,13 @@
 	protected function findTemplates()
 	{
+		# First, we look in template paths
+		$this->default_tpl = $this->getFilesInDir($this->default_theme.'/tpl');
+
 		$this->tpl = array_merge(
-			$this->getFilesInDir($this->tplset_theme),
+			$this->default_tpl,
 			$this->getFilesInDir($this->parent_theme.'/tpl'),
 			$this->getFilesInDir($this->user_theme.'/tpl')
 			);
+		$this->tpl = array_merge($this->getFilesInDir(DC_ROOT.'/inc/public/default-templates'),$this->tpl);
 
 		# Then we look in 'default-templates' plugins directory
Index: plugins/widgets/_widgets_functions.php
===================================================================
--- plugins/widgets/_widgets_functions.php	(revision 2605)
+++ plugins/widgets/_widgets_functions.php	(revision 2565)
@@ -29,5 +29,5 @@
 		($w->content_only ? '' : '<div id="search"'.($w->class ? ' class="'.html::escapeHTML($w->class).'"' : '').'>').
 		($w->title ? '<h2><label for="q">'.html::escapeHTML($w->title).'</label></h2>' : '').
-		'<form action="'.$core->blog->url.'" method="get" role="search">'.
+		'<form action="'.$core->blog->url.'" method="get">'.
 		'<fieldset>'.
 		'<p><input type="text" size="10" maxlength="255" id="q" name="q" value="'.$value.'" /> '.
@@ -50,5 +50,5 @@
 		($w->content_only ? '' : '<div id="topnav"'.($w->class ? ' class="'.html::escapeHTML($w->class).'"' : '').'>').
 		($w->title ? '<h2>'.html::escapeHTML($w->title).'</h2>' : '').
-		'<ul role="navigation">';
+		'<ul>';
 
 		if ($core->url->type != 'default') {
Index: plugins/widgets/index.php
===================================================================
--- plugins/widgets/index.php	(revision 2520)
+++ plugins/widgets/index.php	(revision 2509)
@@ -218,5 +218,4 @@
 		echo
 			dcPage::jsLoad('js/jquery/jquery-ui.custom.js').
-			dcPage::jsLoad('js/jquery/jquery.ui.touch-punch.js').
 			dcPage::jsLoad('index.php?pf=widgets/widgets.js');
   ?>
@@ -367,5 +366,5 @@
 		$altUp = $i == 0 ? ' alt=""' : ' alt="'.__('Up the widget').'"';
 		$altDown = $i == count($widgets->elements())-1 ? ' alt=""' : ' alt="'.__('Down the widget').'"';
-		
+
 		$iname = 'w['.$pr.']['.$i.']';
 
Index: themes/ductile/_config.php
===================================================================
--- themes/ductile/_config.php	(revision 2581)
+++ themes/ductile/_config.php	(revision 2566)
@@ -273,5 +273,4 @@
 $ductile_counts_base = array(
 	'default' => null,
-	'default-page' => null,
 	'category' => null,
 	'tag' => null,
@@ -291,5 +290,4 @@
 	$ductile_lists = $ductile_lists_base;
 }
-$ductile_lists = array_merge($ductile_lists_base,$ductile_lists);
 
 $ductile_counts = $core->blog->settings->themes->get($core->blog->settings->system->theme.'_entries_counts');
@@ -298,5 +296,4 @@
 	$ductile_counts = $ductile_counts_base;
 }
-$ductile_counts = array_merge($ductile_counts_base,$ductile_counts);
 
 $ductile_stickers = $core->blog->settings->themes->get($core->blog->settings->system->theme.'_stickers');
Index: themes/ductile/_define.php
===================================================================
--- themes/ductile/_define.php	(revision 2581)
+++ themes/ductile/_define.php	(revision 2566)
@@ -15,5 +15,5 @@
 	/* Description*/		"Mediaqueries compliant elegant theme",
 	/* Author */			"Dotclear Team",
-	/* Version */			'1.4',
+	/* Version */			'1.3.1',
 	/* Properties */		array(
 								'standalone_config' => true,
Index: themes/ductile/_prepend.php
===================================================================
--- themes/ductile/_prepend.php	(revision 2567)
+++ themes/ductile/_prepend.php	(revision 2566)
@@ -26,6 +26,5 @@
 		if (!$core->auth->user_prefs->accessibility->nodragdrop) {
 			echo
-				dcPage::jsLoad('js/jquery/jquery-ui.custom.js').
-				dcPage::jsLoad('js/jquery/jquery.ui.touch-punch.js');
+				dcPage::jsLoad('js/jquery/jquery-ui.custom.js');
 				echo <<<EOT
 <script type="text/javascript">
Index: themes/ductile/_public.php
===================================================================
--- themes/ductile/_public.php	(revision 2581)
+++ themes/ductile/_public.php	(revision 2566)
@@ -36,43 +36,30 @@
 		global $_ctx;
 
-		$nb_other = $nb_first = 0;
-
+		$nb = 0;
 		$s = $GLOBALS['core']->blog->settings->themes->get($GLOBALS['core']->blog->settings->system->theme.'_entries_counts');
 		if ($s !== null) {
 			$s = @unserialize($s);
 			if (is_array($s)) {
-				switch ($GLOBALS['core']->url->type) {
-					case 'default':
-					case 'default-page':
-						if (isset($s['default'])) {
-							$nb_first = $nb_other = (integer) $s['default'];
-						}
-						if (isset($s['default-page'])) {
-							$nb_other = (integer) $s['default-page'];
-						}
-						break;
-					default:
-						if (isset($s[$GLOBALS['core']->url->type])) {
-							// Nb de billets par page défini par la config du thème
-							$nb_first = $nb_other = (integer) $s[$GLOBALS['core']->url->type];
-						}
-						break;
-				}
-			}
-		}
-
-		if ($nb_other == 0) {
+				if (isset($s[$GLOBALS['core']->url->type])) {
+					// Nb de billets par page défini par la config du thème
+					$nb = (integer) $s[$GLOBALS['core']->url->type];
+				} else {
+					if (($GLOBALS['core']->url->type == 'default-page') && (isset($s['default']))) {
+						// Les pages 2 et suivantes de la home ont le même nombre de billet que la première page
+						$nb = (integer) $s['default'];
+					}
+				}
+			}
+		}
+
+		if ($nb == 0) {
 			if (!empty($attr['nb'])) {
 				// Nb de billets par page défini par défaut dans le template
-				$nb_other = $nb_first = (integer) $attr['nb'];
-			}
-		}
-
-		if ($nb_other > 0) {
-			$_ctx->nb_entry_per_page = $nb_other;
-		}
-		if ($nb_first > 0) {
-			$_ctx->nb_entry_first_page = $nb_first;
-		}
+				$nb = (integer) $attr['nb'];
+			}
+		}
+
+		if ($nb > 0)
+			$_ctx->nb_entry_per_page = $nb;
 	}
 
