]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blame - client/src/app/videos/+video-watch/video-watch.component.scss
Add cors to static route in nginx template
[github/Chocobozzz/PeerTube.git] / client / src / app / videos / +video-watch / video-watch.component.scss
CommitLineData
63c4db6d
C
1@import '_variables';
2@import '_mixins';
3
09edde40 4#video-element-wrapper {
be6a4802
C
5 background-color: #000;
6 display: flex;
7 justify-content: center;
6d88de72
C
8
9 .remote-server-down {
10 color: #fff;
11 display: flex;
12 flex-direction: column;
13 align-items: center;
14 text-align: center;
15 justify-content: center;
16 background-color: #141313;
17 width: 100%;
6d88de72 18 font-size: 24px;
3b492bff 19 height: 500px;
6d88de72
C
20
21 @media screen and (max-width: 1000px) {
22 font-size: 20px;
23 }
7b272fd7 24
acbffe9c 25 @media screen and (max-width: 600px) {
6d88de72 26 font-size: 16px;
b9828abe 27 }
6d88de72
C
28 }
29
30 /deep/ .video-js {
31 width: 888px;
3b492bff
C
32 height: 500px;
33
34 &.vjs-theater-enabled {
35 height: calc(100vh - #{$header-height} - #{$theater-bottom-space});
36 width: 100%;
37 }
b9828abe 38
7b272fd7
C
39 // VideoJS create an inner video player
40 video {
41 outline: 0;
b9828abe 42 position: relative !important;
7b272fd7 43 }
be6a4802 44 }
054a103b 45
3b492bff
C
46 @media screen and (max-width: 600px) {
47 .remote-server-down,
48 /deep/ .video-js {
49 width: 100vw;
50 height: calc(100vw / 1.7); // 16/9
51 }
054a103b 52 }
e56b20f5
C
53}
54
bbe0f064 55.alert {
2186386c
C
56 text-align: center;
57}
58
9c89a45c
C
59#video-not-found {
60 height: 300px;
61 line-height: 300px;
62 margin-top: 50px;
63 text-align: center;
fb4fd623
C
64 font-weight: $font-semibold;
65 font-size: 15px;
9c89a45c
C
66}
67
b1fa3eba
C
68.video-bottom {
69 margin-top: 40px;
70 display: flex;
d1992b93 71
b1fa3eba
C
72 .video-info {
73 flex-grow: 1;
20acba1c
C
74 margin-right: 40px;
75 // Set min width for flex item
76 min-width: 1px;
3eeeb87f 77
1f788f20 78 .video-info-first-row {
b1fa3eba 79 display: flex;
1f788f20 80
196b7790 81 & > div:first-child {
1f788f20
C
82 flex-grow: 1;
83 }
d1992b93 84
b1fa3eba 85 .video-info-name {
b2731bff 86 margin-right: 30px;
196b7790 87 min-height: 40px; // Align with the action buttons
b1fa3eba
C
88 font-size: 27px;
89 font-weight: $font-semibold;
90 flex-grow: 1;
91 }
09223546 92
1f788f20
C
93 .video-info-date-views {
94 font-size: 16px;
95 margin-bottom: 10px;
96 flex-grow: 1;
97 }
98
99 .video-info-channel {
100 font-weight: $font-semibold;
101 font-size: 15px;
95166f9a
C
102
103 a {
104 @include disable-default-a-behaviour;
105
106 color: #000;
107
108 &:hover {
109 opacity: 0.8;
110 }
52d9f792
C
111
112 img {
113 @include avatar(18px);
114
115 margin: -2px 2px 0 5px;
116 }
95166f9a 117 }
169310b2
R
118
119 my-help {
120 display: inline-block;
121 }
1f788f20
C
122 }
123
03e12d7c
C
124 .video-info-by a {
125 @include disable-default-a-behaviour;
126
77af3a97 127 display: inline;
1f788f20
C
128 align-items: center;
129 font-size: 13px;
03e12d7c 130 color: #000;
1f788f20 131
03e12d7c
C
132 span:hover {
133 opacity: 0.8;
66dc5907
C
134 }
135
1f788f20
C
136 img {
137 @include avatar(18px);
6e33bf28 138
52d9f792 139 margin-top: -2px;
1f788f20 140 margin-left: 7px;
6e33bf28 141 }
1f788f20 142 }
b2731bff 143
244e76a5
RK
144 my-video-feed {
145 margin-left: 5px;
146 margin-top: 1px;
147 }
148
1f788f20
C
149 .video-actions-rates {
150 display: flex;
151 flex-direction: column;
196b7790 152 align-items: flex-end;
09223546 153
1f788f20
C
154 .video-actions {
155 height: 40px; // Align with the title
1f788f20
C
156 display: flex;
157 align-items: center;
09223546 158
1f788f20
C
159 .action-button:not(:first-child), .action-more {
160 margin-left: 10px;
161 }
0727cab0 162
1f788f20
C
163 .action-button {
164 @include peertube-button;
165 @include grey-button;
7b272fd7 166
1f788f20
C
167 font-size: 15px;
168 font-weight: $font-semibold;
169 display: inline-block;
170 padding: 0 10px 0 10px;
07fa4c97 171 white-space: nowrap;
7b272fd7 172
1f788f20
C
173 .icon {
174 @include icon(21px);
7b272fd7 175
1f788f20
C
176 position: relative;
177 top: -2px;
178
179 &.icon-like {
180 background-image: url('../../../assets/images/video/like-grey.svg');
181 }
182
183 &.icon-dislike {
184 background-image: url('../../../assets/images/video/dislike-grey.svg');
185 }
7b272fd7 186
07fa4c97
C
187 &.icon-support {
188 background-image: url('../../../assets/images/video/heart.svg');
189 }
190
1f788f20
C
191 &.icon-share {
192 background-image: url('../../../assets/images/video/share.svg');
193 }
194
195 &.icon-more {
196 background-image: url('../../../assets/images/video/more.svg');
197 top: -1px;
198 }
7b272fd7 199 }
d38b8281 200
8c40b7dc
C
201 .icon-text {
202 margin-left: 3px;
196b7790
C
203 }
204
1f788f20
C
205 &.action-button-like.activated {
206 background-color: #39CC0B;
4e1b0973 207
1f788f20
C
208 .icon-like {
209 background-image: url('../../../assets/images/video/like-white.svg');
210 }
7b272fd7 211 }
6e33bf28 212
1f788f20
C
213 &.action-button-dislike.activated {
214 background-color: #FF0000;
d38b8281 215
1f788f20
C
216 .icon-dislike {
217 background-image: url('../../../assets/images/video/dislike-white.svg');
218 }
7b272fd7 219 }
b1fa3eba 220 }
d38b8281 221
1f788f20
C
222 .action-more {
223 display: inline-block;
4f8c0eb0 224
1f788f20
C
225 .dropdown-menu .dropdown-item {
226 padding: 6px 24px;
7b272fd7 227
1f788f20
C
228 .icon {
229 @include icon(24px);
7b272fd7 230
1f788f20
C
231 margin-right: 10px;
232 position: relative;
233 top: -1px;
5f0805d3 234
1f788f20
C
235 &.icon-download {
236 background-image: url('../../../assets/images/video/download-black.svg');
237 }
5f0805d3 238
1f788f20
C
239 &.icon-edit {
240 background-image: url('../../../assets/images/global/edit-black.svg');
241 }
4635f59d 242
1f788f20
C
243 &.icon-alert {
244 background-image: url('../../../assets/images/video/alert.svg');
245 }
7b272fd7 246
1f788f20
C
247 &.icon-blacklist {
248 background-image: url('../../../assets/images/video/blacklist.svg');
249 }
5f0805d3 250 }
7b272fd7 251 }
b1fa3eba 252 }
4e1b0973 253 }
6a9e1d42 254
1f788f20
C
255 .video-info-likes-dislikes-bar {
256 height: 5px;
257 width: 186px;
258 background-color: #E5E5E5;
259 margin-top: 25px;
6a9e1d42 260
1f788f20
C
261 .likes-bar {
262 height: 100%;
263 background-color: #39CC0B;
264 }
6a9e1d42
C
265 }
266 }
d1992b93
C
267 }
268
b1fa3eba
C
269 .video-info-description {
270 margin: 20px 0;
271 font-size: 15px;
d1992b93 272
54a932e8 273 .video-info-description-html {
7a14004b 274 @include peertube-word-wrap;
54a932e8
C
275 }
276
9e9afa45
C
277 .glyphicon, .description-loading {
278 margin-left: 3px;
279 }
280
80958c78
C
281 .description-loading {
282 display: inline-block;
283 }
284
b1fa3eba 285 .video-info-description-more {
2de96f4d 286 cursor: pointer;
b1fa3eba
C
287 font-weight: $font-semibold;
288 color: #585858;
289 font-size: 14px;
2de96f4d
C
290
291 .glyphicon {
292 position: relative;
293 top: 2px;
294 }
295 }
09223546
C
296 }
297
1f788f20
C
298 .video-attributes .video-attribute {
299 font-size: 13px;
300 display: block;
301 margin-bottom: 12px;
302
303 .video-attribute-label {
304 width: 86px;
305 display: inline-block;
306 color: #585858;
307 font-weight: $font-bold;
3eeeb87f 308 }
4278710d
C
309
310 a.video-attribute-value {
311 @include disable-default-a-behaviour;
312 color: #000;
313
314 &:hover {
315 opacity: 0.9;
316 }
317 }
318
319 &.video-attribute-tags {
320 .video-attribute-value:not(:nth-child(2)) {
321 &::before {
322 content: ', '
323 }
324 }
325 }
3eeeb87f 326 }
41c3dfac
C
327 }
328
329 .other-videos {
ea5cd0fa 330 padding-left: 1em;
f7ecffa4 331
41c3dfac
C
332 .title-page {
333 margin-top: 0;
334 }
335
336 /deep/ .video-miniature {
337 display: flex;
338 height: 100%;
339 margin-bottom: 20px;
9e01e510 340 flex-wrap: wrap;
a01f107b 341
41c3dfac 342 .video-miniature-information {
9e01e510 343 flex-grow: 1;
41c3dfac
C
344 }
345 }
a01f107b 346 }
d1992b93 347}
41c3dfac 348
2b3b76ab
C
349// If the view is not expanded, take into account the menu
350.privacy-concerns {
351 width: calc(100% - #{$menu-width});
352}
353
354:host-context(.expanded) {
355 .privacy-concerns {
356 width: 100%;
357 }
358}
359
360.privacy-concerns {
361 position: fixed;
362 bottom: 0;
363
364 padding: 5px 15px;
365
366 display: flex;
367 align-items: center;
368 justify-content: flex-start;
369 background-color: rgba(0, 0, 0, 0.9);
370 color: #fff;
371
372 .privacy-concerns-text {
373 margin: 0 5px;
374 }
375
376 a {
377 @include disable-default-a-behaviour;
378
379 color: $orange-color;
380 transition: color 0.3s;
381
382 &:hover {
383 color: #fff;
384 }
385 }
386
387 .privacy-concerns-okay {
388 background-color: $orange-color;
389 padding: 5px 8px 5px 7px;
390 margin-left: auto;
391 border-radius: 3px;
392 cursor: pointer;
393 transition: background-color 0.3s;
394 font-weight: $font-semibold;
395
396 &:hover {
397 background-color: #000;
398 }
399 }
400}
401
b9828abe 402
07fa4c97 403@media screen and (max-width: 1600px) {
b9828abe
C
404 .video-bottom {
405 .video-info {
abf1c585 406 margin-right: 20px;
9b7d1c72 407
1f788f20 408 .video-info-first-row {
b9828abe
C
409 flex-direction: column;
410 margin-bottom: 30px;
1f788f20
C
411
412 .video-actions-rates {
413 margin-top: 20px;
80109b2d 414 align-items: start;
1f788f20
C
415
416 .video-info-likes-dislikes-bar {
417 margin-top: 10px;
418 }
419 }
b9828abe
C
420 }
421
1f788f20 422 .video-info-date-views {
b9828abe
C
423 flex-direction: column;
424 margin-bottom: 30px;
425
426 .video-info-likes-dislikes-bar {
427 margin-top: 0;
428 }
429 }
1f788f20
C
430
431 .video-attributes .video-attribute {
432 margin-bottom: 5px;
433 }
b9828abe
C
434 }
435 }
436}
b2731bff 437
23f4c3d4 438@media screen and (max-width: 1300px) {
9e01e510
S
439 .video-bottom {
440 flex-direction: column;
441 }
442
07fa4c97 443 .other-videos {
9e01e510 444 padding-left: 0;
ac862a8c
C
445
446 /deep/ .video-miniature .video-miniature-information {
447 margin-left: 10px;
448 }
07fa4c97 449 }
2b3b76ab
C
450
451 .privacy-concerns {
452 font-size: 12px;
453 padding: 2px 5px;
454
455 .privacy-concerns-text {
456 margin: 0;
457 }
458 }
07fa4c97
C
459}
460
1f788f20 461@media screen and (max-width: 600px) {
b2731bff
C
462 .video-bottom {
463 margin: 20px 0 0 0;
1f788f20
C
464
465 .video-info {
466
467 .video-info-first-row {
468
469 .video-info-name {
470 font-size: 20px;
471 height: auto;
472 }
473 }
474 }
b2731bff 475 }
2b3b76ab
C
476
477 .privacy-concerns {
478 width: 100%;
479
480 strong {
481 display: none;
482 }
483 }
b2731bff 484}
07fa4c97
C
485
486@media screen and (max-width: 450px) {
487 .video-bottom .action-button .icon-text {
488 display: none !important;
489 }
490}