Commit 22ef48d9a42ec236e5dab8de08343028ef4e637d
Exists in
master
and in
3 other branches
Merge branch 'refactoring' of https://github.com/amadeusproject/amadeuslms into refactoring
Showing
10 changed files
with
233 additions
and
233 deletions
Show diff stats
amadeus/static/css/base/amadeus.css
@@ -1439,22 +1439,50 @@ div.dataTables_wrapper div.dataTables_paginate { | @@ -1439,22 +1439,50 @@ div.dataTables_wrapper div.dataTables_paginate { | ||
1439 | .message-sender-container .message-field { | 1439 | .message-sender-container .message-field { |
1440 | padding-left: 10px; | 1440 | padding-left: 10px; |
1441 | padding-right: 0px; | 1441 | padding-right: 0px; |
1442 | - height: 46px; | 1442 | + min-height: 46px; |
1443 | + max-height: 90px; | ||
1443 | text-align: left; | 1444 | text-align: left; |
1444 | } | 1445 | } |
1445 | .message-sender-container .message-field h4 { | 1446 | .message-sender-container .message-field h4 { |
1446 | margin-top: 0px; | 1447 | margin-top: 0px; |
1447 | } | 1448 | } |
1448 | -.message-sender-container .message-field div { | ||
1449 | - height: 46px; | 1449 | +.message-sender-container .message-field div.message-container { |
1450 | + min-height: 46px; | ||
1451 | + max-height: 90px; | ||
1452 | + overflow-y: scroll; | ||
1450 | padding-top: 14px; | 1453 | padding-top: 14px; |
1451 | - padding-bottom: 14px; | 1454 | + padding-bottom: 10px; |
1452 | padding-left: 10px; | 1455 | padding-left: 10px; |
1453 | padding-right: 10px; | 1456 | padding-right: 10px; |
1454 | border-width: 1px; | 1457 | border-width: 1px; |
1455 | border-style: solid; | 1458 | border-style: solid; |
1456 | } | 1459 | } |
1457 | 1460 | ||
1461 | +.msg_placeholder { | ||
1462 | + position: absolute; | ||
1463 | + z-index: 0; | ||
1464 | + pointer-events: none; | ||
1465 | + visibility: visible; | ||
1466 | +} | ||
1467 | + | ||
1468 | +#msg_editable { | ||
1469 | + width: 100%; | ||
1470 | + z-index: 1; | ||
1471 | +} | ||
1472 | + | ||
1473 | +.action-button { | ||
1474 | + position: absolute; | ||
1475 | + bottom: 5px; | ||
1476 | + right: 20px; | ||
1477 | + height: 36px; | ||
1478 | + font-size: 18px; | ||
1479 | + width: 40px; | ||
1480 | + padding: 2px; | ||
1481 | + border: none; | ||
1482 | + background: none; | ||
1483 | + margin-bottom: 0px !important; | ||
1484 | +} | ||
1485 | + | ||
1458 | .talking-header { | 1486 | .talking-header { |
1459 | line-height: 0.5 !important; | 1487 | line-height: 0.5 !important; |
1460 | margin-top: 0px; | 1488 | margin-top: 0px; |
amadeus/static/js/chat.js
@@ -18,13 +18,47 @@ function getModalInfo(btn, space, space_type) { | @@ -18,13 +18,47 @@ function getModalInfo(btn, space, space_type) { | ||
18 | 18 | ||
19 | $(this).animate({scrollTop: height}, 0); | 19 | $(this).animate({scrollTop: height}, 0); |
20 | }); | 20 | }); |
21 | + | ||
22 | + setShortChatFormSubmit(); | ||
23 | + }); | ||
24 | + | ||
25 | + $("#msg_editable").on('click', function () { | ||
26 | + $(this).trigger('focusin'); | ||
27 | + }); | ||
28 | + | ||
29 | + $("#msg_editable").on('focusin', function () { | ||
30 | + $("#send-img").hide(); | ||
31 | + $("#send-msg").show(); | ||
32 | + | ||
33 | + $(".msg_placeholder").hide(); | ||
34 | + }); | ||
35 | + | ||
36 | + $("#msg_editable").on('focusout', function (event) { | ||
37 | + if (!$(event.relatedTarget).is("#send-msg")) { | ||
38 | + $("#send-img").show(); | ||
39 | + $("#send-msg").hide(); | ||
40 | + | ||
41 | + var content = $(this).html(); | ||
42 | + | ||
43 | + if (content == "") { | ||
44 | + $(".msg_placeholder").show(); | ||
45 | + } | ||
46 | + } | ||
47 | + }); | ||
48 | + | ||
49 | + $("#msg_editable").on('keydown', function (e) { | ||
50 | + if (e.keyCode == 13 && !e.shiftKey) { | ||
51 | + e.preventDefault(); | ||
52 | + | ||
53 | + $("#short-chat").submit(); | ||
54 | + } | ||
21 | }); | 55 | }); |
22 | } | 56 | } |
23 | }); | 57 | }); |
24 | } | 58 | } |
25 | 59 | ||
26 | function getForm(field) { | 60 | function getForm(field) { |
27 | - var url = field.find('h4').data('url'); | 61 | + var url = field.data('url'); |
28 | 62 | ||
29 | $.ajax({ | 63 | $.ajax({ |
30 | url: url, | 64 | url: url, |
@@ -74,4 +108,50 @@ function setChatFormSubmit() { | @@ -74,4 +108,50 @@ function setChatFormSubmit() { | ||
74 | 108 | ||
75 | return false; | 109 | return false; |
76 | }); | 110 | }); |
111 | +} | ||
112 | + | ||
113 | +function setShortChatFormSubmit() { | ||
114 | + var frm = $('#short-chat'), | ||
115 | + editable = $("#msg_editable"); | ||
116 | + | ||
117 | + frm.submit(function (e) { | ||
118 | + e.preventDefault(); | ||
119 | + e.stopImmediatePropagation(); | ||
120 | + | ||
121 | + if (editable.html() != "") { | ||
122 | + $("#id_text").val("<p>" + editable.html() + "</p>"); | ||
123 | + var formData = new FormData($(this)[0]); | ||
124 | + | ||
125 | + $.ajax({ | ||
126 | + type: frm.attr('method'), | ||
127 | + url: frm.attr('action'), | ||
128 | + data: formData, | ||
129 | + dataType: "json", | ||
130 | + async: false, | ||
131 | + success: function (data) { | ||
132 | + $('.messages-list').append(data.view); | ||
133 | + | ||
134 | + $(".messages-container").each(function () { | ||
135 | + var height = $(this)[0].scrollHeight; | ||
136 | + | ||
137 | + $(this).animate({scrollTop: height}, 0); | ||
138 | + }); | ||
139 | + | ||
140 | + editable.html(""); | ||
141 | + editable.trigger("focusout"); | ||
142 | + | ||
143 | + alertify.success(data.message); | ||
144 | + }, | ||
145 | + error: function(data) { | ||
146 | + alertify.error(data.responseText); | ||
147 | + setShortChatFormSubmit(); | ||
148 | + }, | ||
149 | + cache: false, | ||
150 | + contentType: false, | ||
151 | + processData: false | ||
152 | + }); | ||
153 | + } | ||
154 | + | ||
155 | + return false; | ||
156 | + }); | ||
77 | } | 157 | } |
78 | \ No newline at end of file | 158 | \ No newline at end of file |
chat/templates/chat/talk.html
1 | {% load static i18n chat_tags %} | 1 | {% load static i18n chat_tags %} |
2 | +{% load widget_tweaks %} | ||
2 | 3 | ||
3 | {% is_online participant as status %} | 4 | {% is_online participant as status %} |
4 | 5 | ||
@@ -56,8 +57,20 @@ | @@ -56,8 +57,20 @@ | ||
56 | </div> | 57 | </div> |
57 | </div> | 58 | </div> |
58 | <div class="col-lg-11 col-md-11 col-sm-11 col-xs-11 message-field"> | 59 | <div class="col-lg-11 col-md-11 col-sm-11 col-xs-11 message-field"> |
59 | - <div onclick="getForm($(this));"> | ||
60 | - <h4 data-url="{% url 'chat:create' participant.email talk_id space space_type %}">{% trans 'Type a new message to ' %}{{ participant }} <i class="fa fa-camera pull-right"></i></h4> | 60 | + <div class="message-container"> |
61 | + <form id="short-chat" class="col-md-11" method="post" action="{{ form_url }}" enctype="multipart/form-data"> | ||
62 | + {% csrf_token %} | ||
63 | + | ||
64 | + <div class="msg_placeholder">{% trans 'Type a new message to ' %}{{ participant }}</div> | ||
65 | + <div id="msg_editable" contenteditable="true"></div> | ||
66 | + {% render_field form.text style="display:none" %} | ||
67 | + </form> | ||
68 | + <button id="send-img" onclick="getForm($(this));" data-url="{% url 'chat:create' participant.email talk_id space space_type %}" class="action-button" type="button"> | ||
69 | + <i class="fa fa-camera"></i> | ||
70 | + </button> | ||
71 | + <button id="send-msg" class="action-button" type="submit" form="short-chat" style="display:none"> | ||
72 | + <i class="fa fa-send"></i> | ||
73 | + </button> | ||
61 | </div> | 74 | </div> |
62 | </div> | 75 | </div> |
63 | </div> | 76 | </div> |
chat/views.py
@@ -137,7 +137,9 @@ class GetTalk(LoginRequiredMixin, generic.ListView): | @@ -137,7 +137,9 @@ class GetTalk(LoginRequiredMixin, generic.ListView): | ||
137 | context['talk_id'] = self.talk_id | 137 | context['talk_id'] = self.talk_id |
138 | context['space'] = self.request.GET.get('space', '0') | 138 | context['space'] = self.request.GET.get('space', '0') |
139 | context['space_type'] = self.request.GET.get('space_type', 'general') | 139 | context['space_type'] = self.request.GET.get('space_type', 'general') |
140 | - | 140 | + context['form'] = ChatMessageForm() |
141 | + context['form_url'] = reverse_lazy('chat:create', args = (), kwargs = {'email': self.kwargs.get('email', ''), 'talk_id': self.talk_id, 'space': self.kwargs.get('space', '0'), 'space_type': self.kwargs.get('space_type', 'general')}) | ||
142 | + | ||
141 | return context | 143 | return context |
142 | 144 | ||
143 | class SendMessage(LoginRequiredMixin, generic.edit.CreateView): | 145 | class SendMessage(LoginRequiredMixin, generic.edit.CreateView): |
@@ -205,7 +207,7 @@ class SendMessage(LoginRequiredMixin, generic.edit.CreateView): | @@ -205,7 +207,7 @@ class SendMessage(LoginRequiredMixin, generic.edit.CreateView): | ||
205 | def get_context_data(self, **kwargs): | 207 | def get_context_data(self, **kwargs): |
206 | context = super(SendMessage, self).get_context_data(**kwargs) | 208 | context = super(SendMessage, self).get_context_data(**kwargs) |
207 | 209 | ||
208 | - context['form_url'] = reverse_lazy('chat:create', args = (), kwargs = {'email': self.kwargs.get('email', ''), 'talk_id': self.kwargs.get('talk_id', None), 'space': self.kwargs.get('space', '0'), 'space_type': self.kwargs.get('space_type', 'general')}) | 210 | + context['form_url'] = reverse_lazy('chat:create', args = (), kwargs = {'email': self.kwargs.get('email', ''), 'talk_id': self.kwargs.get('talk_id', '-1'), 'space': self.kwargs.get('space', '0'), 'space_type': self.kwargs.get('space_type', 'general')}) |
209 | 211 | ||
210 | return context | 212 | return context |
211 | 213 |
file_link/locale/pt-br/LC_MESSAGES/django.po
@@ -1,134 +0,0 @@ | @@ -1,134 +0,0 @@ | ||
1 | -# SOME DESCRIPTIVE TITLE. | ||
2 | -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER | ||
3 | -# This file is distributed under the same license as the PACKAGE package. | ||
4 | -# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. | ||
5 | -# | ||
6 | -#, fuzzy | ||
7 | -msgid "" | ||
8 | -msgstr "" | ||
9 | -"Project-Id-Version: PACKAGE VERSION\n" | ||
10 | -"Report-Msgid-Bugs-To: \n" | ||
11 | -"POT-Creation-Date: 2017-02-09 18:40-0300\n" | ||
12 | -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" | ||
13 | -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" | ||
14 | -"Language-Team: LANGUAGE <LL@li.org>\n" | ||
15 | -"Language: \n" | ||
16 | -"MIME-Version: 1.0\n" | ||
17 | -"Content-Type: text/plain; charset=UTF-8\n" | ||
18 | -"Content-Transfer-Encoding: 8bit\n" | ||
19 | - | ||
20 | -#: file_link/forms.py:26 | ||
21 | -msgid "Tags" | ||
22 | -msgstr "" | ||
23 | - | ||
24 | -#: file_link/forms.py:32 | ||
25 | -msgid "File name" | ||
26 | -msgstr "" | ||
27 | - | ||
28 | -#: file_link/forms.py:52 | ||
29 | -msgid "This subject already has a file link with this name" | ||
30 | -msgstr "" | ||
31 | - | ||
32 | -#: file_link/forms.py:64 | ||
33 | -msgid "The file is too large. It should have less than 10MB." | ||
34 | -msgstr "" | ||
35 | - | ||
36 | -#: file_link/forms.py:69 | ||
37 | -msgid "This field is required." | ||
38 | -msgstr "" | ||
39 | - | ||
40 | -#: file_link/models.py:22 | ||
41 | -msgid "File not supported." | ||
42 | -msgstr "" | ||
43 | - | ||
44 | -#: file_link/models.py:25 | ||
45 | -msgid "File" | ||
46 | -msgstr "" | ||
47 | - | ||
48 | -#: file_link/models.py:28 | ||
49 | -msgid "File Link" | ||
50 | -msgstr "" | ||
51 | - | ||
52 | -#: file_link/models.py:29 | ||
53 | -msgid "File Links" | ||
54 | -msgstr "" | ||
55 | - | ||
56 | -#: file_link/models.py:48 | ||
57 | -msgid "Are you sure you want delete the file link" | ||
58 | -msgstr "" | ||
59 | - | ||
60 | -#: file_link/templates/file_links/_form.html:33 | ||
61 | -msgid "Choose your file..." | ||
62 | -msgstr "" | ||
63 | - | ||
64 | -#: file_link/templates/file_links/_form.html:47 | ||
65 | -msgid "Click or drop the file here" | ||
66 | -msgstr "" | ||
67 | - | ||
68 | -#: file_link/templates/file_links/_form.html:49 | ||
69 | -msgid "The file could not exceed 10MB." | ||
70 | -msgstr "" | ||
71 | - | ||
72 | -#: file_link/templates/file_links/_form.html:69 | ||
73 | -msgid "Common resources settings" | ||
74 | -msgstr "" | ||
75 | - | ||
76 | -#: file_link/templates/file_links/_form.html:118 | ||
77 | -msgid "Pendencies Notifications" | ||
78 | -msgstr "" | ||
79 | - | ||
80 | -#: file_link/templates/file_links/_form.html:134 | ||
81 | -msgid "Action not performed by the user" | ||
82 | -msgstr "" | ||
83 | - | ||
84 | -#: file_link/templates/file_links/_form.html:160 | ||
85 | -msgid "Wished period" | ||
86 | -msgstr "" | ||
87 | - | ||
88 | -#: file_link/templates/file_links/_form.html:256 | ||
89 | -msgid "Attribute students to file link" | ||
90 | -msgstr "" | ||
91 | - | ||
92 | -#: file_link/templates/file_links/_form.html:276 | ||
93 | -msgid "Attribute groups to file link" | ||
94 | -msgstr "" | ||
95 | - | ||
96 | -#: file_link/templates/file_links/_form.html:322 | ||
97 | -msgid "Save" | ||
98 | -msgstr "" | ||
99 | - | ||
100 | -#: file_link/templates/file_links/create.html:20 file_link/views.py:177 | ||
101 | -msgid "Create File Link" | ||
102 | -msgstr "" | ||
103 | - | ||
104 | -#: file_link/templates/file_links/update.html:20 | ||
105 | -msgid "Edit: " | ||
106 | -msgstr "" | ||
107 | - | ||
108 | -#: file_link/views.py:104 file_link/views.py:117 file_link/views.py:227 | ||
109 | -#: file_link/views.py:229 file_link/views.py:245 file_link/views.py:247 | ||
110 | -msgid "Visualize" | ||
111 | -msgstr "" | ||
112 | - | ||
113 | -#: file_link/views.py:188 | ||
114 | -#, python-format | ||
115 | -msgid "" | ||
116 | -"The File Link \"%s\" was added to the Topic \"%s\" of the virtual " | ||
117 | -"environment \"%s\" successfully!" | ||
118 | -msgstr "" | ||
119 | - | ||
120 | -#: file_link/views.py:291 | ||
121 | -msgid "Update File Link" | ||
122 | -msgstr "" | ||
123 | - | ||
124 | -#: file_link/views.py:302 | ||
125 | -#, python-format | ||
126 | -msgid "The File Link \"%s\" was updated successfully!" | ||
127 | -msgstr "" | ||
128 | - | ||
129 | -#: file_link/views.py:329 | ||
130 | -#, python-format | ||
131 | -msgid "" | ||
132 | -"The File Link \"%s\" was removed successfully from virtual environment \"%s" | ||
133 | -"\"!" | ||
134 | -msgstr "" |
file_link/locale/pt_BR/LC_MESSAGES/django.po
@@ -8,7 +8,7 @@ msgid "" | @@ -8,7 +8,7 @@ msgid "" | ||
8 | msgstr "" | 8 | msgstr "" |
9 | "Project-Id-Version: PACKAGE VERSION\n" | 9 | "Project-Id-Version: PACKAGE VERSION\n" |
10 | "Report-Msgid-Bugs-To: \n" | 10 | "Report-Msgid-Bugs-To: \n" |
11 | -"POT-Creation-Date: 2017-03-09 17:01-0300\n" | 11 | +"POT-Creation-Date: 2017-03-21 12:36-0300\n" |
12 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" | 12 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" |
13 | "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" | 13 | "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" |
14 | "Language-Team: LANGUAGE <LL@li.org>\n" | 14 | "Language-Team: LANGUAGE <LL@li.org>\n" |
@@ -18,100 +18,103 @@ msgstr "" | @@ -18,100 +18,103 @@ msgstr "" | ||
18 | "Content-Transfer-Encoding: 8bit\n" | 18 | "Content-Transfer-Encoding: 8bit\n" |
19 | "Plural-Forms: nplurals=2; plural=(n > 1);\n" | 19 | "Plural-Forms: nplurals=2; plural=(n > 1);\n" |
20 | 20 | ||
21 | -#: file_link/forms.py:26 | 21 | +#: .\forms.py:26 |
22 | msgid "Tags" | 22 | msgid "Tags" |
23 | msgstr "Tags" | 23 | msgstr "Tags" |
24 | 24 | ||
25 | -#: file_link/forms.py:32 | 25 | +#: .\forms.py:32 |
26 | msgid "File name" | 26 | msgid "File name" |
27 | msgstr "Nome do arquivo" | 27 | msgstr "Nome do arquivo" |
28 | 28 | ||
29 | -#: file_link/forms.py:52 | 29 | +#: .\forms.py:52 |
30 | msgid "This subject already has a file link with this name" | 30 | msgid "This subject already has a file link with this name" |
31 | msgstr "Esse assunto já possui um Link para Arquivo com esse nome" | 31 | msgstr "Esse assunto já possui um Link para Arquivo com esse nome" |
32 | 32 | ||
33 | -#: file_link/forms.py:64 | 33 | +#: .\forms.py:64 |
34 | msgid "The file is too large. It should have less than 10MB." | 34 | msgid "The file is too large. It should have less than 10MB." |
35 | msgstr "Esse arquivo é muito grande. Ele deve conter menos de 10MB." | 35 | msgstr "Esse arquivo é muito grande. Ele deve conter menos de 10MB." |
36 | 36 | ||
37 | -#: file_link/forms.py:69 | 37 | +#: .\forms.py:69 |
38 | msgid "This field is required." | 38 | msgid "This field is required." |
39 | msgstr "Esse campo é obrigatório." | 39 | msgstr "Esse campo é obrigatório." |
40 | 40 | ||
41 | -#: file_link/models.py:23 | ||
42 | -msgid "File not supported." | ||
43 | -msgstr "Arquivo não suportado." | 41 | +#: .\models.py:23 |
42 | +msgid "" | ||
43 | +"Please select a valid file. The uploaded file must have one of the following " | ||
44 | +"extensions: .doc, .docx, .html, .jpg, .odp, .ods, .odt, .pdf, .png, .ppt, ." | ||
45 | +"pptx, .xlx e .xlsx" | ||
46 | +msgstr "Por favor selecione um arquivo válido. O arquivo enviado deve possuir uma das seguintes extensões: .doc, .docx, .html, .jpg, .odp, .ods, .odt, .pdf, .png, .ppt, .pptx, .xlx e .xlsx" | ||
44 | 47 | ||
45 | -#: file_link/models.py:26 | 48 | +#: .\models.py:26 |
46 | msgid "File" | 49 | msgid "File" |
47 | msgstr "Arquivo" | 50 | msgstr "Arquivo" |
48 | 51 | ||
49 | -#: file_link/models.py:29 | 52 | +#: .\models.py:29 |
50 | msgid "File Link" | 53 | msgid "File Link" |
51 | msgstr "Link para Arquivo" | 54 | msgstr "Link para Arquivo" |
52 | 55 | ||
53 | -#: file_link/models.py:30 | 56 | +#: .\models.py:30 |
54 | msgid "File Links" | 57 | msgid "File Links" |
55 | msgstr "Links para Arquivo" | 58 | msgstr "Links para Arquivo" |
56 | 59 | ||
57 | -#: file_link/models.py:49 | 60 | +#: .\models.py:49 |
58 | msgid "Are you sure you want delete the file link" | 61 | msgid "Are you sure you want delete the file link" |
59 | msgstr "Você tem certeza que deseja remover o Link para Arquivo" | 62 | msgstr "Você tem certeza que deseja remover o Link para Arquivo" |
60 | 63 | ||
61 | -#: file_link/templates/file_links/_form.html:33 | 64 | +#: .\templates\file_links\_form.html:33 |
62 | msgid "Choose your file..." | 65 | msgid "Choose your file..." |
63 | msgstr "Escolha seu arquivo..." | 66 | msgstr "Escolha seu arquivo..." |
64 | 67 | ||
65 | -#: file_link/templates/file_links/_form.html:47 | 68 | +#: .\templates\file_links\_form.html:47 |
66 | msgid "Click or drop the file here" | 69 | msgid "Click or drop the file here" |
67 | msgstr "Clique ou solte o arquivo aqui" | 70 | msgstr "Clique ou solte o arquivo aqui" |
68 | 71 | ||
69 | -#: file_link/templates/file_links/_form.html:49 | 72 | +#: .\templates\file_links\_form.html:49 |
70 | msgid "The file could not exceed 10MB." | 73 | msgid "The file could not exceed 10MB." |
71 | msgstr "O arquivo não pode exceder 10MB." | 74 | msgstr "O arquivo não pode exceder 10MB." |
72 | 75 | ||
73 | -#: file_link/templates/file_links/_form.html:69 | 76 | +#: .\templates\file_links\_form.html:69 |
74 | msgid "Common resources settings" | 77 | msgid "Common resources settings" |
75 | msgstr "Configurações comuns à todos os recursos" | 78 | msgstr "Configurações comuns à todos os recursos" |
76 | 79 | ||
77 | -#: file_link/templates/file_links/_form.html:118 | 80 | +#: .\templates\file_links\_form.html:118 |
78 | msgid "Pendencies Notifications" | 81 | msgid "Pendencies Notifications" |
79 | msgstr "Notificações de Pendências" | 82 | msgstr "Notificações de Pendências" |
80 | 83 | ||
81 | -#: file_link/templates/file_links/_form.html:134 | 84 | +#: .\templates\file_links\_form.html:134 |
82 | msgid "Action not performed by the user" | 85 | msgid "Action not performed by the user" |
83 | msgstr "Ação não realizada pelo usuário" | 86 | msgstr "Ação não realizada pelo usuário" |
84 | 87 | ||
85 | -#: file_link/templates/file_links/_form.html:160 | 88 | +#: .\templates\file_links\_form.html:160 |
86 | msgid "Wished period" | 89 | msgid "Wished period" |
87 | msgstr "Período desejado" | 90 | msgstr "Período desejado" |
88 | 91 | ||
89 | -#: file_link/templates/file_links/_form.html:256 | 92 | +#: .\templates\file_links\_form.html:256 |
90 | msgid "Attribute students to file link" | 93 | msgid "Attribute students to file link" |
91 | msgstr "Atribuir estudantes ao Link para Arquivo" | 94 | msgstr "Atribuir estudantes ao Link para Arquivo" |
92 | 95 | ||
93 | -#: file_link/templates/file_links/_form.html:276 | 96 | +#: .\templates\file_links\_form.html:276 |
94 | msgid "Attribute groups to file link" | 97 | msgid "Attribute groups to file link" |
95 | msgstr "Atribuir grupos de estudo ao Link para Arquivo" | 98 | msgstr "Atribuir grupos de estudo ao Link para Arquivo" |
96 | 99 | ||
97 | -#: file_link/templates/file_links/_form.html:322 | 100 | +#: .\templates\file_links\_form.html:322 |
98 | msgid "Save" | 101 | msgid "Save" |
99 | msgstr "Salvar" | 102 | msgstr "Salvar" |
100 | 103 | ||
101 | -#: file_link/templates/file_links/create.html:20 file_link/views.py:177 | 104 | +#: .\templates\file_links\create.html:20 .\views.py:177 |
102 | msgid "Create File Link" | 105 | msgid "Create File Link" |
103 | msgstr "Criar Link para Arquivo" | 106 | msgstr "Criar Link para Arquivo" |
104 | 107 | ||
105 | -#: file_link/templates/file_links/update.html:20 | 108 | +#: .\templates\file_links\update.html:20 |
106 | msgid "Edit: " | 109 | msgid "Edit: " |
107 | msgstr "Editar: " | 110 | msgstr "Editar: " |
108 | 111 | ||
109 | -#: file_link/views.py:104 file_link/views.py:117 file_link/views.py:227 | ||
110 | -#: file_link/views.py:229 file_link/views.py:245 file_link/views.py:247 | 112 | +#: .\views.py:104 .\views.py:117 .\views.py:227 .\views.py:229 .\views.py:245 |
113 | +#: .\views.py:247 | ||
111 | msgid "Visualize" | 114 | msgid "Visualize" |
112 | msgstr "Visualizar" | 115 | msgstr "Visualizar" |
113 | 116 | ||
114 | -#: file_link/views.py:188 | 117 | +#: .\views.py:188 |
115 | #, python-format | 118 | #, python-format |
116 | msgid "" | 119 | msgid "" |
117 | "The File Link \"%s\" was added to the Topic \"%s\" of the virtual " | 120 | "The File Link \"%s\" was added to the Topic \"%s\" of the virtual " |
@@ -120,16 +123,16 @@ msgstr "" | @@ -120,16 +123,16 @@ msgstr "" | ||
120 | "O Link para Arquivo \"%s\" foi adicionado ao tópico \"%s\" do ambiente " | 123 | "O Link para Arquivo \"%s\" foi adicionado ao tópico \"%s\" do ambiente " |
121 | "virtual \"%s\" com sucesso!" | 124 | "virtual \"%s\" com sucesso!" |
122 | 125 | ||
123 | -#: file_link/views.py:291 | 126 | +#: .\views.py:291 |
124 | msgid "Update File Link" | 127 | msgid "Update File Link" |
125 | msgstr "Atualizar Link para Arquivo" | 128 | msgstr "Atualizar Link para Arquivo" |
126 | 129 | ||
127 | -#: file_link/views.py:302 | 130 | +#: .\views.py:302 |
128 | #, python-format | 131 | #, python-format |
129 | msgid "The File Link \"%s\" was updated successfully!" | 132 | msgid "The File Link \"%s\" was updated successfully!" |
130 | msgstr "O Link para Arquivo \"%s\" foi atualizado com sucesso!" | 133 | msgstr "O Link para Arquivo \"%s\" foi atualizado com sucesso!" |
131 | 134 | ||
132 | -#: file_link/views.py:329 | 135 | +#: .\views.py:329 |
133 | #, python-format | 136 | #, python-format |
134 | msgid "" | 137 | msgid "" |
135 | "The File Link \"%s\" was removed successfully from virtual environment \"%s" | 138 | "The File Link \"%s\" was removed successfully from virtual environment \"%s" |
@@ -138,6 +141,9 @@ msgstr "" | @@ -138,6 +141,9 @@ msgstr "" | ||
138 | "O Link para Arquivo \"%s\" foi removido do ambiente virtual \"%s\" com " | 141 | "O Link para Arquivo \"%s\" foi removido do ambiente virtual \"%s\" com " |
139 | "sucesso!" | 142 | "sucesso!" |
140 | 143 | ||
144 | +#~ msgid "File not supported." | ||
145 | +#~ msgstr "Arquivo não suportado." | ||
146 | + | ||
141 | #~ msgid "Close" | 147 | #~ msgid "Close" |
142 | #~ msgstr "Fechar" | 148 | #~ msgstr "Fechar" |
143 | 149 |
file_link/models.py
@@ -17,10 +17,10 @@ def validate_file_extension(value): | @@ -17,10 +17,10 @@ def validate_file_extension(value): | ||
17 | 'application/vnd.oasis.opendocument.spreadsheet','application/vnd.oasis.opendocument.text', | 17 | 'application/vnd.oasis.opendocument.spreadsheet','application/vnd.oasis.opendocument.text', |
18 | 'application/pdf' | 18 | 'application/pdf' |
19 | ] | 19 | ] |
20 | - | 20 | + |
21 | if hasattr(value.file, 'content_type'): | 21 | if hasattr(value.file, 'content_type'): |
22 | if not value.file.content_type in valid_formats: | 22 | if not value.file.content_type in valid_formats: |
23 | - raise ValidationError(_('File not supported.')) | 23 | + raise ValidationError(_('Please select a valid file. The uploaded file must have one of the following extensions: .doc, .docx, .html, .jpg, .odp, .ods, .odt, .pdf, .png, .ppt, .pptx, .xlx e .xlsx')) |
24 | 24 | ||
25 | class FileLink(Resource): | 25 | class FileLink(Resource): |
26 | file_content = models.FileField(_('File'), blank = True, upload_to = 'files/', validators = [validate_file_extension]) | 26 | file_content = models.FileField(_('File'), blank = True, upload_to = 'files/', validators = [validate_file_extension]) |
themes/templates/themes/css_update.html
@@ -25,12 +25,12 @@ | @@ -25,12 +25,12 @@ | ||
25 | {% else %} | 25 | {% else %} |
26 | <label for="{{ field.auto_id }}">{{ field.label }}</label> | 26 | <label for="{{ field.auto_id }}">{{ field.label }}</label> |
27 | {% endif %} | 27 | {% endif %} |
28 | - | 28 | + |
29 | <br clear="all" /> | 29 | <br clear="all" /> |
30 | 30 | ||
31 | {% for radio in field %} | 31 | {% for radio in field %} |
32 | <label for="{{ radio.id_for_label }}" class="row text-center"> | 32 | <label for="{{ radio.id_for_label }}" class="row text-center"> |
33 | - <div class="col-lg-offset-2 col-md-offset-2 col-sm-offset-2 col-lg-2 col-md-2 col-sm-2 col-xs-3"> | 33 | + <div class="col-lg-offset-2 col-md-offset-2 col-sm-offset-2 col-lg-2 col-md-2 col-sm-2 col-xs-3 text-left"> |
34 | <span class="radio"> | 34 | <span class="radio"> |
35 | {{ radio }} | 35 | {{ radio }} |
36 | </span> | 36 | </span> |
@@ -75,4 +75,4 @@ | @@ -75,4 +75,4 @@ | ||
75 | </div> | 75 | </div> |
76 | <br clear="all" /> | 76 | <br clear="all" /> |
77 | <br clear="all" /> | 77 | <br clear="all" /> |
78 | -{% endblock %} | ||
79 | \ No newline at end of file | 78 | \ No newline at end of file |
79 | +{% endblock %} |
topics/locale/pt_BR/LC_MESSAGES/django.po
@@ -8,7 +8,7 @@ msgid "" | @@ -8,7 +8,7 @@ msgid "" | ||
8 | msgstr "" | 8 | msgstr "" |
9 | "Project-Id-Version: PACKAGE VERSION\n" | 9 | "Project-Id-Version: PACKAGE VERSION\n" |
10 | "Report-Msgid-Bugs-To: \n" | 10 | "Report-Msgid-Bugs-To: \n" |
11 | -"POT-Creation-Date: 2017-03-09 17:01-0300\n" | 11 | +"POT-Creation-Date: 2017-03-20 21:48-0300\n" |
12 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" | 12 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" |
13 | "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" | 13 | "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" |
14 | "Language-Team: LANGUAGE <LL@li.org>\n" | 14 | "Language-Team: LANGUAGE <LL@li.org>\n" |
@@ -18,189 +18,194 @@ msgstr "" | @@ -18,189 +18,194 @@ msgstr "" | ||
18 | "Content-Transfer-Encoding: 8bit\n" | 18 | "Content-Transfer-Encoding: 8bit\n" |
19 | "Plural-Forms: nplurals=2; plural=(n > 1);\n" | 19 | "Plural-Forms: nplurals=2; plural=(n > 1);\n" |
20 | 20 | ||
21 | -#: topics/forms.py:28 | 21 | +#: .\forms.py:28 |
22 | msgid "This subject already has a repository" | 22 | msgid "This subject already has a repository" |
23 | msgstr "Esse assunto já possui um repositório" | 23 | msgstr "Esse assunto já possui um repositório" |
24 | 24 | ||
25 | -#: topics/forms.py:30 | 25 | +#: .\forms.py:30 |
26 | msgid "This subject already has a topic with this name" | 26 | msgid "This subject already has a topic with this name" |
27 | msgstr "Esse assunto já possui um tópico com esse nome" | 27 | msgstr "Esse assunto já possui um tópico com esse nome" |
28 | 28 | ||
29 | -#: topics/models.py:12 topics/models.py:51 | 29 | +#: .\models.py:12 .\models.py:51 |
30 | msgid "Name" | 30 | msgid "Name" |
31 | msgstr "Nome" | 31 | msgstr "Nome" |
32 | 32 | ||
33 | -#: topics/models.py:13 topics/models.py:52 | 33 | +#: .\models.py:13 .\models.py:52 |
34 | msgid "Slug" | 34 | msgid "Slug" |
35 | msgstr "Slug" | 35 | msgstr "Slug" |
36 | 36 | ||
37 | -#: topics/models.py:14 | 37 | +#: .\models.py:14 |
38 | msgid "Description" | 38 | msgid "Description" |
39 | msgstr "Descrição" | 39 | msgstr "Descrição" |
40 | 40 | ||
41 | -#: topics/models.py:15 | 41 | +#: .\models.py:15 |
42 | msgid "Repository" | 42 | msgid "Repository" |
43 | msgstr "Repositório" | 43 | msgstr "Repositório" |
44 | 44 | ||
45 | -#: topics/models.py:16 topics/models.py:56 | 45 | +#: .\models.py:16 .\models.py:56 |
46 | msgid "Visible" | 46 | msgid "Visible" |
47 | msgstr "Visível" | 47 | msgstr "Visível" |
48 | 48 | ||
49 | -#: topics/models.py:17 | 49 | +#: .\models.py:17 |
50 | msgid "Subject" | 50 | msgid "Subject" |
51 | msgstr "Assunto" | 51 | msgstr "Assunto" |
52 | 52 | ||
53 | -#: topics/models.py:18 topics/models.py:57 | 53 | +#: .\models.py:18 .\models.py:57 |
54 | msgid "Order" | 54 | msgid "Order" |
55 | msgstr "Ordem" | 55 | msgstr "Ordem" |
56 | 56 | ||
57 | -#: topics/models.py:19 topics/models.py:62 | 57 | +#: .\models.py:19 .\models.py:62 |
58 | msgid "Create Date" | 58 | msgid "Create Date" |
59 | msgstr "Data de criação" | 59 | msgstr "Data de criação" |
60 | 60 | ||
61 | -#: topics/models.py:20 topics/models.py:63 | 61 | +#: .\models.py:20 .\models.py:63 |
62 | msgid "Last Update" | 62 | msgid "Last Update" |
63 | msgstr "Última Atualização" | 63 | msgstr "Última Atualização" |
64 | 64 | ||
65 | -#: topics/models.py:23 topics/models.py:58 | 65 | +#: .\models.py:23 .\models.py:58 |
66 | msgid "Topic" | 66 | msgid "Topic" |
67 | msgstr "Tópico" | 67 | msgstr "Tópico" |
68 | 68 | ||
69 | -#: topics/models.py:24 | 69 | +#: .\models.py:24 |
70 | msgid "Topics" | 70 | msgid "Topics" |
71 | msgstr "Tópicos" | 71 | msgstr "Tópicos" |
72 | 72 | ||
73 | -#: topics/models.py:53 | 73 | +#: .\models.py:53 |
74 | msgid "Brief Description" | 74 | msgid "Brief Description" |
75 | msgstr "Descrição Breve" | 75 | msgstr "Descrição Breve" |
76 | 76 | ||
77 | -#: topics/models.py:54 | 77 | +#: .\models.py:54 |
78 | msgid "Show in new window" | 78 | msgid "Show in new window" |
79 | msgstr "Exibir em nova janela" | 79 | msgstr "Exibir em nova janela" |
80 | 80 | ||
81 | -#: topics/models.py:55 | 81 | +#: .\models.py:55 |
82 | msgid "All Students" | 82 | msgid "All Students" |
83 | msgstr "Todos os estudantes habilitados para acessar o recurso" | 83 | msgstr "Todos os estudantes habilitados para acessar o recurso" |
84 | 84 | ||
85 | -#: topics/models.py:59 | 85 | +#: .\models.py:59 |
86 | msgid "Students" | 86 | msgid "Students" |
87 | msgstr "Estudantes" | 87 | msgstr "Estudantes" |
88 | 88 | ||
89 | -#: topics/models.py:60 | 89 | +#: .\models.py:60 |
90 | msgid "Groups" | 90 | msgid "Groups" |
91 | msgstr "Grupos de Estudo" | 91 | msgstr "Grupos de Estudo" |
92 | 92 | ||
93 | -#: topics/models.py:61 | 93 | +#: .\models.py:61 |
94 | msgid "Markers" | 94 | msgid "Markers" |
95 | msgstr "Marcadores" | 95 | msgstr "Marcadores" |
96 | 96 | ||
97 | -#: topics/models.py:66 | 97 | +#: .\models.py:66 |
98 | msgid "Resource" | 98 | msgid "Resource" |
99 | msgstr "Recurso" | 99 | msgstr "Recurso" |
100 | 100 | ||
101 | -#: topics/models.py:67 | 101 | +#: .\models.py:67 |
102 | msgid "Resources" | 102 | msgid "Resources" |
103 | msgstr "Recursos" | 103 | msgstr "Recursos" |
104 | 104 | ||
105 | -#: topics/templates/resources/delete.html:14 | ||
106 | -#: topics/templates/topics/delete.html:15 | 105 | +#: .\templates\resources\delete.html:14 .\templates\topics\delete.html:15 |
107 | msgid "Close" | 106 | msgid "Close" |
108 | msgstr "Fechar" | 107 | msgstr "Fechar" |
109 | 108 | ||
110 | -#: topics/templates/resources/delete.html:17 | ||
111 | -#: topics/templates/topics/delete.html:18 | 109 | +#: .\templates\resources\delete.html:17 .\templates\topics\delete.html:18 |
112 | msgid "Delete" | 110 | msgid "Delete" |
113 | msgstr "Deletar" | 111 | msgstr "Deletar" |
114 | 112 | ||
115 | -#: topics/templates/resources/list.html:31 topics/templates/topics/list.html:28 | 113 | +#: .\templates\resources\list.html:31 .\templates\topics\list.html:28 |
116 | msgid "Edit" | 114 | msgid "Edit" |
117 | msgstr "Editar" | 115 | msgstr "Editar" |
118 | 116 | ||
119 | -#: topics/templates/resources/list.html:33 | 117 | +#: .\templates\resources\list.html:33 |
120 | msgid "Reports" | 118 | msgid "Reports" |
121 | msgstr "Relatórios" | 119 | msgstr "Relatórios" |
122 | 120 | ||
123 | -#: topics/templates/resources/list.html:35 topics/templates/topics/list.html:29 | 121 | +#: .\templates\resources\list.html:35 .\templates\topics\list.html:29 |
124 | msgid "Remove" | 122 | msgid "Remove" |
125 | msgstr "Remover" | 123 | msgstr "Remover" |
126 | 124 | ||
127 | -#: topics/templates/topics/_form.html:21 | 125 | +#: .\templates\topics\_form.html:21 |
128 | msgid "Only one topic per subject can be a repository" | 126 | msgid "Only one topic per subject can be a repository" |
129 | msgstr "Apenas um tópico por asssunto pode ser um repositório" | 127 | msgstr "Apenas um tópico por asssunto pode ser um repositório" |
130 | 128 | ||
131 | -#: topics/templates/topics/_form.html:52 | 129 | +#: .\templates\topics\_form.html:52 |
132 | msgid "Save" | 130 | msgid "Save" |
133 | msgstr "Salvar" | 131 | msgstr "Salvar" |
134 | 132 | ||
135 | -#: topics/templates/topics/create.html:8 topics/views.py:85 | 133 | +#: .\templates\topics\create.html:8 .\views.py:85 |
136 | msgid "Create Topic" | 134 | msgid "Create Topic" |
137 | msgstr "Criar Tópico" | 135 | msgstr "Criar Tópico" |
138 | 136 | ||
139 | -#: topics/templates/topics/delete.html:9 | 137 | +#: .\templates\topics\delete.html:9 |
140 | msgid "Are you sure you want delete the topic" | 138 | msgid "Are you sure you want delete the topic" |
141 | msgstr "Tem certeza que deseja deletar o tópico" | 139 | msgstr "Tem certeza que deseja deletar o tópico" |
142 | 140 | ||
143 | -#: topics/templates/topics/delete.html:10 | 141 | +#: .\templates\topics\delete.html:10 |
144 | msgid "All data will be lost and havent how recover it." | 142 | msgid "All data will be lost and havent how recover it." |
145 | msgstr "Todas as informações serão perdidas e não poderão ser recuperadas." | 143 | msgstr "Todas as informações serão perdidas e não poderão ser recuperadas." |
146 | 144 | ||
147 | -#: topics/templates/topics/list.html:52 | 145 | +#: .\templates\topics\list.html:52 |
148 | msgid "Add Resource" | 146 | msgid "Add Resource" |
149 | msgstr "Adicionar Recurso" | 147 | msgstr "Adicionar Recurso" |
150 | 148 | ||
151 | -#: topics/templates/topics/list.html:55 | 149 | +#: .\templates\topics\list.html:55 |
152 | msgid "PDF File" | 150 | msgid "PDF File" |
153 | msgstr "Arquivo PDF" | 151 | msgstr "Arquivo PDF" |
154 | 152 | ||
155 | -#: topics/templates/topics/list.html:56 | ||
156 | -msgid "Video Embed" | ||
157 | -msgstr "Embed de Vídeo" | 153 | +#: .\templates\topics\list.html:56 |
154 | +msgid "YouTube Video" | ||
155 | +msgstr "Video do YouTube" | ||
158 | 156 | ||
159 | -#: topics/templates/topics/list.html:57 | 157 | +#: .\templates\topics\list.html:57 |
160 | msgid "Forum" | 158 | msgid "Forum" |
161 | msgstr "Fórum" | 159 | msgstr "Fórum" |
162 | 160 | ||
163 | -#: topics/templates/topics/list.html:58 | 161 | +#: .\templates\topics\list.html:58 |
164 | msgid "File Link" | 162 | msgid "File Link" |
165 | msgstr "Link para arquivo" | 163 | msgstr "Link para arquivo" |
166 | 164 | ||
167 | -#: topics/templates/topics/list.html:59 | 165 | +#: .\templates\topics\list.html:59 |
168 | msgid "Link to Website" | 166 | msgid "Link to Website" |
169 | msgstr "Link para Site" | 167 | msgstr "Link para Site" |
170 | 168 | ||
171 | -#: topics/templates/topics/list.html:60 | ||
172 | -msgid "Webpage" | ||
173 | -msgstr "Página Web" | ||
174 | - | ||
175 | -#: topics/templates/topics/list.html:61 | 169 | +#: .\templates\topics\list.html:60 |
176 | msgid "Topic Goals" | 170 | msgid "Topic Goals" |
177 | msgstr "Metas do Tópico" | 171 | msgstr "Metas do Tópico" |
178 | 172 | ||
179 | -#: topics/templates/topics/list.html:62 | 173 | +#: .\templates\topics\list.html:61 |
174 | +msgid "Webpage" | ||
175 | +msgstr "Página Web" | ||
176 | + | ||
177 | +#: .\templates\topics\list.html:62 | ||
180 | msgid "Questionary" | 178 | msgid "Questionary" |
181 | msgstr "Questionário" | 179 | msgstr "Questionário" |
182 | 180 | ||
183 | -#: topics/templates/topics/update.html:8 topics/views.py:134 | 181 | +#: .\templates\topics\list.html:63 |
182 | +msgid "Web Conference" | ||
183 | +msgstr "" | ||
184 | + | ||
185 | +#: .\templates\topics\update.html:8 .\views.py:134 | ||
184 | msgid "Update Topic" | 186 | msgid "Update Topic" |
185 | msgstr "Atualizar Tópico" | 187 | msgstr "Atualizar Tópico" |
186 | 188 | ||
187 | -#: topics/views.py:95 | 189 | +#: .\views.py:95 |
188 | #, python-format | 190 | #, python-format |
189 | msgid "Topic \"%s\" was created on virtual enviroment \"%s\" successfully!" | 191 | msgid "Topic \"%s\" was created on virtual enviroment \"%s\" successfully!" |
190 | msgstr "Tópico \"%s\" foi criado no ambiente virtual \"%s\" com sucesso!" | 192 | msgstr "Tópico \"%s\" foi criado no ambiente virtual \"%s\" com sucesso!" |
191 | 193 | ||
192 | -#: topics/views.py:151 | 194 | +#: .\views.py:151 |
193 | #, python-format | 195 | #, python-format |
194 | msgid "Topic \"%s\" was updated on virtual enviroment \"%s\" successfully!" | 196 | msgid "Topic \"%s\" was updated on virtual enviroment \"%s\" successfully!" |
195 | msgstr "Tópico \"%s\" foi atualizado no ambiente virtual \"%s\" com sucesso!" | 197 | msgstr "Tópico \"%s\" foi atualizado no ambiente virtual \"%s\" com sucesso!" |
196 | 198 | ||
197 | -#: topics/views.py:193 | 199 | +#: .\views.py:193 |
198 | msgid "Could not remove this topic. It has one or more resources attached." | 200 | msgid "Could not remove this topic. It has one or more resources attached." |
199 | msgstr "" | 201 | msgstr "" |
200 | "Não é possível remover esse tópico. Ele possui um ou mais recursos " | 202 | "Não é possível remover esse tópico. Ele possui um ou mais recursos " |
201 | "vinculados." | 203 | "vinculados." |
202 | 204 | ||
203 | -#: topics/views.py:202 | 205 | +#: .\views.py:202 |
204 | #, python-format | 206 | #, python-format |
205 | msgid "Topic \"%s\" was removed from virtual enviroment \"%s\" successfully!" | 207 | msgid "Topic \"%s\" was removed from virtual enviroment \"%s\" successfully!" |
206 | msgstr "Tópico \"%s\" foi removido do ambiente virtual \"%s\" com sucesso!" | 208 | msgstr "Tópico \"%s\" foi removido do ambiente virtual \"%s\" com sucesso!" |
209 | + | ||
210 | +#~ msgid "Video Embed" | ||
211 | +#~ msgstr "Embed de Vídeo" |
topics/templates/topics/list.html
@@ -53,7 +53,7 @@ | @@ -53,7 +53,7 @@ | ||
53 | </button> | 53 | </button> |
54 | <ul class="dropdown-menu"> | 54 | <ul class="dropdown-menu"> |
55 | <li><a href="{% url 'pdf_files:create' topic.slug %}"><i class="fa fa-file-pdf-o"></i> {% trans "PDF File" %}</a></li> | 55 | <li><a href="{% url 'pdf_files:create' topic.slug %}"><i class="fa fa-file-pdf-o"></i> {% trans "PDF File" %}</a></li> |
56 | - <li><a href="{% url 'youtube:create' topic.slug %}"><i class="fa fa-video-camera"></i> {% trans 'Video Embed' %}</a></li> | 56 | + <li><a href="{% url 'youtube:create' topic.slug %}"><i class="fa fa-video-camera"></i> {% trans 'YouTube Video' %}</a></li> |
57 | <li><a href="#"><i class="fa fa-comments-o"></i> {% trans 'Forum' %}</a></li> | 57 | <li><a href="#"><i class="fa fa-comments-o"></i> {% trans 'Forum' %}</a></li> |
58 | <li><a href="{% url 'file_links:create' topic.slug %}"><i class="fa fa-file-archive-o"></i> {% trans 'File Link' %}</a></li> | 58 | <li><a href="{% url 'file_links:create' topic.slug %}"><i class="fa fa-file-archive-o"></i> {% trans 'File Link' %}</a></li> |
59 | <li><a href="{% url 'links:create' topic.slug %}" > <i class="fa fa-globe"></i> {% trans "Link to Website" %}</a> | 59 | <li><a href="{% url 'links:create' topic.slug %}" > <i class="fa fa-globe"></i> {% trans "Link to Website" %}</a> |