diff --git a/app/controllers/materialien/files.php b/app/controllers/materialien/files.php
index f5857b6c88c256a3cf57b266fc6b509c6e62de31..fc8b2aa8d942aaef7e52c7bf738b540d005d1435 100644
--- a/app/controllers/materialien/files.php
+++ b/app/controllers/materialien/files.php
@@ -392,35 +392,36 @@ class Materialien_FilesController extends MVVController
             $file->connectWithDataFile($_FILES['file']['tmp_name']);
             $file->store();
 
-            $file = new StandardFile($ref);
+            $file = $ref->getFileType();
         } else {
             $file = StandardFile::create($_FILES['file']);
-        }
-        $error = $top_folder->validateUpload($file, $user->id);
-        if ($error !== null) {
-            if (!$document_id) {
-                $file->delete();
+
+            $error = $top_folder->validateUpload($file, $user->id);
+            if ($error !== null) {
+                if (!$document_id) {
+                    $file->delete();
+                }
+                $this->response->set_status(400);
+                $this->render_json(compact('error'));
+                return;
             }
-            $this->response->set_status(400);
-            $this->render_json(compact('error'));
-            return;
-        }
-        $file = $top_folder->addFile($file);
+            $file = $top_folder->addFile($file);
 
-        if (!$file instanceof FileType) {
-            $error = _('Ein Systemfehler ist beim Upload aufgetreten.');
+            if (!$file instanceof FileType) {
+                $error = _('Ein Systemfehler ist beim Upload aufgetreten.');
 
-            $this->response->set_status(400);
-            $this->render_json(compact('error'));
-            return;
-        }
+                $this->response->set_status(400);
+                $this->render_json(compact('error'));
+                return;
+            }
 
-        $mvv_file_fileref = new MvvFileFileref([
-            $output['mvvfile_id'],
-            Request::option('file_language'),
-        ]);
-        $mvv_file_fileref->fileref_id = $file->id;
-        $mvv_file_fileref->store();
+            $mvv_file_fileref = new MvvFileFileref([
+                $output['mvvfile_id'],
+                Request::option('file_language'),
+            ]);
+            $mvv_file_fileref->fileref_id = $file->id;
+            $mvv_file_fileref->store();
+        }
 
         $output['document_id'] = $file->id;
         $output['icon'] = $file->getIcon(Icon::ROLE_CLICKABLE)->asImg(['class' => 'text-bottom']);