Index: admin/index.php
===================================================================
--- admin/index.php	(revision 2852)
+++ admin/index.php	(revision 2854)
@@ -176,5 +176,6 @@
 		$post_editor = $core->auth->getOption('editor');
 		if ($post_editor && !empty($post_editor[$post_format])) {
-			$admin_post_behavior = $core->callBehavior('adminPostEditor', $post_editor[$post_format], 'post');
+			// context is not post because of tags not available
+			$admin_post_behavior = $core->callBehavior('adminPostEditor', $post_editor[$post_format], 'quickentry', array('#post_content'));
 		}
 	}
Index: admin/post.php
===================================================================
--- admin/post.php	(revision 2852)
+++ admin/post.php	(revision 2854)
@@ -378,5 +378,5 @@
 $admin_post_behavior = '';
 if ($post_editor && !empty($post_editor[$post_format])) {
-	$admin_post_behavior = $core->callBehavior('adminPostEditor', $post_editor[$post_format], 'post');
+	$admin_post_behavior = $core->callBehavior('adminPostEditor', $post_editor[$post_format], 'post', array('#post_excerpt','#post_content,#comment_content'));
 }
 
Index: plugins/dcCKEditor/_define.php
===================================================================
--- plugins/dcCKEditor/_define.php	(revision 2738)
+++ plugins/dcCKEditor/_define.php	(revision 2854)
@@ -16,5 +16,5 @@
 	/* Description*/		"dotclear CKEditor integration",
 	/* Author */			"dotclear Team",
-	/* Version */			"0.8.3",
+	/* Version */			"0.9.0",
 	/* Permissions */	    "usage,contentadmin",
 	/* Properties */	    array('type' => 'plugin')
Index: plugins/dcCKEditor/_install.php
===================================================================
--- plugins/dcCKEditor/_install.php	(revision 2753)
+++ plugins/dcCKEditor/_install.php	(revision 2854)
@@ -27,5 +27,4 @@
 $settings->dcckeditor->put('cancollapse_button', false, 'boolean', 'Add collapse button?', false, true);
 $settings->dcckeditor->put('format_select', false, 'boolean', 'Add format selection?', false, true);
-$settings->dcckeditor->put('textareas', DEFAULT_TEXTAREAS, 'string', 'Text areas to be used by CKEditor', false, true);
 $settings->dcckeditor->put('table_button', false, 'boolean', 'Add table button?', false, true);
 $settings->dcckeditor->put('clipboard_buttons', false, 'boolean', 'Add clipboard buttons?', false, true);
Index: plugins/dcCKEditor/_post_config.php
===================================================================
--- plugins/dcCKEditor/_post_config.php	(revision 2835)
+++ plugins/dcCKEditor/_post_config.php	(revision 2854)
@@ -58,5 +58,5 @@
 
 		var editor = CKEDITOR.instances[$.getEditorName()];
-		if (!confirmClosePage.formSubmit && editor.checkDirty()) {
+		if (editor!==undefined && !confirmClosePage.formSubmit && editor.checkDirty()) {
 			e.returnValue = confirmClosePage.prompt;
 			return confirmClosePage.prompt;
@@ -88,6 +88,8 @@
 }
 ?>
-
-	$('<?php echo $dcckeditor_textareas;?>').ckeditor({
+    if (dotclear.ckeditor_context===undefined || dotclear.ckeditor_tags_context[dotclear.ckeditor_context]===undefined) {
+        return;
+    }
+	$(dotclear.ckeditor_tags_context[dotclear.ckeditor_context].join(',')).ckeditor({
 <?php
 $defautExtraPlugins = 'entrylink,dclink,media,justify,colorbutton,format';
@@ -156,5 +158,5 @@
 				items: [
 					'EntryLink','dcLink','Media','-',
-					'Source', 'Maximize'
+					'Source'
 <?php if (!empty($dcckeditor_textcolor_button)):?>
                 ,'TextColor'
@@ -162,4 +164,10 @@
 				]
 			},
+            {
+                name: 'special',
+                items: [
+                    'Maximize'
+                ]
+            },
 			<?php // add extra buttons comming from dotclear plugins
 			if (!empty($extraPlugins) && count($extraPlugins)>0) {
Index: plugins/dcCKEditor/_prepend.php
===================================================================
--- plugins/dcCKEditor/_prepend.php	(revision 2841)
+++ plugins/dcCKEditor/_prepend.php	(revision 2854)
@@ -13,5 +13,3 @@
 if (!defined('DC_RC_PATH')) { return; }
 
-define('DEFAULT_TEXTAREAS', 'textarea#post_excerpt,textarea#post_content,textarea#comment_content');
-
 $__autoload['dcCKEditorBehaviors'] = dirname(__FILE__).'/inc/dc.ckeditor.behaviors.php';
Index: plugins/dcCKEditor/inc/_config.php
===================================================================
--- plugins/dcCKEditor/inc/_config.php	(revision 2738)
+++ plugins/dcCKEditor/inc/_config.php	(revision 2854)
@@ -42,7 +42,4 @@
             $dcckeditor_clipboard_buttons = (empty($_POST['dcckeditor_clipboard_buttons']))?false:true;
             $core->blog->settings->dcckeditor->put('clipboard_buttons', $dcckeditor_clipboard_buttons, 'boolean');
-
-            $dcckeditor_textareas = (!empty($_POST['dcckeditor_textareas']))?trim($_POST['dcckeditor_textareas']):'';
-            $core->blog->settings->dcckeditor->put('textareas', $dcckeditor_textareas, 'string');
         }
 
Index: plugins/dcCKEditor/inc/dc.ckeditor.behaviors.php
===================================================================
--- plugins/dcCKEditor/inc/dc.ckeditor.behaviors.php	(revision 2852)
+++ plugins/dcCKEditor/inc/dc.ckeditor.behaviors.php	(revision 2854)
@@ -16,5 +16,12 @@
     protected static $config_url = 'plugin.php?p=dcCKEditor&config=1';
 
-    public static function adminPostEditor($editor='',$context='') {
+    /**
+     * adminPostEditor add javascript to the DOM to load ckeditor depending on context
+     *
+     * @param editor   <b>string</b> wanted editor
+     * @param context  <b>string</b> page context (post,page,comment,event,...)
+     * @param tags     <b>array</b>  array of ids into inject editor
+     */
+    public static function adminPostEditor($editor='',$context='',array $tags=array()) {
         if (empty($editor) || $editor!='dcCKEditor') { return;}
 
@@ -27,4 +34,6 @@
             '<script type="text/javascript">'."\n".
             "//<![CDATA[\n".
+            dcPage::jsVar('dotclear.ckeditor_context', $context).
+            'dotclear.ckeditor_tags_context = '.sprintf('{%s:["%s"]};'."\n", $context, implode('","', $tags)).
             'var CKEDITOR_BASEPATH = "'.DC_ADMIN_URL.self::$p_url.'/js/ckeditor/";'."\n".
             dcPage::jsVar('dotclear.base_url', $GLOBALS['core']->blog->host).
@@ -70,3 +79,7 @@
         }
     }
+
+    public static function getTagsContext() {
+        return self::$tagsContext;
+    }
 }
Index: plugins/dcCKEditor/index.php
===================================================================
--- plugins/dcCKEditor/index.php	(revision 2761)
+++ plugins/dcCKEditor/index.php	(revision 2854)
@@ -22,5 +22,4 @@
 $dcckeditor_format_select = $core->blog->settings->dcckeditor->format_select;
 $dcckeditor_table_button = $core->blog->settings->dcckeditor->table_button;
-$dcckeditor_textareas = $core->blog->settings->dcckeditor->textareas;
 $dcckeditor_clipboard_buttons = $core->blog->settings->dcckeditor->clipboard_buttons;
 
Index: plugins/dcCKEditor/tpl/index.tpl
===================================================================
--- plugins/dcCKEditor/tpl/index.tpl	(revision 2747)
+++ plugins/dcCKEditor/tpl/index.tpl	(revision 2854)
@@ -54,15 +54,4 @@
 	</p>
       </div>
-      <div class="fieldset">
-	<h3><?php echo __('Advanced options'); ?></h3>
-	<p>
-	  <label class="classic" for="dcckeditor_textareas">&nbsp;<?php echo __('Text areas to be used by CKEditor');?></label>
-	  <?php echo form::field('dcckeditor_textareas', 50, 255, $dcckeditor_textareas);?>
-	</p>
-	<p class="clear form-note">
-	  <?php echo __('Comma separed list of textareas - jQuery selector. Defaut: '), DEFAULT_TEXTAREAS;?>
-	</p>
-      </div>
-
       <?php endif;?>
       <p>
@@ -76,5 +65,2 @@
   </body>
 </html>
-
-
-
Index: plugins/dcLegacyEditor/inc/dc.legacy.editor.behaviors.php
===================================================================
--- plugins/dcLegacyEditor/inc/dc.legacy.editor.behaviors.php	(revision 2762)
+++ plugins/dcLegacyEditor/inc/dc.legacy.editor.behaviors.php	(revision 2854)
@@ -15,7 +15,15 @@
 	protected static $p_url = 'index.php?pf=dcLegacyEditor';
 
-    // @param context not use but added to have same function prototype
-    public static function adminPostEditor($editor='',$context='') {
+    /**
+     * adminPostEditor add javascript to the DOM to load ckeditor depending on context
+     *
+     * @param editor   <b>string</b> wanted editor
+     * @param context  <b>string</b> page context (post,page,comment,event,...)
+     * @param tags     <b>array</b>  array of ids to inject editor
+     */
+    public static function adminPostEditor($editor='',$context='',array $tags=array()) {
 		if (empty($editor) || $editor!='dcLegacyEditor') {return;}
+
+        // context and tags are not used for dcLegacyEditor
 
 		return
Index: plugins/pages/page.php
===================================================================
--- plugins/pages/page.php	(revision 2852)
+++ plugins/pages/page.php	(revision 2854)
@@ -286,5 +286,5 @@
 $admin_post_behavior = '';
 if ($post_editor && !empty($post_editor[$post_format])) {
-	$admin_post_behavior = $core->callBehavior('adminPostEditor', $post_editor[$post_format], 'page');
+	$admin_post_behavior = $core->callBehavior('adminPostEditor', $post_editor[$post_format], 'page', array('#post_excerpt','#post_content'));
 }
 
