--- C:/xampp/htdocs/drupal/sites/all/modules/media_mover/media_mover_api.module	Thu Mar 25 08:47:11 2010
+++ C:/xampp/htdocs/drupal/sites/all/modules/media_mover/media_mover_api.module	Thu Oct 13 13:16:50 2011
@@ -2589,15 +2589,30 @@
  * @TODO
  */
 function media_mover_api_config_files_clear($cid) {
-  $results = db_query("SELECT mmfid FROM {media_mover_files} WHERE cid = %d AND status != %d", $cid, MMA_FILE_STATUS_COMPLETE_COMPLETE);
-  while($result = db_fetch_array($results)) {
+  $results = db_query("SELECT * FROM {media_mover_files} WHERE cid = %d AND status != %d",
+                      $cid,
+                      MMA_FILE_STATUS_COMPLETE_COMPLETE
+                     );
 
+  $deleted = 0;
+  
+  while ($file = db_fetch_array($results)) {
+    // Unserialize the stored data.
+    $file['data'] = unserialize($file['data']);
+
+    media_mover_api_file_delete_call($file);
+    $deleted++;
   }
 
-  drupal_set_message(t('Removed all files'));
+  drupal_set_message(t('Removed %deleted.',
+                        array ('%deleted' => format_plural($deleted, '1 file', '@count files'),
+                              )
+                      )
+                    );
   drupal_goto('admin/build/media_mover/config/'. $cid .'/files');
 }
 
+
 /* ****************************************** */
 /* ADMIN IMPORT / EXPORT FUNCTIONS            */
 /* ****************************************** */
@@ -2709,7 +2724,9 @@
   }
 
   if ($cid) {
-    $results = pager_query('SELECT * FROM {media_mover_files} WHERE cid = '. check_plain($cid) . $status . $order);
+    $results = pager_query('SELECT * FROM {media_mover_files} WHERE cid = %d' . $status . $order,
+                           check_plain($cid)
+                          );
     // get the config so that we can give the page a title
     $config = media_mover_api_get_configuration($cid);
     drupal_set_title(t('Files for: !config', array('!config' => $config->name)));
@@ -2997,7 +3014,8 @@
 
 
 /**
- * Deletes single file
+ * Take file deletion form submittal and pass to media_mover_api_file_delete_call
+ * to delete the file.
  * @param string $form_id
  * @param array $form_values is drupal form array
  * @
@@ -3005,25 +3023,13 @@
 function media_mover_api_file_delete_confirm_form_submit($form, &$form_state) {
   // get the file
   $file = media_mover_api_file_get($form['mmfid']['#value']);
-
-  // get the configuration that this file was created from
-  $configuration = media_mover_api_get_configuration($file['cid']);
-
-  // invoke the hook media mover $op delete
-  foreach (media_mover_api_verbs() as $verb) {
-    module_invoke($configuration->{$verb}->module, 'media_mover', 'delete', $configuration->{$verb}->action, $configuration->{$verb}->configuration, $file, $configuration);
-  }
-
-  // delete the file cache for this node
-  if ($file['nid']) {
-    cache_clear_all('media_mover_files_node_'. $file['nid'], 'cache_media_mover', TRUE);
-  }
-  // now delete the file from the db
-  db_query("DELETE FROM {media_mover_files} WHERE mmfid = %d", $form['mmfid']['#value']);
+  
+  media_mover_api_file_delete_call($file);
+  
   drupal_set_message(t('Deleted the file.'));
+
   $form_state['redirect'] = 'admin/build/media_mover/config/' . $configuration->cid .'/files';
 }
-
 
 /**
  * deletes all the files associated with a specified node
