Commit 759e4c69 authored by Seb's avatar Seb
Browse files

Got rid of unused loading of wagtailimages tags, changed how thumbnails are...

Got rid of unused loading of wagtailimages tags, changed how thumbnails are saved, added media_url fix for tests
parent 38275e9e
import os import os
import sys
INSTALLED_APPS = [ INSTALLED_APPS = [
'wagtailvideos', 'wagtailvideos',
...@@ -13,6 +12,7 @@ INSTALLED_APPS = [ ...@@ -13,6 +12,7 @@ INSTALLED_APPS = [
'wagtail.wagtailusers', 'wagtail.wagtailusers',
'wagtail.wagtailsites', 'wagtail.wagtailsites',
'wagtail.wagtailsnippets', 'wagtail.wagtailsnippets',
'wagtail.wagtailimages',
'django.contrib.admin', 'django.contrib.admin',
'django.contrib.auth', 'django.contrib.auth',
...@@ -73,3 +73,4 @@ STATIC_ROOT = os.path.join(os.path.dirname(__file__), 'static') ...@@ -73,3 +73,4 @@ STATIC_ROOT = os.path.join(os.path.dirname(__file__), 'static')
STATIC_URL = '/static/' STATIC_URL = '/static/'
MEDIA_ROOT = os.path.join(os.path.dirname(__file__), 'media') MEDIA_ROOT = os.path.join(os.path.dirname(__file__), 'media')
MEDIA_URL = '/media/'
import re
from django.conf import settings
from django.conf.urls import include, url from django.conf.urls import include, url
from django.views.static import serve
from wagtail.wagtailadmin import urls as wagtailadmin_urls from wagtail.wagtailadmin import urls as wagtailadmin_urls
from wagtail.wagtailcore import urls as wagtail_urls from wagtail.wagtailcore import urls as wagtail_urls
urlpatterns = [ urlpatterns = [
url(r'^admin/', include(wagtailadmin_urls)), url(r'^admin/', include(wagtailadmin_urls)),
url(r'', include(wagtail_urls)), url(r'', include(wagtail_urls)),
# For media serving
url(r'^%s(?P<path>.*)$' % re.escape(settings.MEDIA_URL.lstrip('/')), serve, kwargs={'document_root': settings.MEDIA_ROOT})
] ]
...@@ -17,6 +17,7 @@ from django.db.models.signals import post_save, pre_delete ...@@ -17,6 +17,7 @@ from django.db.models.signals import post_save, pre_delete
from django.dispatch.dispatcher import receiver from django.dispatch.dispatcher import receiver
from django.utils.encoding import python_2_unicode_compatible from django.utils.encoding import python_2_unicode_compatible
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from enumchoicefield import ChoiceEnum, EnumChoiceField
from taggit.managers import TaggableManager from taggit.managers import TaggableManager
from unidecode import unidecode from unidecode import unidecode
from wagtail.wagtailadmin.taggable import TagSearchable from wagtail.wagtailadmin.taggable import TagSearchable
...@@ -25,8 +26,6 @@ from wagtail.wagtailcore.models import CollectionMember ...@@ -25,8 +26,6 @@ from wagtail.wagtailcore.models import CollectionMember
from wagtail.wagtailsearch import index from wagtail.wagtailsearch import index
from wagtail.wagtailsearch.queryset import SearchableQuerySetMixin from wagtail.wagtailsearch.queryset import SearchableQuerySetMixin
from enumchoicefield import ChoiceEnum, EnumChoiceField
class MediaFormats(ChoiceEnum): class MediaFormats(ChoiceEnum):
webm = 'VP8 and Vorbis in WebM' webm = 'VP8 and Vorbis in WebM'
...@@ -133,10 +132,11 @@ class AbstractVideo(CollectionMember, TagSearchable): ...@@ -133,10 +132,11 @@ class AbstractVideo(CollectionMember, TagSearchable):
return self.thumbnail return self.thumbnail
file_path = self.file.path file_path = self.file.path
file_name = self.filename(include_ext=False) + '_thumb.jpg'
try: try:
output_dir = tempfile.mkdtemp() output_dir = tempfile.mkdtemp()
output_file = os.path.join(output_dir, self.filename(include_ext=False) + '_thumb.jpg') output_file = os.path.join(output_dir, file_name)
try: try:
FNULL = open(os.devnull, 'r') FNULL = open(os.devnull, 'r')
subprocess.check_call([ subprocess.check_call([
...@@ -152,7 +152,7 @@ class AbstractVideo(CollectionMember, TagSearchable): ...@@ -152,7 +152,7 @@ class AbstractVideo(CollectionMember, TagSearchable):
], stdin=FNULL) ], stdin=FNULL)
except subprocess.CalledProcessError: except subprocess.CalledProcessError:
return None return None
return ContentFile(open(output_file, 'rb').read(), 'thumb.jpg') return ContentFile(open(output_file, 'rb').read(), file_name)
finally: finally:
shutil.rmtree(output_dir, ignore_errors=True) shutil.rmtree(output_dir, ignore_errors=True)
...@@ -174,7 +174,7 @@ class AbstractVideo(CollectionMember, TagSearchable): ...@@ -174,7 +174,7 @@ class AbstractVideo(CollectionMember, TagSearchable):
return os.path.splitext(self.filename())[1][1:] return os.path.splitext(self.filename())[1][1:]
def is_editable_by_user(self, user): def is_editable_by_user(self, user):
from wagtail.wagtailimages.permissions import permission_policy from wagtailvideos.permissions import permission_policy
return permission_policy.user_has_permission_for_instance(user, 'change', self) return permission_policy.user_has_permission_for_instance(user, 'change', self)
@classmethod @classmethod
......
{% load wagtailimages_tags %}
{% load i18n %} {% load i18n %}
{% trans "Choose a video" as choose_str %} {% trans "Choose a video" as choose_str %}
{% include "wagtailadmin/shared/header.html" with title=choose_str merged=1 tabbed=1 icon="media" %} {% include "wagtailadmin/shared/header.html" with title=choose_str merged=1 tabbed=1 icon="media" %}
......
{% load wagtailimages_tags wagtailadmin_tags %} {% load wagtailadmin_tags %}
{% load i18n %} {% load i18n %}
{% if videos %} {% if videos %}
{% if is_searching %} {% if is_searching %}
......
{% extends "wagtailadmin/base.html" %} {% extends "wagtailadmin/base.html" %}
{% load wagtailimages_tags i18n staticfiles %} {% load i18n staticfiles %}
{% block titletag %}{% trans "Add multiple videos" %}{% endblock %} {% block titletag %}{% trans "Add multiple videos" %}{% endblock %}
{% block extra_css %} {% block extra_css %}
{{ block.super }} {{ block.super }}
...@@ -24,9 +24,9 @@ ...@@ -24,9 +24,9 @@
{% csrf_token %} {% csrf_token %}
{% if collections %} {% if collections %}
<div class="field"> <div class="field">
<label for="id_addimage_collection">{% trans "Add to collection:" %}</label> <label for="id_addvideo_collection">{% trans "Add to collection:" %}</label>
<div class="field-content"> <div class="field-content">
<select id="id_addimage_collection" name="collection"> <select id="id_addvideo_collection" name="collection">
{% for collection in collections %} {% for collection in collections %}
<option value="{{ collection.id }}">{{ collection.name }}</option> <option value="{{ collection.id }}">{{ collection.name }}</option>
{% endfor %} {% endfor %}
......
{% extends "wagtailadmin/widgets/chooser.html" %} {% extends "wagtailadmin/widgets/chooser.html" %}
{% load wagtailimages_tags %}
{% block chooser_class %}image-chooser{% endblock %} {% block chooser_class %}image-chooser{% endblock %}
......
...@@ -3,6 +3,7 @@ from django.conf.urls import url ...@@ -3,6 +3,7 @@ from django.conf.urls import url
from wagtailvideos.views import chooser, multiple, videos from wagtailvideos.views import chooser, multiple, videos
urlpatterns = [ urlpatterns = [
url(r'^$', videos.index, name='index'), url(r'^$', videos.index, name='index'),
url(r'^(\d+)/$', videos.edit, name='edit'), url(r'^(\d+)/$', videos.edit, name='edit'),
url(r'^(\d+)/delete/$', videos.delete, name='delete'), url(r'^(\d+)/delete/$', videos.delete, name='delete'),
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment