Refactor submit util new_upload_entry

This tool creates an initial media entry for a given user.
No magic. It just prefills the license with the user's
default license and adds the user as uploader.
This commit is contained in:
Elrond
2013-05-21 00:28:37 +02:00
parent 4adc3a85dd
commit 6c1467d570
4 changed files with 17 additions and 14 deletions

View File

@@ -19,6 +19,7 @@ import uuid
from werkzeug.utils import secure_filename
from werkzeug.datastructures import FileStorage
from mediagoblin.db.models import MediaEntry
from mediagoblin.processing import mark_entry_failed
from mediagoblin.processing.task import process_media
@@ -36,6 +37,16 @@ def check_file_field(request, field_name):
return retval
def new_upload_entry(user):
"""
Create a new MediaEntry for uploading
"""
entry = MediaEntry()
entry.uploader = user.id
entry.license = user.license_preference
return entry
def prepare_queue_task(app, entry, filename):
"""
Prepare a MediaEntry for the processing queue and get a queue file

View File

@@ -32,7 +32,7 @@ from mediagoblin.messages import add_message, SUCCESS
from mediagoblin.media_types import sniff_media, \
InvalidFileType, FileTypeNotSupported
from mediagoblin.submit.lib import check_file_field, prepare_queue_task, \
run_process_media
run_process_media, new_upload_entry
@require_active_login
@@ -57,7 +57,7 @@ def submit_start(request):
request.files['file'])
# create entry and save in database
entry = request.db.MediaEntry()
entry = new_upload_entry(request.user)
entry.media_type = unicode(media_type)
entry.title = (
unicode(submit_form.title.data)
@@ -67,8 +67,6 @@ def submit_start(request):
entry.license = unicode(submit_form.license.data) or None
entry.uploader = request.user.id
# Process the user's folksonomy "tags"
entry.tags = convert_to_tag_list_of_dicts(
submit_form.tags.data)