def add_new_video(channel, playlist): form = VideoAddForm() if form.validate_on_submit(): stream_playlist = channel.playlist_for_stream(create=True) video = Video( playlist=playlist if playlist is not None else stream_playlist) form.populate_obj(video) try: process_video(video, new=True) process_slides(video) except (DataProcessingError, ValueError) as e: flash(e.message, category="error") return render_form(form=form, title=u"New Video", submit=u"Add", cancel_url=channel.url_for(), ajax=False) video.make_name() if playlist is not None and video not in playlist.videos: playlist.videos.append(video) if video not in stream_playlist.videos: stream_playlist.videos.append(video) db.session.commit() flash(u"Added video '%s'." % video.title, 'success') return render_redirect(video.url_for('edit')) if playlist is None: cancel_url = channel.url_for() else: cancel_url = playlist.url_for() return render_form(form=form, title=u"New Video", submit=u"Add", cancel_url=cancel_url, ajax=False)
def video_new(channel, playlist): """ Add a new video """ form = VideoAddForm() if form.validate_on_submit(): video = Video(playlist=playlist) form.populate_obj(video) try: process_video(video, new=True) process_slides(video) except (DataProcessingError, ValueError) as e: flash(e.message, category="error") return render_form(form=form, title=u"New Video", submit=u"Add", cancel_url=playlist.url_for(), ajax=False) video.make_name() playlist.videos.append(video) db.session.commit() flash(u"Added video '%s'." % video.title, 'success') return render_redirect(video.url_for('edit')) return render_form(form=form, title=u"New Video", submit=u"Add", cancel_url=playlist.url_for(), ajax=False)