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:
parent
4adc3a85dd
commit
6c1467d570
@ -27,7 +27,7 @@ from mediagoblin.media_types import sniff_media
|
|||||||
from mediagoblin.plugins.api.tools import api_auth, get_entry_serializable, \
|
from mediagoblin.plugins.api.tools import api_auth, get_entry_serializable, \
|
||||||
json_response
|
json_response
|
||||||
from mediagoblin.submit.lib import check_file_field, prepare_queue_task, \
|
from mediagoblin.submit.lib import check_file_field, prepare_queue_task, \
|
||||||
run_process_media
|
run_process_media, new_upload_entry
|
||||||
|
|
||||||
_log = logging.getLogger(__name__)
|
_log = logging.getLogger(__name__)
|
||||||
|
|
||||||
@ -53,7 +53,7 @@ def post_entry(request):
|
|||||||
|
|
||||||
media_type, media_manager = sniff_media(media_file)
|
media_type, media_manager = sniff_media(media_file)
|
||||||
|
|
||||||
entry = request.db.MediaEntry()
|
entry = new_upload_entry(request.user)
|
||||||
entry.media_type = unicode(media_type)
|
entry.media_type = unicode(media_type)
|
||||||
entry.title = unicode(request.form.get('title')
|
entry.title = unicode(request.form.get('title')
|
||||||
or splitext(media_file.filename)[0])
|
or splitext(media_file.filename)[0])
|
||||||
@ -61,8 +61,6 @@ def post_entry(request):
|
|||||||
entry.description = unicode(request.form.get('description'))
|
entry.description = unicode(request.form.get('description'))
|
||||||
entry.license = unicode(request.form.get('license', ''))
|
entry.license = unicode(request.form.get('license', ''))
|
||||||
|
|
||||||
entry.uploader = request.user.id
|
|
||||||
|
|
||||||
entry.generate_slug()
|
entry.generate_slug()
|
||||||
|
|
||||||
# queue appropriately
|
# queue appropriately
|
||||||
|
@ -26,7 +26,7 @@ from mediagoblin.meddleware.csrf import csrf_exempt
|
|||||||
from mediagoblin.auth.lib import fake_login_attempt
|
from mediagoblin.auth.lib import fake_login_attempt
|
||||||
from mediagoblin.media_types import sniff_media
|
from mediagoblin.media_types import sniff_media
|
||||||
from mediagoblin.submit.lib import check_file_field, prepare_queue_task, \
|
from mediagoblin.submit.lib import check_file_field, prepare_queue_task, \
|
||||||
run_process_media
|
run_process_media, new_upload_entry
|
||||||
|
|
||||||
from .tools import CmdTable, response_xml, check_form, \
|
from .tools import CmdTable, response_xml, check_form, \
|
||||||
PWGSession, PwgNamedArray, PwgError
|
PWGSession, PwgNamedArray, PwgError
|
||||||
@ -124,7 +124,7 @@ def pwg_images_addSimple(request):
|
|||||||
request.files['image'])
|
request.files['image'])
|
||||||
|
|
||||||
# create entry and save in database
|
# create entry and save in database
|
||||||
entry = request.db.MediaEntry()
|
entry = new_upload_entry(request.user)
|
||||||
entry.media_type = unicode(media_type)
|
entry.media_type = unicode(media_type)
|
||||||
entry.title = (
|
entry.title = (
|
||||||
unicode(form.name.data)
|
unicode(form.name.data)
|
||||||
@ -132,10 +132,6 @@ def pwg_images_addSimple(request):
|
|||||||
|
|
||||||
entry.description = unicode(form.comment.data)
|
entry.description = unicode(form.comment.data)
|
||||||
|
|
||||||
# entry.license = unicode(form.license.data) or None
|
|
||||||
|
|
||||||
entry.uploader = request.user.id
|
|
||||||
|
|
||||||
'''
|
'''
|
||||||
# Process the user's folksonomy "tags"
|
# Process the user's folksonomy "tags"
|
||||||
entry.tags = convert_to_tag_list_of_dicts(
|
entry.tags = convert_to_tag_list_of_dicts(
|
||||||
|
@ -19,6 +19,7 @@ import uuid
|
|||||||
from werkzeug.utils import secure_filename
|
from werkzeug.utils import secure_filename
|
||||||
from werkzeug.datastructures import FileStorage
|
from werkzeug.datastructures import FileStorage
|
||||||
|
|
||||||
|
from mediagoblin.db.models import MediaEntry
|
||||||
from mediagoblin.processing import mark_entry_failed
|
from mediagoblin.processing import mark_entry_failed
|
||||||
from mediagoblin.processing.task import process_media
|
from mediagoblin.processing.task import process_media
|
||||||
|
|
||||||
@ -36,6 +37,16 @@ def check_file_field(request, field_name):
|
|||||||
return retval
|
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):
|
def prepare_queue_task(app, entry, filename):
|
||||||
"""
|
"""
|
||||||
Prepare a MediaEntry for the processing queue and get a queue file
|
Prepare a MediaEntry for the processing queue and get a queue file
|
||||||
|
@ -32,7 +32,7 @@ from mediagoblin.messages import add_message, SUCCESS
|
|||||||
from mediagoblin.media_types import sniff_media, \
|
from mediagoblin.media_types import sniff_media, \
|
||||||
InvalidFileType, FileTypeNotSupported
|
InvalidFileType, FileTypeNotSupported
|
||||||
from mediagoblin.submit.lib import check_file_field, prepare_queue_task, \
|
from mediagoblin.submit.lib import check_file_field, prepare_queue_task, \
|
||||||
run_process_media
|
run_process_media, new_upload_entry
|
||||||
|
|
||||||
|
|
||||||
@require_active_login
|
@require_active_login
|
||||||
@ -57,7 +57,7 @@ def submit_start(request):
|
|||||||
request.files['file'])
|
request.files['file'])
|
||||||
|
|
||||||
# create entry and save in database
|
# create entry and save in database
|
||||||
entry = request.db.MediaEntry()
|
entry = new_upload_entry(request.user)
|
||||||
entry.media_type = unicode(media_type)
|
entry.media_type = unicode(media_type)
|
||||||
entry.title = (
|
entry.title = (
|
||||||
unicode(submit_form.title.data)
|
unicode(submit_form.title.data)
|
||||||
@ -67,8 +67,6 @@ def submit_start(request):
|
|||||||
|
|
||||||
entry.license = unicode(submit_form.license.data) or None
|
entry.license = unicode(submit_form.license.data) or None
|
||||||
|
|
||||||
entry.uploader = request.user.id
|
|
||||||
|
|
||||||
# Process the user's folksonomy "tags"
|
# Process the user's folksonomy "tags"
|
||||||
entry.tags = convert_to_tag_list_of_dicts(
|
entry.tags = convert_to_tag_list_of_dicts(
|
||||||
submit_form.tags.data)
|
submit_form.tags.data)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user