fotoramajs 4.4.6 → 4.4.7

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 781b1f3e103c750f7c8a0070ca13ccacab9cc8e0
4
- data.tar.gz: e1b56b0ba874834336df95300263a4d3560b8a3f
3
+ metadata.gz: 888bdc17c3f4261ac1b4a447e43a9de92eab4f01
4
+ data.tar.gz: 085d95b6aa7e99c7a947dbc502fe5d441b93c85d
5
5
  SHA512:
6
- metadata.gz: 100bee579eda7b6be4395904ec423ad162ec635312d613d81bc473d1858aba033921533429a1e3530c33562be0eedad3418ee15b11bc1093ef73bd1862eb0ac3
7
- data.tar.gz: baeea1ef6017e9db66f757c4e1b0caf4ad03b407817da133384abba22488922bc6e9592b6f5c026fd36a89500c161fb75f58f0375daa3ebd57eb80cfd972d678
6
+ metadata.gz: ac505aadf7e0f94ea4cdf187e523eb32d62482c77882c05ef28696e06b25820fe4eacb62c48ee61c574aaebe3f4006b652c1ba2801ed0b7347f0007cb818ace1
7
+ data.tar.gz: 2cf48602c09c5c751c347fb3cd4e310266ed859286a97516452fe2f1c2e0d448966913118020f94966e0c10049315b2daae377508e3e7c1a703748e63989f1ff
data/.gitignore CHANGED
@@ -5,3 +5,4 @@ pkg/
5
5
  build/
6
6
 
7
7
  .bundle
8
+ Gemfile.lock
data/Gemfile CHANGED
@@ -3,3 +3,4 @@ source 'https://rubygems.org'
3
3
  gemspec
4
4
 
5
5
  gem 'httpclient'
6
+ gem 'rake'
data/Rakefile CHANGED
@@ -67,17 +67,22 @@ task :update do
67
67
  puts "Fetching tags"
68
68
  tag = github_tags('artpolikarpov/fotorama').last
69
69
 
70
- puts "Load Fotorama #{tag}"
71
- fetch(tag)
70
+ require './lib/fotoramajs/version'
71
+ if tag.to_s == Fotoramajs::VERSION
72
+ puts "No releases, since #{ Fotoramajs::VERSION }"
73
+ else
74
+ puts "Load Fotorama #{tag}"
75
+ fetch(tag)
72
76
 
73
- puts "Convert CSS to SCSS"
74
- convert
77
+ puts "Convert CSS to SCSS"
78
+ convert
75
79
 
76
- puts "Update gem version"
77
- update_version(tag)
78
- update_gemfile_lock
80
+ puts "Update gem version"
81
+ update_version(tag)
82
+ update_gemfile_lock
79
83
 
80
- puts "Done"
84
+ puts "Done"
85
+ end
81
86
  end
82
87
 
83
88
  desc 'Delete all generated files'
@@ -1,3 +1,3 @@
1
1
  module Fotoramajs
2
- VERSION = "4.4.6"
2
+ VERSION = "4.4.7"
3
3
  end
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Fotorama 4.4.6 | http://fotorama.io/license/
2
+ * Fotorama 4.4.7 | http://fotorama.io/license/
3
3
  */
4
4
  (function (window, document, location, $, undefined) {
5
5
  "use strict";
@@ -82,7 +82,7 @@ var _fotoramaClass = 'fotorama',
82
82
  captionClass = _fotoramaClass + '__caption',
83
83
  captionWrapClass = _fotoramaClass + '__caption__wrap',
84
84
 
85
- ooooClass = _fotoramaClass + '__oooo';
85
+ spinnerClass = _fotoramaClass + '__spinner';
86
86
  var JQUERY_VERSION = $ && $.fn.jquery.split('.');
87
87
 
88
88
  if (!JQUERY_VERSION
@@ -410,6 +410,377 @@ if (fullScreenApi.ok) {
410
410
  return (this.prefix === '') ? document.cancelFullScreen() : document[this.prefix + 'CancelFullScreen']();
411
411
  };
412
412
  }
413
+ //fgnass.github.com/spin.js#v1.3.2
414
+
415
+ /**
416
+ * Copyright (c) 2011-2013 Felix Gnass
417
+ * Licensed under the MIT license
418
+ */
419
+
420
+ var Spinner,
421
+ spinnerDefaults = {
422
+ lines: 12, // The number of lines to draw
423
+ length: 5, // The length of each line
424
+ width: 2, // The line thickness
425
+ radius: 7, // The radius of the inner circle
426
+ corners: 1, // Corner roundness (0..1)
427
+ rotate: 15, // The rotation offset
428
+ color: 'rgba(128, 128, 128, .75)',
429
+ hwaccel: true
430
+ };
431
+
432
+ (function(root, factory) {
433
+
434
+ /* CommonJS */
435
+ //if (typeof exports == 'object') module.exports = factory()
436
+
437
+ /* AMD module */
438
+ //else if (typeof define == 'function' && define.amd) define(factory)
439
+
440
+ /* Browser global */
441
+ //else root.Spinner = factory()
442
+
443
+ Spinner = factory();
444
+ }
445
+ (this, function() {
446
+ "use strict";
447
+
448
+ var prefixes = ['webkit', 'Moz', 'ms', 'O'] /* Vendor prefixes */
449
+ , animations = {} /* Animation rules keyed by their name */
450
+ , useCssAnimations /* Whether to use CSS animations or setTimeout */
451
+
452
+ /**
453
+ * Utility function to create elements. If no tag name is given,
454
+ * a DIV is created. Optionally properties can be passed.
455
+ */
456
+ function createEl(tag, prop) {
457
+ var el = document.createElement(tag || 'div')
458
+ , n
459
+
460
+ for(n in prop) el[n] = prop[n]
461
+ return el
462
+ }
463
+
464
+ /**
465
+ * Appends children and returns the parent.
466
+ */
467
+ function ins(parent /* child1, child2, ...*/) {
468
+ for (var i=1, n=arguments.length; i<n; i++)
469
+ parent.appendChild(arguments[i])
470
+
471
+ return parent
472
+ }
473
+
474
+ /**
475
+ * Insert a new stylesheet to hold the @keyframe or VML rules.
476
+ */
477
+ var sheet = (function() {
478
+ var el = createEl('style', {type : 'text/css'})
479
+ ins(document.getElementsByTagName('head')[0], el)
480
+ return el.sheet || el.styleSheet
481
+ }())
482
+
483
+ /**
484
+ * Creates an opacity keyframe animation rule and returns its name.
485
+ * Since most mobile Webkits have timing issues with animation-delay,
486
+ * we create separate rules for each line/segment.
487
+ */
488
+ function addAnimation(alpha, trail, i, lines) {
489
+ var name = ['opacity', trail, ~~(alpha*100), i, lines].join('-')
490
+ , start = 0.01 + i/lines * 100
491
+ , z = Math.max(1 - (1-alpha) / trail * (100-start), alpha)
492
+ , prefix = useCssAnimations.substring(0, useCssAnimations.indexOf('Animation')).toLowerCase()
493
+ , pre = prefix && '-' + prefix + '-' || ''
494
+
495
+ if (!animations[name]) {
496
+ sheet.insertRule(
497
+ '@' + pre + 'keyframes ' + name + '{' +
498
+ '0%{opacity:' + z + '}' +
499
+ start + '%{opacity:' + alpha + '}' +
500
+ (start+0.01) + '%{opacity:1}' +
501
+ (start+trail) % 100 + '%{opacity:' + alpha + '}' +
502
+ '100%{opacity:' + z + '}' +
503
+ '}', sheet.cssRules.length)
504
+
505
+ animations[name] = 1
506
+ }
507
+
508
+ return name
509
+ }
510
+
511
+ /**
512
+ * Tries various vendor prefixes and returns the first supported property.
513
+ */
514
+ function vendor(el, prop) {
515
+ var s = el.style
516
+ , pp
517
+ , i
518
+
519
+ prop = prop.charAt(0).toUpperCase() + prop.slice(1)
520
+ for(i=0; i<prefixes.length; i++) {
521
+ pp = prefixes[i]+prop
522
+ if(s[pp] !== undefined) return pp
523
+ }
524
+ if(s[prop] !== undefined) return prop
525
+ }
526
+
527
+ /**
528
+ * Sets multiple style properties at once.
529
+ */
530
+ function css(el, prop) {
531
+ for (var n in prop)
532
+ el.style[vendor(el, n)||n] = prop[n]
533
+
534
+ return el
535
+ }
536
+
537
+ /**
538
+ * Fills in default values.
539
+ */
540
+ function merge(obj) {
541
+ for (var i=1; i < arguments.length; i++) {
542
+ var def = arguments[i]
543
+ for (var n in def)
544
+ if (obj[n] === undefined) obj[n] = def[n]
545
+ }
546
+ return obj
547
+ }
548
+
549
+ /**
550
+ * Returns the absolute page-offset of the given element.
551
+ */
552
+ function pos(el) {
553
+ var o = { x:el.offsetLeft, y:el.offsetTop }
554
+ while((el = el.offsetParent))
555
+ o.x+=el.offsetLeft, o.y+=el.offsetTop
556
+
557
+ return o
558
+ }
559
+
560
+ /**
561
+ * Returns the line color from the given string or array.
562
+ */
563
+ function getColor(color, idx) {
564
+ return typeof color == 'string' ? color : color[idx % color.length]
565
+ }
566
+
567
+ // Built-in defaults
568
+
569
+ var defaults = {
570
+ lines: 12, // The number of lines to draw
571
+ length: 7, // The length of each line
572
+ width: 5, // The line thickness
573
+ radius: 10, // The radius of the inner circle
574
+ rotate: 0, // Rotation offset
575
+ corners: 1, // Roundness (0..1)
576
+ color: '#000', // #rgb or #rrggbb
577
+ direction: 1, // 1: clockwise, -1: counterclockwise
578
+ speed: 1, // Rounds per second
579
+ trail: 100, // Afterglow percentage
580
+ opacity: 1/4, // Opacity of the lines
581
+ fps: 20, // Frames per second when using setTimeout()
582
+ zIndex: 2e9, // Use a high z-index by default
583
+ className: 'spinner', // CSS class to assign to the element
584
+ top: 'auto', // center vertically
585
+ left: 'auto', // center horizontally
586
+ position: 'relative' // element position
587
+ }
588
+
589
+ /** The constructor */
590
+ function Spinner(o) {
591
+ if (typeof this == 'undefined') return new Spinner(o)
592
+ this.opts = merge(o || {}, Spinner.defaults, defaults)
593
+ }
594
+
595
+ // Global defaults that override the built-ins:
596
+ Spinner.defaults = {}
597
+
598
+ merge(Spinner.prototype, {
599
+
600
+ /**
601
+ * Adds the spinner to the given target element. If this instance is already
602
+ * spinning, it is automatically removed from its previous target b calling
603
+ * stop() internally.
604
+ */
605
+ spin: function(target) {
606
+ this.stop()
607
+
608
+ var self = this
609
+ , o = self.opts
610
+ , el = self.el = css(createEl(0, {className: o.className}), {position: o.position, width: 0, zIndex: o.zIndex})
611
+ , mid = o.radius+o.length+o.width
612
+ , ep // element position
613
+ , tp // target position
614
+
615
+ if (target) {
616
+ target.insertBefore(el, target.firstChild||null)
617
+ tp = pos(target)
618
+ ep = pos(el)
619
+ css(el, {
620
+ left: (o.left == 'auto' ? tp.x-ep.x + (target.offsetWidth >> 1) : parseInt(o.left, 10) + mid) + 'px',
621
+ top: (o.top == 'auto' ? tp.y-ep.y + (target.offsetHeight >> 1) : parseInt(o.top, 10) + mid) + 'px'
622
+ })
623
+ }
624
+
625
+ el.setAttribute('role', 'progressbar')
626
+ self.lines(el, self.opts)
627
+
628
+ if (!useCssAnimations) {
629
+ // No CSS animation support, use setTimeout() instead
630
+ var i = 0
631
+ , start = (o.lines - 1) * (1 - o.direction) / 2
632
+ , alpha
633
+ , fps = o.fps
634
+ , f = fps/o.speed
635
+ , ostep = (1-o.opacity) / (f*o.trail / 100)
636
+ , astep = f/o.lines
637
+
638
+ ;(function anim() {
639
+ i++;
640
+ for (var j = 0; j < o.lines; j++) {
641
+ alpha = Math.max(1 - (i + (o.lines - j) * astep) % f * ostep, o.opacity)
642
+
643
+ self.opacity(el, j * o.direction + start, alpha, o)
644
+ }
645
+ self.timeout = self.el && setTimeout(anim, ~~(1000/fps))
646
+ })()
647
+ }
648
+ return self
649
+ },
650
+
651
+ /**
652
+ * Stops and removes the Spinner.
653
+ */
654
+ stop: function() {
655
+ var el = this.el
656
+ if (el) {
657
+ clearTimeout(this.timeout)
658
+ if (el.parentNode) el.parentNode.removeChild(el)
659
+ this.el = undefined
660
+ }
661
+ return this
662
+ },
663
+
664
+ /**
665
+ * Internal method that draws the individual lines. Will be overwritten
666
+ * in VML fallback mode below.
667
+ */
668
+ lines: function(el, o) {
669
+ var i = 0
670
+ , start = (o.lines - 1) * (1 - o.direction) / 2
671
+ , seg
672
+
673
+ function fill(color, shadow) {
674
+ return css(createEl(), {
675
+ position: 'absolute',
676
+ width: (o.length+o.width) + 'px',
677
+ height: o.width + 'px',
678
+ background: color,
679
+ boxShadow: shadow,
680
+ transformOrigin: 'left',
681
+ transform: 'rotate(' + ~~(360/o.lines*i+o.rotate) + 'deg) translate(' + o.radius+'px' +',0)',
682
+ borderRadius: (o.corners * o.width>>1) + 'px'
683
+ })
684
+ }
685
+
686
+ for (; i < o.lines; i++) {
687
+ seg = css(createEl(), {
688
+ position: 'absolute',
689
+ top: 1+~(o.width/2) + 'px',
690
+ transform: o.hwaccel ? 'translate3d(0,0,0)' : '',
691
+ opacity: o.opacity,
692
+ animation: useCssAnimations && addAnimation(o.opacity, o.trail, start + i * o.direction, o.lines) + ' ' + 1/o.speed + 's linear infinite'
693
+ })
694
+
695
+ if (o.shadow) ins(seg, css(fill('#000', '0 0 4px ' + '#000'), {top: 2+'px'}))
696
+ ins(el, ins(seg, fill(getColor(o.color, i), '0 0 1px rgba(0,0,0,.1)')))
697
+ }
698
+ return el
699
+ },
700
+
701
+ /**
702
+ * Internal method that adjusts the opacity of a single line.
703
+ * Will be overwritten in VML fallback mode below.
704
+ */
705
+ opacity: function(el, i, val) {
706
+ if (i < el.childNodes.length) el.childNodes[i].style.opacity = val
707
+ }
708
+
709
+ })
710
+
711
+
712
+ function initVML() {
713
+
714
+ /* Utility function to create a VML tag */
715
+ function vml(tag, attr) {
716
+ return createEl('<' + tag + ' xmlns="urn:schemas-microsoft.com:vml" class="spin-vml">', attr)
717
+ }
718
+
719
+ // No CSS transforms but VML support, add a CSS rule for VML elements:
720
+ sheet.addRule('.spin-vml', 'behavior:url(#default#VML)')
721
+
722
+ Spinner.prototype.lines = function(el, o) {
723
+ var r = o.length+o.width
724
+ , s = 2*r
725
+
726
+ function grp() {
727
+ return css(
728
+ vml('group', {
729
+ coordsize: s + ' ' + s,
730
+ coordorigin: -r + ' ' + -r
731
+ }),
732
+ { width: s, height: s }
733
+ )
734
+ }
735
+
736
+ var margin = -(o.width+o.length)*2 + 'px'
737
+ , g = css(grp(), {position: 'absolute', top: margin, left: margin})
738
+ , i
739
+
740
+ function seg(i, dx, filter) {
741
+ ins(g,
742
+ ins(css(grp(), {rotation: 360 / o.lines * i + 'deg', left: ~~dx}),
743
+ ins(css(vml('roundrect', {arcsize: o.corners}), {
744
+ width: r,
745
+ height: o.width,
746
+ left: o.radius,
747
+ top: -o.width>>1,
748
+ filter: filter
749
+ }),
750
+ vml('fill', {color: getColor(o.color, i), opacity: o.opacity}),
751
+ vml('stroke', {opacity: 0}) // transparent stroke to fix color bleeding upon opacity change
752
+ )
753
+ )
754
+ )
755
+ }
756
+
757
+ if (o.shadow)
758
+ for (i = 1; i <= o.lines; i++)
759
+ seg(i, -2, 'progid:DXImageTransform.Microsoft.Blur(pixelradius=2,makeshadow=1,shadowopacity=.3)')
760
+
761
+ for (i = 1; i <= o.lines; i++) seg(i)
762
+ return ins(el, g)
763
+ }
764
+
765
+ Spinner.prototype.opacity = function(el, i, val, o) {
766
+ var c = el.firstChild
767
+ o = o.shadow && o.lines || 0
768
+ if (c && i+o < c.childNodes.length) {
769
+ c = c.childNodes[i+o]; c = c && c.firstChild; c = c && c.firstChild
770
+ if (c) c.opacity = val
771
+ }
772
+ }
773
+ }
774
+
775
+ var probe = css(createEl('group'), {behavior: 'url(#default#VML)'})
776
+
777
+ if (!vendor(probe, 'transform') && probe.adj) initVML()
778
+ else useCssAnimations = vendor(probe, 'animation')
779
+
780
+ return Spinner
781
+
782
+ }));
783
+
413
784
  /* Bez v1.0.10-g5ae0136
414
785
  * http://github.com/rdallasgray/bez
415
786
  *
@@ -1433,6 +1804,9 @@ jQuery.Fotorama = function ($fotorama, opts) {
1433
1804
  $videoClose = $(div(videoCloseClass)).appendTo($stage),
1434
1805
  videoClose = $videoClose[0],
1435
1806
 
1807
+ spinner,
1808
+ $spinner = $(div(spinnerClass)),
1809
+
1436
1810
  $videoPlaying,
1437
1811
 
1438
1812
  activeIndex = false,
@@ -1647,6 +2021,8 @@ jQuery.Fotorama = function ($fotorama, opts) {
1647
2021
  $arrs.hide();
1648
2022
  }
1649
2023
 
2024
+ spinner = new Spinner($.extend(spinnerDefaults, opts.spinner));
2025
+
1650
2026
  arrsUpdate();
1651
2027
  stageWheelUpdate();
1652
2028
 
@@ -1716,7 +2092,7 @@ jQuery.Fotorama = function ($fotorama, opts) {
1716
2092
  o_shadows = opts.shadows && !SLOW;
1717
2093
  classes[addOrRemove(!o_shadows)].push(wrapNoShadowsClass);
1718
2094
 
1719
- ooooStop();
2095
+ spinnerStop();
1720
2096
 
1721
2097
  $wrap
1722
2098
  .addClass(classes.add.join(' '))
@@ -1856,17 +2232,15 @@ jQuery.Fotorama = function ($fotorama, opts) {
1856
2232
  function loaded () {
1857
2233
  ////console.log('loaded: ' + src);
1858
2234
 
1859
- var width = img.width,
1860
- height = img.height,
1861
- ratio = width / height;
2235
+ //console.log('$.Fotorama.measures[src]', $.Fotorama.measures[src]);
1862
2236
 
1863
- imgData.measures = {
1864
- width: width,
1865
- height: height,
1866
- ratio: ratio
2237
+ $.Fotorama.measures[src] = imgData.measures = $.Fotorama.measures[src] || {
2238
+ width: img.width,
2239
+ height: img.height,
2240
+ ratio: img.width / img.height
1867
2241
  };
1868
2242
 
1869
- setMeasures(width, height, ratio, index);
2243
+ setMeasures(imgData.measures.width, imgData.measures.height, imgData.measures.ratio, index);
1870
2244
 
1871
2245
  $img
1872
2246
  .off('load error')
@@ -1914,7 +2288,7 @@ jQuery.Fotorama = function ($fotorama, opts) {
1914
2288
  if ($.Fotorama.cache[src] === 'error') {
1915
2289
  error();
1916
2290
  } else if ($.Fotorama.cache[src] === 'loaded') {
1917
- ////console.log('take from cache: ' + src);
2291
+ //console.log('take from cache: ' + src);
1918
2292
  setTimeout(waitAndLoad, 0);
1919
2293
  } else {
1920
2294
  setTimeout(justWait, 100);
@@ -1927,36 +2301,23 @@ jQuery.Fotorama = function ($fotorama, opts) {
1927
2301
  });
1928
2302
  }
1929
2303
 
1930
- var $oooo = $(div('', div(ooooClass))),
1931
- ooooInterval,
1932
- ooooStep = function () {
1933
- $oooo.attr('class', ooooClass + ' ' + ooooClass + '--' + ooooI);
1934
- ooooI++;
1935
- if (ooooI > 4) ooooI = 0;
1936
- },
1937
- ooooI;
1938
-
1939
- function ooooStart ($el) {
1940
- ooooStop(true);
1941
- $oooo.appendTo($el);
1942
- ooooI = 0;
1943
- ooooStep();
1944
- ooooInterval = setInterval(ooooStep, 200);
2304
+ function spinnerSpin ($el) {
2305
+ $spinner.append(spinner.spin().el).appendTo($el);
1945
2306
  }
1946
2307
 
1947
- function ooooStop (leave) {
1948
- leave || $oooo.detach();
1949
- clearInterval(ooooInterval);
2308
+ function spinnerStop () {
2309
+ $spinner.detach();
2310
+ spinner.stop();
1950
2311
  }
1951
2312
 
1952
2313
  function updateFotoramaState () {
1953
2314
  var $frame = that.activeFrame[STAGE_FRAME_KEY];
1954
2315
 
1955
2316
  if ($frame && !$frame.data().state) {
1956
- ooooStart($frame);
2317
+ spinnerSpin($frame);
1957
2318
  $frame.on('f:load f:error', function () {
1958
2319
  $frame.off('f:load f:error');
1959
- ooooStop();
2320
+ spinnerStop();
1960
2321
  });
1961
2322
  }
1962
2323
  }
@@ -2555,7 +2916,7 @@ jQuery.Fotorama = function ($fotorama, opts) {
2555
2916
 
2556
2917
  if (opts.glimpse) {
2557
2918
  // Glimpse
2558
- measures.w -= Math.round((numberFromPercent(opts.glimpse) / 100 * width || numberFromMeasure(opts.glimpse)) * 2)
2919
+ measures.w -= Math.round((numberFromPercent(opts.glimpse) / 100 * width || numberFromMeasure(opts.glimpse) || 0) * 2);
2559
2920
  }
2560
2921
 
2561
2922
  $stageShaft.css({width: measures.w, marginLeft: (measures.W - measures.w) / 2});
@@ -3036,6 +3397,7 @@ function hideInstance (instance) {
3036
3397
  calculateIndexes();
3037
3398
  }
3038
3399
  $.Fotorama.cache = {};
3400
+ $.Fotorama.measures = {};
3039
3401
  $ = $ || {};
3040
3402
  $.Fotorama = $.Fotorama || {};
3041
3403
  $.Fotorama.jst = $.Fotorama.jst || {};
@@ -3064,7 +3426,7 @@ $.Fotorama.jst.video = function(v) {
3064
3426
  var __t, __p = '', __e = _.escape, __j = Array.prototype.join;
3065
3427
  function print() { __p += __j.call(arguments, '') }
3066
3428
  __p += '<div class="fotorama__video"><iframe src="';
3067
- print((v.type == 'youtube' ? 'http://youtube.com/embed/' + v.id +'?autoplay=1' : v.type == 'vimeo' ? 'http://player.vimeo.com/video/' + v.id + '?autoplay=1&badge=0' : v.id) + (v.s ? '&' + v.s : '')) ;
3429
+ print((v.type == 'youtube' ? 'http://youtube.com/embed/' + v.id +'?autoplay=1' : v.type == 'vimeo' ? 'http://player.vimeo.com/video/' + v.id + '?autoplay=1&badge=0' : v.id) + (v.s && v.type != 'custom' ? '&' + v.s : '')) ;
3068
3430
  __p += '" frameborder="0" allowfullscreen></iframe></div>';
3069
3431
  return __p
3070
3432
  };
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Fotorama 4.4.6 | http://fotorama.io/license/
2
+ * Fotorama 4.4.7 | http://fotorama.io/license/
3
3
  */
4
4
  .fotorama__stage__shaft,
5
5
  .fotorama__stage__frame,
@@ -44,7 +44,7 @@
44
44
  }
45
45
 
46
46
  .fotorama__img,
47
- .fotorama__oooo {
47
+ .fotorama__spinner {
48
48
  position: absolute !important;
49
49
  top: 50% !important;
50
50
  left: 50% !important;
@@ -71,9 +71,6 @@
71
71
  transform: translate3d(0, 0, 0);
72
72
  }
73
73
 
74
- .fotorama__oooo,
75
- .fotorama__oooo:before,
76
- .fotorama__oooo:after,
77
74
  .fotorama__wrap--css3 .fotorama__stage,
78
75
  .fotorama__wrap--css3 .fotorama__nav,
79
76
  .fotorama__wrap--css3 .fotorama__stage__frame,
@@ -90,7 +87,11 @@
90
87
  }
91
88
 
92
89
  .fotorama__wrap--video .fotorama__stage__shaft,
93
- .fotorama__wrap--video .fotorama__stage__frame--video {
90
+ .fotorama__wrap--video .fotorama__stage,
91
+ .fotorama__wrap--video .fotorama__stage__frame--video,
92
+ .fotorama__wrap--video .fotorama__stage__frame--video .fotorama__img,
93
+ .fotorama__wrap--video .fotorama__stage__frame--video .fotorama__html,
94
+ .fotorama__wrap--video .fotorama__stage__frame--video .fotorama__caption {
94
95
  -webkit-transform: none !important;
95
96
  -ms-transform: none !important;
96
97
  transform: none !important;
@@ -278,12 +279,6 @@
278
279
  display: none;
279
280
  }
280
281
 
281
- .fotorama__wrap--fade .fotorama__stage__frame.fotorama__active {
282
- -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
283
- filter: alpha(opacity=100);
284
- opacity: 1;
285
- }
286
-
287
282
  .fotorama__wrap--fade .fotorama__stage__frame.fotorama__active,
288
283
  .fotorama__wrap--fade .fotorama__fade-front,
289
284
  .fotorama__wrap--fade .fotorama__fade-rear {
@@ -308,13 +303,6 @@
308
303
  display: none;
309
304
  }
310
305
 
311
- .fotorama__wrap--video .fotorama__stage__frame--video .fotorama__img,
312
- .fotorama__wrap--video .fotorama__stage__frame--video .fotorama__html {
313
- -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
314
- filter: alpha(opacity=0);
315
- opacity: 0;
316
- }
317
-
318
306
  .fotorama__img {
319
307
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
320
308
  filter: alpha(opacity=0);
@@ -472,10 +460,6 @@
472
460
  border-color: rgba(51, 51, 51, 0.5);
473
461
  }
474
462
 
475
- .fotorama__wrap--video .fotorama__caption {
476
- display: none;
477
- }
478
-
479
463
  .fotorama__wrap--rtl .fotorama__caption {
480
464
  left: auto;
481
465
  right: 0;
@@ -487,41 +471,6 @@
487
471
  padding: 5px 10px;
488
472
  }
489
473
 
490
- .fotorama__oooo {
491
- width: 6px;
492
- height: 6px;
493
- margin-left: -8px;
494
- margin-top: -3px;
495
- }
496
-
497
- .fotorama__oooo:before,
498
- .fotorama__oooo:after {
499
- content: '';
500
- position: absolute;
501
- left: 0;
502
- top: 0;
503
- width: 6px;
504
- height: 6px;
505
- border-radius: 6px;
506
- background-color: #7f7f7f;
507
- background-color: rgba(127, 127, 127, 0.5);
508
- }
509
-
510
- .fotorama__oooo:before {
511
- left: -10px;
512
- }
513
-
514
- .fotorama__oooo .fotorama__oooo {
515
- margin-left: 17px;
516
- }
517
-
518
- .fotorama__oooo--1:before,
519
- .fotorama__oooo--2:after,
520
- .fotorama__oooo--3 .fotorama__oooo:before,
521
- .fotorama__oooo--4 .fotorama__oooo:after {
522
- background-color: #7f7f7f;
523
- }
524
-
525
474
  .fotorama__wrap--css3 .fotorama__stage .fotorama__img,
526
475
  .fotorama__wrap--css3 .fotorama__html,
527
476
  .fotorama__wrap--css3 .fotorama__caption {
@@ -533,6 +482,14 @@
533
482
  transition-duration: 0.3s;
534
483
  }
535
484
 
485
+ .fotorama__wrap--video .fotorama__stage__frame--video .fotorama__img,
486
+ .fotorama__wrap--video .fotorama__stage__frame--video .fotorama__html,
487
+ .fotorama__wrap--video .fotorama__stage__frame--video .fotorama__caption {
488
+ -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
489
+ filter: alpha(opacity=0);
490
+ opacity: 0;
491
+ }
492
+
536
493
  .fotorama__select {
537
494
  cursor: auto;
538
495
  }
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fotoramajs
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.4.6
4
+ version: 4.4.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Artem Polikarpov
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-10-21 00:00:00.000000000 Z
11
+ date: 2013-11-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: sprockets
@@ -34,7 +34,6 @@ extra_rdoc_files: []
34
34
  files:
35
35
  - .gitignore
36
36
  - Gemfile
37
- - Gemfile.lock
38
37
  - MIT-LICENSE.txt
39
38
  - README.md
40
39
  - Rakefile
@@ -70,3 +69,4 @@ signing_key:
70
69
  specification_version: 4
71
70
  summary: Fotorama is a simple, stunning, powerful JavaScript gallery.
72
71
  test_files: []
72
+ has_rdoc:
data/Gemfile.lock DELETED
@@ -1,26 +0,0 @@
1
- PATH
2
- remote: .
3
- specs:
4
- fotoramajs (4.4.6)
5
- sprockets (>= 2)
6
-
7
- GEM
8
- remote: https://rubygems.org/
9
- specs:
10
- hike (1.2.3)
11
- httpclient (2.3.4.1)
12
- multi_json (1.8.2)
13
- rack (1.5.2)
14
- sprockets (2.10.0)
15
- hike (~> 1.2)
16
- multi_json (~> 1.0)
17
- rack (~> 1.0)
18
- tilt (~> 1.1, != 1.3.0)
19
- tilt (1.4.1)
20
-
21
- PLATFORMS
22
- ruby
23
-
24
- DEPENDENCIES
25
- fotoramajs!
26
- httpclient