rdoroshenko_mediaelement_rails 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (65) hide show
  1. data/.gitignore +9 -0
  2. data/Gemfile +4 -0
  3. data/MIT-LICENSE +20 -0
  4. data/README.md +48 -0
  5. data/Rakefile +12 -0
  6. data/app/assets/images/mediaelement_rails/background.png +0 -0
  7. data/app/assets/images/mediaelement_rails/bigplay.png +0 -0
  8. data/app/assets/images/mediaelement_rails/controls-ted.png +0 -0
  9. data/app/assets/images/mediaelement_rails/controls-wmp-bg.png +0 -0
  10. data/app/assets/images/mediaelement_rails/controls-wmp.png +0 -0
  11. data/app/assets/images/mediaelement_rails/controls.png +0 -0
  12. data/app/assets/images/mediaelement_rails/loading.gif +0 -0
  13. data/app/assets/javascripts/mediaelement_rails/index.js +3 -0
  14. data/app/assets/javascripts/mediaelement_rails/mediaelement.js +1544 -0
  15. data/app/assets/javascripts/mediaelement_rails/mediaelementplayer.js +2757 -0
  16. data/app/assets/javascripts/mediaelement_rails/rails.js.erb +5 -0
  17. data/app/assets/plugins/mediaelement_rails/flashmediaelement.swf +0 -0
  18. data/app/assets/plugins/mediaelement_rails/silverlightmediaelement.xap +0 -0
  19. data/app/assets/stylesheets/mediaelement_rails/index.css +1 -0
  20. data/app/assets/stylesheets/mediaelement_rails/mediaelementplayer.css.erb +801 -0
  21. data/app/assets/stylesheets/mediaelement_rails/mejs-skins.css.erb +283 -0
  22. data/lib/mediaelement_rails.rb +5 -0
  23. data/lib/mediaelement_rails/engine.rb +11 -0
  24. data/lib/mediaelement_rails/version.rb +3 -0
  25. data/mediaelement_rails.gemspec +28 -0
  26. data/mediaelement_rails.thor +83 -0
  27. data/script/rails +5 -0
  28. data/test/dummy/Rakefile +7 -0
  29. data/test/dummy/app/assets/javascripts/mediaelement-and-player.js +1 -0
  30. data/test/dummy/app/assets/javascripts/mediaelement-without-player.js +1 -0
  31. data/test/dummy/app/assets/stylesheets/player-skins.css +3 -0
  32. data/test/dummy/app/assets/stylesheets/player.css +3 -0
  33. data/test/dummy/app/controllers/application_controller.rb +3 -0
  34. data/test/dummy/app/helpers/application_helper.rb +2 -0
  35. data/test/dummy/app/mailers/.gitkeep +0 -0
  36. data/test/dummy/app/models/.gitkeep +0 -0
  37. data/test/dummy/app/views/layouts/application.html.erb +14 -0
  38. data/test/dummy/config.ru +4 -0
  39. data/test/dummy/config/application.rb +42 -0
  40. data/test/dummy/config/boot.rb +10 -0
  41. data/test/dummy/config/database.yml +25 -0
  42. data/test/dummy/config/environment.rb +5 -0
  43. data/test/dummy/config/environments/development.rb +24 -0
  44. data/test/dummy/config/environments/production.rb +51 -0
  45. data/test/dummy/config/environments/test.rb +34 -0
  46. data/test/dummy/config/initializers/backtrace_silencers.rb +7 -0
  47. data/test/dummy/config/initializers/inflections.rb +10 -0
  48. data/test/dummy/config/initializers/mime_types.rb +5 -0
  49. data/test/dummy/config/initializers/secret_token.rb +7 -0
  50. data/test/dummy/config/initializers/session_store.rb +8 -0
  51. data/test/dummy/config/initializers/wrap_parameters.rb +12 -0
  52. data/test/dummy/config/locales/en.yml +5 -0
  53. data/test/dummy/config/routes.rb +3 -0
  54. data/test/dummy/db/.gitkeep +0 -0
  55. data/test/dummy/lib/assets/.gitkeep +0 -0
  56. data/test/dummy/log/.gitkeep +0 -0
  57. data/test/dummy/public/404.html +26 -0
  58. data/test/dummy/public/422.html +26 -0
  59. data/test/dummy/public/500.html +26 -0
  60. data/test/dummy/public/favicon.ico +0 -0
  61. data/test/dummy/script/rails +6 -0
  62. data/test/integration/assets_test.rb +76 -0
  63. data/test/test_helper.rb +11 -0
  64. data/vendor/.gitkeep +0 -0
  65. metadata +235 -0
@@ -0,0 +1,5 @@
1
+ //= require ./mediaelement
2
+
3
+ mejs.MediaElementDefaults.pluginPath = ''
4
+ mejs.MediaElementDefaults.flashName = '<%= asset_path 'mediaelement_rails/flashmediaelement.swf' %>'
5
+ mejs.MediaElementDefaults.silverlightName = '<%= asset_path 'mediaelement_rails/silverlightmediaelement.xap' %>'
@@ -0,0 +1 @@
1
+ //=require ./mediaelementplayer
@@ -0,0 +1,801 @@
1
+ .mejs-container {
2
+ position: relative;
3
+ background: #000;
4
+ font-family: Helvetica, Arial;
5
+ text-align: left;
6
+ vertical-align: top;
7
+ }
8
+
9
+ .me-plugin {
10
+ position: absolute;
11
+ }
12
+
13
+ .mejs-embed, .mejs-embed body {
14
+ width: 100%;
15
+ height: 100%;
16
+ margin: 0;
17
+ padding: 0;
18
+ background: #000;
19
+ overflow: hidden;
20
+ }
21
+
22
+ .mejs-container-fullscreen {
23
+ position: fixed;
24
+ left: 0;
25
+ top: 0;
26
+ right: 0;
27
+ bottom: 0;
28
+ overflow: hidden;
29
+ z-index: 1000;
30
+ }
31
+ .mejs-container-fullscreen .mejs-mediaelement,
32
+ .mejs-container-fullscreen video {
33
+ width: 100%;
34
+ height: 100%;
35
+ }
36
+
37
+ /* Start: LAYERS */
38
+ .mejs-background {
39
+ position: absolute;
40
+ top: 0;
41
+ left: 0;
42
+ }
43
+ .mejs-mediaelement {
44
+ position: absolute;
45
+ top: 0;
46
+ left: 0;
47
+ width: 100%;
48
+ height: 100%;
49
+ }
50
+ .mejs-poster {
51
+ position: absolute;
52
+ top: 0;
53
+ left: 0;
54
+ }
55
+ .mejs-poster img {
56
+ border: 0;
57
+ padding: 0;
58
+ border: 0;
59
+ display: block;
60
+ }
61
+ .mejs-overlay {
62
+ position: absolute;
63
+ top: 0;
64
+ left: 0;
65
+ }
66
+ .mejs-overlay-play {
67
+ cursor: pointer;
68
+ }
69
+ .mejs-overlay-button {
70
+ position: absolute;
71
+ top: 50%;
72
+ left: 50%;
73
+ width: 100px;
74
+ height: 100px;
75
+ margin: -50px 0 0 -50px;
76
+ background: url(<%= asset_path "mediaelement_rails/bigplay.png" %>) no-repeat;
77
+ }
78
+ .mejs-overlay:hover .mejs-overlay-button{
79
+ background-position: 0 -100px ;
80
+ }
81
+ .mejs-overlay-loading {
82
+ position: absolute;
83
+ top: 50%;
84
+ left: 50%;
85
+ width: 80px;
86
+ height: 80px;
87
+ margin: -40px 0 0 -40px;
88
+ background: #333;
89
+ background: url(<%= asset_path "mediaelement_rails/background.png" %>);
90
+ background: rgba(0, 0, 0, 0.9);
91
+ background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(rgba(50,50,50,0.9)), to(rgba(0,0,0,0.9)));
92
+ background: -webkit-linear-gradient(top, rgba(50,50,50,0.9), rgba(0,0,0,0.9));
93
+ background: -moz-linear-gradient(top, rgba(50,50,50,0.9), rgba(0,0,0,0.9));
94
+ background: -o-linear-gradient(top, rgba(50,50,50,0.9), rgba(0,0,0,0.9));
95
+ background: -ms-linear-gradient(top, rgba(50,50,50,0.9), rgba(0,0,0,0.9));
96
+ background: linear-gradient(rgba(50,50,50,0.9), rgba(0,0,0,0.9));
97
+ }
98
+ .mejs-overlay-loading span {
99
+ display:block;
100
+ width: 80px;
101
+ height: 80px;
102
+ background: transparent url(<%= asset_path "mediaelement_rails/loading.gif" %>) 50% 50% no-repeat;
103
+ }
104
+
105
+ /* End: LAYERS */
106
+
107
+ /* Start: CONTROL BAR */
108
+ .mejs-container .mejs-controls {
109
+ position: absolute;
110
+ background: none;
111
+ list-style-type: none;
112
+ margin: 0;
113
+ padding: 0;
114
+ bottom: 0;
115
+ left: 0;
116
+ background: url(<%= asset_path "mediaelement_rails/background.png" %>);
117
+ background: rgba(0, 0, 0, 0.7);
118
+ background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(rgba(50,50,50,0.7)), to(rgba(0,0,0,0.7)));
119
+ background: -webkit-linear-gradient(top, rgba(50,50,50,0.7), rgba(0,0,0,0.7));
120
+ background: -moz-linear-gradient(top, rgba(50,50,50,0.7), rgba(0,0,0,0.7));
121
+ background: -o-linear-gradient(top, rgba(50,50,50,0.7), rgba(0,0,0,0.7));
122
+ background: -ms-linear-gradient(top, rgba(50,50,50,0.7), rgba(0,0,0,0.7));
123
+ background: linear-gradient(rgba(50,50,50,0.7), rgba(0,0,0,0.7));
124
+ height: 30px;
125
+ width: 100%;
126
+ }
127
+ .mejs-container .mejs-controls div {
128
+ list-style-type: none;
129
+ background-image: none;
130
+ display: block;
131
+ float: left;
132
+ margin: 0;
133
+ padding: 0;
134
+ width: 26px;
135
+ height: 26px;
136
+ font-size: 11px;
137
+ line-height: 11px;
138
+ background: 0;
139
+ font-family: Helvetica, Arial;
140
+ border: 0;
141
+ }
142
+
143
+ .mejs-controls .mejs-button button {
144
+ cursor: pointer;
145
+ display: block;
146
+ font-size: 0;
147
+ line-height: 0;
148
+ text-decoration: none;
149
+ margin: 7px 5px;
150
+ padding: 0;
151
+ position: absolute;
152
+ height: 16px;
153
+ width: 16px;
154
+ border: 0;
155
+ background: transparent url(<%= asset_path "mediaelement_rails/controls.png" %>) no-repeat;
156
+ }
157
+
158
+ /* :focus for accessibility */
159
+ .mejs-controls .mejs-button button:focus {
160
+ outline: solid 1px yellow;
161
+ }
162
+
163
+ /* End: CONTROL BAR */
164
+
165
+ /* Start: Time (current / duration) */
166
+ .mejs-container .mejs-controls .mejs-time {
167
+ color: #fff;
168
+ display: block;
169
+ height: 17px;
170
+ width: auto;
171
+ padding: 8px 3px 0 3px ;
172
+ overflow: hidden;
173
+ text-align: center;
174
+ padding: auto 4px;
175
+ box-sizing: content-box;
176
+ -moz-box-sizing: content-box;
177
+ -webkit-box-sizing: content-box;
178
+ }
179
+ .mejs-container .mejs-controls .mejs-time span {
180
+ font-size: 11px;
181
+ color: #fff;
182
+ line-height: 12px;
183
+ display: block;
184
+ float: left;
185
+ margin: 1px 2px 0 0;
186
+ width: auto;
187
+ }
188
+ /* End: Time (current / duration) */
189
+
190
+
191
+ /* Start: Play/pause */
192
+ .mejs-controls .mejs-play button {
193
+ background-position:0 0;
194
+ }
195
+ .mejs-controls .mejs-pause button {
196
+ background-position:0 -16px;
197
+ }
198
+ /* End: Play/pause */
199
+
200
+
201
+ /* Stop */
202
+ .mejs-controls .mejs-stop button {
203
+ background-position: -112px 0;
204
+ }
205
+ /* End: Play/pause */
206
+
207
+ /* Start: Progress bar */
208
+ .mejs-controls div.mejs-time-rail {
209
+ width: 200px;
210
+ padding-top: 5px;
211
+ }
212
+ .mejs-controls .mejs-time-rail span {
213
+ display: block;
214
+ position: absolute;
215
+ width: 180px;
216
+ height: 10px;
217
+ -webkit-border-radius: 2px;
218
+ -moz-border-radius: 2px;
219
+ border-radius: 2px;
220
+ cursor: pointer;
221
+ }
222
+ .mejs-controls .mejs-time-rail .mejs-time-total {
223
+ margin: 5px;
224
+ background: #333;
225
+ background: rgba(50,50,50,0.8);
226
+ background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(rgba(30,30,30,0.8)), to(rgba(60,60,60,0.8)));
227
+ background: -webkit-linear-gradient(top, rgba(30,30,30,0.8), rgba(60,60,60,0.8));
228
+ background: -moz-linear-gradient(top, rgba(30,30,30,0.8), rgba(60,60,60,0.8));
229
+ background: -o-linear-gradient(top, rgba(30,30,30,0.8), rgba(60,60,60,0.8));
230
+ background: -ms-linear-gradient(top, rgba(30,30,30,0.8), rgba(60,60,60,0.8));
231
+ background: linear-gradient(rgba(30,30,30,0.8), rgba(60,60,60,0.8));
232
+ }
233
+ .mejs-controls .mejs-time-rail .mejs-time-buffering {
234
+ width:100%;
235
+ background-image: -o-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
236
+ background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
237
+ background-image: -webkit-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
238
+ background-image: -moz-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
239
+ background-image: -ms-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
240
+ background-image: linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
241
+ -webkit-background-size: 15px 15px;
242
+ -moz-background-size: 15px 15px;
243
+ -o-background-size: 15px 15px;
244
+ background-size: 15px 15px;
245
+ -webkit-animation: buffering-stripes 2s linear infinite;
246
+ -moz-animation: buffering-stripes 2s linear infinite;
247
+ -ms-animation: buffering-stripes 2s linear infinite;
248
+ -o-animation: buffering-stripes 2s linear infinite;
249
+ animation: buffering-stripes 2s linear infinite;
250
+ }
251
+
252
+ @-webkit-keyframes buffering-stripes { from {background-position: 0 0;} to {background-position: 30px 0;} }
253
+ @-moz-keyframes buffering-stripes { from {background-position: 0 0;} to {background-position: 30px 0;} }
254
+ @-ms-keyframes buffering-stripes { from {background-position: 0 0;} to {background-position: 30px 0;} }
255
+ @-o-keyframes buffering-stripes { from {background-position: 0 0;} to {background-position: 30px 0;} }
256
+ @keyframes buffering-stripes { from {background-position: 0 0;} to {background-position: 30px 0;} }
257
+
258
+ .mejs-controls .mejs-time-rail .mejs-time-loaded {
259
+ background: #3caac8;
260
+ background: rgba(60,170,200,0.8);
261
+ background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(rgba(44,124,145,0.8)), to(rgba(78,183,212,0.8)));
262
+ background: -webkit-linear-gradient(top, rgba(44,124,145,0.8), rgba(78,183,212,0.8));
263
+ background: -moz-linear-gradient(top, rgba(44,124,145,0.8), rgba(78,183,212,0.8));
264
+ background: -o-linear-gradient(top, rgba(44,124,145,0.8), rgba(78,183,212,0.8));
265
+ background: -ms-linear-gradient(top, rgba(44,124,145,0.8), rgba(78,183,212,0.8));
266
+ background: linear-gradient(rgba(44,124,145,0.8), rgba(78,183,212,0.8));
267
+ width: 0;
268
+ }
269
+ .mejs-controls .mejs-time-rail .mejs-time-current {
270
+ width: 0;
271
+ background: #fff;
272
+ background: rgba(255,255,255,0.8);
273
+ background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(rgba(255,255,255,0.9)), to(rgba(200,200,200,0.8)));
274
+ background: -webkit-linear-gradient(top, rgba(255,255,255,0.9), rgba(200,200,200,0.8));
275
+ background: -moz-linear-gradient(top, rgba(255,255,255,0.9), rgba(200,200,200,0.8));
276
+ background: -o-linear-gradient(top, rgba(255,255,255,0.9), rgba(200,200,200,0.8));
277
+ background: -ms-linear-gradient(top, rgba(255,255,255,0.9), rgba(200,200,200,0.8));
278
+ background: linear-gradient(rgba(255,255,255,0.9), rgba(200,200,200,0.8));
279
+ }
280
+
281
+ .mejs-controls .mejs-time-rail .mejs-time-handle {
282
+ display: none;
283
+ position: absolute;
284
+ margin: 0;
285
+ width: 10px;
286
+ background: #fff;
287
+ -webkit-border-radius: 5px;
288
+ -moz-border-radius: 5px;
289
+ border-radius: 5px;
290
+ cursor: pointer;
291
+ border: solid 2px #333;
292
+ top: -2px;
293
+ text-align: center;
294
+ }
295
+
296
+ .mejs-controls .mejs-time-rail .mejs-time-float {
297
+ position: absolute;
298
+ display: none;
299
+ background: #eee;
300
+ width: 36px;
301
+ height: 17px;
302
+ border: solid 1px #333;
303
+ top: -26px;
304
+ margin-left: -18px;
305
+ text-align: center;
306
+ color: #111;
307
+ }
308
+
309
+ .mejs-controls .mejs-time-rail .mejs-time-float-current {
310
+ margin: 2px;
311
+ width: 30px;
312
+ display: block;
313
+ text-align: center;
314
+ left: 0;
315
+ }
316
+ .mejs-controls .mejs-time-rail .mejs-time-float-corner {
317
+ position: absolute;
318
+ display: block;
319
+ width: 0;
320
+ height: 0;
321
+ line-height: 0;
322
+ border: solid 5px #eee;
323
+ border-color: #eee transparent transparent transparent;
324
+ -webkit-border-radius: 0;
325
+ -moz-border-radius: 0;
326
+ border-radius: 0;
327
+ top: 15px;
328
+ left: 13px;
329
+
330
+ }
331
+
332
+
333
+
334
+
335
+ /*
336
+ .mejs-controls .mejs-time-rail:hover .mejs-time-handle {
337
+ visibility:visible;
338
+ }
339
+ */
340
+ /* End: Progress bar */
341
+
342
+ /* Start: Fullscreen */
343
+ .mejs-controls .mejs-fullscreen-button button {
344
+ background-position:-32px 0;
345
+ }
346
+ .mejs-controls .mejs-unfullscreen button {
347
+ background-position:-32px -16px;
348
+ }
349
+ /* End: Fullscreen */
350
+
351
+
352
+ /* Start: Mute/Volume */
353
+ .mejs-controls .mejs-volume-button {
354
+ }
355
+
356
+ .mejs-controls .mejs-mute button {
357
+ background-position:-16px -16px;
358
+ }
359
+
360
+ .mejs-controls .mejs-unmute button {
361
+ background-position:-16px 0;
362
+ }
363
+
364
+ .mejs-controls .mejs-volume-button {
365
+ position: relative;
366
+ }
367
+
368
+ .mejs-controls .mejs-volume-button .mejs-volume-slider {
369
+ display: none;
370
+ height: 115px;
371
+ width: 25px;
372
+ background: url(<%= asset_path "mediaelement_rails/background.png" %>);
373
+ background: rgba(50, 50, 50, 0.7);
374
+ -webkit-border-radius: 0;
375
+ -moz-border-radius: 0;
376
+ border-radius: 0;
377
+ top: -115px;
378
+ left: 0;
379
+ z-index: 1;
380
+ position: absolute;
381
+ margin: 0;
382
+ }
383
+ .mejs-controls .mejs-volume-button:hover {
384
+ -webkit-border-radius: 0 0 4px 4px;
385
+ -moz-border-radius: 0 0 4px 4px;
386
+ border-radius: 0 0 4px 4px;
387
+ }
388
+ /*
389
+ .mejs-controls .mejs-volume-button:hover .mejs-volume-slider {
390
+ display: block;
391
+ }
392
+ */
393
+
394
+ .mejs-controls .mejs-volume-button .mejs-volume-slider .mejs-volume-total {
395
+ position: absolute;
396
+ left: 11px;
397
+ top: 8px;
398
+ width: 2px;
399
+ height: 100px;
400
+ background: #ddd;
401
+ background: rgba(255, 255, 255, 0.5);
402
+ margin: 0;
403
+ }
404
+
405
+ .mejs-controls .mejs-volume-button .mejs-volume-slider .mejs-volume-current {
406
+ position: absolute;
407
+ left: 11px;
408
+ top: 8px;
409
+ width: 2px;
410
+ height: 100px;
411
+ background: #ddd;
412
+ background: rgba(255, 255, 255, 0.9);
413
+ margin: 0;
414
+ }
415
+
416
+ .mejs-controls .mejs-volume-button .mejs-volume-slider .mejs-volume-handle {
417
+ position: absolute;
418
+ left: 4px;
419
+ top: -3px;
420
+ width: 16px;
421
+ height: 6px;
422
+ background: #ddd;
423
+ background: rgba(255, 255, 255, 0.9);
424
+ cursor: N-resize;
425
+ -webkit-border-radius: 1px;
426
+ -moz-border-radius: 1px;
427
+ border-radius: 1px;
428
+ margin: 0;
429
+ }
430
+
431
+
432
+ /* horizontal version */
433
+
434
+ .mejs-controls div.mejs-horizontal-volume-slider {
435
+ height: 26px;
436
+ width: 60px;
437
+ position: relative;
438
+ }
439
+
440
+ .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-total {
441
+ position: absolute;
442
+ left: 0;
443
+ top: 11px;
444
+ width: 50px;
445
+ height: 8px;
446
+ margin: 0;
447
+ padding: 0;
448
+ font-size: 1px;
449
+
450
+ -webkit-border-radius: 2px;
451
+ -moz-border-radius: 2px;
452
+ border-radius: 2px;
453
+
454
+ background: #333;
455
+ background: rgba(50,50,50,0.8);
456
+ background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(rgba(30,30,30,0.8)), to(rgba(60,60,60,0.8)));
457
+ background: -webkit-linear-gradient(top, rgba(30,30,30,0.8), rgba(60,60,60,0.8));
458
+ background: -moz-linear-gradient(top, rgba(30,30,30,0.8), rgba(60,60,60,0.8));
459
+ background: -o-linear-gradient(top, rgba(30,30,30,0.8), rgba(60,60,60,0.8));
460
+ background: -ms-linear-gradient(top, rgba(30,30,30,0.8), rgba(60,60,60,0.8));
461
+ background: linear-gradient(rgba(30,30,30,0.8), rgba(60,60,60,0.8));
462
+
463
+ }
464
+
465
+ .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-current {
466
+ position: absolute;
467
+ left: 0;
468
+ top: 11px;
469
+ width: 50px;
470
+ height: 8px;
471
+ margin: 0;
472
+ padding: 0;
473
+ font-size: 1px;
474
+
475
+ -webkit-border-radius: 2px;
476
+ -moz-border-radius: 2px;
477
+ border-radius: 2px;
478
+
479
+ background: #fff;
480
+ background: rgba(255,255,255,0.8);
481
+ background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(rgba(255,255,255,0.9)), to(rgba(200,200,200,0.8)));
482
+ background: -webkit-linear-gradient(top, rgba(255,255,255,0.9), rgba(200,200,200,0.8));
483
+ background: -moz-linear-gradient(top, rgba(255,255,255,0.9), rgba(200,200,200,0.8));
484
+ background: -o-linear-gradient(top, rgba(255,255,255,0.9), rgba(200,200,200,0.8));
485
+ background: -ms-linear-gradient(top, rgba(255,255,255,0.9), rgba(200,200,200,0.8));
486
+ background: linear-gradient(rgba(255,255,255,0.9), rgba(200,200,200,0.8));
487
+
488
+ }
489
+
490
+
491
+ .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-handle {
492
+ display: none;
493
+ }
494
+
495
+ /* End: Mute/Volume */
496
+
497
+
498
+
499
+
500
+ /* Start: TRACK (Captions and Chapters) */
501
+ .mejs-controls .mejs-captions-button {
502
+ position: relative;
503
+ }
504
+
505
+ .mejs-controls .mejs-captions-button button {
506
+ background-position:-48px 0;
507
+ }
508
+ .mejs-controls .mejs-captions-button .mejs-captions-selector {
509
+ visibility: hidden;
510
+ position: absolute;
511
+ bottom: 26px;
512
+ right: -10px;
513
+ width: 130px;
514
+ height: 100px;
515
+ background: url(<%= asset_path "mediaelement_rails/background.png" %>);
516
+ background: rgba(50,50,50,0.7);
517
+ border: solid 1px transparent;
518
+ padding: 10px;
519
+ overflow: hidden;
520
+ -webkit-border-radius: 0;
521
+ -moz-border-radius: 0;
522
+ border-radius: 0;
523
+ }
524
+ /*
525
+ .mejs-controls .mejs-captions-button:hover .mejs-captions-selector {
526
+ visibility: visible;
527
+ }
528
+ */
529
+
530
+ .mejs-controls .mejs-captions-button .mejs-captions-selector ul {
531
+ margin: 0;
532
+ padding: 0;
533
+ display: block;
534
+ list-style-type: none !important;
535
+ overflow: hidden;
536
+ }
537
+ .mejs-controls .mejs-captions-button .mejs-captions-selector ul li{
538
+ margin: 0 0 6px 0;
539
+ padding: 0;
540
+ list-style-type: none !important;
541
+ display:block;
542
+ color: #fff;
543
+ overflow: hidden;
544
+ }
545
+ .mejs-controls .mejs-captions-button .mejs-captions-selector ul li input{
546
+ clear: both;
547
+ float: left;
548
+ margin: 3px 3px 0 5px;
549
+ }
550
+ .mejs-controls .mejs-captions-button .mejs-captions-selector ul li label{
551
+ width: 100px;
552
+ float: left;
553
+ padding: 4px 0 0 0;
554
+ line-height: 15px;
555
+ font-family: helvetica, arial;
556
+ font-size: 10px;
557
+ }
558
+
559
+ .mejs-controls .mejs-captions-button .mejs-captions-translations {
560
+ font-size: 10px;
561
+ margin: 0 0 5px 0;
562
+ }
563
+
564
+
565
+ .mejs-chapters {
566
+ position: absolute;
567
+ top: 0;
568
+ left: 0;
569
+ -xborder-right: solid 1px #fff;
570
+ width: 10000px;
571
+ z-index: 1;
572
+ }
573
+ .mejs-chapters .mejs-chapter {
574
+ position: absolute;
575
+ float: left;
576
+ background: #222;
577
+ background: rgba(0, 0, 0, 0.7);
578
+ background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(rgba(50,50,50,0.7)), to(rgba(0,0,0,0.7)));
579
+ background: -webkit-linear-gradient(top, rgba(50,50,50,0.7), rgba(0,0,0,0.7));
580
+ background: -moz-linear-gradient(top, rgba(50,50,50,0.7), rgba(0,0,0,0.7));
581
+ background: -o-linear-gradient(top, rgba(50,50,50,0.7), rgba(0,0,0,0.7));
582
+ background: -ms-linear-gradient(top, rgba(50,50,50,0.7), rgba(0,0,0,0.7));
583
+ background: linear-gradient(rgba(50,50,50,0.7), rgba(0,0,0,0.7));
584
+ filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=0, startColorstr=#323232,endColorstr=#000000);
585
+ overflow: hidden;
586
+ border: 0;
587
+ }
588
+ .mejs-chapters .mejs-chapter .mejs-chapter-block {
589
+ font-size: 11px;
590
+ color: #fff;
591
+ padding: 5px;
592
+ display: block;
593
+ border-right: solid 1px #333;
594
+ border-bottom: solid 1px #333;
595
+ cursor: pointer;
596
+ }
597
+ .mejs-chapters .mejs-chapter .mejs-chapter-block-last {
598
+ border-right: none;
599
+ }
600
+
601
+ .mejs-chapters .mejs-chapter .mejs-chapter-block:hover {
602
+ /*background: #333;*/
603
+ background: #666;
604
+ background: rgba(102,102,102, 0.7);
605
+ background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(rgba(102,102,102,0.7)), to(rgba(50,50,50,0.6)));
606
+ background: -webkit-linear-gradient(top, rgba(102,102,102,0.7), rgba(50,50,50,0.6));
607
+ background: -moz-linear-gradient(top, rgba(102,102,102,0.7), rgba(50,50,50,0.6));
608
+ background: -o-linear-gradient(top, rgba(102,102,102,0.7), rgba(50,50,50,0.6));
609
+ background: -ms-linear-gradient(top, rgba(102,102,102,0.7), rgba(50,50,50,0.6));
610
+ background: linear-gradient(rgba(102,102,102,0.7), rgba(50,50,50,0.6));
611
+ filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=0, startColorstr=#666666,endColorstr=#323232);
612
+ }
613
+ .mejs-chapters .mejs-chapter .mejs-chapter-block .ch-title{
614
+ font-size: 12px;
615
+ font-weight: bold;
616
+ display: block;
617
+ white-space:nowrap;
618
+ text-overflow: ellipsis;
619
+ margin: 0 0 3px 0;
620
+ line-height: 12px;
621
+ }
622
+ .mejs-chapters .mejs-chapter .mejs-chapter-block .ch-timespan{
623
+ font-size: 12px;
624
+ line-height: 12px;
625
+ margin: 3px 0 4px 0;
626
+ display: block;
627
+ white-space:nowrap;
628
+ text-overflow: ellipsis;
629
+ }
630
+
631
+
632
+ .mejs-captions-layer {
633
+ position: absolute;
634
+ bottom: 0;
635
+ left: 0;
636
+ text-align:center;
637
+ /*font-weight: bold;*/
638
+ line-height: 22px;
639
+ font-size: 12px;
640
+ color: #fff;
641
+ }
642
+ .mejs-captions-layer a {
643
+ color: #fff;
644
+ text-decoration: underline;
645
+ }
646
+ .mejs-captions-layer[lang=ar] {
647
+ font-size: 20px;
648
+ font-weight: normal;
649
+ }
650
+
651
+ .mejs-captions-position {
652
+ position: absolute;
653
+ width: 100%;
654
+ bottom: 15px;
655
+ left: 0;
656
+ }
657
+
658
+ .mejs-captions-position-hover {
659
+ bottom: 45px;
660
+ }
661
+
662
+ .mejs-captions-text {
663
+ padding: 3px 5px;
664
+ background: url(<%= asset_path "mediaelement_rails/background.png" %>);
665
+ background: rgba(20, 20, 20, 0.8);
666
+
667
+ }
668
+ /* End: TRACK (Captions and Chapters) */
669
+
670
+
671
+
672
+ .mejs-clear {
673
+ clear: both;
674
+ }
675
+
676
+ /* Start: ERROR */
677
+ .me-cannotplay {
678
+ }
679
+ .me-cannotplay a {
680
+ color: #fff;
681
+ font-weight: bold;
682
+ }
683
+ .me-cannotplay span {
684
+ padding: 15px;
685
+ display: block;
686
+ }
687
+ /* End: ERROR */
688
+
689
+
690
+ /* Start: Loop */
691
+ .mejs-controls .mejs-loop-off button{
692
+ background-position: -64px -16px;
693
+ }
694
+ .mejs-controls .mejs-loop-on button {
695
+ background-position: -64px 0;
696
+ }
697
+ /* End: Loop */
698
+
699
+ /* Start: backlight */
700
+ .mejs-controls .mejs-backlight-off button{
701
+ background-position: -80px -16px;
702
+ }
703
+ .mejs-controls .mejs-backlight-on button {
704
+ background-position: -80px 0;
705
+ }
706
+ /* End: backlight */
707
+
708
+
709
+ /* Start: picture controls */
710
+ .mejs-controls .mejs-picturecontrols-button{
711
+ background-position: -96px 0;
712
+ }
713
+ /* End: picture controls */
714
+
715
+
716
+ /* context menu */
717
+ .mejs-contextmenu {
718
+ position: absolute;
719
+ width: 150px;
720
+ padding: 10px;
721
+ border-radius: 4px;
722
+ top: 0;
723
+ left: 0;
724
+ background: #fff;
725
+ border: solid 1px #999;
726
+ z-index: 1001; /* make sure it shows on fullscreen */
727
+ }
728
+ .mejs-contextmenu .mejs-contextmenu-separator {
729
+ height: 1px;
730
+ font-size: 0;
731
+ margin: 5px 6px;
732
+ background: #333;
733
+ }
734
+
735
+ .mejs-contextmenu .mejs-contextmenu-item {
736
+ font-family: Helvetica, Arial;
737
+ font-size: 12px;
738
+ padding: 4px 6px;
739
+ cursor: pointer;
740
+ color: #333;
741
+ }
742
+ .mejs-contextmenu .mejs-contextmenu-item:hover {
743
+ background: #2C7C91;
744
+ color: #fff;
745
+ }
746
+
747
+
748
+ /* Start: SourceChooser */
749
+ .mejs-controls .mejs-sourcechooser-button {
750
+ position: relative;
751
+ }
752
+
753
+ .mejs-controls .mejs-sourcechooser-button button {
754
+ background-position: -128px 0;
755
+ }
756
+ .mejs-controls .mejs-sourcechooser-button .mejs-sourcechooser-selector {
757
+ visibility: hidden;
758
+ position: absolute;
759
+ bottom: 26px;
760
+ right: -10px;
761
+ width: 130px;
762
+ height: 100px;
763
+ background: url(<%= asset_path "mediaelement_rails/background.png" %>);
764
+ background: rgba(50,50,50,0.7);
765
+ border: solid 1px transparent;
766
+ padding: 10px;
767
+ overflow: hidden;
768
+ -webkit-border-radius: 0;
769
+ -moz-border-radius: 0;
770
+ border-radius: 0;
771
+ }
772
+
773
+ .mejs-controls .mejs-sourcechooser-button .mejs-sourcechooser-selector ul {
774
+ margin: 0;
775
+ padding: 0;
776
+ display: block;
777
+ list-style-type: none !important;
778
+ overflow: hidden;
779
+ }
780
+ .mejs-controls .mejs-sourcechooser-button .mejs-sourcechooser-selector ul li{
781
+ margin: 0 0 6px 0;
782
+ padding: 0;
783
+ list-style-type: none !important;
784
+ display:block;
785
+ color: #fff;
786
+ overflow: hidden;
787
+ }
788
+ .mejs-controls .mejs-sourcechooser-button .mejs-sourcechooser-selector ul li input{
789
+ clear: both;
790
+ float: left;
791
+ margin: 3px 3px 0 5px;
792
+ }
793
+ .mejs-controls .mejs-sourcechooser-button .mejs-sourcechooser-selector ul li label{
794
+ width: 100px;
795
+ float: left;
796
+ padding: 4px 0 0 0;
797
+ line-height: 15px;
798
+ font-family: helvetica, arial;
799
+ font-size: 10px;
800
+ }
801
+ /* End: SourceChooser */