X-Git-Url: https://git.mdrn.pl/redakcja.git/blobdiff_plain/10f48e60a7f7499a6602098fc44298e05d05af50..8790d8f9a2625432093c1e78ceb69da83fff9d3e:/apps/explorer/views.py diff --git a/apps/explorer/views.py b/apps/explorer/views.py index 0c558fbf..cb6988ae 100644 --- a/apps/explorer/views.py +++ b/apps/explorer/views.py @@ -61,7 +61,6 @@ def file_list(request, repo): @with_repo def file_upload(request, repo): other_errors = [] - if request.method == 'POST': form = forms.BookUploadForm(request.POST, request.FILES) if form.is_valid(): @@ -72,7 +71,7 @@ def file_upload(request, repo): def upload_action(): print 'Adding file: %s' % f.name - repo._add_file(f.name, f.read().decode('utf-8')) + repo._add_file(f.name, decoded) repo._commit( message="File %s uploaded from platform by %s" %\ (f.name, request.user.username), \ @@ -154,7 +153,7 @@ def file_dc(request, path, repo): print "SAVING DC" # zapisz - repo._add_file(path, document.serialize()) + repo._write_file(path, document.serialize()) repo._commit( \ message=(form.cleaned_data['commit_message'] or 'Lokalny zapis platformy.'), \ user=request.user.username ) @@ -185,7 +184,24 @@ def file_dc(request, path, repo): # Display the main editor view @login_required -def display_editor(request, path): +@with_repo +def display_editor(request, path, repo): + path = unicode(path).encode("utf-8") + if not repo.file_exists(path, models.user_branch(request.user)): + try: + data = repo.get_file(path, 'default') + print type(data) + + def new_file(): + repo._add_file(path, data) + repo._commit(message='File import from default branch', + user=request.user.username) + + repo.in_branch(new_file, models.user_branch(request.user) ) + except hg.RepositoryException, e: + return direct_to_templace(request, 'explorer/file_unavailble.html',\ + extra_context = { 'path': path, 'error': e }) + return direct_to_template(request, 'explorer/editor.html', extra_context={ 'hash': path, 'panel_list': ['lewy', 'prawy'],