Skip to content

Commit 97eccff

Browse files
committed
Saving thumbnails to disk, need to change the render code
1 parent 6a7f0fa commit 97eccff

File tree

4 files changed

+13
-1
lines changed

4 files changed

+13
-1
lines changed

hgtv/__init__.py

+2
Original file line numberDiff line numberDiff line change
@@ -34,8 +34,10 @@
3434

3535

3636
def init_for(env):
37+
from hgtv.upload import configure as upload_configure
3738
coaster.app.init_app(app, env)
3839
hgtv.models.commentease.init_app(app)
3940
lastuser.init_app(app)
4041
lastuser.init_usermanager(UserManager(hgtv.models.db, hgtv.models.User))
4142
app.config['tz'] = timezone(app.config['TIMEZONE'])
43+
upload_configure()

hgtv/views/video.py

+6-1
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@
44
from urlparse import urlparse, parse_qs
55
from socket import gaierror
66
import requests
7+
from werkzeug import secure_filename
8+
79
from flask import render_template, flash, abort, redirect, Markup, request, escape, jsonify, g
810
from coaster.views import load_models
911
from baseframe.forms import render_form, render_redirect, render_delete_sqla, render_message
@@ -13,6 +15,7 @@
1315
from hgtv.models import db, Channel, Video, Playlist, PlaylistVideo, CHANNEL_TYPE
1416
from hgtv.models.channel import PLAYLIST_AUTO_TYPE
1517
from hgtv.views.login import lastuser
18+
from hgtv.upload import uploaded_thumbnails, return_werkzeug_filestorage
1619

1720

1821
class DataProcessingError(Exception):
@@ -40,7 +43,9 @@ def process_video(video, new=False):
4043
video.description = escape(r.json['entry']['media$group']['media$description']['$t'])
4144
for item in r.json['entry']['media$group']['media$thumbnail']:
4245
if item['yt$name'] == 'mqdefault':
43-
video.thumbnail_url = item['url'] # .replace('hqdefault', 'mqdefault')
46+
thumbnail_url_request = requests.get(item['url'])
47+
filestorage = return_werkzeug_filestorage(thumbnail_url_request, filename=secure_filename(r.json['entry']['title']['$t']))
48+
video.thumbnail_url = uploaded_thumbnails.save(filestorage)
4449
video.video_sourceid = video_id
4550
video.video_source = u"youtube"
4651
except requests.ConnectionError:

instance/settings-sample.py

+4
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,10 @@
77
SQLALCHEMY_DATABASE_URI = 'sqlite:///test.db'
88
#: Secret key
99
SECRET_KEY = 'make this something random'
10+
#: Directory to upload the video thumbnail
11+
UPLOAD_DIRECTORY = 'uploads/'
12+
#: Allowed Extensions for thumbnails
13+
ALLOWED_EXTENSIONS = ['jpg', 'jpeg', 'png', 'gif']
1014
#: Timezone
1115
TIMEZONE = 'Asia/Calcutta'
1216
#: LastUser server

requirements.txt

+1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
Flask
2+
Flask-Uploads
23
https://github.com/hasgeek/coaster/zipball/master
34
https://github.com/hasgeek/baseframe/zipball/master
45
Flask-SQLAlchemy

0 commit comments

Comments
 (0)