def delete_file(request, id, name): fs = FileSystemStorage() if not experiment.file_exists(id, name): return render(request, '404.html') try: fs.delete('experiments/' + id + '/' + name) except: return render( request, 'nix/experiment.html', { 'experiment_id': id, 'error_message': "The file was not deleted.", 'transformed_files': experiment.get_json_ld_files(id), 'nix_transformed': experiment.get_nix_transformed_bool_list(id), 'files': experiment.get_nix_files(id) }) return render( request, 'nix/experiment.html', { 'experiment_id': id, 'success_message': "The file was deleted.", 'transformed_files': experiment.get_json_ld_files(id), 'nix_transformed': experiment.get_nix_transformed_bool_list(id), 'files': experiment.get_nix_files(id) })
def download_file(request, id, name): fs = FileSystemStorage() if not experiment.file_exists(id, name): return render(request, '404.html') return FileResponse(fs.open('experiments/' + id + '/' + name, 'rb'), content_type='application/force-download')
def process_query(request, id): error_message = "" query_result = "" file_name = request.POST.get("transformed_file", "") if file_name == "" or not experiment.file_exists(id, file_name): return render(request, '404.html') query = request.POST.get("query", "") module_dir = os.path.dirname(__file__) # get current directory file_path = os.path.join(module_dir, '../media/experiments/' + id + '/' + file_name) g = Graph() try: result = g.parse(file_path, format="json-ld") except: error_message = "Invalid JSON-LD file." try: query_result = g.query(query) except: error_message = "An error occurred while executing the query." return render( request, 'nix/find.html', { 'error_message': error_message, 'query': query, 'experiment_id': id, 'query_result': query_result, 'transformed_files': experiment.get_json_ld_files(id), 'selected_file': file_name })
def show_metadata(request, id): file_name = request.POST.get("transformed_file", "") if file_name == "" or not experiment.file_exists(id, file_name): return render(request, '404.html') file_content = unicode(experiment.read_file(id, file_name), "utf-8") return render( request, 'nix/metadata.html', { 'experiment_id': id, 'transformed_files': experiment.get_json_ld_files(id), 'selected_file': file_name, 'file_content': file_content })
def convert_file(request, id, name): error_message = "" success_message = "The requested experiment has been converted." if not experiment.file_exists(id, name): return render(request, '404.html') if not experiment.convert_metadata(id, name): error_message = "An error occurred while converting the file." success_message = "" return render( request, 'nix/experiment.html', { 'experiment_id': id, 'error_message': error_message, 'success_message': success_message, 'transformed_files': experiment.get_json_ld_files(id), 'nix_transformed': experiment.get_nix_transformed_bool_list(id), 'files': experiment.get_nix_files(id) })