Commit 35c7698b3dd2078e59700deecf8d2d726edcb36f
1 parent
e3569528
Exists in
master
Adicionado suporte ao Safari e novos campos no Enviar Sinal.
Showing
105 changed files
with
414 additions
and
251 deletions
Show diff stats
view/css/main.css
@@ -8,6 +8,10 @@ body nav.navbar:first-child { | @@ -8,6 +8,10 @@ body nav.navbar:first-child { | ||
8 | display: none; | 8 | display: none; |
9 | } | 9 | } |
10 | 10 | ||
11 | +.navbar-wl .navbar-nav { | ||
12 | + padding-left: 60px; | ||
13 | +} | ||
14 | + | ||
11 | footer { | 15 | footer { |
12 | display: none; | 16 | display: none; |
13 | } | 17 | } |
@@ -534,6 +538,10 @@ ul.rig.columns-4 li { | @@ -534,6 +538,10 @@ ul.rig.columns-4 li { | ||
534 | width: 100%; | 538 | width: 100%; |
535 | } | 539 | } |
536 | 540 | ||
541 | +#thanks-screen a { | ||
542 | + text-decoration: underline; | ||
543 | +} | ||
544 | + | ||
537 | #completed-all-task-msg { | 545 | #completed-all-task-msg { |
538 | display: none; | 546 | display: none; |
539 | } | 547 | } |
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
view/js/helpers/video-helper.js
1 | (function(videoHelper, $, undefined) { | 1 | (function(videoHelper, $, undefined) { |
2 | - | 2 | + |
3 | + function _getSource(videoBaseUrl) { | ||
4 | + return '<source src="' + videoBaseUrl + '.webm" type="video/webm">' | ||
5 | + + '<source src="' + videoBaseUrl | ||
6 | + + '.mp4" type="video/mp4">Sem suporte a vídeos'; | ||
7 | + } | ||
8 | + | ||
3 | function _controlVideo(elId, toPlay) { | 9 | function _controlVideo(elId, toPlay) { |
4 | - var videoSrc = $(elId).attr("src"); | ||
5 | - if (typeof videoSrc == "undefined" || | ||
6 | - (typeof videoSrc != "undefined" && videoSrc === "")) | 10 | + if ($(elId).length === 0) |
7 | return; | 11 | return; |
8 | if (toPlay) { | 12 | if (toPlay) { |
9 | $(elId).get(0).play(); | 13 | $(elId).get(0).play(); |
@@ -11,13 +15,17 @@ | @@ -11,13 +15,17 @@ | ||
11 | $(elId).get(0).pause(); | 15 | $(elId).get(0).pause(); |
12 | } | 16 | } |
13 | } | 17 | } |
14 | - | 18 | + |
15 | videoHelper.play = function(elId) { | 19 | videoHelper.play = function(elId) { |
16 | _controlVideo(elId, true); | 20 | _controlVideo(elId, true); |
17 | - } | ||
18 | - | ||
19 | - videoHelper.pause = function(elId) { | 21 | + }; |
22 | + | ||
23 | + videoHelper.pause = function(elId) { | ||
20 | _controlVideo(elId, false); | 24 | _controlVideo(elId, false); |
21 | - } | 25 | + }; |
26 | + | ||
27 | + videoHelper.getSource = function(videoBaseUrl) { | ||
28 | + return _getSource(videoBaseUrl); | ||
29 | + }; | ||
22 | 30 | ||
23 | }(window.videoHelper = window.videoHelper || {}, jQuery)); | 31 | }(window.videoHelper = window.videoHelper || {}, jQuery)); |
view/js/render-sign.js
1 | (function(renderSign, $, undefined) { | 1 | (function(renderSign, $, undefined) { |
2 | - | 2 | + |
3 | var api_url = ''; | 3 | var api_url = ''; |
4 | - | 4 | + |
5 | function _submitParameterJSON(parsedParameterJSON, callback) { | 5 | function _submitParameterJSON(parsedParameterJSON, callback) { |
6 | console.log(parsedParameterJSON); | 6 | console.log(parsedParameterJSON); |
7 | $.ajax({ | 7 | $.ajax({ |
@@ -18,14 +18,15 @@ | @@ -18,14 +18,15 @@ | ||
18 | } | 18 | } |
19 | }); | 19 | }); |
20 | } | 20 | } |
21 | - | 21 | + |
22 | function _showRenderedAvatar(parameterJSON) { | 22 | function _showRenderedAvatar(parameterJSON) { |
23 | var userId = parameterJSON['userId']; | 23 | var userId = parameterJSON['userId']; |
24 | var signName = parameterJSON['sinal']; | 24 | var signName = parameterJSON['sinal']; |
25 | - $("#render-avatar video").attr("src", | ||
26 | - _getRenderedAvatarUrl(userId, signName)); | 25 | + |
26 | + var avatarBaseUrl = _getRenderedAvatarBaseUrl(userId, signName); | ||
27 | + $('#render-avatar video').html(videoHelper.getSource(avatarBaseUrl)); | ||
27 | $("#render-avatar").fadeIn(300); | 28 | $("#render-avatar").fadeIn(300); |
28 | - } | 29 | + } |
29 | 30 | ||
30 | function _showRenderScreen(toShow) { | 31 | function _showRenderScreen(toShow) { |
31 | if (toShow) { | 32 | if (toShow) { |
@@ -38,22 +39,22 @@ | @@ -38,22 +39,22 @@ | ||
38 | videoHelper.pause("#render-avatar video"); | 39 | videoHelper.pause("#render-avatar video"); |
39 | } | 40 | } |
40 | } | 41 | } |
41 | - | ||
42 | - function _getRenderedAvatarUrl(userId, signName) { | ||
43 | - return api_url + '/public/' + userId + '/' + signName + ".webm"; | 42 | + |
43 | + function _getRenderedAvatarBaseUrl(userId, signName) { | ||
44 | + return api_url + '/public/' + userId + '/' + signName; | ||
44 | } | 45 | } |
45 | - | 46 | + |
46 | renderSign.showRenderedAvatar = function(parameterJSON) { | 47 | renderSign.showRenderedAvatar = function(parameterJSON) { |
47 | _showRenderedAvatar(parameterJSON); | 48 | _showRenderedAvatar(parameterJSON); |
48 | _showRenderScreen(true); | 49 | _showRenderScreen(true); |
49 | } | 50 | } |
50 | - | 51 | + |
51 | renderSign.showRenderScreen = function(toShow) { | 52 | renderSign.showRenderScreen = function(toShow) { |
52 | _showRenderScreen(toShow); | 53 | _showRenderScreen(toShow); |
53 | } | 54 | } |
54 | - | ||
55 | - renderSign.getRenderedAvatarUrl = function(userId, signName) { | ||
56 | - return _getRenderedAvatarUrl(userId, signName); | 55 | + |
56 | + renderSign.getRenderedAvatarBaseUrl = function(userId, signName) { | ||
57 | + return _getRenderedAvatarBaseUrl(userId, signName); | ||
57 | } | 58 | } |
58 | 59 | ||
59 | renderSign.submit = function(parsedParameterJSON) { | 60 | renderSign.submit = function(parsedParameterJSON) { |
@@ -65,13 +66,14 @@ | @@ -65,13 +66,14 @@ | ||
65 | $("#finish-button").addClass("disabled"); | 66 | $("#finish-button").addClass("disabled"); |
66 | $("#finish-button").show(); | 67 | $("#finish-button").show(); |
67 | 68 | ||
68 | - _submitParameterJSON(parsedParameterJSON, function(parsedParameterJSON) { | ||
69 | - $("#render-loading").fadeOut(300); | ||
70 | - $("#finish-button").removeClass("disabled"); | ||
71 | - _showRenderedAvatar(parsedParameterJSON); | ||
72 | - }); | 69 | + _submitParameterJSON(parsedParameterJSON, |
70 | + function(parsedParameterJSON) { | ||
71 | + $("#render-loading").fadeOut(300); | ||
72 | + $("#finish-button").removeClass("disabled"); | ||
73 | + _showRenderedAvatar(parsedParameterJSON); | ||
74 | + }); | ||
73 | }; | 75 | }; |
74 | - | 76 | + |
75 | renderSign.setup = function(apiUrl) { | 77 | renderSign.setup = function(apiUrl) { |
76 | api_url = apiUrl; | 78 | api_url = apiUrl; |
77 | $("#render-edit").off("click").on("click", function() { | 79 | $("#render-edit").off("click").on("click", function() { |
view/js/submit-sign.js
1 | (function(submitSign, $, undefined) { | 1 | (function(submitSign, $, undefined) { |
2 | 2 | ||
3 | var submitUrl = ''; | 3 | var submitUrl = ''; |
4 | - | 4 | + var MIN_PHRASES_LENGTH = 3; |
5 | + var MAX_PHRASES_LENGTH = 20; | ||
6 | + | ||
5 | function _isEmpty(str) { | 7 | function _isEmpty(str) { |
6 | return (!str || 0 === str.length); | 8 | return (!str || 0 === str.length); |
7 | } | 9 | } |
8 | 10 | ||
9 | - function _validadeInputFields() { | 11 | + function _alertSignName() { |
12 | + $('#upload-warning-msg').hide(); | ||
10 | var signName = $('#input-sign-name').val(); | 13 | var signName = $('#input-sign-name').val(); |
14 | + if (_isEmpty(signName)) { | ||
15 | + $('#upload-warning-msg').html('Por favor indique o nome do sinal.'); | ||
16 | + $('#upload-warning-msg').show(); | ||
17 | + } | ||
18 | + } | ||
19 | + | ||
20 | + function _alertWordClass() { | ||
21 | + $('#upload-warning-msg').hide(); | ||
22 | + var wordClass = $('#input-word-class').val(); | ||
23 | + if (_isEmpty(wordClass)) { | ||
24 | + $('#upload-warning-msg').html( | ||
25 | + 'Por favor selecione a classe gramatical do sinal.'); | ||
26 | + $('#upload-warning-msg').show(); | ||
27 | + } | ||
28 | + } | ||
29 | + | ||
30 | + function _areValidPhrases(phrases) { | ||
31 | + var cleanPhrases = phrases.replace(/[.,\/#!$%\^&\*;:{}=\-_`~()]/g, ""); | ||
32 | + var splitPhrasesLength = cleanPhrases.trim().split(/\s+/g).length; | ||
33 | + return splitPhrasesLength >= MIN_PHRASES_LENGTH | ||
34 | + && splitPhrasesLength <= MAX_PHRASES_LENGTH; | ||
35 | + } | ||
36 | + | ||
37 | + function _alertPhrase() { | ||
38 | + $('#upload-warning-msg').hide(); | ||
39 | + var phrases = $('#input-phrases').val(); | ||
40 | + if (!_areValidPhrases(phrases)) { | ||
41 | + $('#upload-warning-msg').html( | ||
42 | + 'As frases de exemplo devem possuir no minímo ' | ||
43 | + + MIN_PHRASES_LENGTH + ' e no máximo ' | ||
44 | + + MAX_PHRASES_LENGTH + ' palavras.'); | ||
45 | + $('#upload-warning-msg').show(); | ||
46 | + } | ||
47 | + } | ||
48 | + | ||
49 | + function _alertState() { | ||
50 | + $('#upload-warning-msg').hide(); | ||
11 | var state = $('#input-state').val(); | 51 | var state = $('#input-state').val(); |
52 | + if (_isEmpty(state)) { | ||
53 | + $('#upload-warning-msg').html('Por favor selecione seu estado.'); | ||
54 | + $('#upload-warning-msg').show(); | ||
55 | + } | ||
56 | + } | ||
57 | + | ||
58 | + function _alertCity() { | ||
59 | + $('#upload-warning-msg').hide(); | ||
12 | var city = $('#input-city').val(); | 60 | var city = $('#input-city').val(); |
61 | + if (_isEmpty(city)) { | ||
62 | + $('#upload-warning-msg').html( | ||
63 | + 'Por favor indique o nome da sua cidade.'); | ||
64 | + $('#upload-warning-msg').show(); | ||
65 | + } | ||
66 | + } | ||
67 | + | ||
68 | + function _alertSignUpload() { | ||
69 | + $('#upload-warning-msg').hide(); | ||
13 | var signUpload = $('#input-sign-upload').val(); | 70 | var signUpload = $('#input-sign-upload').val(); |
14 | - return !_isEmpty(signName) && !_isEmpty(state) && !_isEmpty(city) | ||
15 | - && !_isEmpty(signUpload); | 71 | + if (_isEmpty(signUpload)) { |
72 | + $('#upload-warning-msg').html( | ||
73 | + 'Por favor selecione o arquivo do vídeo do seu sinal.'); | ||
74 | + $('#upload-warning-msg').show(); | ||
75 | + } | ||
76 | + } | ||
77 | + | ||
78 | + function _validadeAllFields() { | ||
79 | + var signName = $('#input-sign-name').val(); | ||
80 | + var wordClass = $('#input-word-class').val(); | ||
81 | + var phrases = $('#input-phrases').val(); | ||
82 | + var state = $('#input-state').val(); | ||
83 | + var city = $('#input-city').val(); | ||
84 | + var signUpload = $('#input-sign-upload').val(); | ||
85 | + return !_isEmpty(signName) && !_isEmpty(wordClass) | ||
86 | + && _areValidPhrases(phrases) && !_isEmpty(state) | ||
87 | + && !_isEmpty(city) && !_isEmpty(signUpload); | ||
16 | } | 88 | } |
17 | 89 | ||
18 | function _updateSubmitButton() { | 90 | function _updateSubmitButton() { |
19 | - if (_validadeInputFields()) { | ||
20 | - $('#submit-sign-container button').removeClass('disabled'); | 91 | + if (_validadeAllFields()) { |
92 | + _enableSubmitButton(); | ||
21 | } else { | 93 | } else { |
22 | - $('#submit-sign-container button').addClass('disabled'); | 94 | + _disableSubmitButton(); |
23 | } | 95 | } |
24 | } | 96 | } |
25 | - | 97 | + |
98 | + function _enableSubmitButton() { | ||
99 | + $('#submit-sign-container button').removeClass('disabled'); | ||
100 | + $('#submit-sign-container button').off('click'); | ||
101 | + } | ||
102 | + | ||
103 | + function _disableSubmitButton() { | ||
104 | + $('#submit-sign-container button').addClass('disabled'); | ||
105 | + $('#submit-sign-container button').on('click', function(event) { | ||
106 | + event.preventDefault(); | ||
107 | + }); | ||
108 | + } | ||
109 | + | ||
26 | function _resetFormFields() { | 110 | function _resetFormFields() { |
27 | $('#input-sign-name').val(''); | 111 | $('#input-sign-name').val(''); |
28 | $('#input-state').val(''); | 112 | $('#input-state').val(''); |
29 | $('#input-city').val(''); | 113 | $('#input-city').val(''); |
30 | $('#input-sign-upload').val(''); | 114 | $('#input-sign-upload').val(''); |
31 | $("#upload-progress .progress-bar").css("width", "0px"); | 115 | $("#upload-progress .progress-bar").css("width", "0px"); |
32 | - $('#upload-progress-container').hide(); | 116 | + $('#upload-progress-container').hide(); |
33 | $('#input-sign-upload').show(); | 117 | $('#input-sign-upload').show(); |
34 | } | 118 | } |
35 | - | ||
36 | - submitSign.show = function() { | ||
37 | - $(".sub-main-container").hide(); | ||
38 | - $("#submit-sign-container").show(); | ||
39 | - $("#submit-sign-anchor").focus(); | ||
40 | - } | ||
41 | 119 | ||
42 | - submitSign.setup = function(uploadSignHost) { | ||
43 | - submitUrl = uploadSignHost; | 120 | + function _setupSubmitSignForm() { |
121 | + _disableSubmitButton(); | ||
44 | $('#submit-sign-container form').fileupload( | 122 | $('#submit-sign-container form').fileupload( |
45 | { | 123 | { |
46 | url : submitUrl, | 124 | url : submitUrl, |
47 | - add: function (e, data) { | ||
48 | - $('#submit-sign-container button').off('click').on('click', function (event) { | ||
49 | - event.preventDefault(); | ||
50 | - | ||
51 | - $('#submit-sign-container button').addClass('disabled'); | ||
52 | - $('#input-sign-upload').hide(); | ||
53 | - $('#upload-progress-container').show(); | ||
54 | - data.submit(); | ||
55 | - }); | ||
56 | - }, | 125 | + add : function(e, data) { |
126 | + $('#submit-sign-container button').off('click').on( | ||
127 | + 'click', | ||
128 | + function(event) { | ||
129 | + event.preventDefault(); | ||
130 | + | ||
131 | + $('#submit-sign-container button') | ||
132 | + .addClass('disabled'); | ||
133 | + $('#input-sign-upload').hide(); | ||
134 | + $('#upload-progress-container').show(); | ||
135 | + data.submit(); | ||
136 | + }); | ||
137 | + }, | ||
57 | done : function(e, data) { | 138 | done : function(e, data) { |
58 | $('#upload-success-msg').fadeIn(500); | 139 | $('#upload-success-msg').fadeIn(500); |
59 | setTimeout(function() { | 140 | setTimeout(function() { |
@@ -64,27 +145,52 @@ | @@ -64,27 +145,52 @@ | ||
64 | progressall : function(e, data) { | 145 | progressall : function(e, data) { |
65 | var progress = parseInt(data.loaded / data.total * 100, | 146 | var progress = parseInt(data.loaded / data.total * 100, |
66 | 10); | 147 | 10); |
67 | - $("#upload-progress .progress-bar").attr('aria-valuenow', progress). | ||
68 | - css("width", progress + "%"); | 148 | + $("#upload-progress .progress-bar").attr( |
149 | + 'aria-valuenow', progress).css("width", | ||
150 | + progress + "%"); | ||
69 | }, | 151 | }, |
70 | error : function(error) { | 152 | error : function(error) { |
71 | alert(error.responseText); | 153 | alert(error.responseText); |
72 | }, | 154 | }, |
73 | - replaceFileInput: false | 155 | + replaceFileInput : false |
74 | }); | 156 | }); |
75 | 157 | ||
76 | $('#input-sign-name').on('input', function() { | 158 | $('#input-sign-name').on('input', function() { |
159 | + _alertSignName(); | ||
160 | + _updateSubmitButton(); | ||
161 | + }); | ||
162 | + $('#input-word-class').on('input', function() { | ||
163 | + _alertWordClass(); | ||
164 | + _updateSubmitButton(); | ||
165 | + }); | ||
166 | + $('#input-phrases').on('input', function() { | ||
167 | + _alertPhrase(); | ||
77 | _updateSubmitButton(); | 168 | _updateSubmitButton(); |
78 | }); | 169 | }); |
79 | $('#input-state').on('input', function() { | 170 | $('#input-state').on('input', function() { |
171 | + _alertState(); | ||
80 | _updateSubmitButton(); | 172 | _updateSubmitButton(); |
81 | }); | 173 | }); |
82 | $('#input-city').on('input', function() { | 174 | $('#input-city').on('input', function() { |
175 | + _alertCity(); | ||
83 | _updateSubmitButton(); | 176 | _updateSubmitButton(); |
84 | }); | 177 | }); |
85 | $('#input-sign-upload').on('change', function() { | 178 | $('#input-sign-upload').on('change', function() { |
179 | + _alertSignUpload(); | ||
86 | _updateSubmitButton(); | 180 | _updateSubmitButton(); |
87 | }); | 181 | }); |
182 | + } | ||
183 | + | ||
184 | + submitSign.show = function() { | ||
185 | + $(".sub-main-container").hide(); | ||
186 | + $("#submit-sign-container").show(); | ||
187 | + $("#submit-sign-anchor").focus(); | ||
188 | + }; | ||
189 | + | ||
190 | + submitSign.setup = function(uploadSignHost) { | ||
191 | + submitUrl = uploadSignHost; | ||
192 | + loadHtmlHelper.load('/submit-sign/submit-sign.html', | ||
193 | + '#submit-sign-container', _setupSubmitSignForm); | ||
88 | }; | 194 | }; |
89 | 195 | ||
90 | }(window.submitSign = window.submitSign || {}, jQuery)); | 196 | }(window.submitSign = window.submitSign || {}, jQuery)); |
view/js/teached-signs.js
@@ -6,20 +6,20 @@ | @@ -6,20 +6,20 @@ | ||
6 | var projectId = -1; | 6 | var projectId = -1; |
7 | 7 | ||
8 | function _updateTeachedSignsMessage() { | 8 | function _updateTeachedSignsMessage() { |
9 | - $(".teached-signs-msg").hide(); | 9 | + $('.teached-signs-msg').hide(); |
10 | if (doneTasks == 0) { | 10 | if (doneTasks == 0) { |
11 | - $(".teached-signs-msg[type=none]").show(); | 11 | + $('.teached-signs-msg[type=none]').show(); |
12 | } else if (doneTasks == 1) { | 12 | } else if (doneTasks == 1) { |
13 | - $(".teached-signs-msg[type=one]").show(); | 13 | + $('.teached-signs-msg[type=one]').show(); |
14 | } else { | 14 | } else { |
15 | - $(".teached-signs-msg[type=more] span").text(doneTasks); | ||
16 | - $(".teached-signs-msg[type=more]").show(); | 15 | + $('.teached-signs-msg[type=more] span').text(doneTasks); |
16 | + $('.teached-signs-msg[type=more]').show(); | ||
17 | } | 17 | } |
18 | } | 18 | } |
19 | 19 | ||
20 | function _createSigns(answers) { | 20 | function _createSigns(answers) { |
21 | _updateTeachedSignsMessage(); | 21 | _updateTeachedSignsMessage(); |
22 | - $("#signs-list-container").html(""); | 22 | + $('#signs-list-container').html(''); |
23 | for (i = 0; i < answers.length; i++) { | 23 | for (i = 0; i < answers.length; i++) { |
24 | _addSign(answers[i].info); | 24 | _addSign(answers[i].info); |
25 | } | 25 | } |
@@ -28,25 +28,24 @@ | @@ -28,25 +28,24 @@ | ||
28 | function _addSign(answer) { | 28 | function _addSign(answer) { |
29 | var signName = answer.parameter_json.sinal; | 29 | var signName = answer.parameter_json.sinal; |
30 | var apiUserId = answer.parameter_json.userId; | 30 | var apiUserId = answer.parameter_json.userId; |
31 | - var videoUrl = renderSign.getRenderedAvatarUrl(apiUserId, signName); | ||
32 | - $("#signs-list-container").append( | 31 | + var videoBaseUrl = renderSign.getRenderedAvatarBaseUrl(apiUserId, |
32 | + signName); | ||
33 | + $('#signs-list-container').append( | ||
33 | '<div class="col-btn col-xs-6 col-sm-3 col-md-2" sign-name="' | 34 | '<div class="col-btn col-xs-6 col-sm-3 col-md-2" sign-name="' |
34 | + signName | 35 | + signName |
35 | + '"><button class="btn btn-danger btn-block">' | 36 | + '"><button class="btn btn-danger btn-block">' |
36 | + signName + '</button></div>'); | 37 | + signName + '</button></div>'); |
37 | - $("#signs-list-container .col-btn[sign-name=" + signName + "]") | ||
38 | - .off("click") | ||
39 | - .on( | ||
40 | - "click", | ||
41 | - function() { | ||
42 | - $('#teached-sign-video-container') | ||
43 | - .html( | ||
44 | - "<video autoplay loop><source src='" | ||
45 | - + videoUrl | ||
46 | - + "' type='video/webm'>Sem suporte a vídeos</video>"); | ||
47 | - $('#teached-sign-name').html(signName); | ||
48 | - $('#teached-sign-modal').modal('show'); | ||
49 | - }); | 38 | + $('#signs-list-container .col-btn[sign-name=' + signName + ']').off( |
39 | + 'click').on( | ||
40 | + 'click', | ||
41 | + function() { | ||
42 | + $('#teached-sign-video-container').html( | ||
43 | + '<video autoplay loop>' | ||
44 | + + videoHelper.getSource(videoBaseUrl) | ||
45 | + + '</video>'); | ||
46 | + $('#teached-sign-name').html(signName); | ||
47 | + $('#teached-sign-modal').modal('show'); | ||
48 | + }); | ||
50 | } | 49 | } |
51 | 50 | ||
52 | function _updateTeachedSignsContainer() { | 51 | function _updateTeachedSignsContainer() { |
@@ -56,13 +55,13 @@ | @@ -56,13 +55,13 @@ | ||
56 | } | 55 | } |
57 | 56 | ||
58 | teachedSigns.show = function() { | 57 | teachedSigns.show = function() { |
59 | - $(".sub-main-container").hide(); | ||
60 | - $("#teached-signs-container").show(); | 58 | + $('.sub-main-container').hide(); |
59 | + $('#teached-signs-container').show(); | ||
61 | } | 60 | } |
62 | 61 | ||
63 | teachedSigns.setup = function() { | 62 | teachedSigns.setup = function() { |
64 | pybossaApiHelper.getProjectId().done(function(response) { | 63 | pybossaApiHelper.getProjectId().done(function(response) { |
65 | - if (typeof response == "undefined" || response.length < 1) { | 64 | + if (typeof response == 'undefined' || response.length < 1) { |
66 | return; | 65 | return; |
67 | } | 66 | } |
68 | projectId = response[0].id; | 67 | projectId = response[0].id; |
view/js/wikilibras.js
@@ -33,10 +33,9 @@ | @@ -33,10 +33,9 @@ | ||
33 | function _loadTaskInfo(task) { | 33 | function _loadTaskInfo(task) { |
34 | currentTaskId = task.id; | 34 | currentTaskId = task.id; |
35 | var signName = task.info.sign_name; | 35 | var signName = task.info.sign_name; |
36 | - var refVidLink = videosUrl + signName + '_REF.webm'; | 36 | + var baseRefVidUrl = videosUrl + signName + '_REF'; |
37 | $('.sign-label').text(signName); | 37 | $('.sign-label').text(signName); |
38 | - $('.ref-video').attr('src', refVidLink); | ||
39 | - | 38 | + $('.ref-video').html(videoHelper.getSource(baseRefVidUrl)); |
40 | _setupTmpParameterJSON(task.info.sign_name); | 39 | _setupTmpParameterJSON(task.info.sign_name); |
41 | } | 40 | } |
42 | 41 |
view/templates/facial/duracao/passo-1.html
@@ -4,30 +4,33 @@ | @@ -4,30 +4,33 @@ | ||
4 | </div> | 4 | </div> |
5 | <div class="single-column-option-container"> | 5 | <div class="single-column-option-container"> |
6 | <div class="single-column-option"> | 6 | <div class="single-column-option"> |
7 | - <video src="{{ server }}/img/exf/duration-slow.webm" | 7 | + <video |
8 | preload="metadata" value="lento" | 8 | preload="metadata" value="lento" |
9 | class="video-panel-option selection-panel-option" autoplay loop> | 9 | class="video-panel-option selection-panel-option" autoplay loop> |
10 | - <source type="video/webm"> | 10 | + <source src="{{ server }}/img/exf/duration-slow.webm" type="video/webm"> |
11 | + <source src="{{ server }}/img/exf/duration-slow.mp4" type="video/mp4"> | ||
11 | </div> | 12 | </div> |
12 | <img class="single-column-option" | 13 | <img class="single-column-option" |
13 | src="{{ server }}/img/long-duration-icon.png" /> Longa | 14 | src="{{ server }}/img/long-duration-icon.png" /> Longa |
14 | </div> | 15 | </div> |
15 | <div class="single-column-option-container"> | 16 | <div class="single-column-option-container"> |
16 | <div class="single-column-option"> | 17 | <div class="single-column-option"> |
17 | - <video src="{{ server }}/img/exf/duration-normal.webm" | 18 | + <video |
18 | preload="metadata" value="normal" | 19 | preload="metadata" value="normal" |
19 | class="video-panel-option selection-panel-option" autoplay loop> | 20 | class="video-panel-option selection-panel-option" autoplay loop> |
20 | - <source type="video/webm"> | 21 | + <source src="{{ server }}/img/exf/duration-normal.webm" type="video/webm"> |
22 | + <source src="{{ server }}/img/exf/duration-normal.mp4" type="video/mp4"> | ||
21 | </div> | 23 | </div> |
22 | <img class="single-column-option" | 24 | <img class="single-column-option" |
23 | src="{{ server }}/img/normal-duration-icon.png" /> Normal | 25 | src="{{ server }}/img/normal-duration-icon.png" /> Normal |
24 | </div> | 26 | </div> |
25 | <div class="single-column-option-container"> | 27 | <div class="single-column-option-container"> |
26 | <div class="single-column-option"> | 28 | <div class="single-column-option"> |
27 | - <video src="{{ server }}/img/exf/duration-fast.webm" | 29 | + <video |
28 | preload="metadata" value="rapido" | 30 | preload="metadata" value="rapido" |
29 | class="video-panel-option selection-panel-option" autoplay loop> | 31 | class="video-panel-option selection-panel-option" autoplay loop> |
30 | - <source type="video/webm"> | 32 | + <source src="{{ server }}/img/exf/duration-fast.webm" type="video/webm"> |
33 | + <source src="{{ server }}/img/exf/duration-fast.mp4" type="video/mp4"> | ||
31 | </div> | 34 | </div> |
32 | <img class="single-column-option" | 35 | <img class="single-column-option" |
33 | src="{{ server }}/img/short-duration-icon.png" /> Breve | 36 | src="{{ server }}/img/short-duration-icon.png" /> Breve |
view/templates/facial/transicao/passo-1.html
@@ -5,30 +5,33 @@ | @@ -5,30 +5,33 @@ | ||
5 | </div> | 5 | </div> |
6 | <div class="single-column-option-container"> | 6 | <div class="single-column-option-container"> |
7 | <div class="single-column-option"> | 7 | <div class="single-column-option"> |
8 | - <video src="{{ server }}/img/exf/velocity-slow.webm" | 8 | + <video |
9 | preload="metadata" value="lento" | 9 | preload="metadata" value="lento" |
10 | class="video-panel-option selection-panel-option" autoplay loop> | 10 | class="video-panel-option selection-panel-option" autoplay loop> |
11 | - <source type="video/webm"> | 11 | + <source src="{{ server }}/img/exf/velocity-slow.webm" type="video/webm"> |
12 | + <source src="{{ server }}/img/exf/velocity-slow.mp4" type="video/mp4"> | ||
12 | </div> | 13 | </div> |
13 | <img class="single-column-option" | 14 | <img class="single-column-option" |
14 | src="{{ server }}/img/slow-velocity-icon.png" /> Lento | 15 | src="{{ server }}/img/slow-velocity-icon.png" /> Lento |
15 | </div> | 16 | </div> |
16 | <div class="single-column-option-container"> | 17 | <div class="single-column-option-container"> |
17 | <div class="single-column-option"> | 18 | <div class="single-column-option"> |
18 | - <video src="{{ server }}/img/exf/velocity-normal.webm" | 19 | + <video |
19 | preload="metadata" value="normal" | 20 | preload="metadata" value="normal" |
20 | class="video-panel-option selection-panel-option" autoplay loop> | 21 | class="video-panel-option selection-panel-option" autoplay loop> |
21 | - <source type="video/webm"> | 22 | + <source src="{{ server }}/img/exf/velocity-normal.webm" type="video/webm"> |
23 | + <source src="{{ server }}/img/exf/velocity-normal.mp4" type="video/mp4"> | ||
22 | </div> | 24 | </div> |
23 | <img class="single-column-option" | 25 | <img class="single-column-option" |
24 | src="{{ server }}/img/normal-velocity-icon.png" /> Normal | 26 | src="{{ server }}/img/normal-velocity-icon.png" /> Normal |
25 | </div> | 27 | </div> |
26 | <div class="single-column-option-container"> | 28 | <div class="single-column-option-container"> |
27 | <div class="single-column-option"> | 29 | <div class="single-column-option"> |
28 | - <video src="{{ server }}/img/exf/velocity-fast.webm" | 30 | + <video |
29 | preload="metadata" value="rapido" | 31 | preload="metadata" value="rapido" |
30 | class="video-panel-option selection-panel-option" autoplay loop> | 32 | class="video-panel-option selection-panel-option" autoplay loop> |
31 | - <source type="video/webm"> | 33 | + <source src="{{ server }}/img/exf/velocity-fast.webm" type="video/webm"> |
34 | + <source src="{{ server }}/img/exf/velocity-fast.mp4" type="video/mp4"> | ||
32 | </div> | 35 | </div> |
33 | <img class="single-column-option" | 36 | <img class="single-column-option" |
34 | src="{{ server }}/img/fast-velocity-icon.png" /> Rápido | 37 | src="{{ server }}/img/fast-velocity-icon.png" /> Rápido |
view/templates/hand/movimento/passo-1.html
@@ -5,36 +5,30 @@ | @@ -5,36 +5,30 @@ | ||
5 | </div> | 5 | </div> |
6 | <div class="selection-panel-inner-body"> | 6 | <div class="selection-panel-inner-body"> |
7 | <ul class="rig columns-2"> | 7 | <ul class="rig columns-2"> |
8 | - <li><video src="{{ server }}/img/mov/PONTUAL.webm" | 8 | + <li><video |
9 | preload="metadata" value="pontual" | 9 | preload="metadata" value="pontual" |
10 | class="video-panel-option selection-panel-option" autoplay loop> | 10 | class="video-panel-option selection-panel-option" autoplay loop> |
11 | - <source type="video/webm"> | 11 | + <source src="{{ server }}/img/mov/PONTUAL.webm" type="video/webm"> |
12 | + <source src="{{ server }}/img/mov/PONTUAL.mp4" type="video/mp4"> | ||
12 | </video> Pontual</li> | 13 | </video> Pontual</li> |
13 | - <li><video src="{{ server }}/img/mov/RETILINEO.webm" | 14 | + <li><video |
14 | preload="metadata" value="retilineo" | 15 | preload="metadata" value="retilineo" |
15 | class="video-panel-option selection-panel-option" autoplay loop> | 16 | class="video-panel-option selection-panel-option" autoplay loop> |
16 | - <source type="video/webm"> | 17 | + <source src="{{ server }}/img/mov/RETILINEO.webm" type="video/webm"> |
18 | + <source src="{{ server }}/img/mov/RETILINEO.mp4" type="video/mp4"> | ||
17 | </video> Retilíneo</li> | 19 | </video> Retilíneo</li> |
18 | - <li><video src="{{ server }}/img/mov/CIRCULAR.webm" | 20 | + <li><video |
19 | preload="metadata" value="circular" | 21 | preload="metadata" value="circular" |
20 | class="video-panel-option selection-panel-option" autoplay loop> | 22 | class="video-panel-option selection-panel-option" autoplay loop> |
21 | - <source type="video/webm"> | 23 | + <source src="{{ server }}/img/mov/CIRCULAR.webm" type="video/webm"> |
24 | + <source src="{{ server }}/img/mov/CIRCULAR.mp4" type="video/mp4"> | ||
22 | </video> Circular</li> | 25 | </video> Circular</li> |
23 | - <li><video src="{{ server }}/img/mov/SEMICIRCULAR.webm" | 26 | + <li><video |
24 | preload="metadata" value="semicircular" | 27 | preload="metadata" value="semicircular" |
25 | class="video-panel-option selection-panel-option" autoplay loop> | 28 | class="video-panel-option selection-panel-option" autoplay loop> |
26 | - <source type="video/webm"> | 29 | + <source src="{{ server }}/img/mov/SEMICIRCULAR.webm" type="video/webm"> |
30 | + <source src="{{ server }}/img/mov/SEMICIRCULAR.mp4" type="video/mp4"> | ||
27 | </video> Semi-Circular</li> | 31 | </video> Semi-Circular</li> |
28 | - <!-- | ||
29 | - <li><img class="video-panel-option selection-panel-option" | ||
30 | - src="{{ server }}/img/exf/0000.png" value="semicircular"/>Semi-Circular</li> | ||
31 | - <li><img class="video-panel-option selection-panel-option" | ||
32 | - src="{{ server }}/img/exf/0000.png" value="helicoidal"/>Espiral</li> | ||
33 | - <li><img class="video-panel-option selection-panel-option" | ||
34 | - src="{{ server }}/img/exf/0000.png" value="senoidal"/>Curvas</li> | ||
35 | - <li><img class="video-panel-option selection-panel-option" | ||
36 | - src="{{ server }}/img/exf/0000.png" value="contato"/>Contato</li> | ||
37 | - --> | ||
38 | </ul> | 32 | </ul> |
39 | </div> | 33 | </div> |
40 | </div> | 34 | </div> |
view/templates/hand/plano/passo-1.html
@@ -6,76 +6,76 @@ | @@ -6,76 +6,76 @@ | ||
6 | <div class="selection-panel-inner-body"> | 6 | <div class="selection-panel-inner-body"> |
7 | <ul class="rig columns-2"> | 7 | <ul class="rig columns-2"> |
8 | <li><video | 8 | <li><video |
9 | - src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/plano-baixo-esquerda.webm" | ||
10 | preload="metadata" value="baixo-esquerda" | 9 | preload="metadata" value="baixo-esquerda" |
11 | class="box-panel-option selection-panel-option" autoplay> | 10 | class="box-panel-option selection-panel-option" autoplay> |
12 | - <source type="video/webm"> | 11 | + <source src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/plano-baixo-esquerda.webm" type="video/webm"> |
12 | + <source src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/plano-baixo-esquerda.mp4" type="video/mp4"> | ||
13 | </video>Baixo - Direita</li> | 13 | </video>Baixo - Direita</li> |
14 | <li><video | 14 | <li><video |
15 | - src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/plano-cima-direita.webm" | ||
16 | preload="metadata" value="cima-direita" | 15 | preload="metadata" value="cima-direita" |
17 | class="box-panel-option selection-panel-option" autoplay> | 16 | class="box-panel-option selection-panel-option" autoplay> |
18 | - <source type="video/webm"> | 17 | + <source src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/plano-cima-direita.webm" type="video/webm"> |
18 | + <source src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/plano-cima-direita.mp4" type="video/mp4"> | ||
19 | </video>Cima - Esquerda</li> | 19 | </video>Cima - Esquerda</li> |
20 | <li><video | 20 | <li><video |
21 | - src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/plano-direita-baixo.webm" | ||
22 | preload="metadata" value="direita-baixo" | 21 | preload="metadata" value="direita-baixo" |
23 | class="box-panel-option selection-panel-option" autoplay> | 22 | class="box-panel-option selection-panel-option" autoplay> |
24 | - <source type="video/webm"> | 23 | + <source src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/plano-direita-baixo.webm" type="video/webm"> |
24 | + <source src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/plano-direita-baixo.mp4" type="video/mp4"> | ||
25 | </video>Esquerda - Baixo</li> | 25 | </video>Esquerda - Baixo</li> |
26 | <li><video | 26 | <li><video |
27 | - src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/plano-esquerda-cima.webm" | ||
28 | preload="metadata" value="esquerda-cima" | 27 | preload="metadata" value="esquerda-cima" |
29 | class="box-panel-option selection-panel-option" autoplay> | 28 | class="box-panel-option selection-panel-option" autoplay> |
30 | - <source type="video/webm"> | 29 | + <source src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/plano-esquerda-cima.webm" type="video/webm"> |
30 | + <source src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/plano-esquerda-cima.mp4" type="video/mp4"> | ||
31 | </video>Direita - Cima</li> | 31 | </video>Direita - Cima</li> |
32 | <li><video | 32 | <li><video |
33 | - src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/plano-baixo-tras.webm" | ||
34 | preload="metadata" value="baixo-tras" | 33 | preload="metadata" value="baixo-tras" |
35 | class="box-panel-option selection-panel-option" autoplay> | 34 | class="box-panel-option selection-panel-option" autoplay> |
36 | - <source type="video/webm"> | 35 | + <source src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/plano-baixo-tras.webm" type="video/webm"> |
36 | + <source src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/plano-baixo-tras.mp4" type="video/mp4"> | ||
37 | </video>Baixo - Trás</li> | 37 | </video>Baixo - Trás</li> |
38 | <li><video | 38 | <li><video |
39 | - src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/plano-cima-frente.webm" | ||
40 | preload="metadata" value="cima-frente" | 39 | preload="metadata" value="cima-frente" |
41 | class="box-panel-option selection-panel-option" autoplay> | 40 | class="box-panel-option selection-panel-option" autoplay> |
42 | - <source type="video/webm"> | 41 | + <source src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/plano-cima-frente.webm" type="video/webm"> |
42 | + <source src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/plano-cima-frente.mp4" type="video/mp4"> | ||
43 | </video>Cima - Frente</li> | 43 | </video>Cima - Frente</li> |
44 | <li><video | 44 | <li><video |
45 | - src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/plano-frente-baixo.webm" | ||
46 | preload="metadata" value="frente-baixo" | 45 | preload="metadata" value="frente-baixo" |
47 | class="box-panel-option selection-panel-option" autoplay> | 46 | class="box-panel-option selection-panel-option" autoplay> |
48 | - <source type="video/webm"> | 47 | + <source src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/plano-frente-baixo.webm" type="video/webm"> |
48 | + <source src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/plano-frente-baixo.mp4" type="video/mp4"> | ||
49 | </video>Frente - Baixo</li> | 49 | </video>Frente - Baixo</li> |
50 | <li><video | 50 | <li><video |
51 | - src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/plano-tras-cima.webm" | ||
52 | preload="metadata" value="tras-cima" | 51 | preload="metadata" value="tras-cima" |
53 | class="box-panel-option selection-panel-option" autoplay> | 52 | class="box-panel-option selection-panel-option" autoplay> |
54 | - <source type="video/webm"> | 53 | + <source src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/plano-tras-cima.webm" type="video/webm"> |
54 | + <source src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/plano-tras-cima.mp4" type="video/mp4"> | ||
55 | </video>Trás - Cima</li> | 55 | </video>Trás - Cima</li> |
56 | <li><video | 56 | <li><video |
57 | - src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/plano-frente-direita.webm" | ||
58 | preload="metadata" value="frente-direita" | 57 | preload="metadata" value="frente-direita" |
59 | class="box-panel-option selection-panel-option" autoplay> | 58 | class="box-panel-option selection-panel-option" autoplay> |
60 | - <source type="video/webm"> | 59 | + <source src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/plano-frente-direita.webm" type="video/webm"> |
60 | + <source src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/plano-frente-direita.mp4" type="video/mp4"> | ||
61 | </video>Frente - Esquerda</li> | 61 | </video>Frente - Esquerda</li> |
62 | <li><video | 62 | <li><video |
63 | - src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/plano-tras-esquerda.webm" | ||
64 | preload="metadata" value="tras-esquerda" | 63 | preload="metadata" value="tras-esquerda" |
65 | class="box-panel-option selection-panel-option" autoplay> | 64 | class="box-panel-option selection-panel-option" autoplay> |
66 | - <source type="video/webm"> | 65 | + <source src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/plano-tras-esquerda.webm" type="video/webm"> |
66 | + <source src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/plano-tras-esquerda.mp4" type="video/mp4"> | ||
67 | </video>Trás - Direita</li> | 67 | </video>Trás - Direita</li> |
68 | <li><video | 68 | <li><video |
69 | - src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/plano-direita-tras.webm" | ||
70 | preload="metadata" value="direita-tras" | 69 | preload="metadata" value="direita-tras" |
71 | class="box-panel-option selection-panel-option" autoplay> | 70 | class="box-panel-option selection-panel-option" autoplay> |
72 | - <source type="video/webm"> | 71 | + <source src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/plano-direita-tras.webm" type="video/webm"> |
72 | + <source src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/plano-direita-tras.mp4" type="video/mp4"> | ||
73 | </video>Esquerda - Trás</li> | 73 | </video>Esquerda - Trás</li> |
74 | <li><video | 74 | <li><video |
75 | - src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/plano-esquerda-frente.webm" | ||
76 | preload="metadata" value="esquerda-frente" | 75 | preload="metadata" value="esquerda-frente" |
77 | class="box-panel-option selection-panel-option" autoplay> | 76 | class="box-panel-option selection-panel-option" autoplay> |
78 | - <source type="video/webm"> | 77 | + <source src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/plano-esquerda-frente.webm" type="video/webm"> |
78 | + <source src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/plano-esquerda-frente.mp4" type="video/mp4"> | ||
79 | </video>Direita - Frente</li> | 79 | </video>Direita - Frente</li> |
80 | </ul> | 80 | </ul> |
81 | </div> | 81 | </div> |
view/templates/hand/raio/passo-1.html
@@ -5,20 +5,23 @@ | @@ -5,20 +5,23 @@ | ||
5 | </div> | 5 | </div> |
6 | <div class="selection-panel-inner-body"> | 6 | <div class="selection-panel-inner-body"> |
7 | <ul class="rig columns-2"> | 7 | <ul class="rig columns-2"> |
8 | - <li><video src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/raio-pequeno.webm" | 8 | + <li><video |
9 | preload="metadata" value="pequeno" | 9 | preload="metadata" value="pequeno" |
10 | class="box-panel-option selection-panel-option" autoplay loop> | 10 | class="box-panel-option selection-panel-option" autoplay loop> |
11 | - <source type="video/webm"> | 11 | + <source src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/raio-pequeno.webm" type="video/webm"> |
12 | + <source src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/raio-pequeno.mp4" type="video/mp4"> | ||
12 | </video>Pequeno</li> | 13 | </video>Pequeno</li> |
13 | - <li><video src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/raio-normal.webm" | 14 | + <li><video |
14 | preload="metadata" value="normal" | 15 | preload="metadata" value="normal" |
15 | class="box-panel-option selection-panel-option" autoplay loop> | 16 | class="box-panel-option selection-panel-option" autoplay loop> |
16 | - <source type="video/webm"> | 17 | + <source src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/raio-normal.webm" type="video/webm"> |
18 | + <source src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/raio-normal.mp4" type="video/mp4"> | ||
17 | </video>Médio</li> | 19 | </video>Médio</li> |
18 | - <li><video src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/raio-grande.webm" | 20 | + <li><video |
19 | preload="metadata" value="grande" | 21 | preload="metadata" value="grande" |
20 | class="box-panel-option selection-panel-option" autoplay loop> | 22 | class="box-panel-option selection-panel-option" autoplay loop> |
21 | - <source type="video/webm"> | 23 | + <source src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/raio-grande.webm" type="video/webm"> |
24 | + <source src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/raio-grande.mp4" type="video/mp4"> | ||
22 | </video>Grande</li> | 25 | </video>Grande</li> |
23 | </ul> | 26 | </ul> |
24 | </div> | 27 | </div> |
view/templates/hand/sentido_inverso/passo-1.html
@@ -5,15 +5,17 @@ | @@ -5,15 +5,17 @@ | ||
5 | </div> | 5 | </div> |
6 | <div class="selection-panel-inner-body"> | 6 | <div class="selection-panel-inner-body"> |
7 | <ul class="rig columns-2"> | 7 | <ul class="rig columns-2"> |
8 | - <li><video src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/sentido-horario.webm" | 8 | + <li><video |
9 | preload="metadata" value="true" | 9 | preload="metadata" value="true" |
10 | class="box-panel-option selection-panel-option" autoplay loop> | 10 | class="box-panel-option selection-panel-option" autoplay loop> |
11 | - <source type="video/webm"> | 11 | + <source src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/sentido-horario.webm" type="video/webm"> |
12 | + <source src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/sentido-horario.mp4" type="video/mp4"> | ||
12 | </video>Horário</li> | 13 | </video>Horário</li> |
13 | - <li><video src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/sentido-anti-horario.webm" | 14 | + <li><video |
14 | preload="metadata" value="false" | 15 | preload="metadata" value="false" |
15 | class="box-panel-option selection-panel-option" autoplay loop> | 16 | class="box-panel-option selection-panel-option" autoplay loop> |
16 | - <source type="video/webm"> | 17 | + <source src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/sentido-anti-horario.webm" type="video/webm"> |
18 | + <source src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/sentido-anti-horario.mp4" type="video/mp4"> | ||
17 | </video>Anti-horário</li> | 19 | </video>Anti-horário</li> |
18 | </ul> | 20 | </ul> |
19 | </div> | 21 | </div> |
view/templates/hand/velocidade/passo-1.html
@@ -5,20 +5,23 @@ | @@ -5,20 +5,23 @@ | ||
5 | </div> | 5 | </div> |
6 | <div class="selection-panel-inner-body"> | 6 | <div class="selection-panel-inner-body"> |
7 | <ul class="rig columns-2"> | 7 | <ul class="rig columns-2"> |
8 | - <li><video src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/velocidade-lento.webm" | 8 | + <li><video |
9 | preload="metadata" value="lento" | 9 | preload="metadata" value="lento" |
10 | class="box-panel-option selection-panel-option" autoplay loop> | 10 | class="box-panel-option selection-panel-option" autoplay loop> |
11 | - <source type="video/webm"> | 11 | + <source src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/velocidade-lento.webm" type="video/webm"> |
12 | + <source src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/velocidade-lento.mp4" type="video/mp4"> | ||
12 | </video>Lento</li> | 13 | </video>Lento</li> |
13 | - <li><video src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/velocidade-normal.webm" | 14 | + <li><video |
14 | preload="metadata" value="normal" | 15 | preload="metadata" value="normal" |
15 | class="box-panel-option selection-panel-option" autoplay loop> | 16 | class="box-panel-option selection-panel-option" autoplay loop> |
16 | - <source type="video/webm"> | 17 | + <source src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/velocidade-normal.webm" type="video/webm"> |
18 | + <source src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/velocidade-normal.mp4" type="video/mp4"> | ||
17 | </video>Normal</li> | 19 | </video>Normal</li> |
18 | - <li><video src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/velocidade-rapido.webm" | 20 | + <li><video |
19 | preload="metadata" value="rapido" | 21 | preload="metadata" value="rapido" |
20 | class="box-panel-option selection-panel-option" autoplay loop> | 22 | class="box-panel-option selection-panel-option" autoplay loop> |
21 | - <source type="video/webm"> | 23 | + <source src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/velocidade-rapido.webm" type="video/webm"> |
24 | + <source src="{{ server }}/img/{{ movement-name }}/{{ hand-folder }}/velocidade-rapido.mp4" type="video/mp4"> | ||
22 | </video>Rápido</li> | 25 | </video>Rápido</li> |
23 | </ul> | 26 | </ul> |
24 | </div> | 27 | </div> |
view/templates/index.html
1 | <link rel="stylesheet" href="{{ server }}/css/main.css"> | 1 | <link rel="stylesheet" href="{{ server }}/css/main.css"> |
2 | 2 | ||
3 | -<a href="{{ homepage_url }}" class="wl-logo"> <img | ||
4 | - src="{{ server }}/img/logo.svg"> | ||
5 | -</a> | ||
6 | <nav class="navbar navbar-default navbar-wl"> | 3 | <nav class="navbar navbar-default navbar-wl"> |
7 | <div class="container"> | 4 | <div class="container"> |
5 | + <a href="{{ homepage_url }}" class="wl-logo"> <img | ||
6 | + src="{{ server }}/img/logo.svg"> | ||
7 | + </a> | ||
8 | <!-- Brand and toggle get grouped for better mobile display --> | 8 | <!-- Brand and toggle get grouped for better mobile display --> |
9 | <div class="navbar-header"> | 9 | <div class="navbar-header"> |
10 | <button type="button" class="navbar-toggle collapsed" | 10 | <button type="button" class="navbar-toggle collapsed" |
@@ -16,12 +16,14 @@ | @@ -16,12 +16,14 @@ | ||
16 | </button> | 16 | </button> |
17 | </div> | 17 | </div> |
18 | <!-- Collect the nav links, forms, and other content for toggling --> | 18 | <!-- Collect the nav links, forms, and other content for toggling --> |
19 | - <div class="collapse navbar-collapse" id="navbar-collapse-1"> | 19 | + <div id="navbar-collapse-1" class="collapse navbar-collapse"> |
20 | <ul class="nav navbar-nav navbar-right"> | 20 | <ul class="nav navbar-nav navbar-right"> |
21 | + <li><a href="/pybossa/project" | ||
22 | + target="_blank">Início</a></li> | ||
21 | <li><a href="javascript:void(0);" | 23 | <li><a href="javascript:void(0);" |
22 | onclick="wikilibras.showTeachContainer()">Ensinar</a></li> | 24 | onclick="wikilibras.showTeachContainer()">Ensinar</a></li> |
23 | <li><a id="submit-sign-anchor" href="javascript:void(0);" | 25 | <li><a id="submit-sign-anchor" href="javascript:void(0);" |
24 | - onclick="submitSign.show()">Enviar sinal</a></li> | 26 | + onclick="submitSign.show()">Gravar e enviar vídeo</a></li> |
25 | <li><a href="javascript:void(0);" onclick="teachedSigns.show()">Sinais | 27 | <li><a href="javascript:void(0);" onclick="teachedSigns.show()">Sinais |
26 | ensinados</a></li> | 28 | ensinados</a></li> |
27 | <li><a href="javascript:void(0);" | 29 | <li><a href="javascript:void(0);" |
@@ -40,10 +42,9 @@ | @@ -40,10 +42,9 @@ | ||
40 | <div id="initial-screen"> | 42 | <div id="initial-screen"> |
41 | <div class="col-sm-6 col-centered"> | 43 | <div class="col-sm-6 col-centered"> |
42 | <div class="col-sm-8 col-centered"> | 44 | <div class="col-sm-8 col-centered"> |
43 | - <video src="" preload="metadata" | 45 | + <video preload="metadata" |
44 | class="ref-video video-body-main video-border" autoplay loop | 46 | class="ref-video video-body-main video-border" autoplay loop |
45 | controls> | 47 | controls> |
46 | - <source type="video/webm"> | ||
47 | </video> | 48 | </video> |
48 | </div> | 49 | </div> |
49 | <h6 class="text-center"> | 50 | <h6 class="text-center"> |
@@ -60,9 +61,8 @@ | @@ -60,9 +61,8 @@ | ||
60 | <h8>Vídeo de referência "<span class="sign-label"></span>"</h8> | 61 | <h8>Vídeo de referência "<span class="sign-label"></span>"</h8> |
61 | <div id="ref-video-panel" class="col-sm-12"> | 62 | <div id="ref-video-panel" class="col-sm-12"> |
62 | <div id="ref-video-container" class="col-sm-10"> | 63 | <div id="ref-video-container" class="col-sm-10"> |
63 | - <video src="" preload="metadata" | 64 | + <video preload="metadata" |
64 | class="ref-video video-body-main video-border" loop controls> | 65 | class="ref-video video-body-main video-border" loop controls> |
65 | - <source type="video/webm"> | ||
66 | </video> | 66 | </video> |
67 | </div> | 67 | </div> |
68 | <div id="minimize-icon-container" class="col-sm-2 icon_container" | 68 | <div id="minimize-icon-container" class="col-sm-2 icon_container" |
@@ -160,9 +160,8 @@ | @@ -160,9 +160,8 @@ | ||
160 | <div id="render-ref" class="col-sm-6"> | 160 | <div id="render-ref" class="col-sm-6"> |
161 | <h6>Vídeo de referência</h6> | 161 | <h6>Vídeo de referência</h6> |
162 | <div class="col-sm-12"> | 162 | <div class="col-sm-12"> |
163 | - <video src="" preload="metadata" | 163 | + <video preload="metadata" |
164 | class="ref-video video-body-main video-border" loop controls> | 164 | class="ref-video video-body-main video-border" loop controls> |
165 | - <source type="video/webm"> | ||
166 | </video> | 165 | </video> |
167 | </div> | 166 | </div> |
168 | </div> | 167 | </div> |
@@ -171,9 +170,8 @@ | @@ -171,9 +170,8 @@ | ||
171 | <h6> | 170 | <h6> |
172 | Sinal "<span class="sign-label"></span>" construído | 171 | Sinal "<span class="sign-label"></span>" construído |
173 | </h6> | 172 | </h6> |
174 | - <video src="" preload="metadata" | 173 | + <video preload="metadata" |
175 | class="video-body-main video-border" autoplay loop controls> | 174 | class="video-body-main video-border" autoplay loop controls> |
176 | - <source type="video/webm"> | ||
177 | </video> | 175 | </video> |
178 | <div id="render-edit" class="icon_container" name="big-edit"> | 176 | <div id="render-edit" class="icon_container" name="big-edit"> |
179 | <img class="col-centered" | 177 | <img class="col-centered" |
@@ -198,18 +196,18 @@ | @@ -198,18 +196,18 @@ | ||
198 | </div> | 196 | </div> |
199 | </div> | 197 | </div> |
200 | <div id="thanks-screen"> | 198 | <div id="thanks-screen"> |
201 | - <div class="col-sm-7 col-centered"> | 199 | + <div class="col-sm-8 col-centered"> |
202 | <div id="completed-task-msg"> | 200 | <div id="completed-task-msg"> |
203 | <h3 class="text-center">Obrigado,</h3> | 201 | <h3 class="text-center">Obrigado,</h3> |
204 | <h6 class="text-center">você configurou o sinal com sucesso!</h6> | 202 | <h6 class="text-center">você configurou o sinal com sucesso!</h6> |
205 | </div> | 203 | </div> |
206 | <div id="completed-all-task-msg" class="text-center"> | 204 | <div id="completed-all-task-msg" class="text-center"> |
207 | <h4> | 205 | <h4> |
208 | - Que pena, não há disponíveis sinais no momento! | 206 | + Que pena, não há sinais disponíveis no momento! |
209 | </h6> | 207 | </h6> |
210 | <h6> | 208 | <h6> |
211 | Ajude a expandir o dicionário <a href="javascript:void(0);" | 209 | Ajude a expandir o dicionário <a href="javascript:void(0);" |
212 | - onclick="submitSign.show()">enviando um novo sinal</a>, ou | 210 | + onclick="submitSign.show()">gravando e enviando um vídeo</a>, ou |
213 | </h6> | 211 | </h6> |
214 | <h6> | 212 | <h6> |
215 | experimente <a href="javascript:void(0);" | 213 | experimente <a href="javascript:void(0);" |
@@ -224,83 +222,6 @@ | @@ -224,83 +222,6 @@ | ||
224 | </div> | 222 | </div> |
225 | </div> | 223 | </div> |
226 | <div id="submit-sign-container" class="sub-main-container"> | 224 | <div id="submit-sign-container" class="sub-main-container"> |
227 | - <form class="form-horizontal" method="post" | ||
228 | - enctype="multipart/form-data"> | ||
229 | - <div id="upload-success-msg" class="alert alert-success"> | ||
230 | - <strong>Envio concluído, muito obrigado! Em breve o seu | ||
231 | - sinal estará no dicionário WikiLibras.</strong> | ||
232 | - </div> | ||
233 | - <fieldset> | ||
234 | - <h2>Sentiu falta de algum sinal no dicionário? Grave e envie o | ||
235 | - vídeo do seu sinal aqui!</h2> | ||
236 | - <div class="submit-sign-form col-sm-8"> | ||
237 | - <div class="form-group"> | ||
238 | - <label class="control-label col-sm-3">Nome do sinal:</label> | ||
239 | - <div class="col-sm-5"> | ||
240 | - <input id="input-sign-name" name="nome" class="form-control" | ||
241 | - placeholder="Nome do sinal" type="text"> | ||
242 | - </div> | ||
243 | - </div> | ||
244 | - <div class="form-group"> | ||
245 | - <label class="control-label col-sm-3">Estado:</label> | ||
246 | - <div class="col-sm-5"> | ||
247 | - <select id="input-state" name="estado" class="form-control"> | ||
248 | - <option value="">Selecione seu Estado</option> | ||
249 | - <option value="Acre">Acre</option> | ||
250 | - <option value="Alagoas">Alagoas</option> | ||
251 | - <option value="Amapá">Amapá</option> | ||
252 | - <option value="Amazonas">Amazonas</option> | ||
253 | - <option value="Bahia">Bahia</option> | ||
254 | - <option value="Ceará">Ceará</option> | ||
255 | - <option value="Distrito Federal">Distrito Federal</option> | ||
256 | - <option value="Espirito Santo">Espirito Santo</option> | ||
257 | - <option value="Goiás">Goiás</option> | ||
258 | - <option value="Maranhão">Maranhão</option> | ||
259 | - <option value="Mato Grosso do Sul">Mato Grosso do Sul</option> | ||
260 | - <option value="Mato Grosso">Mato Grosso</option> | ||
261 | - <option value="Minas Gerais">Minas Gerais</option> | ||
262 | - <option value="Pará">Pará</option> | ||
263 | - <option value="Paraíba">Paraíba</option> | ||
264 | - <option value="Paraná">Paraná</option> | ||
265 | - <option value="Pernambuco">Pernambuco</option> | ||
266 | - <option value="Piauí">Piauí</option> | ||
267 | - <option value="Rio de Janeiro">Rio de Janeiro</option> | ||
268 | - <option value="Rio Grande do Norte">Rio Grande do Norte</option> | ||
269 | - <option value="Rio Grande do Sul">Rio Grande do Sul</option> | ||
270 | - <option value="Rondônia">Rondônia</option> | ||
271 | - <option value="Roraima">Roraima</option> | ||
272 | - <option value="Santa Catarina">Santa Catarina</option> | ||
273 | - <option value="São Paulo">São Paulo</option> | ||
274 | - <option value="Sergipe">Sergipe</option> | ||
275 | - <option value="Tocantins">Tocantins</option> | ||
276 | - </select> | ||
277 | - </div> | ||
278 | - </div> | ||
279 | - <div class="form-group"> | ||
280 | - <label class="control-label col-sm-3">Cidade:</label> | ||
281 | - <div class="col-sm-5"> | ||
282 | - <input id="input-city" name="cidade" class="form-control" | ||
283 | - placeholder="Nome da sua cidade" type="text"> | ||
284 | - </div> | ||
285 | - </div> | ||
286 | - <div class="form-group"> | ||
287 | - <label class="control-label col-sm-3">Arquivo do sinal:</label> | ||
288 | - <div class="col-sm-5"> | ||
289 | - <input id="input-sign-upload" type="file" name="video" /> | ||
290 | - </div> | ||
291 | - <div id="upload-progress-container" class="col-sm-5"> | ||
292 | - <div id="upload-progress" class="progress"> | ||
293 | - <div class="progress-bar" role="progressbar" aria-valuenow="0" | ||
294 | - aria-valuemin="0" aria-valuemax="100" style="width: 0%"></div> | ||
295 | - </div> | ||
296 | - </div> | ||
297 | - </div> | ||
298 | - <div class="form-actions"> | ||
299 | - <label class="control-label col-sm-3"></label> | ||
300 | - <button name="btn" class="btn btn-primary btn-lg disabled">Enviar</button> | ||
301 | - </div> | ||
302 | - </fieldset> | ||
303 | - </form> | ||
304 | </div> | 225 | </div> |
305 | <div id="teached-signs-container" class="sub-main-container"> | 226 | <div id="teached-signs-container" class="sub-main-container"> |
306 | <h4 class="teached-signs-msg" type="none">Você ainda não ensinou | 227 | <h4 class="teached-signs-msg" type="none">Você ainda não ensinou |
@@ -350,8 +271,10 @@ | @@ -350,8 +271,10 @@ | ||
350 | <script src="{{ server }}/js/selection-panel/articulation.js"></script> | 271 | <script src="{{ server }}/js/selection-panel/articulation.js"></script> |
351 | <script src="{{ server }}/js/selection-panel/configuration.js"></script> | 272 | <script src="{{ server }}/js/selection-panel/configuration.js"></script> |
352 | <script src="{{ server }}/js/selection-panel/orientation.js"></script> | 273 | <script src="{{ server }}/js/selection-panel/orientation.js"></script> |
353 | -<script src="{{ server }}/js/selection-panel/default-configuration-handler.js"></script> | ||
354 | -<script src="{{ server }}/js/selection-panel/dynamic-selection-workflow.js"></script> | 274 | +<script |
275 | + src="{{ server }}/js/selection-panel/default-configuration-handler.js"></script> | ||
276 | +<script | ||
277 | + src="{{ server }}/js/selection-panel/dynamic-selection-workflow.js"></script> | ||
355 | <script src="{{ server }}/js/selection-panel/selection-panel.js"></script> | 278 | <script src="{{ server }}/js/selection-panel/selection-panel.js"></script> |
356 | 279 | ||
357 | <!-- Helpers --> | 280 | <!-- Helpers --> |
@@ -0,0 +1,110 @@ | @@ -0,0 +1,110 @@ | ||
1 | +<div class="container"> | ||
2 | + <div class="row"> | ||
3 | + <div id="upload-warning-msg" class="alert alert-warning" | ||
4 | + style="display: none;"></div> | ||
5 | + <div id="upload-success-msg" class="alert alert-success"> | ||
6 | + <strong>Envio concluído, muito obrigado! Em breve o seu | ||
7 | + sinal estará no dicionário WikiLibras.</strong> | ||
8 | + </div> | ||
9 | + </div> | ||
10 | +</div> | ||
11 | +<form class="form-horizontal" method="post" | ||
12 | + enctype="multipart/form-data"> | ||
13 | + <fieldset> | ||
14 | + <h2>Sentiu falta de algum sinal no dicionário? Grave e envie o | ||
15 | + vídeo do seu sinal aqui!</h2> | ||
16 | + <div class="submit-sign-form col-sm-8"> | ||
17 | + <div class="form-group"> | ||
18 | + <label class="control-label col-sm-3">Nome do sinal:</label> | ||
19 | + <div class="col-sm-5"> | ||
20 | + <input id="input-sign-name" name="nome" class="form-control" | ||
21 | + placeholder="Nome do sinal" type="text"> | ||
22 | + </div> | ||
23 | + </div> | ||
24 | + <div class="form-group"> | ||
25 | + <label class="control-label col-sm-3">Classe gramatical:</label> | ||
26 | + <div class="col-sm-5"> | ||
27 | + <select id="input-word-class" name="classe-gramatical" | ||
28 | + class="form-control"> | ||
29 | + <option value="">Selecione a classe gramatical</option> | ||
30 | + <option value="Verbo">Verbo</option> | ||
31 | + <option value="Substantivo">Substantivo</option> | ||
32 | + <option value="Adjetivo">Adjetivo</option> | ||
33 | + <option value="Advérbio">Advérbio</option> | ||
34 | + <option value="Pronome">Pronome</option> | ||
35 | + <option value="Preposição">Preposição</option> | ||
36 | + <option value="Conjunção">Conjunção</option> | ||
37 | + <option value="Artigo">Artigo</option> | ||
38 | + <option value="Numeral">Numeral</option> | ||
39 | + <option value="Interjeição">Interjeição</option> | ||
40 | + </select> | ||
41 | + </div> | ||
42 | + </div> | ||
43 | + <div class="form-group"> | ||
44 | + <label class="control-label col-sm-3">Frases de exemplo:</label> | ||
45 | + <div class="col-sm-5"> | ||
46 | + <textarea id="input-phrases" name="frases" class="form-control" | ||
47 | + rows="2"> | ||
48 | + </textarea> | ||
49 | + </div> | ||
50 | + </div> | ||
51 | + <div class="form-group"> | ||
52 | + <label class="control-label col-sm-3">Estado:</label> | ||
53 | + <div class="col-sm-5"> | ||
54 | + <select id="input-state" name="estado" class="form-control"> | ||
55 | + <option value="">Selecione seu Estado</option> | ||
56 | + <option value="Acre">Acre</option> | ||
57 | + <option value="Alagoas">Alagoas</option> | ||
58 | + <option value="Amapá">Amapá</option> | ||
59 | + <option value="Amazonas">Amazonas</option> | ||
60 | + <option value="Bahia">Bahia</option> | ||
61 | + <option value="Ceará">Ceará</option> | ||
62 | + <option value="Distrito Federal">Distrito Federal</option> | ||
63 | + <option value="Espirito Santo">Espirito Santo</option> | ||
64 | + <option value="Goiás">Goiás</option> | ||
65 | + <option value="Maranhão">Maranhão</option> | ||
66 | + <option value="Mato Grosso do Sul">Mato Grosso do Sul</option> | ||
67 | + <option value="Mato Grosso">Mato Grosso</option> | ||
68 | + <option value="Minas Gerais">Minas Gerais</option> | ||
69 | + <option value="Pará">Pará</option> | ||
70 | + <option value="Paraíba">Paraíba</option> | ||
71 | + <option value="Paraná">Paraná</option> | ||
72 | + <option value="Pernambuco">Pernambuco</option> | ||
73 | + <option value="Piauí">Piauí</option> | ||
74 | + <option value="Rio de Janeiro">Rio de Janeiro</option> | ||
75 | + <option value="Rio Grande do Norte">Rio Grande do Norte</option> | ||
76 | + <option value="Rio Grande do Sul">Rio Grande do Sul</option> | ||
77 | + <option value="Rondônia">Rondônia</option> | ||
78 | + <option value="Roraima">Roraima</option> | ||
79 | + <option value="Santa Catarina">Santa Catarina</option> | ||
80 | + <option value="São Paulo">São Paulo</option> | ||
81 | + <option value="Sergipe">Sergipe</option> | ||
82 | + <option value="Tocantins">Tocantins</option> | ||
83 | + </select> | ||
84 | + </div> | ||
85 | + </div> | ||
86 | + <div class="form-group"> | ||
87 | + <label class="control-label col-sm-3">Cidade:</label> | ||
88 | + <div class="col-sm-5"> | ||
89 | + <input id="input-city" name="cidade" class="form-control" | ||
90 | + placeholder="Nome da sua cidade" type="text"> | ||
91 | + </div> | ||
92 | + </div> | ||
93 | + <div class="form-group"> | ||
94 | + <label class="control-label col-sm-3">Arquivo do sinal:</label> | ||
95 | + <div class="col-sm-5"> | ||
96 | + <input id="input-sign-upload" type="file" name="video" /> | ||
97 | + </div> | ||
98 | + <div id="upload-progress-container" class="col-sm-5"> | ||
99 | + <div id="upload-progress" class="progress"> | ||
100 | + <div class="progress-bar" role="progressbar" aria-valuenow="0" | ||
101 | + aria-valuemin="0" aria-valuemax="100" style="width: 0%"></div> | ||
102 | + </div> | ||
103 | + </div> | ||
104 | + </div> | ||
105 | + <div class="form-actions"> | ||
106 | + <label class="control-label col-sm-3"></label> | ||
107 | + <button name="btn" class="btn btn-primary btn-lg disabled">Enviar</button> | ||
108 | + </div> | ||
109 | + </fieldset> | ||
110 | +</form> |