55from django .http import JsonResponse , HttpResponseBadRequest
66from django .views import View
77
8- from finder .models .file import AbstractFileModel
8+ from finder .models .file import FileModel
99from finder .models .folder import FolderModel , RealmModel
10+ from finder .models .inode import InodeModel
1011from finder .models .label import Label
1112
1213
@@ -145,17 +146,7 @@ def list(self, request, folder_id):
145146 folder = FolderModel .objects .get (id = folder_id )
146147 lookup = self .filter_lookup (request )
147148 request .session ['finder.last_folder' ] = str (folder_id )
148- return {
149- 'files' : [{
150- 'id' : str (file .id ),
151- 'name' : file .name ,
152- 'mime_type' : file .mime_type ,
153- 'browser_component' : file .cast .browser_component ,
154- 'thumbnail_url' : file .cast .get_thumbnail_url (),
155- 'sample_url' : getattr (file .cast , 'get_sample_url' , lambda : None )(),
156- 'labels' : file .serializable_value ('labels' ),
157- } for file in folder .listdir (is_folder = False , ** lookup )]
158- }
149+ return {'files' : [file .as_dict for file in folder .listdir (is_folder = False , ** lookup )]}
159150
160151 def search (self , request , folder_id ):
161152 """
@@ -186,16 +177,7 @@ def search(self, request, folder_id):
186177 queryset = file_model .objects .filter (** lookup )
187178 if sorting :
188179 queryset = queryset .order_by (sorting [0 ])
189- files .extend ([{
190- 'id' : str (file .id ),
191- 'name' : file .name ,
192- 'mime_type' : file .mime_type ,
193- 'last_modified_at' : file .last_modified_at ,
194- 'browser_component' : file .cast .browser_component ,
195- 'thumbnail_url' : file .cast .get_thumbnail_url (),
196- 'sample_url' : getattr (file .cast , 'get_sample_url' , lambda : None )(),
197- 'labels' : file .serializable_value ('labels' ),
198- } for file in queryset .distinct ()])
180+ files .extend ([file .as_dict for file in queryset .distinct ()])
199181 if sorting :
200182 files .sort (key = sorting [1 ], reverse = sorting [2 ])
201183 return {'files' : files }
@@ -215,15 +197,4 @@ def upload(self, request, folder_id):
215197 folder = folder ,
216198 owner = request .user ,
217199 )
218- return {
219- 'uploaded_file' : {
220- 'id' : str (file .id ),
221- 'name' : file .name ,
222- 'mime_type' : file .mime_type ,
223- 'last_modified_at' : file .last_modified_at ,
224- 'browser_component' : file .cast .browser_component ,
225- 'thumbnail_url' : file .cast .get_thumbnail_url (),
226- 'sample_url' : getattr (file .cast , 'get_sample_url' , lambda : None )(),
227- 'labels' : file .serializable_value ('labels' ),
228- }
229- }
200+ return {'uploaded_file' : file .as_dict }
0 commit comments