# HG changeset patch # User rougeronj # Date 1354289183 -3600 # Node ID 232d40ae99d03bf6861d979f02d006d0b8859a35 # Parent 48c851b7f4189b4524fb1d75c7e51345f12c72bb Bug correction while creating content with a "not clean" url diff -r 48c851b7f418 -r 232d40ae99d0 src/ldt/ldt/ldt_utils/views/content.py --- a/src/ldt/ldt/ldt_utils/views/content.py Fri Nov 30 13:35:32 2012 +0100 +++ b/src/ldt/ldt/ldt_utils/views/content.py Fri Nov 30 16:26:23 2012 +0100 @@ -35,7 +35,6 @@ #from django.core.files.temp import NamedTemporaryFile def media_management(request, media_input_type, cleaned_data, content_form, media_form, form_status): - media = None if media_input_type == "none": media = None elif media_input_type == "link": @@ -47,9 +46,8 @@ cleaned_data['videopath'] = settings.STREAM_URL # if the source is already http:// or rtmp:// we don't have to add STREAM_URL if cleaned_data['src'].startswith("rtmp://") or cleaned_data['src'].startswith("http://") or cleaned_data['src'].startswith("https://"): - cleaned_data['videopath'] = '' - - media, created = Media.objects.get_or_create(src=cleaned_data['src'], defaults=cleaned_data) #@UndefinedVariable + cleaned_data['videopath'] = '' + media, created = Media.objects.get_or_create(src=cleaned_data['src'], defaults=cleaned_data) #@UndefinedVariable elif media_input_type == "url" or media_input_type == "upload" : # copy file @@ -166,7 +164,6 @@ if instance_content: current_front_project = instance_content.front_project form_status = 'none' - errors_transaction = [] if request.method == "POST": try: @@ -230,14 +227,8 @@ media_input_type = content_form.cleaned_data["media_input_type"] - - - media, form_status = media_management(request, media_input_type, cleaned_data, content_form, media_form, form_status) - - - if form_status != "error": content_defaults = {} content_defaults.update(content_form.cleaned_data) @@ -288,7 +279,7 @@ except Exception, e: transaction.rollback() __, value, traceback = sys.exc_info() - return False, False, False, False, False, errors_transaction, e, traceback + return False, False, False, False, False, e, traceback else: form_status = 'empty' @@ -316,18 +307,17 @@ transaction.commit() except Exception, e: transaction.rollback() - errors_transaction.append(e) - type, value, traceback = sys.exc_info() - return False, False, False, False, False, errors_transaction, e, traceback + __, __, traceback = sys.exc_info() + return False, False, False, False, False, e, traceback - return content_form, media_form, picture_form, form_status, current_front_project, errors_transaction, "", "" + return content_form, media_form, picture_form, form_status, current_front_project, "", "" @login_required def write_content(request, iri_id=None): submit_action = request.REQUEST.get("submit_button", False) member_list = admin_list = [] current_front_project = None - deleted = None + content_deleted = None if submit_action == "prepare_delete": errors, titles, message_temp = prepare_delete_content(request, iri_id) @@ -342,7 +332,7 @@ title_msg = _("confirm delete content") return render_to_response('ldt/ldt_utils/error_confirm.html', {'errors':errors, 'message':message, 'title': title_msg}, context_instance=RequestContext(request)) elif submit_action == "delete": - deleted, errors_transaction = delete_content(request, iri_id) + content_deleted, e, traceback = delete_content(request, iri_id) content_form = ContentForm() form_status = "deleted" elif submit_action == "prepare_reset": @@ -371,8 +361,8 @@ elif submit_action=="close": return redirect("root-view") else: - content_form, media_form, picture_form, form_status, current_front_project, errors_transaction, e, traceback = write_content_base(request, iri_id) - if iri_id: + content_form, media_form, picture_form, form_status, current_front_project, e, traceback = write_content_base(request, iri_id) + if iri_id: content_temp = Content.objects.get(iri_id=iri_id) media_temp = content_temp.media_obj if media_temp: @@ -380,11 +370,12 @@ else: member_list, admin_list = get_userlist_model(content_temp, request.user) - # Deleted is False if an error occurred during deletion - if (deleted == False) or (content_form == False and media_form == False and picture_form == False and form_status == False and current_front_project == False): - message=_("An error occurred - Please try again or contact webmaster") - title = _("Error") - logging.error(e) + if (content_form == False and media_form == False and picture_form == False and form_status == False and current_front_project == False): + message=_("An error occurred - Please try again or contact webmaster") + title = _("Error") + raise e, None, traceback + + if content_deleted == False: raise e, None, traceback if iri_id: @@ -455,20 +446,18 @@ except Exception, e: content.rollback() transaction.rollback() - errors_transaction.append(_("Content deletion failure")) - errors_transaction.append(e) - return False, errors_transaction + __, __, traceback = sys.exc_info() + return False, e, traceback else: try: transaction.commit() content.commit() - return True, errors_transaction - except: + return True, "", "" + except Exception, e: content.rollback() transaction.rollback() - errors_transaction.append(_("Commit of the content deletion failed")) - errors_transaction.append(e) - return False, errors_transaction + __, __, traceback = sys.exc_info() + return False, e, traceback def upload(request): if request.method == 'POST':