diff --git a/media_browser_plus.install b/media_browser_plus.install
index c426a8a..59b637e 100644
--- a/media_browser_plus.install
+++ b/media_browser_plus.install
@@ -38,7 +38,7 @@ function _media_browser_plus_ensure_field_tags() {
     'type' => 'taxonomy_term_reference',
     // Set cardinality to unlimited for tagging.
     'cardinality' => FIELD_CARDINALITY_UNLIMITED,
-    'entity_type' => 'media',
+    'entity_type' => 'file',
     'label' => 'Tags',
     'widget' => array('type' => 'taxonomy_autocomplete'),
     'settings' => array(
@@ -82,7 +82,7 @@ function _media_browser_plus_ensure_field_folder() {
     'type' => 'taxonomy_term_reference',
     // media file can only be in one folder at a time
     'cardinality' => 1,
-    'entity_type' => 'media',
+    'entity_type' => 'file',
     'bundle' => 'image',
     'required' => TRUE,
     'settings' => array(
diff --git a/media_browser_plus.module b/media_browser_plus.module
index c50b5ce..bcc2459 100644
--- a/media_browser_plus.module
+++ b/media_browser_plus.module
@@ -260,14 +260,19 @@ function _media_browser_plus_media_admin_list_alter(&$form, &$form_state){
 function media_browser_plus_change_folder($form, &$form_state){
   // parse values
   $folder = (int) (str_replace("folder_load_", "", $form_state['input']['folder']));
-  $media = media_load((int) (str_replace("edit-files-", "", $form_state['input']['media'])));
+  $varx = ((int) (str_replace("edit-files-", "", $form_state['input']['media'])));
+
+$multiple_media = media_multi_load("{$varx}");
+   $media = $multiple_media[$varx];
+    
+  //$media = media_load((int) (str_replace("edit-files-", "", $form_state['input']['media'])));
   // apply new folder
   if(isset($media->field_folder[LANGUAGE_NONE][0]['tid']))
     $media->field_folder[LANGUAGE_NONE][0]['tid'] = $folder;
   else
     $media->field_folder = array(LANGUAGE_NONE => array(array('tid' => $folder)));
   // save and exit
-  media_save($media);
+  entity_form_submit_build_entity('file', $media, $form, $form_state); file_save($media);
   die("");
   return $form;
 }
@@ -289,7 +294,7 @@ function media_browser_plus_thumbnailsJSON(){
     $conditions[] = array("field" => array("field_folder", "tid", array($folder), "IN"));
     $order = array(array("property" => array("fid", "DESC")));
     $media_entities = media_browser_plus_load_multiple(array("conditions" =>$conditions, "order" => $order));
-    module_load_include('inc', 'media', 'media.browser');
+    module_load_include('inc', 'media', 'includes/media.browser');
     foreach($media_entities->results as $media){
       media_browser_build_media_item($media);
     }
@@ -392,14 +397,21 @@ function media_browser_plus_media_import_batch_import_files($files, $form_values
       $file_obj = media_parse_to_file($file);
       $context['results']['success'][] = $file;
       if (!$image_in_message) {
-        $media = media_load($file_obj->fid);
-        $image_in_message = field_view_field('media', $media, 'file', 'media_preview');
+      
+      $multiple_media = media_multi_load("{$file_obj->fid}");
+    $media = $multiple_media[$file_obj->fid];
+      //  $media = media_load($file_obj->fid);
+        
+        
+        $image_in_message = field_view_field('media', $file, 'file', 'media_preview');
       }
       // adding fields here
-      $media = media_load($file_obj->fid);
+            $multiple_media = media_multi_load("{$file_obj->fid}");
+    $media = $multiple_media[$file_obj->fid];
+     // $media = media_load($file_obj->fid);
       $media->field_folder = array(LANGUAGE_NONE => array(array('tid' => $form_values['field_folder'])));
       $media->field_tags = array(LANGUAGE_NONE => $form_values['field_tags']);
-      media_save($media);
+      entity_form_submit_build_entity('file', $media, $form, $form_state); file_save($media);
     }
     catch(Exception $e) {
       $context['results']['errors'][] = $file . " Reason: " . $e->getMessage();
@@ -469,10 +481,10 @@ function media_browser_plus_submit($form, &$form_state) {
   // string that was created by the form's primary submit handler, and load the
   // corresponding entities.
   $fids = $form_state['redirect'][1]['query']['fid'];
-  if (!is_array($fids)) {
-    $fids = array($fids);
-  }
-  $media_entities = media_load_multiple($fids);
+ // if (!is_array($fids)) {
+ //   $fids = array($fids);
+ // }
+  $media_entities = file_load_multiple($fids);
 
   // If tags have been entered, apply them to each new entity.
   if (!empty($form_state['values']['field_tags'])) {
@@ -505,9 +517,9 @@ function media_browser_plus_submit($form, &$form_state) {
         // Limiting value population only if the field is of type 'text' or
         // 'text_long' isn't as extensible as would be ideal, but we need some
         // protection against populating a field with incompatible content.
-        if (isset($field) && in_array($field['type'], array('text', 'text_long')) && isset($field['bundles']['media'])) {
+        if (isset($field) && in_array($field['type'], array('text', 'text_long')) && isset($field['bundles']['file'])) {
           foreach ($media_entities as $media) {
-            if (in_array($media->type, $field['bundles']['media']) && !isset($media->{$field_name}[LANGUAGE_NONE][0]['value'])) {
+            if (in_array($media->type, $field['bundles']['file']) && !isset($media->{$field_name}[LANGUAGE_NONE][0]['value'])) {
               $media->{$field_name}[LANGUAGE_NONE][0]['value'] = $value;
             }
           }
@@ -516,7 +528,7 @@ function media_browser_plus_submit($form, &$form_state) {
     }
   }
   foreach ($media_entities as $media) {
-    media_save($media);
+    entity_form_submit_build_entity('file', $media, $form, $form_state); file_save($media);
   }
 }
 
@@ -559,9 +571,13 @@ function _media_browser_plus_metadata($provider) {
 function media_browser_plus_preprocess_media_link(&$variables) {
   // Use the value of the title field, when there is one, as the link text for
   // all links that would otherwise default to the filename.
-  // @todo Solve generically using the 'label' key of hook_entity_indo(). See
+  // @todo Solve generically using the 'label' key of hook_entity_info(). See
   //   http://drupal.org/node/910396.
-  $media = media_load($variables['file']->fid);
+  
+        $multiple_media = media_multi_load($variables['file']->fid);
+    $media = $multiple_media[$variables['file']->fid];
+  
+ // $media = media_load($variables['file']->fid);
   if (empty($variables['file']->description) && isset($media->media_title[LANGUAGE_NONE][0]['value'])) {
     $variables['file']->description = $media->media_title[LANGUAGE_NONE][0]['value'];
   }
@@ -577,10 +593,12 @@ function media_browser_plus_preprocess_media_thumbnail(&$variables) {
     var_dump($variables['element'][0]);
     return;
   }
-  $media = $variables['element']['#object'];
-  if (isset($media->media_title[LANGUAGE_NONE][0]['value'])) {
-    $variables['element']['#name'] = $media->media_title[LANGUAGE_NONE][0]['value'];
-  }
+  $media = $variables['element'];
+
+  $variables['element']['#name'] = $variables['element']['#file']->filename;
+  //if (isset($media->media_title[LANGUAGE_NONE][0]['value'])) {
+ //   $variables['element']['#name'] = $media->media_title[LANGUAGE_NONE][0]['value'];
+ // }
 }
 
 /**
@@ -827,7 +845,7 @@ function media_browser_plus_permission() {
  */
 function media_browser_plus_file_download_access($field, $entity_type, $entity) {
   // only check against media entities
-  if($entity_type == 'media') {
+  if($entity_type == 'file') {
     // check for media admin AND return true if found
     return media_browser_plus_media_access($entity);
   }
@@ -868,8 +886,8 @@ function media_browser_plus_media_access($media_entity) {
  * @param $entity
  */
 function media_browser_plus_file_download_access_alter(&$grants, $field, $entity_type, $entity = null) {
-  if($entity_type == 'media'){
-    unset($grants['media']);
+  if($entity_type == 'file'){
+    unset($grants['file']);
   }
 }
 
@@ -1018,7 +1036,7 @@ function _media_browser_plus_create_relationship_list($categories){
  */
 function _media_browser_plus_has_unsorted_media(){
   // loading media
-  $entity_controller = entity_get_controller('media');
+  $entity_controller = entity_get_controller('file');
   $media_entities = $entity_controller->load(NULL, array(), 0, 100);
   //
   foreach($media_entities as $media){
@@ -1055,7 +1073,7 @@ function media_browser_plus_media_admin_folder_change_submit(&$form, &$form_stat
   $fids = array_keys(array_filter($form_state['values']['files']));
   $folder = (int) $form_state['values']['selected_folder'];
   // load media
-  $media_entities = media_load_multiple($fids);
+  $media_entities = media_multi_load($fids);
   // apply folder
   foreach ($media_entities as $media) {
     if(isset($media->field_folder[LANGUAGE_NONE][0]['tid']))
@@ -1063,7 +1081,7 @@ function media_browser_plus_media_admin_folder_change_submit(&$form, &$form_stat
     else
       $media->field_folder = array(LANGUAGE_NONE => array(array('tid' => $folder)));
     // save changes
-    media_save($media);
+    entity_form_submit_build_entity('file', $media, $form, $form_state); file_save($media);
   }
   //
   drupal_set_message(t('Folder changes applied successfully'));
@@ -1133,7 +1151,7 @@ function media_browser_plus_load_multiple($variables){
   }
   $query = new EntityFieldQuery();
   // set entity type to media
-  $query->entityCondition('entity_type', 'media');
+  $query->entityCondition('entity_type', 'file');
   // parse ids if any have been passed
   if(count($params['ids'])){
     $query->entityCondition('entity_id', $params['ids'], 'IN');
@@ -1211,9 +1229,10 @@ function media_browser_plus_load_multiple($variables){
   $res_object->results = array();
   // execute query and load results
   $result = $query->execute();
-  if (!empty($result['media'])) {
-    $res_object->results = $params['ids_only'] ? array_keys($result['media']) :
-      entity_load('media', array_keys($result['media']));
+
+  if (!empty($result['file'])) {
+    $res_object->results = $params['ids_only'] ? array_keys($result['file']) :
+      entity_load('file', array_keys($result['file']));
   }
   // and return the object
   return $res_object;
@@ -1398,7 +1417,7 @@ function media_browser_plus_media_settings_validate($form, &$form_state) {
  * implements hook_field_attach_presave() and makes sure all media is in a folder
  */
 function media_browser_plus_field_attach_presave($entity_type, $entity) {
-  if($entity_type != 'media')
+  if($entity_type != 'file')
     return;
   // look for folder and set default if none found
   // $media->field_folder[LANGUAGE_NONE] = array(array('tid' => $form_state['values']['field_folder']));
@@ -1615,9 +1634,11 @@ function media_browser_plus_library_browser($form, &$form_state, $multiselect, $
  * @param $file
  */
 function media_browser_plus_file_delete($file) {
-  $media = media_load($file->fid);
-  module_invoke_all('entity_delete', $media, 'media');
-  field_attach_delete('media', $media);
+      $multiple_media = media_multi_load($file->fid);
+    $media = $multiple_media[$file->fid];
+  //$media = media_load($file->fid);
+  module_invoke_all('entity_delete', $media, 'file');
+  field_attach_delete('file', $media);
 }
 
 ///////////////////////////////////////////////////////////////
@@ -1700,7 +1721,7 @@ function media_browser_plus_grid_view_form($library_mode = false, $multiselect =
   $options = array(array(
     'categories' => array(
       'data' => drupal_render($form['admin']['folder'])),
-      'media' => array(
+      'file' => array(
         'data' => '<div class="media-display-thumbnails media-clear clearfix">' .
           '<ul class="media-list-thumbnails" id="media-thumb-list" style="height: '.variable_get('media_grid_window_height').'px;">' .
           '</ul></div>')
diff --git a/media_browser_plus.pages.inc b/media_browser_plus.pages.inc
index 9f838b7..dfdf91e 100644
--- a/media_browser_plus.pages.inc
+++ b/media_browser_plus.pages.inc
@@ -17,7 +17,7 @@ function media_browser_plus_edit_multiple_form($fids) {
   $variables = array('ids' => $ids, 'paging' => false, 'apply_filter' => false);
   $media_items = media_browser_plus_load_multiple($variables)->results;
   // produce form via multiform
-  module_load_include('inc', 'media', 'media.pages');
+  module_load_include('inc', 'media', 'includes/media.pages');
   $form = media_page_multiedit($media_items);
   // @TODO: change to normale redirect once this works with multiform
   if (isset($_POST['op'])) {
@@ -130,7 +130,7 @@ function media_browser_plus_delete_multiple_form($form, &$form_state, $fids) {
   foreach(explode(" ", $fids) as $key => $value) {
     $files[$value] = $value;
   }
-  module_load_include('inc', 'media', 'media.pages');
+  module_load_include('inc', 'media', 'includes/media.pages');
   $form = media_multiple_delete_confirm($form, $form_state, $files);
   return $form;
 }
@@ -171,7 +171,9 @@ function media_browser_plus_media_preview($form, &$form_state, $media) {
     echo '<div class="preview-metadata" title="'.$media->filename.'">' .
       '<img width="'.$sx.'" height="'.$sy.'" src="'.$uri.'" /></div>';
   } else {
-    $form['preview'] = media_get_thumbnail_preview(media_load($media->fid), TRUE);
+  $multiple_media = media_multi_load($media->fid);
+    $mmedia = $multiple_media[$media->fid];
+    $form['preview'] = media_get_thumbnail_preview($mmedia, TRUE);
     echo drupal_render($form['preview']);
   }
   die();
