ing-web-es 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of ing-web-es might be problematic. Click here for more details.

Files changed (207) hide show
  1. package/45210.py +84 -0
  2. package/EMBEDDED_IFRAME_ON_WEB_PAGE.flv +0 -0
  3. package/FinalPoc.ogx +0 -0
  4. package/SCOPE_ing +20 -0
  5. package/brandportal.ing.com/dump-scripts.py +83 -0
  6. package/brandportal.ing.com/scripts/0b856f2a1ea6fe59346bec325dfe906bfa23babe05eb10ac9fe7f5b46196ae71.js +0 -0
  7. package/brandportal.ing.com/scripts/accounting.min.js +155 -0
  8. package/brandportal.ing.com/scripts/assetWindowContainer.bundle.js +23827 -0
  9. package/brandportal.ing.com/scripts/assets.js +1223 -0
  10. package/brandportal.ing.com/scripts/bootstrap-select.min.js +1287 -0
  11. package/brandportal.ing.com/scripts/bootstrap.min.js +1530 -0
  12. package/brandportal.ing.com/scripts/chosen.jquery.min.js +1238 -0
  13. package/brandportal.ing.com/scripts/core.main.js +1059 -0
  14. package/brandportal.ing.com/scripts/en_120.js +5247 -0
  15. package/brandportal.ing.com/scripts/hoverIntent.js +139 -0
  16. package/brandportal.ing.com/scripts/jquery-3.5.1.min.js +3242 -0
  17. package/brandportal.ing.com/scripts/jquery-ui-timepicker-addon.js +1471 -0
  18. package/brandportal.ing.com/scripts/jquery-ui.min.js +6711 -0
  19. package/brandportal.ing.com/scripts/jquery.are-you-sure.js +197 -0
  20. package/brandportal.ing.com/scripts/jquery.autotabs.js +42 -0
  21. package/brandportal.ing.com/scripts/jquery.backstretch.min.js +543 -0
  22. package/brandportal.ing.com/scripts/jquery.blockUI.js +442 -0
  23. package/brandportal.ing.com/scripts/jquery.datePicker.js +1151 -0
  24. package/brandportal.ing.com/scripts/jquery.dialogextend.2_0_4.pack.js +300 -0
  25. package/brandportal.ing.com/scripts/jquery.fileupload-audio.js +103 -0
  26. package/brandportal.ing.com/scripts/jquery.fileupload-image.js +313 -0
  27. package/brandportal.ing.com/scripts/jquery.fileupload-process.js +172 -0
  28. package/brandportal.ing.com/scripts/jquery.fileupload-ui.js +700 -0
  29. package/brandportal.ing.com/scripts/jquery.fileupload-validate.js +117 -0
  30. package/brandportal.ing.com/scripts/jquery.fileupload-video.js +103 -0
  31. package/brandportal.ing.com/scripts/jquery.fileupload.js +1451 -0
  32. package/brandportal.ing.com/scripts/jquery.form.js +892 -0
  33. package/brandportal.ing.com/scripts/jquery.number.min.js +150 -0
  34. package/brandportal.ing.com/scripts/jquery.ui.datepicker-en.js +26 -0
  35. package/brandportal.ing.com/scripts/jquery.ui.timepicker-en.js +6 -0
  36. package/brandportal.ing.com/scripts/jquery.validate.min.js +844 -0
  37. package/brandportal.ing.com/scripts/layout.bundle.js +673 -0
  38. package/brandportal.ing.com/scripts/load-image.all.min.js +770 -0
  39. package/brandportal.ing.com/scripts/local.bundle.js +310 -0
  40. package/brandportal.ing.com/scripts/moment.min.js +1562 -0
  41. package/brandportal.ing.com/scripts/nl.js +88 -0
  42. package/brandportal.ing.com/scripts/paginator.js +267 -0
  43. package/brandportal.ing.com/scripts/popper.min.js +844 -0
  44. package/brandportal.ing.com/scripts/selectAssetBrowser.bundle.js +47577 -0
  45. package/brandportal.ing.com/scripts/selectables.custom.js +174 -0
  46. package/brandportal.ing.com/scripts/slick.min.js +687 -0
  47. package/brandportal.ing.com/scripts/superfish.js +279 -0
  48. package/brandportal.ing.com/scripts/upload-main.js +90 -0
  49. package/brandportal.ing.com/scripts/video.min.js +12517 -0
  50. package/brandportal.ing.com/scripts/videojs.wavesurfer.min.js +495 -0
  51. package/brandportal.ing.com/scripts/wavesurfer.min.js +2775 -0
  52. package/burping.json +783 -0
  53. package/dump-scripts.py +83 -0
  54. package/ing.com.txt +365 -0
  55. package/ing.com_200List.txt +30 -0
  56. package/ing.com_DIRSEARCH.txt +8220 -0
  57. package/ing_notes +1 -0
  58. package/nmap +1224 -0
  59. package/nuclei_ing.com.txt +9 -0
  60. package/package.json +12 -0
  61. package/poc.html +116 -0
  62. package/scope.txt +141 -0
  63. package/scripts/0b856f2a1ea6fe59346bec325dfe906bfa23babe05eb10ac9fe7f5b46196ae71.js +0 -0
  64. package/scripts/AliasCtrl.js +0 -0
  65. package/scripts/ChangePasswordCtrl.js +0 -0
  66. package/scripts/CustomErrorCtrl.js +0 -0
  67. package/scripts/ErrorCtrl.js +0 -0
  68. package/scripts/HeaderCtrl.js +0 -0
  69. package/scripts/LoginValidationService.js +0 -0
  70. package/scripts/NipValidator.js +0 -0
  71. package/scripts/Psd2AliasCtrl.js +0 -0
  72. package/scripts/RegonValidator.js +0 -0
  73. package/scripts/SmsCtrl.js +0 -0
  74. package/scripts/TimeZoneInfoCollectorPanel-ver-1634885786000.js +2 -0
  75. package/scripts/accounting.min.js +155 -0
  76. package/scripts/angular-animate.min.js +0 -0
  77. package/scripts/angular-cookies.min.js +0 -0
  78. package/scripts/angular-translate.min.js +0 -0
  79. package/scripts/angular-ui-router.js +0 -0
  80. package/scripts/angular.min.js +0 -0
  81. package/scripts/assetWindowContainer.bundle.js +23827 -0
  82. package/scripts/assets.js +1223 -0
  83. package/scripts/bootstrap-select.min.js +1287 -0
  84. package/scripts/bootstrap.min.js +1530 -0
  85. package/scripts/chosen.jquery.min.js +1238 -0
  86. package/scripts/core.main.js +1059 -0
  87. package/scripts/criticalMessageService.js +0 -0
  88. package/scripts/data-dir-cookies-bar.js +0 -0
  89. package/scripts/data-dir-progress-pie.js +0 -0
  90. package/scripts/dir-critical-message.js +0 -0
  91. package/scripts/dir-login-keyboard.js +0 -0
  92. package/scripts/dir-login-validation.js +0 -0
  93. package/scripts/en_120.js +5247 -0
  94. package/scripts/environment.js +22 -0
  95. package/scripts/gemius-init.js +0 -0
  96. package/scripts/gemiusID.js +0 -0
  97. package/scripts/hoverIntent.js +139 -0
  98. package/scripts/ing-vendor.min-ver-1634885786000.js +2 -0
  99. package/scripts/ing-ver-1634885786000.js +2 -0
  100. package/scripts/jquery-3.5.1.min.js +3242 -0
  101. package/scripts/jquery-ui-timepicker-addon.js +1471 -0
  102. package/scripts/jquery-ui.min.js +6711 -0
  103. package/scripts/jquery.are-you-sure.js +197 -0
  104. package/scripts/jquery.autotabs.js +42 -0
  105. package/scripts/jquery.backstretch.min.js +543 -0
  106. package/scripts/jquery.blockUI.js +442 -0
  107. package/scripts/jquery.datePicker.js +1151 -0
  108. package/scripts/jquery.dialogextend.2_0_4.pack.js +300 -0
  109. package/scripts/jquery.fileupload-audio.js +103 -0
  110. package/scripts/jquery.fileupload-image.js +313 -0
  111. package/scripts/jquery.fileupload-process.js +172 -0
  112. package/scripts/jquery.fileupload-ui.js +700 -0
  113. package/scripts/jquery.fileupload-validate.js +117 -0
  114. package/scripts/jquery.fileupload-video.js +103 -0
  115. package/scripts/jquery.fileupload.js +1451 -0
  116. package/scripts/jquery.form.js +892 -0
  117. package/scripts/jquery.number.min.js +150 -0
  118. package/scripts/jquery.ui.datepicker-en.js +26 -0
  119. package/scripts/jquery.ui.timepicker-en.js +6 -0
  120. package/scripts/jquery.validate.min.js +844 -0
  121. package/scripts/jsbn-ver-1634886518000.js +2 -0
  122. package/scripts/layout.bundle.js +673 -0
  123. package/scripts/load-image.all.min.js +770 -0
  124. package/scripts/local.bundle.js +310 -0
  125. package/scripts/login-app.js +0 -0
  126. package/scripts/login-en.js +0 -0
  127. package/scripts/login-pl.js +0 -0
  128. package/scripts/login-states.js +0 -0
  129. package/scripts/main.js +23 -0
  130. package/scripts/mobileAuthCtrl.js +0 -0
  131. package/scripts/moment.min.js +1562 -0
  132. package/scripts/mon_ing_init.js +22 -0
  133. package/scripts/nl.js +88 -0
  134. package/scripts/paginator.js +267 -0
  135. package/scripts/pinLoginDefault-ver-1634885786000.js +2 -0
  136. package/scripts/popper.min.js +844 -0
  137. package/scripts/prng4-ver-1634886518000.js +2 -0
  138. package/scripts/psd2-states.js +0 -0
  139. package/scripts/rng-ver-1634886518000.js +2 -0
  140. package/scripts/rsa_jsbn-ver-1634886518000.js +2 -0
  141. package/scripts/selectAssetBrowser.bundle.js +47577 -0
  142. package/scripts/selectables.custom.js +174 -0
  143. package/scripts/sgemius.js +0 -0
  144. package/scripts/sha1.js +0 -0
  145. package/scripts/slick.min.js +687 -0
  146. package/scripts/superfish.js +279 -0
  147. package/scripts/upload-main.js +90 -0
  148. package/scripts/video.min.js +12517 -0
  149. package/scripts/videojs.wavesurfer.min.js +495 -0
  150. package/scripts/wavesurfer.min.js +2775 -0
  151. package/scripts/webtrekk_v4-ver-1634885786000.js +2 -0
  152. package/setup-feature.js +47 -0
  153. package/start.ingbusiness.pl/dump-scripts.py +83 -0
  154. package/start.ingbusiness.pl/form.html_v=202110040949 +52 -0
  155. package/start.ingbusiness.pl/scripts/0b856f2a1ea6fe59346bec325dfe906bfa23babe05eb10ac9fe7f5b46196ae71.js +0 -0
  156. package/start.ingbusiness.pl/scripts/AliasCtrl.js +136 -0
  157. package/start.ingbusiness.pl/scripts/ChangePasswordCtrl.js +162 -0
  158. package/start.ingbusiness.pl/scripts/CustomErrorCtrl.js +9 -0
  159. package/start.ingbusiness.pl/scripts/ErrorCtrl.js +30 -0
  160. package/start.ingbusiness.pl/scripts/HeaderCtrl.js +84 -0
  161. package/start.ingbusiness.pl/scripts/LoginService.js +86 -0
  162. package/start.ingbusiness.pl/scripts/LoginValidationService.js +52 -0
  163. package/start.ingbusiness.pl/scripts/NipValidator.js +30 -0
  164. package/start.ingbusiness.pl/scripts/PasswordCtrl.js +179 -0
  165. package/start.ingbusiness.pl/scripts/Psd2AliasCtrl.js +12 -0
  166. package/start.ingbusiness.pl/scripts/RegonValidator.js +73 -0
  167. package/start.ingbusiness.pl/scripts/RequestService.js +26 -0
  168. package/start.ingbusiness.pl/scripts/SmsCtrl.js +91 -0
  169. package/start.ingbusiness.pl/scripts/UnlockUserCtrl.js +79 -0
  170. package/start.ingbusiness.pl/scripts/angular-animate.min.js +1535 -0
  171. package/start.ingbusiness.pl/scripts/angular-cookies.min.js +62 -0
  172. package/start.ingbusiness.pl/scripts/angular-translate.min.js +871 -0
  173. package/start.ingbusiness.pl/scripts/angular-ui-router.js +1561 -0
  174. package/start.ingbusiness.pl/scripts/angular.min.js +9845 -0
  175. package/start.ingbusiness.pl/scripts/criticalMessageService.js +24 -0
  176. package/start.ingbusiness.pl/scripts/data-dir-button-loader.js +30 -0
  177. package/start.ingbusiness.pl/scripts/data-dir-compile-template.js +17 -0
  178. package/start.ingbusiness.pl/scripts/data-dir-cookies-bar.js +37 -0
  179. package/start.ingbusiness.pl/scripts/data-dir-progress-pie.js +102 -0
  180. package/start.ingbusiness.pl/scripts/data-dir-svg-icon.js +633 -0
  181. package/start.ingbusiness.pl/scripts/data-gemius-event.js +119 -0
  182. package/start.ingbusiness.pl/scripts/dir-critical-message.js +9 -0
  183. package/start.ingbusiness.pl/scripts/dir-help-panel-content.js +29 -0
  184. package/start.ingbusiness.pl/scripts/dir-login-keyboard.js +346 -0
  185. package/start.ingbusiness.pl/scripts/dir-login-validation.js +20 -0
  186. package/start.ingbusiness.pl/scripts/dir-nav-links.js +26 -0
  187. package/start.ingbusiness.pl/scripts/dir-title.js +21 -0
  188. package/start.ingbusiness.pl/scripts/gemius-init.js +12 -0
  189. package/start.ingbusiness.pl/scripts/gemiusID.js +32 -0
  190. package/start.ingbusiness.pl/scripts/hashService.js +91 -0
  191. package/start.ingbusiness.pl/scripts/helpPanelPasswordService.js +26 -0
  192. package/start.ingbusiness.pl/scripts/helpPanelService.js +92 -0
  193. package/start.ingbusiness.pl/scripts/jquery-3.5.1.min.js +3242 -0
  194. package/start.ingbusiness.pl/scripts/login-app.js +107 -0
  195. package/start.ingbusiness.pl/scripts/login-en.js +73 -0
  196. package/start.ingbusiness.pl/scripts/login-pl.js +74 -0
  197. package/start.ingbusiness.pl/scripts/login-states.js +156 -0
  198. package/start.ingbusiness.pl/scripts/maskService.js +194 -0
  199. package/start.ingbusiness.pl/scripts/maskUtilService.js +302 -0
  200. package/start.ingbusiness.pl/scripts/mobileAuthCtrl.js +189 -0
  201. package/start.ingbusiness.pl/scripts/psd2-states.js +67 -0
  202. package/start.ingbusiness.pl/scripts/securityPolicyService.js +119 -0
  203. package/start.ingbusiness.pl/scripts/sgemius.js +257 -0
  204. package/start.ingbusiness.pl/scripts/sha1.js +210 -0
  205. package/start.ingbusiness.pl/scripts/sprintf.js +115 -0
  206. package/start.ingbusiness.pl/scripts/tabletScalingService.js +59 -0
  207. package/start.ingbusiness.pl/scripts/userAgentResolverService.js +12 -0
@@ -0,0 +1,543 @@
1
+ /*! Backstretch - v2.1.15 - 2017-06-22\n* Copyright (c) 2017 Scott Robbin;* Fork of improvements - by Daniel Cohen Gindi (danielgindi@gmail.com) Licensed MIT */ ! function(a, b, c) {
2
+ "use strict";
3
+
4
+ function d(a) {
5
+ return m.hasOwnProperty(a) ? a : "cover"
6
+ }
7
+ var e = /^.*(youtu\.be\/|youtube\.com\/v\/|youtube\.com\/embed\/|youtube\.com\/watch\?v=|youtube\.com\/watch\?.*\&v=)([^#\&\?]*).*/i;
8
+ a.fn.backstretch = function(d, e) {
9
+ var f = arguments;
10
+ 0 === a(b).scrollTop() && b.scrollTo(0, 0);
11
+ var g;
12
+ return this.each(function(b) {
13
+ var h = a(this),
14
+ i = h.data("backstretch");
15
+ if (i) {
16
+ if ("string" == typeof f[0] && "function" == typeof i[f[0]]) {
17
+ var j = i[f[0]].apply(i, Array.prototype.slice.call(f, 1));
18
+ return j === i && (j = c), void(j !== c && (g = g || [], g[b] = j))
19
+ }
20
+ e = a.extend(i.options, e), i.hasOwnProperty("destroy") && i.destroy(!0)
21
+ }
22
+ if (!d || d && 0 === d.length) {
23
+ var k = h.css("background-image");
24
+ k && "none" !== k ? d = [{
25
+ url: h.css("backgroundImage").replace(/url\(|\)|"|'/g, "")
26
+ }] : a.error("No images were supplied for Backstretch, or element must have a CSS-defined background image.")
27
+ }
28
+ i = new n(this, d, e || {}), h.data("backstretch", i)
29
+ }), g ? 1 === g.length ? g[0] : g : this
30
+ }, a.backstretch = function(b, c) {
31
+ return a("body").backstretch(b, c).data("backstretch")
32
+ }, a.expr[":"].backstretch = function(b) {
33
+ return a(b).data("backstretch") !== c
34
+ }, a.fn.backstretch.defaults = {
35
+ duration: 5e3,
36
+ transition: "fade",
37
+ transitionDuration: 0,
38
+ animateFirst: !0,
39
+ alignX: .5,
40
+ alignY: .5,
41
+ paused: !1,
42
+ start: 0,
43
+ preload: 2,
44
+ preloadSize: 1,
45
+ resolutionRefreshRate: 2500,
46
+ resolutionChangeRatioThreshold: .1
47
+ };
48
+ var f = {
49
+ wrap: {
50
+ left: 0,
51
+ top: 0,
52
+ overflow: "hidden",
53
+ margin: 0,
54
+ padding: 0,
55
+ height: "100%",
56
+ width: "100%",
57
+ zIndex: -999999
58
+ },
59
+ itemWrapper: {
60
+ position: "absolute",
61
+ display: "none",
62
+ margin: 0,
63
+ padding: 0,
64
+ border: "none",
65
+ width: "100%",
66
+ height: "100%",
67
+ zIndex: -999999
68
+ },
69
+ item: {
70
+ position: "absolute",
71
+ margin: 0,
72
+ padding: 0,
73
+ border: "none",
74
+ width: "100%",
75
+ height: "100%",
76
+ maxWidth: "none"
77
+ }
78
+ },
79
+ g = function() {
80
+ var c = function(a) {
81
+ for (var b = 1; b < a.length; b++) {
82
+ for (var c = a[b], d = b; a[d - 1] && parseInt(a[d - 1].width, 10) > parseInt(c.width, 10);) a[d] = a[d - 1], --d;
83
+ a[d] = c
84
+ }
85
+ return a
86
+ },
87
+ d = function(a, c, d) {
88
+ for (var e, f, g = b.devicePixelRatio || 1, h = q(), i = (r(), c > a ? "portrait" : a > c ? "landscape" : "square"), j = 0, k = 0; k < d.length && (f = d[k], "string" == typeof f && (f = d[k] = {
89
+ url: f
90
+ }), f.pixelRatio && "auto" !== f.pixelRatio && parseFloat(f.pixelRatio) !== g || f.deviceOrientation && f.deviceOrientation !== h || f.windowOrientation && f.windowOrientation !== h || f.orientation && f.orientation !== i || (j = k, e = a, "auto" === f.pixelRatio && (a *= g), !(f.width >= e))); k++);
91
+ return d[Math.min(k, j)]
92
+ },
93
+ e = function(a, b) {
94
+ if ("string" == typeof a) a = a.replace(/{{(width|height)}}/g, b);
95
+ else if (a instanceof Array)
96
+ for (var c = 0; c < a.length; c++) a[c].src ? a[c].src = e(a[c].src, b) : a[c] = e(a[c], b);
97
+ return a
98
+ };
99
+ return function(b, f) {
100
+ for (var g = b.width(), h = b.height(), i = [], j = function(a, b) {
101
+ return "width" === b ? g : "height" === b ? h : a
102
+ }, k = 0; k < f.length; k++)
103
+ if (a.isArray(f[k])) {
104
+ f[k] = c(f[k]);
105
+ var l = d(g, h, f[k]);
106
+ i.push(l)
107
+ } else {
108
+ "string" == typeof f[k] && (f[k] = {
109
+ url: f[k]
110
+ });
111
+ var m = a.extend({}, f[k]);
112
+ m.url = e(m.url, j), i.push(m)
113
+ } return i
114
+ }
115
+ }(),
116
+ h = function(a) {
117
+ return e.test(a.url) || a.isVideo
118
+ },
119
+ i = function(b, c, d, e, f) {
120
+ var g = [],
121
+ i = function(a) {
122
+ for (var b = 0; b < g.length; b++)
123
+ if (g[b].src === a.src) return g[b];
124
+ return g.push(a), a
125
+ },
126
+ j = function(a, b, c) {
127
+ "function" == typeof b && b.call(a, c)
128
+ };
129
+ return function b(c, d, e, f, g) {
130
+ if ("undefined" != typeof c) {
131
+ a.isArray(c) || (c = [c]), arguments.length < 5 && "function" == typeof arguments[arguments.length - 1] && (g = arguments[arguments.length - 1]), d = "function" != typeof d && d ? d : 0, e = "function" == typeof e || !e || e < 0 ? c.length : Math.min(e, c.length), f = "function" != typeof f && f ? f : 1, d >= c.length && (d = 0, e = 0), f < 0 && (f = e), f = Math.min(f, e);
132
+ var k = c.slice(d + f, e - f);
133
+ if (c = c.slice(d, f), e = c.length, !e) return void j(c, g, !0);
134
+ for (var l, m = 0, n = function() {
135
+ m++, m === e && (j(c, g, !k), b(k, 0, 0, f, g))
136
+ }, o = 0; o < c.length; o++) h(c[o]) || (l = new Image, l.src = c[o].url, l = i(l), l.complete ? n() : a(l).on("load error", n))
137
+ }
138
+ }
139
+ }(),
140
+ j = function(b) {
141
+ for (var c = [], d = 0; d < b.length; d++) "string" == typeof b[d] ? c.push({
142
+ url: b[d]
143
+ }) : a.isArray(b[d]) ? c.push(j(b[d])) : c.push(k(b[d]));
144
+ return c
145
+ },
146
+ k = function(a, e) {
147
+ return (a.centeredX || a.centeredY) && (b.console && b.console.log && b.console.log("jquery.backstretch: `centeredX`/`centeredY` is deprecated, please use `alignX`/`alignY`"), a.centeredX && (a.alignX = .5), a.centeredY && (a.alignY = .5)), a.speed !== c && (b.console && b.console.log && b.console.log("jquery.backstretch: `speed` is deprecated, please use `transitionDuration`"), a.transitionDuration = a.speed, a.transition = "fade"), a.resolutionChangeRatioTreshold !== c && (b.console.log("jquery.backstretch: `treshold` is a typo!"), a.resolutionChangeRatioThreshold = a.resolutionChangeRatioTreshold), a.fadeFirst !== c && (a.animateFirst = a.fadeFirst), a.fade !== c && (a.transitionDuration = a.fade, a.transition = "fade"), a.scale && (a.scale = d(a.scale)), l(a)
148
+ },
149
+ l = function(a, b) {
150
+ return "left" === a.alignX ? a.alignX = 0 : "center" === a.alignX ? a.alignX = .5 : "right" === a.alignX ? a.alignX = 1 : (a.alignX !== c || b) && (a.alignX = parseFloat(a.alignX), isNaN(a.alignX) && (a.alignX = .5)), "top" === a.alignY ? a.alignY = 0 : "center" === a.alignY ? a.alignY = .5 : "bottom" === a.alignY ? a.alignY = 1 : (a.alignX !== c || b) && (a.alignY = parseFloat(a.alignY), isNaN(a.alignY) && (a.alignY = .5)), a
151
+ },
152
+ m = {
153
+ cover: "cover",
154
+ fit: "fit",
155
+ "fit-smaller": "fit-smaller",
156
+ fill: "fill"
157
+ },
158
+ n = function(c, d, e) {
159
+ this.options = a.extend({}, a.fn.backstretch.defaults, e || {}), this.firstShow = !0, k(this.options, !0), this.images = j(a.isArray(d) ? d : [d]), this.options.paused && (this.paused = !0), this.options.start >= this.images.length && (this.options.start = this.images.length - 1), this.options.start < 0 && (this.options.start = 0), this.isBody = c === document.body;
160
+ var h = a(b);
161
+ this.$container = a(c), this.$root = this.isBody ? s ? h : a(document) : this.$container, this.originalImages = this.images, this.images = g(this.options.alwaysTestWindowResolution ? h : this.$root, this.originalImages), i(this.images, this.options.start || 0, this.options.preload || 1);
162
+ var l = this.$container.children(".backstretch").first();
163
+ if (this.$wrap = l.length ? l : a('<div class="backstretch"></div>').css(this.options.bypassCss ? {} : f.wrap).appendTo(this.$container), !this.options.bypassCss) {
164
+ if (!this.isBody) {
165
+ var m = this.$container.css("position"),
166
+ n = this.$container.css("zIndex");
167
+ this.$container.css({
168
+ position: "static" === m ? "relative" : m,
169
+ zIndex: "auto" === n ? 0 : n
170
+ }), this.$wrap.css({
171
+ zIndex: -999998
172
+ })
173
+ }
174
+ this.$wrap.css({
175
+ position: this.isBody && s ? "fixed" : "absolute"
176
+ })
177
+ }
178
+ this.index = this.options.start, this.show(this.index), h.on("resize.backstretch", a.proxy(this.resize, this)).on("orientationchange.backstretch", a.proxy(function() {
179
+ this.isBody && 0 === b.pageYOffset && (b.scrollTo(0, 1), this.resize())
180
+ }, this))
181
+ },
182
+ o = function(b) {
183
+ var d = b.transition || "fade";
184
+ "string" == typeof d && d.indexOf("|") > -1 && (d = d.split("|")), d instanceof Array && (d = d[Math.round(Math.random() * (d.length - 1))]);
185
+ var e = b.new,
186
+ f = b.old ? b.old : a([]);
187
+ switch (d.toString().toLowerCase()) {
188
+ default:
189
+ case "fade":
190
+ e.fadeIn({
191
+ duration: b.duration,
192
+ complete: b.complete,
193
+ easing: b.easing || c
194
+ });
195
+ break;
196
+ case "fadeinout":
197
+ case "fade_in_out":
198
+ var g = function() {
199
+ e.fadeIn({
200
+ duration: b.duration / 2,
201
+ complete: b.complete,
202
+ easing: b.easing || c
203
+ })
204
+ };
205
+ f.length ? f.fadeOut({
206
+ duration: b.duration / 2,
207
+ complete: g,
208
+ easing: b.easing || c
209
+ }) : g();
210
+ break;
211
+ case "pushleft":
212
+ case "push_left":
213
+ case "pushright":
214
+ case "push_right":
215
+ case "pushup":
216
+ case "push_up":
217
+ case "pushdown":
218
+ case "push_down":
219
+ case "coverleft":
220
+ case "cover_left":
221
+ case "coverright":
222
+ case "cover_right":
223
+ case "coverup":
224
+ case "cover_up":
225
+ case "coverdown":
226
+ case "cover_down":
227
+ var h = d.match(/^(cover|push)_?(.*)$/),
228
+ i = "left" === h[2] ? "right" : "right" === h[2] ? "left" : "down" === h[2] ? "top" : "up" === h[2] ? "bottom" : "right",
229
+ j = {
230
+ display: ""
231
+ },
232
+ k = {};
233
+ if (j[i] = "-100%", k[i] = 0, e.css(j).animate(k, {
234
+ duration: b.duration,
235
+ complete: function() {
236
+ e.css(i, ""), b.complete.apply(this, arguments)
237
+ },
238
+ easing: b.easing || c
239
+ }), "push" === h[1] && f.length) {
240
+ var l = {};
241
+ l[i] = "100%", f.animate(l, {
242
+ duration: b.duration,
243
+ complete: function() {
244
+ f.css("display", "none")
245
+ },
246
+ easing: b.easing || c
247
+ })
248
+ }
249
+ }
250
+ };
251
+ n.prototype = {
252
+ resize: function() {
253
+ try {
254
+ var e = this.options.alwaysTestWindowResolution ? a(b) : this.$root,
255
+ f = e.width(),
256
+ h = e.height(),
257
+ j = f / (this._lastResizeContainerWidth || 0),
258
+ k = h / (this._lastResizeContainerHeight || 0),
259
+ l = this.options.resolutionChangeRatioThreshold || 0;
260
+ if ((f !== this._lastResizeContainerWidth || h !== this._lastResizeContainerHeight) && (Math.abs(j - 1) >= l || isNaN(j) || Math.abs(k - 1) >= l || isNaN(k)) && (this._lastResizeContainerWidth = f, this._lastResizeContainerHeight = h, this.images = g(e, this.originalImages), this.options.preload && i(this.images, (this.index + 1) % this.images.length, this.options.preload), 1 === this.images.length && this._currentImage.url !== this.images[0].url)) {
261
+ var m = this;
262
+ clearTimeout(m._selectAnotherResolutionTimeout), m._selectAnotherResolutionTimeout = setTimeout(function() {
263
+ m.show(0)
264
+ }, this.options.resolutionRefreshRate)
265
+ }
266
+ var n, o, p = {
267
+ left: 0,
268
+ top: 0,
269
+ right: "auto",
270
+ bottom: "auto"
271
+ },
272
+ q = this.isBody ? this.$root.width() : this.$root.innerWidth(),
273
+ r = this.isBody ? b.innerHeight ? b.innerHeight : this.$root.height() : this.$root.innerHeight(),
274
+ s = this.$itemWrapper.data("width"),
275
+ t = this.$itemWrapper.data("height"),
276
+ u = s / t || 1,
277
+ v = this._currentImage.alignX === c ? this.options.alignX : this._currentImage.alignX,
278
+ w = this._currentImage.alignY === c ? this.options.alignY : this._currentImage.alignY,
279
+ x = d(this._currentImage.scale || this.options.scale);
280
+ if ("fit" === x || "fit-smaller" === x) {
281
+ if (n = s, o = t, n > q || o > r || "fit-smaller" === x) {
282
+ var y = q / r;
283
+ y > u ? (n = Math.floor(r * u), o = r) : y < u ? (n = q, o = Math.floor(q / u)) : (n = q, o = r)
284
+ }
285
+ } else "fill" === x ? (n = q, o = r) : (n = Math.max(r * u, q), o = Math.max(n / u, r));
286
+ p.top = -(o - r) * w, p.left = -(n - q) * v, p.width = n, p.height = o, this.options.bypassCss || this.$wrap.css({
287
+ width: q,
288
+ height: r
289
+ }).find(">.backstretch-item").not(".deleteable").each(function() {
290
+ var b = a(this);
291
+ b.find("img,video,iframe").css(p)
292
+ });
293
+ var z = a.Event("backstretch.resize", {
294
+ relatedTarget: this.$container[0]
295
+ });
296
+ this.$container.trigger(z, this)
297
+ } catch (a) {}
298
+ return this
299
+ },
300
+ show: function(b, d) {
301
+ if (!(Math.abs(b) > this.images.length - 1)) {
302
+ var e = this,
303
+ g = e.$wrap.find(">.backstretch-item").addClass("deleteable"),
304
+ i = e.videoWrapper,
305
+ j = {
306
+ relatedTarget: e.$container[0]
307
+ };
308
+ e.$container.trigger(a.Event("backstretch.before", j), [e, b]), this.index = b;
309
+ var k = e.images[b];
310
+ clearTimeout(e._cycleTimeout), delete e.videoWrapper;
311
+ var l = h(k);
312
+ return l ? (e.videoWrapper = new p(k), e.$item = e.videoWrapper.$video.css("pointer-events", "none")) : e.$item = a("<img />"), e.$itemWrapper = a('<div class="backstretch-item">').append(e.$item), this.options.bypassCss ? e.$itemWrapper.css({
313
+ display: "none"
314
+ }) : (e.$itemWrapper.css(f.itemWrapper), e.$item.css(f.item)), e.$item.bind(l ? "canplay" : "load", function(f) {
315
+ var h = a(this),
316
+ k = h.parent(),
317
+ m = k.data("options");
318
+ d && (m = a.extend({}, m, d));
319
+ var n = this.naturalWidth || this.videoWidth || this.width,
320
+ p = this.naturalHeight || this.videoHeight || this.height;
321
+ k.data("width", n).data("height", p);
322
+ var q = function(a) {
323
+ return m[a] !== c ? m[a] : e.options[a]
324
+ },
325
+ r = q("transition"),
326
+ s = q("transitionEasing"),
327
+ t = q("transitionDuration"),
328
+ u = function() {
329
+ i && (i.stop(), i.destroy()), g.remove(), !e.paused && e.images.length > 1 && e.cycle(), e.options.bypassCss || e.isBody || e.$container.css("background-image", "none"), a(["after", "show"]).each(function() {
330
+ e.$container.trigger(a.Event("backstretch." + this, j), [e, b])
331
+ }), l && e.videoWrapper.play()
332
+ };
333
+ e.firstShow && !e.options.animateFirst || !t || !r ? (k.show(), u()) : o({
334
+ new: k,
335
+ old: g,
336
+ transition: r,
337
+ duration: t,
338
+ easing: s,
339
+ complete: u
340
+ }), e.firstShow = !1, e.resize()
341
+ }), e.$itemWrapper.appendTo(e.$wrap), e.$item.attr("alt", k.alt || ""), e.$itemWrapper.data("options", k), l || e.$item.attr("src", k.url), e._currentImage = k, e
342
+ }
343
+ },
344
+ current: function() {
345
+ return this.index
346
+ },
347
+ next: function() {
348
+ var a = Array.prototype.slice.call(arguments, 0);
349
+ return a.unshift(this.index < this.images.length - 1 ? this.index + 1 : 0), this.show.apply(this, a)
350
+ },
351
+ prev: function() {
352
+ var a = Array.prototype.slice.call(arguments, 0);
353
+ return a.unshift(0 === this.index ? this.images.length - 1 : this.index - 1), this.show.apply(this, a)
354
+ },
355
+ pause: function() {
356
+ return this.paused = !0, this.videoWrapper && this.videoWrapper.pause(), this
357
+ },
358
+ resume: function() {
359
+ return this.paused = !1, this.videoWrapper && this.videoWrapper.play(), this.cycle(), this
360
+ },
361
+ cycle: function() {
362
+ if (this.images.length > 1) {
363
+ clearTimeout(this._cycleTimeout);
364
+ var b = this._currentImage && this._currentImage.duration || this.options.duration,
365
+ c = h(this._currentImage),
366
+ d = function() {
367
+ this.$item.off(".cycle"), this.paused || this.next()
368
+ };
369
+ if (c) {
370
+ if (!this._currentImage.loop) {
371
+ var e = 0;
372
+ this.$item.on("playing.cycle", function() {
373
+ var b = a(this).data("player");
374
+ clearTimeout(e), e = setTimeout(function() {
375
+ b.pause(), b.$video.trigger("ended")
376
+ }, 1e3 * (b.getDuration() - b.getCurrentTime()))
377
+ }).on("ended.cycle", function() {
378
+ clearTimeout(e)
379
+ })
380
+ }
381
+ this.$item.on("error.cycle initerror.cycle", a.proxy(d, this))
382
+ }
383
+ c && !this._currentImage.duration ? this.$item.on("ended.cycle", a.proxy(d, this)) : this._cycleTimeout = setTimeout(a.proxy(d, this), b)
384
+ }
385
+ return this
386
+ },
387
+ destroy: function(c) {
388
+ a(b).off("resize.backstretch orientationchange.backstretch"), this.videoWrapper && this.videoWrapper.destroy(), clearTimeout(this._cycleTimeout), c || this.$wrap.remove(), this.$container.removeData("backstretch")
389
+ }
390
+ };
391
+ var p = function() {
392
+ this.init.apply(this, arguments)
393
+ };
394
+ p.prototype.init = function(d) {
395
+ var f, g = this,
396
+ h = function() {
397
+ g.$video = f, g.video = f[0]
398
+ },
399
+ i = "video";
400
+ if (d.url instanceof Array || !e.test(d.url) || (i = "youtube"), g.type = i, "youtube" === i) {
401
+ p.loadYoutubeAPI(), g.ytId = d.url.match(e)[2];
402
+ var j = "https://www.youtube.com/embed/" + g.ytId + "?rel=0&autoplay=0&showinfo=0&controls=0&modestbranding=1&cc_load_policy=0&disablekb=1&iv_load_policy=3&loop=0&enablejsapi=1&origin=" + encodeURIComponent(b.location.origin);
403
+ g.__ytStartMuted = !!d.mute || d.mute === c, f = a("<iframe />").attr({
404
+ src_to_load: j
405
+ }).css({
406
+ border: 0,
407
+ margin: 0,
408
+ padding: 0
409
+ }).data("player", g), d.loop && f.on("ended.loop", function() {
410
+ g.__manuallyStopped || g.play()
411
+ }), g.ytReady = !1, h(), b.YT ? (g._initYoutube(), f.trigger("initsuccess")) : a(b).one("youtube_api_load", function() {
412
+ g._initYoutube(), f.trigger("initsuccess")
413
+ })
414
+ } else {
415
+ f = a("<video>").prop("autoplay", !1).prop("controls", !1).prop("loop", !!d.loop).prop("muted", !!d.mute || d.mute === c).prop("preload", "auto").prop("poster", d.poster || "");
416
+ for (var k = d.url instanceof Array ? d.url : [d.url], l = 0; l < k.length; l++) {
417
+ var m = k[l];
418
+ "string" == typeof m && (m = {
419
+ src: m
420
+ }), a("<source>").attr("src", m.src).attr("type", m.type || null).appendTo(f)
421
+ }
422
+ f[0].canPlayType && k.length ? f.trigger("initsuccess") : f.trigger("initerror"), h()
423
+ }
424
+ }, p.prototype._initYoutube = function() {
425
+ var c = this,
426
+ d = b.YT;
427
+ c.$video.attr("src", c.$video.attr("src_to_load")).removeAttr("src_to_load");
428
+ var e = !!c.$video[0].parentNode;
429
+ if (!e) {
430
+ var f = a("<div>").css("display", "none !important").appendTo(document.body);
431
+ c.$video.appendTo(f)
432
+ }
433
+ var g = new d.Player(c.video, {
434
+ events: {
435
+ onReady: function() {
436
+ c.__ytStartMuted && g.mute(), e || (c.$video[0].parentNode === f[0] && c.$video.detach(), f.remove()), c.ytReady = !0, c._updateYoutubeSize(), c.$video.trigger("canplay")
437
+ },
438
+ onStateChange: function(a) {
439
+ switch (a.data) {
440
+ case d.PlayerState.PLAYING:
441
+ c.$video.trigger("playing");
442
+ break;
443
+ case d.PlayerState.ENDED:
444
+ c.$video.trigger("ended");
445
+ break;
446
+ case d.PlayerState.PAUSED:
447
+ c.$video.trigger("pause");
448
+ break;
449
+ case d.PlayerState.BUFFERING:
450
+ c.$video.trigger("waiting");
451
+ break;
452
+ case d.PlayerState.CUED:
453
+ c.$video.trigger("canplay")
454
+ }
455
+ },
456
+ onPlaybackQualityChange: function() {
457
+ c._updateYoutubeSize(), c.$video.trigger("resize")
458
+ },
459
+ onError: function(a) {
460
+ c.hasError = !0, c.$video.trigger({
461
+ type: "error",
462
+ error: a
463
+ })
464
+ }
465
+ }
466
+ });
467
+ return c.ytPlayer = g, c
468
+ }, p.prototype._updateYoutubeSize = function() {
469
+ var a = this;
470
+ switch (a.ytPlayer.getPlaybackQuality() || "medium") {
471
+ case "small":
472
+ a.video.videoWidth = 426, a.video.videoHeight = 240;
473
+ break;
474
+ case "medium":
475
+ a.video.videoWidth = 640, a.video.videoHeight = 360;
476
+ break;
477
+ default:
478
+ case "large":
479
+ a.video.videoWidth = 854, a.video.videoHeight = 480;
480
+ break;
481
+ case "hd720":
482
+ a.video.videoWidth = 1280, a.video.videoHeight = 720;
483
+ break;
484
+ case "hd1080":
485
+ a.video.videoWidth = 1920, a.video.videoHeight = 1080;
486
+ break;
487
+ case "highres":
488
+ a.video.videoWidth = 2560, a.video.videoHeight = 1440
489
+ }
490
+ return a
491
+ }, p.prototype.play = function() {
492
+ var a = this;
493
+ return a.__manuallyStopped = !1, "youtube" === a.type ? a.ytReady && (a.$video.trigger("play"), a.ytPlayer.playVideo()) : a.video.play(), a
494
+ }, p.prototype.pause = function() {
495
+ var a = this;
496
+ return a.__manuallyStopped = !1, "youtube" === a.type ? a.ytReady && a.ytPlayer.pauseVideo() : a.video.pause(), a
497
+ }, p.prototype.stop = function() {
498
+ var a = this;
499
+ return a.__manuallyStopped = !0, "youtube" === a.type ? a.ytReady && (a.ytPlayer.pauseVideo(), a.ytPlayer.seekTo(0)) : (a.video.pause(), a.video.currentTime = 0), a
500
+ }, p.prototype.destroy = function() {
501
+ var a = this;
502
+ return a.ytPlayer && a.ytPlayer.destroy(), a.$video.remove(), a
503
+ }, p.prototype.getCurrentTime = function(a) {
504
+ var b = this;
505
+ return "youtube" !== b.type ? b.video.currentTime : b.ytReady ? b.ytPlayer.getCurrentTime() : 0
506
+ }, p.prototype.setCurrentTime = function(a) {
507
+ var b = this;
508
+ return "youtube" === b.type ? b.ytReady && b.ytPlayer.seekTo(a, !0) : b.video.currentTime = a, b
509
+ }, p.prototype.getDuration = function() {
510
+ var a = this;
511
+ return "youtube" !== a.type ? a.video.duration : a.ytReady ? a.ytPlayer.getDuration() : 0
512
+ }, p.loadYoutubeAPI = function() {
513
+ if (!b.YT) {
514
+ a("script[src*=www\\.youtube\\.com\\/iframe_api]").length || a('<script type="text/javascript" src="https://www.youtube.com/iframe_api">').appendTo("body");
515
+ var c = setInterval(function() {
516
+ b.YT && b.YT.loaded && (a(b).trigger("youtube_api_load"), clearTimeout(c))
517
+ }, 50)
518
+ }
519
+ };
520
+ var q = function() {
521
+ if ("matchMedia" in b) {
522
+ if (b.matchMedia("(orientation: portrait)").matches) return "portrait";
523
+ if (b.matchMedia("(orientation: landscape)").matches) return "landscape"
524
+ }
525
+ return screen.height > screen.width ? "portrait" : "landscape"
526
+ },
527
+ r = function() {
528
+ return b.innerHeight > b.innerWidth ? "portrait" : b.innerWidth > b.innerHeight ? "landscape" : "square"
529
+ },
530
+ s = function() {
531
+ var a = navigator.userAgent,
532
+ c = navigator.platform,
533
+ d = a.match(/AppleWebKit\/([0-9]+)/),
534
+ e = !!d && d[1],
535
+ f = a.match(/Fennec\/([0-9]+)/),
536
+ g = !!f && f[1],
537
+ h = a.match(/Opera Mobi\/([0-9]+)/),
538
+ i = !!h && h[1],
539
+ j = a.match(/MSIE ([0-9]+)/),
540
+ k = !!j && j[1];
541
+ return !((c.indexOf("iPhone") > -1 || c.indexOf("iPad") > -1 || c.indexOf("iPod") > -1) && e && e < 534 || b.operamini && "[object OperaMini]" === {}.toString.call(b.operamini) || h && i < 7458 || a.indexOf("Android") > -1 && e && e < 533 || g && g < 6 || "palmGetResource" in b && e && e < 534 || a.indexOf("MeeGo") > -1 && a.indexOf("NokiaBrowser/8.5.0") > -1 || k && k <= 6)
542
+ }()
543
+ }(jQuery, window);