Index: /trunk/admin/batch_manager.php
===================================================================
--- /trunk/admin/batch_manager.php	(revision 8402)
+++ /trunk/admin/batch_manager.php	(revision 8403)
@@ -55,5 +55,5 @@
   if (isset($_POST['filter_prefilter_use']))
   {
-    $prefilters = array('caddie', 'last import', 'with no album', 'with no tag');
+    $prefilters = array('caddie', 'last import', 'with no album', 'with no tag', 'with no virtual album');
     if (in_array($_POST['filter_prefilter'], $prefilters))
     {
@@ -144,4 +144,35 @@
         );
     }
+  }
+
+  if ('with no virtual album' == $_SESSION['bulk_manager_filter']['prefilter'])
+  {
+    // we are searching elements not linked to any virtual category
+    $query = '
+ SELECT id
+   FROM '.IMAGES_TABLE.'
+ ;';
+    $all_elements = array_from_query($query, 'id');
+ 
+    $query = '
+ SELECT id
+   FROM '.CATEGORIES_TABLE.'
+   WHERE dir IS NULL
+ ;';
+    $virtual_categories = array_from_query($query, 'id');
+    if (!empty($virtual_categories))
+    {
+      $query = '
+ SELECT DISTINCT(image_id)
+   FROM '.IMAGE_CATEGORY_TABLE.'
+   WHERE category_id IN ('.implode(',', $virtual_categories).')
+ ;';
+      $linked_to_virtual = array_from_query($query, 'image_id');
+    }
+
+    array_push(
+      $filter_sets,
+      array_diff($all_elements, $linked_to_virtual)
+      );
   }
 }
@@ -195,36 +226,4 @@
 //  $page['cat_elements_id'] = array();
 
-//  else if ('not_linked' == $_GET['cat'])
-//  {
-//    $page['title'] = l10n('Not linked elements');
-//    $template->assign(array('U_ACTIVE_MENU' => 5 ));
-//  
-//    // we are searching elements not linked to any virtual category
-//    $query = '
-//  SELECT id
-//    FROM '.IMAGES_TABLE.'
-//  ;';
-//    $all_elements = array_from_query($query, 'id');
-//  
-//    $linked_to_virtual = array();
-//  
-//    $query = '
-//  SELECT id
-//    FROM '.CATEGORIES_TABLE.'
-//    WHERE dir IS NULL
-//  ;';
-//    $virtual_categories = array_from_query($query, 'id');
-//    if (!empty($virtual_categories))
-//    {
-//      $query = '
-//  SELECT DISTINCT(image_id)
-//    FROM '.IMAGE_CATEGORY_TABLE.'
-//    WHERE category_id IN ('.implode(',', $virtual_categories).')
-//  ;';
-//      $linked_to_virtual = array_from_query($query, 'image_id');
-//    }
-//  
-//    $page['cat_elements_id'] = array_diff($all_elements, $linked_to_virtual);
-//  }
 //  else if ('duplicates' == $_GET['cat'])
 //  {
Index: /trunk/admin/batch_manager_global.php
===================================================================
--- /trunk/admin/batch_manager_global.php	(revision 8402)
+++ /trunk/admin/batch_manager_global.php	(revision 8403)
@@ -121,4 +121,12 @@
       array($_POST['associate'])
       );
+
+    $_SESSION['page_infos'] = array(
+      l10n('Information data registered in database')
+      );
+    
+    // let's refresh the page because we the current set might be modified
+    $redirect_url = get_root_url().'admin.php?page='.$_GET['page'];
+    redirect($redirect_url);
   }
 
@@ -150,18 +158,14 @@
       pwg_query($query);
 
-      // we remove the dissociated images if we are currently displaying the
-      // category to dissociate from.
-      //
-      // TODO we can display the photo of a given album without the $_GET['cat']
-      if (is_numeric($_GET['cat']) and $_POST['dissociate'] == $_GET['cat'])
-      {
-        $page['cat_elements_id'] = array_diff(
-          $page['cat_elements_id'],
-          $dissociables
-          );
-      }
-    }
-
-    update_category($_POST['dissociate']);
+      update_category($_POST['dissociate']);
+      
+      $_SESSION['page_infos'] = array(
+        l10n('Information data registered in database')
+        );
+      
+      // let's refresh the page because we the current set might be modified
+      $redirect_url = get_root_url().'admin.php?page='.$_GET['page'];
+      redirect($redirect_url);
+    }
   }
 
Index: /trunk/admin/maintenance.php
===================================================================
--- /trunk/admin/maintenance.php	(revision 8402)
+++ /trunk/admin/maintenance.php	(revision 8403)
@@ -154,12 +154,4 @@
   $advanced_features,
   array(
-    'CAPTION' => l10n('Not linked elements'),
-    'URL' => get_root_url().'admin.php?page=element_set&amp;cat=not_linked'
-    )
-  );
-
-array_push(
-  $advanced_features,
-  array(
     'CAPTION' => l10n('Files with same name in more than one physical album'),
     'URL' => get_root_url().'admin.php?page=element_set&amp;cat=duplicates'
Index: /trunk/admin/themes/default/template/batch_manager_global.tpl
===================================================================
--- /trunk/admin/themes/default/template/batch_manager_global.tpl	(revision 8402)
+++ /trunk/admin/themes/default/template/batch_manager_global.tpl	(revision 8403)
@@ -354,4 +354,7 @@
           <option value="caddie" {if $filter.prefilter eq 'caddie'}selected="selected"{/if}>caddie</option>
           <option value="last import" {if $filter.prefilter eq 'last import'}selected="selected"{/if}>last import</option>
+{if $ENABLE_SYNCHRONIZATION}
+          <option value="with no virtual album" {if $filter.prefilter eq 'with no virtual album'}selected="selected"{/if}>with no virtual album</option>
+{/if}
 <!--          <option value="with no album">with no album</option> -->
 <!--          <option value="with no virtual album">with no virtual album</option> -->
