Mercurial > sat_legacy_website
annotate sat_website/media.py @ 122:d4ec0092daa0
talk about the near utilisation of Let's Encrypt in the FAQ
author | souliane <souliane@mailoo.org> |
---|---|
date | Fri, 06 Nov 2015 09:24:51 +0100 |
parents | 14080acdf896 |
children | 82cec659362b |
rev | line source |
---|---|
0 | 1 #!/usr/bin/python |
2 # -*- coding: utf-8 -*- | |
3 """ | |
4 SàT website: Salut à Toi's presentation website | |
5 Copyright (C) 2012 Jérôme Poisson (goffi@goffi.org) | |
6 | |
7 This file is part of SàT website. | |
8 | |
9 SàT website is free software: you can redistribute it and/or modify | |
10 it under the terms of the GNU Affero General Public License as published by | |
11 the Free Software Foundation, either version 3 of the License, or | |
12 (at your option) any later version. | |
13 | |
14 Foobar is distributed in the hope that it will be useful, | |
15 but WITHOUT ANY WARRANTY; without even the implied warranty of | |
16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
17 GNU Affero General Public License for more details. | |
18 | |
19 You should have received a copy of the GNU Affero General Public License | |
20 along with Foobar. If not, see <http://www.gnu.org/licenses/>. | |
21 """ | |
93
9ae3d9c8b28a
actually display the subtitles (with Firefox it is used only when it's the first <track /> of the list, and when the "default" option is present)
souliane <souliane@mailoo.org>
parents:
92
diff
changeset
|
22 from django.utils.translation import get_language, ugettext_lazy as _ |
58
746e53efc188
allow large media files (screencasts) to be stored on an external server
souliane <souliane@mailoo.org>
parents:
47
diff
changeset
|
23 from django.conf import settings |
90
5de2a3dd4e67
change VideoDesc attribute path to paths, a dict where you can specify a different path for each language
souliane <souliane@mailoo.org>
parents:
89
diff
changeset
|
24 from collections import namedtuple, OrderedDict |
58
746e53efc188
allow large media files (screencasts) to be stored on an external server
souliane <souliane@mailoo.org>
parents:
47
diff
changeset
|
25 import os.path |
0 | 26 |
46
a18800261cf6
change some texts, add a couple of screenshots, set metadata version and year to the medias
souliane <souliane@mailoo.org>
parents:
29
diff
changeset
|
27 ImageDesc = namedtuple("ImageDesc", "path description data") |
92
7a79cb5ed43b
add subtitles in video metadata and <track /> elements
souliane <souliane@mailoo.org>
parents:
90
diff
changeset
|
28 |
7a79cb5ed43b
add subtitles in video metadata and <track /> elements
souliane <souliane@mailoo.org>
parents:
90
diff
changeset
|
29 class VideoDesc(namedtuple("VideoDesc", "paths description poster data")): |
7a79cb5ed43b
add subtitles in video metadata and <track /> elements
souliane <souliane@mailoo.org>
parents:
90
diff
changeset
|
30 @property |
7a79cb5ed43b
add subtitles in video metadata and <track /> elements
souliane <souliane@mailoo.org>
parents:
90
diff
changeset
|
31 def subtitles(self): |
93
9ae3d9c8b28a
actually display the subtitles (with Firefox it is used only when it's the first <track /> of the list, and when the "default" option is present)
souliane <souliane@mailoo.org>
parents:
92
diff
changeset
|
32 key = "subtitles" |
92
7a79cb5ed43b
add subtitles in video metadata and <track /> elements
souliane <souliane@mailoo.org>
parents:
90
diff
changeset
|
33 if key not in self.data: |
7a79cb5ed43b
add subtitles in video metadata and <track /> elements
souliane <souliane@mailoo.org>
parents:
90
diff
changeset
|
34 return {} |
7a79cb5ed43b
add subtitles in video metadata and <track /> elements
souliane <souliane@mailoo.org>
parents:
90
diff
changeset
|
35 result = OrderedDict() |
93
9ae3d9c8b28a
actually display the subtitles (with Firefox it is used only when it's the first <track /> of the list, and when the "default" option is present)
souliane <souliane@mailoo.org>
parents:
92
diff
changeset
|
36 |
9ae3d9c8b28a
actually display the subtitles (with Firefox it is used only when it's the first <track /> of the list, and when the "default" option is present)
souliane <souliane@mailoo.org>
parents:
92
diff
changeset
|
37 # put the current lang first |
9ae3d9c8b28a
actually display the subtitles (with Firefox it is used only when it's the first <track /> of the list, and when the "default" option is present)
souliane <souliane@mailoo.org>
parents:
92
diff
changeset
|
38 current_lang = get_language() |
9ae3d9c8b28a
actually display the subtitles (with Firefox it is used only when it's the first <track /> of the list, and when the "default" option is present)
souliane <souliane@mailoo.org>
parents:
92
diff
changeset
|
39 langs = [current_lang] if current_lang in self.data[key] else [] |
9ae3d9c8b28a
actually display the subtitles (with Firefox it is used only when it's the first <track /> of the list, and when the "default" option is present)
souliane <souliane@mailoo.org>
parents:
92
diff
changeset
|
40 langs.extend([lang for lang in self.data[key] if lang != current_lang]) |
9ae3d9c8b28a
actually display the subtitles (with Firefox it is used only when it's the first <track /> of the list, and when the "default" option is present)
souliane <souliane@mailoo.org>
parents:
92
diff
changeset
|
41 |
9ae3d9c8b28a
actually display the subtitles (with Firefox it is used only when it's the first <track /> of the list, and when the "default" option is present)
souliane <souliane@mailoo.org>
parents:
92
diff
changeset
|
42 for lang in langs: |
92
7a79cb5ed43b
add subtitles in video metadata and <track /> elements
souliane <souliane@mailoo.org>
parents:
90
diff
changeset
|
43 try: |
7a79cb5ed43b
add subtitles in video metadata and <track /> elements
souliane <souliane@mailoo.org>
parents:
90
diff
changeset
|
44 result[lang] = os.path.splitext(self.paths[lang])[0] + '.vtt' |
7a79cb5ed43b
add subtitles in video metadata and <track /> elements
souliane <souliane@mailoo.org>
parents:
90
diff
changeset
|
45 except IndexError: |
7a79cb5ed43b
add subtitles in video metadata and <track /> elements
souliane <souliane@mailoo.org>
parents:
90
diff
changeset
|
46 # FIXME: subtitles for a lang that is not in self.paths are ignored |
7a79cb5ed43b
add subtitles in video metadata and <track /> elements
souliane <souliane@mailoo.org>
parents:
90
diff
changeset
|
47 pass |
7a79cb5ed43b
add subtitles in video metadata and <track /> elements
souliane <souliane@mailoo.org>
parents:
90
diff
changeset
|
48 return result |
0 | 49 |
79
6652924221ba
change external base URLs from FTP to HTTP
souliane <souliane@mailoo.org>
parents:
58
diff
changeset
|
50 screencasts = os.path.join(settings.MEDIA_EXTERNAL_URL, "screencasts") + "/" |
83
3d04a955bec4
add membership campaign's video (for now ogv, will eventually change to webm)
souliane <souliane@mailoo.org>
parents:
80
diff
changeset
|
51 video = os.path.join(settings.MEDIA_EXTERNAL_URL, "video") + "/" |
58
746e53efc188
allow large media files (screencasts) to be stored on an external server
souliane <souliane@mailoo.org>
parents:
47
diff
changeset
|
52 |
0 | 53 #list the pictures |
54 | |
89
4b4a5d7602f8
rename screenshots to media, since not only screenshots but also videos are listed
souliane <souliane@mailoo.org>
parents:
84
diff
changeset
|
55 media = [ |
83
3d04a955bec4
add membership campaign's video (for now ogv, will eventually change to webm)
souliane <souliane@mailoo.org>
parents:
80
diff
changeset
|
56 |
90
5de2a3dd4e67
change VideoDesc attribute path to paths, a dict where you can specify a different path for each language
souliane <souliane@mailoo.org>
parents:
89
diff
changeset
|
57 # use OrderedDict when more than one language, the first item is the default one |
5de2a3dd4e67
change VideoDesc attribute path to paths, a dict where you can specify a different path for each language
souliane <souliane@mailoo.org>
parents:
89
diff
changeset
|
58 VideoDesc(OrderedDict({"en": video + "libervia_adhesion_2015_en.webm", |
5de2a3dd4e67
change VideoDesc attribute path to paths, a dict where you can specify a different path for each language
souliane <souliane@mailoo.org>
parents:
89
diff
changeset
|
59 "fr": video + "libervia_adhesion_2015_fr.webm"}), |
83
3d04a955bec4
add membership campaign's video (for now ogv, will eventually change to webm)
souliane <souliane@mailoo.org>
parents:
80
diff
changeset
|
60 _(u"Membership campaign for Libervia"), |
3d04a955bec4
add membership campaign's video (for now ogv, will eventually change to webm)
souliane <souliane@mailoo.org>
parents:
80
diff
changeset
|
61 video + "posters/libervia_adhesion_2015.png", |
102 | 62 {_(u"version"): "0.5", _(u"year"): "2015", "subtitles": ("en", "fr")}), |
83
3d04a955bec4
add membership campaign's video (for now ogv, will eventually change to webm)
souliane <souliane@mailoo.org>
parents:
80
diff
changeset
|
63 |
102 | 64 VideoDesc({"en": screencasts + "2015_screencast_blog.mp4"}, |
65 _(u"Demo of the blogging feature"), | |
66 screencasts + "posters/2015_screencast_blog.png", | |
67 {_(u"frontend"): "libervia", _(u"version"): "0.5", _(u"year"): "2015"}), | |
68 | |
69 ImageDesc("images/screenshots/0.5_campagne/public_blog_3.png", _(u"Public blog message"), | |
70 {_(u"frontend"): "libervia", _(u"version"): "0.5", _(u"year"): "2015"}), | |
46
a18800261cf6
change some texts, add a couple of screenshots, set metadata version and year to the medias
souliane <souliane@mailoo.org>
parents:
29
diff
changeset
|
71 ImageDesc("images/screenshots/0.5/overview_libervia.png", _(u"Overview"), |
a18800261cf6
change some texts, add a couple of screenshots, set metadata version and year to the medias
souliane <souliane@mailoo.org>
parents:
29
diff
changeset
|
72 {_(u"frontend"): "libervia", _(u"version"): "0.5", _(u"year"): "2014"}), |
47
3e460ca969d2
delete screenshots_tech.html, display all screenshots in the same page using sections
souliane <souliane@mailoo.org>
parents:
46
diff
changeset
|
73 ImageDesc("images/screenshots/0.5/http_unsecure_warning.png", _(u"Optional security check"), |
3e460ca969d2
delete screenshots_tech.html, display all screenshots in the same page using sections
souliane <souliane@mailoo.org>
parents:
46
diff
changeset
|
74 {_(u"frontend"): "libervia", _(u"version"): "0.5", _(u"year"): "2014"}), |
46
a18800261cf6
change some texts, add a couple of screenshots, set metadata version and year to the medias
souliane <souliane@mailoo.org>
parents:
29
diff
changeset
|
75 ImageDesc("images/screenshots/0.4/sat_wysiwyg.png", _(u"Rich text editor"), |
a18800261cf6
change some texts, add a couple of screenshots, set metadata version and year to the medias
souliane <souliane@mailoo.org>
parents:
29
diff
changeset
|
76 {_(u"frontend"): "libervia", _(u"version"): "0.4", _(u"year"): "2014"}), |
90
5de2a3dd4e67
change VideoDesc attribute path to paths, a dict where you can specify a different path for each language
souliane <souliane@mailoo.org>
parents:
89
diff
changeset
|
77 |
5de2a3dd4e67
change VideoDesc attribute path to paths, a dict where you can specify a different path for each language
souliane <souliane@mailoo.org>
parents:
89
diff
changeset
|
78 VideoDesc({"fr": screencasts + "présentation_SàT_5_radio_collective.webm"}, |
5de2a3dd4e67
change VideoDesc attribute path to paths, a dict where you can specify a different path for each language
souliane <souliane@mailoo.org>
parents:
89
diff
changeset
|
79 _(u"Demo of the new Libervia UI, and of the collective radio feature"), |
5de2a3dd4e67
change VideoDesc attribute path to paths, a dict where you can specify a different path for each language
souliane <souliane@mailoo.org>
parents:
89
diff
changeset
|
80 screencasts + "posters/radiocol.jpg", |
5de2a3dd4e67
change VideoDesc attribute path to paths, a dict where you can specify a different path for each language
souliane <souliane@mailoo.org>
parents:
89
diff
changeset
|
81 {_(u"frontend"): "libervia", _(u"version"): "0.3D", _(u"year"): "2012"}), |
5de2a3dd4e67
change VideoDesc attribute path to paths, a dict where you can specify a different path for each language
souliane <souliane@mailoo.org>
parents:
89
diff
changeset
|
82 |
46
a18800261cf6
change some texts, add a couple of screenshots, set metadata version and year to the medias
souliane <souliane@mailoo.org>
parents:
29
diff
changeset
|
83 ImageDesc("images/screenshots/libervia/libervia_login.png", _(u"Libervia's login page"), |
a18800261cf6
change some texts, add a couple of screenshots, set metadata version and year to the medias
souliane <souliane@mailoo.org>
parents:
29
diff
changeset
|
84 {_(u"frontend"): "libervia", _(u"version"): "0.3D", _(u"year"): "2011"}), |
a18800261cf6
change some texts, add a couple of screenshots, set metadata version and year to the medias
souliane <souliane@mailoo.org>
parents:
29
diff
changeset
|
85 ImageDesc("images/screenshots/libervia/libervia_discussions.png", _(u"Libervia's main view"), |
a18800261cf6
change some texts, add a couple of screenshots, set metadata version and year to the medias
souliane <souliane@mailoo.org>
parents:
29
diff
changeset
|
86 {_(u"frontend"): "libervia", _(u"version"): "0.3D", _(u"year"): "2011"}), |
a18800261cf6
change some texts, add a couple of screenshots, set metadata version and year to the medias
souliane <souliane@mailoo.org>
parents:
29
diff
changeset
|
87 ImageDesc("images/screenshots/wix/wix_tarot.png", _(u"Wix showing a french Tarot play"), |
a18800261cf6
change some texts, add a couple of screenshots, set metadata version and year to the medias
souliane <souliane@mailoo.org>
parents:
29
diff
changeset
|
88 {_(u"frontend"): "wix", _(u"version"): "0.2", _(u"year"): "2011"}), |
90
5de2a3dd4e67
change VideoDesc attribute path to paths, a dict where you can specify a different path for each language
souliane <souliane@mailoo.org>
parents:
89
diff
changeset
|
89 |
5de2a3dd4e67
change VideoDesc attribute path to paths, a dict where you can specify a different path for each language
souliane <souliane@mailoo.org>
parents:
89
diff
changeset
|
90 VideoDesc({"fr": screencasts + "présentation_SàT_3.webm"}, |
5de2a3dd4e67
change VideoDesc attribute path to paths, a dict where you can specify a different path for each language
souliane <souliane@mailoo.org>
parents:
89
diff
changeset
|
91 _(u"This video focuses on Libervia. The UI is really outdated, but we can see some features"), |
5de2a3dd4e67
change VideoDesc attribute path to paths, a dict where you can specify a different path for each language
souliane <souliane@mailoo.org>
parents:
89
diff
changeset
|
92 screencasts + "posters/présentation_SàT_3.jpg", |
5de2a3dd4e67
change VideoDesc attribute path to paths, a dict where you can specify a different path for each language
souliane <souliane@mailoo.org>
parents:
89
diff
changeset
|
93 {_(u"frontend"): "libervia", _(u"version"): "0.2", _(u"year"): "2011"}), |
0 | 94 ] |
95 | |
89
4b4a5d7602f8
rename screenshots to media, since not only screenshots but also videos are listed
souliane <souliane@mailoo.org>
parents:
84
diff
changeset
|
96 media_tech = [ |
102 | 97 VideoDesc({"en": screencasts + "2015_screencast_otr.mp4"}, |
98 _(u"Demo of the end-to-end chat encryption feature"), | |
99 screencasts + "posters/2015_screencast_otr.png", | |
100 {_(u"frontend"): ("libervia", "primitivus"), _(u"version"): "0.5", _(u"year"): "2015"}), | |
101 | |
102 VideoDesc({"en": screencasts + "2015_screencast_tarot.mp4"}, | |
103 _(u"Demo of the tarot game"), | |
104 screencasts + "posters/2015_screencast_tarot.png", | |
105 {_(u"frontend"): ("libervia", "primitivus"), _(u"version"): "0.5", _(u"year"): "2015"}), | |
106 | |
46
a18800261cf6
change some texts, add a couple of screenshots, set metadata version and year to the medias
souliane <souliane@mailoo.org>
parents:
29
diff
changeset
|
107 ImageDesc("images/screenshots/0.5/adhoc_administration.png", _(u"Server administration from the web frontend Libervia."), |
a18800261cf6
change some texts, add a couple of screenshots, set metadata version and year to the medias
souliane <souliane@mailoo.org>
parents:
29
diff
changeset
|
108 {_(u"frontend"): "libervia", _(u"version"): "0.5", _(u"year"): "2014"}), |
90
5de2a3dd4e67
change VideoDesc attribute path to paths, a dict where you can specify a different path for each language
souliane <souliane@mailoo.org>
parents:
89
diff
changeset
|
109 |
5de2a3dd4e67
change VideoDesc attribute path to paths, a dict where you can specify a different path for each language
souliane <souliane@mailoo.org>
parents:
89
diff
changeset
|
110 VideoDesc({"fr": screencasts + "présentation_SàT_7_télécommande_universelle.webm"}, |
5de2a3dd4e67
change VideoDesc attribute path to paths, a dict where you can specify a different path for each language
souliane <souliane@mailoo.org>
parents:
89
diff
changeset
|
111 _(u"Use ad-hoc commands to control a VLC player from Libervia"), |
5de2a3dd4e67
change VideoDesc attribute path to paths, a dict where you can specify a different path for each language
souliane <souliane@mailoo.org>
parents:
89
diff
changeset
|
112 screencasts + "posters/présentation_SàT_7_télécommande_universelle.png", |
5de2a3dd4e67
change VideoDesc attribute path to paths, a dict where you can specify a different path for each language
souliane <souliane@mailoo.org>
parents:
89
diff
changeset
|
113 {_(u"version"): "0.4", _(u"year"): "2014"}), |
5de2a3dd4e67
change VideoDesc attribute path to paths, a dict where you can specify a different path for each language
souliane <souliane@mailoo.org>
parents:
89
diff
changeset
|
114 |
5de2a3dd4e67
change VideoDesc attribute path to paths, a dict where you can specify a different path for each language
souliane <souliane@mailoo.org>
parents:
89
diff
changeset
|
115 VideoDesc({"fr": screencasts + "présentation_SàT_6_export_commande.webm"}, |
5de2a3dd4e67
change VideoDesc attribute path to paths, a dict where you can specify a different path for each language
souliane <souliane@mailoo.org>
parents:
89
diff
changeset
|
116 _(u"Exporting a command: an FTP client is exported to a Gajim contact"), |
5de2a3dd4e67
change VideoDesc attribute path to paths, a dict where you can specify a different path for each language
souliane <souliane@mailoo.org>
parents:
89
diff
changeset
|
117 screencasts + "posters/présentation_SàT_6_export_commande.jpg", |
5de2a3dd4e67
change VideoDesc attribute path to paths, a dict where you can specify a different path for each language
souliane <souliane@mailoo.org>
parents:
89
diff
changeset
|
118 {_(u"version"): "0.4D", _(u"year"): "2013"}), |
5de2a3dd4e67
change VideoDesc attribute path to paths, a dict where you can specify a different path for each language
souliane <souliane@mailoo.org>
parents:
89
diff
changeset
|
119 |
5de2a3dd4e67
change VideoDesc attribute path to paths, a dict where you can specify a different path for each language
souliane <souliane@mailoo.org>
parents:
89
diff
changeset
|
120 VideoDesc({"fr": screencasts + "présentation_SàT_4_copie_et_pipe.webm"}, |
5de2a3dd4e67
change VideoDesc attribute path to paths, a dict where you can specify a different path for each language
souliane <souliane@mailoo.org>
parents:
89
diff
changeset
|
121 _(u"How to copy and pipe streams over XMPP"), |
5de2a3dd4e67
change VideoDesc attribute path to paths, a dict where you can specify a different path for each language
souliane <souliane@mailoo.org>
parents:
89
diff
changeset
|
122 screencasts + "posters/présentation_SàT_4.png", |
46
a18800261cf6
change some texts, add a couple of screenshots, set metadata version and year to the medias
souliane <souliane@mailoo.org>
parents:
29
diff
changeset
|
123 {_(u"version"): "0.3D", _(u"year"): "2011", _(u"language"): "fr"}), |
90
5de2a3dd4e67
change VideoDesc attribute path to paths, a dict where you can specify a different path for each language
souliane <souliane@mailoo.org>
parents:
89
diff
changeset
|
124 |
46
a18800261cf6
change some texts, add a couple of screenshots, set metadata version and year to the medias
souliane <souliane@mailoo.org>
parents:
29
diff
changeset
|
125 ImageDesc("images/screenshots/jp/jp.png", _(u"Cowsay sent in conversation through jp"), |
a18800261cf6
change some texts, add a couple of screenshots, set metadata version and year to the medias
souliane <souliane@mailoo.org>
parents:
29
diff
changeset
|
126 {_(u"version"): "0.2", _(u"year"): "2011"}), |
47
3e460ca969d2
delete screenshots_tech.html, display all screenshots in the same page using sections
souliane <souliane@mailoo.org>
parents:
46
diff
changeset
|
127 ImageDesc("images/screenshots/primitivus/primitivus_tarot.png", _(u"Primitivus showing a french Tarot play"), |
3e460ca969d2
delete screenshots_tech.html, display all screenshots in the same page using sections
souliane <souliane@mailoo.org>
parents:
46
diff
changeset
|
128 {_(u"frontend"): "primitivus", _(u"version"): "0.2", _(u"year"): "2011"}), |
90
5de2a3dd4e67
change VideoDesc attribute path to paths, a dict where you can specify a different path for each language
souliane <souliane@mailoo.org>
parents:
89
diff
changeset
|
129 |
5de2a3dd4e67
change VideoDesc attribute path to paths, a dict where you can specify a different path for each language
souliane <souliane@mailoo.org>
parents:
89
diff
changeset
|
130 VideoDesc({"fr": screencasts + "présentation_SàT_2.webm"}, |
5de2a3dd4e67
change VideoDesc attribute path to paths, a dict where you can specify a different path for each language
souliane <souliane@mailoo.org>
parents:
89
diff
changeset
|
131 _(u"This video shows french Tarot game, and how to use Thunderbird with SàT"), |
5de2a3dd4e67
change VideoDesc attribute path to paths, a dict where you can specify a different path for each language
souliane <souliane@mailoo.org>
parents:
89
diff
changeset
|
132 screencasts + "posters/présentation_SàT_2.jpg", |
5de2a3dd4e67
change VideoDesc attribute path to paths, a dict where you can specify a different path for each language
souliane <souliane@mailoo.org>
parents:
89
diff
changeset
|
133 {_(u"version"): "0.2", _(u"year"): "2011"}), |
5de2a3dd4e67
change VideoDesc attribute path to paths, a dict where you can specify a different path for each language
souliane <souliane@mailoo.org>
parents:
89
diff
changeset
|
134 |
5de2a3dd4e67
change VideoDesc attribute path to paths, a dict where you can specify a different path for each language
souliane <souliane@mailoo.org>
parents:
89
diff
changeset
|
135 VideoDesc({"fr": screencasts + "présentation_SàT.webm"}, |
5de2a3dd4e67
change VideoDesc attribute path to paths, a dict where you can specify a different path for each language
souliane <souliane@mailoo.org>
parents:
89
diff
changeset
|
136 _(u"The first video shows wix, primitivus and jp"), |
5de2a3dd4e67
change VideoDesc attribute path to paths, a dict where you can specify a different path for each language
souliane <souliane@mailoo.org>
parents:
89
diff
changeset
|
137 screencasts + "posters/présentation_SàT.jpg", |
5de2a3dd4e67
change VideoDesc attribute path to paths, a dict where you can specify a different path for each language
souliane <souliane@mailoo.org>
parents:
89
diff
changeset
|
138 {_(u"version"): "0.2", _(u"year"): "2011"}), |
0 | 139 ] |
140 | |
141 | |
142 | |
143 | |
144 | |
145 |