--- filter_default.original.module	2008-04-15 19:35:42.000000000 +0200
+++ filter_default.module	2008-04-18 00:08:09.000000000 +0200
@@ -43,9 +43,16 @@ function filter_default_admin_defaults_f
       '#options' => $format_list,
       '#default_value' => $def_format);
   }
+  $form['admin'] = array(
+    '#type' => 'select',
+    '#title' => t('Default filter for admin user (uid == 1)'),
+    '#Description' => t('Force the use of the specified filter when logged as admin user'),
+    '#options' => $format_list,
+    '#default_value' => variable_get('filter_default_admin', $def_format));
+
   $form['submit'] = array(
     '#type' => 'submit', 
-    '#value' => t('Save default roles'));
+    '#value' => t('Save default filters'));
 
   return $form;
 }
@@ -98,6 +105,7 @@ function filter_default_admin_defaults_f
       variable_del('filter_default_'.$i);
     }
   }
+  variable_set('filter_default_admin', $form['admin']);
 }
   
 function _filter_default_form_alter_filters($format_new, &$form) {
@@ -138,12 +146,20 @@ function _filter_default_is_new($form_id
 function filter_default_form_alter($form_id, &$form) {
   if (_filter_default_is_new($form_id, $form)) {
     global $user;
-    $roles = user_roles();
-    for ($i = 1; $i < count($roles)+1; $i++) {
-      list($role, $format) = variable_get('filter_default_'.$i, array());
-      if (array_key_exists($role, $user->roles)) {
+
+    if ($user->uid == 1) {
+      if ($format = variable_get('filter_default_admin', FALSE)) {
         _filter_default_form_alter_filters($format, $form);
-        break;
+      }
+    }
+    else {
+      $roles = user_roles();
+      for ($i = 1; $i < count($roles)+1; $i++) {
+        list($role, $format) = variable_get('filter_default_'.$i, array());
+        if (array_key_exists($role, $user->roles)) {
+          _filter_default_form_alter_filters($format, $form);
+          break;
+        }
       }
     }
   }
