ing-web-es 1.0.0

Sign up to get free protection for your applications and to get access to all the features.

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,88 @@
1
+ //! moment.js locale configuration
2
+
3
+ ;
4
+ (function(global, factory) {
5
+ typeof exports === 'object' && typeof module !== 'undefined' &&
6
+ typeof require === 'function' ? factory(require('../moment')) :
7
+ typeof define === 'function' && define.amd ? define(['../moment'], factory) :
8
+ factory(global.moment)
9
+ }(this, (function(moment) {
10
+ 'use strict';
11
+
12
+
13
+ var monthsShortWithDots = 'jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.'.split('_'),
14
+ monthsShortWithoutDots = 'jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec'.split('_');
15
+
16
+ var monthsParse = [/^jan/i, /^feb/i, /^maart|mrt.?$/i, /^apr/i, /^mei$/i, /^jun[i.]?$/i, /^jul[i.]?$/i, /^aug/i, /^sep/i, /^okt/i, /^nov/i, /^dec/i];
17
+ var monthsRegex = /^(januari|februari|maart|april|mei|april|ju[nl]i|augustus|september|oktober|november|december|jan\.?|feb\.?|mrt\.?|apr\.?|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i;
18
+
19
+ var nl = moment.defineLocale('nl', {
20
+ months: 'januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december'.split('_'),
21
+ monthsShort: function(m, format) {
22
+ if (!m) {
23
+ return monthsShortWithDots;
24
+ } else if (/-MMM-/.test(format)) {
25
+ return monthsShortWithoutDots[m.month()];
26
+ } else {
27
+ return monthsShortWithDots[m.month()];
28
+ }
29
+ },
30
+
31
+ monthsRegex: monthsRegex,
32
+ monthsShortRegex: monthsRegex,
33
+ monthsStrictRegex: /^(januari|februari|maart|mei|ju[nl]i|april|augustus|september|oktober|november|december)/i,
34
+ monthsShortStrictRegex: /^(jan\.?|feb\.?|mrt\.?|apr\.?|mei|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i,
35
+
36
+ monthsParse: monthsParse,
37
+ longMonthsParse: monthsParse,
38
+ shortMonthsParse: monthsParse,
39
+
40
+ weekdays: 'zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag'.split('_'),
41
+ weekdaysShort: 'zo._ma._di._wo._do._vr._za.'.split('_'),
42
+ weekdaysMin: 'zo_ma_di_wo_do_vr_za'.split('_'),
43
+ weekdaysParseExact: true,
44
+ longDateFormat: {
45
+ LT: 'HH:mm',
46
+ LTS: 'HH:mm:ss',
47
+ L: 'DD-MM-YYYY',
48
+ LL: 'D MMMM YYYY',
49
+ LLL: 'D MMMM YYYY HH:mm',
50
+ LLLL: 'dddd D MMMM YYYY HH:mm'
51
+ },
52
+ calendar: {
53
+ sameDay: '[vandaag om] LT',
54
+ nextDay: '[morgen om] LT',
55
+ nextWeek: 'dddd [om] LT',
56
+ lastDay: '[gisteren om] LT',
57
+ lastWeek: '[afgelopen] dddd [om] LT',
58
+ sameElse: 'L'
59
+ },
60
+ relativeTime: {
61
+ future: 'over %s',
62
+ past: '%s geleden',
63
+ s: 'een paar seconden',
64
+ ss: '%d seconden',
65
+ m: 'één minuut',
66
+ mm: '%d minuten',
67
+ h: 'één uur',
68
+ hh: '%d uur',
69
+ d: 'één dag',
70
+ dd: '%d dagen',
71
+ M: 'één maand',
72
+ MM: '%d maanden',
73
+ y: 'één jaar',
74
+ yy: '%d jaar'
75
+ },
76
+ dayOfMonthOrdinalParse: /\d{1,2}(ste|de)/,
77
+ ordinal: function(number) {
78
+ return number + ((number === 1 || number === 8 || number >= 20) ? 'ste' : 'de');
79
+ },
80
+ week: {
81
+ dow: 1, // Monday is the first day of the week.
82
+ doy: 4 // The week that contains Jan 4th is the first week of the year.
83
+ }
84
+ });
85
+
86
+ return nl;
87
+
88
+ })));
@@ -0,0 +1,267 @@
1
+ var _createClass = function() {
2
+ function defineProperties(target, props) {
3
+ for (var i = 0; i < props.length; i++) {
4
+ var descriptor = props[i];
5
+ descriptor.enumerable = descriptor.enumerable || false;
6
+ descriptor.configurable = true;
7
+ if ("value" in descriptor) descriptor.writable = true;
8
+ Object.defineProperty(target, descriptor.key, descriptor);
9
+ }
10
+ }
11
+ return function(Constructor, protoProps, staticProps) {
12
+ if (protoProps) defineProperties(Constructor.prototype, protoProps);
13
+ if (staticProps) defineProperties(Constructor, staticProps);
14
+ return Constructor;
15
+ };
16
+ }();
17
+
18
+ function _classCallCheck(instance, Constructor) {
19
+ if (!(instance instanceof Constructor)) {
20
+ throw new TypeError("Cannot call a class as a function");
21
+ }
22
+ }
23
+ var newPaginator = function() {
24
+ function newPaginator(settings) {
25
+ _classCallCheck(this, newPaginator);
26
+ this.settings = {
27
+ perPage: typeof settings.perPage === 'undefined' ? 15 : settings.perPage,
28
+ page: typeof settings.page === 'undefined' ? 1 : settings.page,
29
+ itemCount: settings.itemCount,
30
+ container: settings.container,
31
+ previousText: typeof settings.previousText === 'undefined' ? 'Vorige' : settings.previousText,
32
+ nextText: typeof settings.nextText === 'undefined' ? 'Volgende' : settings.nextText,
33
+ pageAmount: 0,
34
+ paging: settings.paging
35
+ };
36
+ this.settings.pageAmount = Math.ceil(this.settings.itemCount / this.settings.perPage);
37
+ this.setElement();
38
+ this.paginatePage(this.settings.page);
39
+ var that = this;
40
+ this.settings.container.on('click', '.page-item', function() {
41
+ that.handleClick(this);
42
+ });
43
+ }
44
+ _createClass(newPaginator, [{
45
+ key: 'updatePagination',
46
+ value: function updatePagination(settings) {
47
+ this.settings.perPage = typeof settings.perPage === 'undefined' ? this.settings.perPage : settings.perPage;
48
+ this.settings.page = typeof settings.page === 'undefined' ? this.settings.page : settings.page;
49
+ this.settings.itemCount = typeof settings.itemCount === 'undefined' ? this.settings.itemCount : settings.itemCount;
50
+ this.settings.container = typeof settings.container === 'undefined' ? this.settings.container : settings.container;
51
+ this.settings.previousText = typeof settings.previousText === 'undefined' ? this.settings.previousText : settings.previousText;
52
+ this.settings.nextText = typeof settings.nextText === 'undefined' ? this.settings.nextText : settings.nextText;
53
+ this.settings.paging = typeof settings.paging === 'undefined' ? this.settings.paging : settings.paging;
54
+ this.settings.pageAmount = Math.ceil(this.settings.itemCount / this.settings.perPage);
55
+ this.settings.container.html('');
56
+ this.setElement();
57
+ this.handleElement();
58
+ }
59
+ }, {
60
+ key: 'setElement',
61
+ value: function setElement() {
62
+ this.settings.container.append('<li class="page-item prev"><a class="page-link">' + this.settings.previousText + '</a></li>');
63
+ if (this.settings.pageAmount > 1) {
64
+ for (var i = 1; i <= this.settings.pageAmount; i++) {
65
+ this.settings.container.append('<li class="page-item" data-page-id="' + i + '"><a class="page-link">' + i + '</a></li>');
66
+ }
67
+ }
68
+ this.settings.container.append('<li class="page-item next"><a class="page-link">' + this.settings.nextText + '</a></li>');
69
+ }
70
+ }, {
71
+ key: 'handleElement',
72
+ value: function handleElement() {
73
+ this.settings.container.find('.page-item').removeClass('active');
74
+ this.settings.container.find('.page-item[data-page-id=' + this.settings.page + ']').addClass('active');
75
+ this.settings.container.find('.prev').show();
76
+ this.settings.container.find('.next').show();
77
+ if (this.settings.page === 1) this.settings.container.find('.prev').hide();
78
+ if (this.settings.page === this.settings.pageAmount || this.settings.pageAmount === 0) this.settings.container.find('.next').hide();
79
+ if (this.settings.pageAmount > 10) {
80
+ var insertPoints = [];
81
+ var pageItems = this.settings.container.find('.page-item:not(.prev, .next)').hide();
82
+ this.settings.container.find('.elipsis').remove();
83
+ if (this.settings.page < 6) {
84
+ pageItems.slice(0, 6).show();
85
+ insertPoints.push(5);
86
+ pageItems.last().show();
87
+ } else if (this.settings.page > this.settings.pageAmount - 5) {
88
+ pageItems.slice(this.settings.pageAmount - 5, this.settings.pageAmount + 2).show();
89
+ insertPoints.push(0);
90
+ pageItems.first().show();
91
+ } else {
92
+ pageItems.slice(this.settings.page - 2, this.settings.page + 3).show();
93
+ pageItems.last().show();
94
+ pageItems.first().show();
95
+ insertPoints.push(0);
96
+ insertPoints.push(this.settings.pageAmount - 1);
97
+ }
98
+ if (insertPoints.length > 0) {
99
+ $.each(insertPoints, function(i, insertPoint) {
100
+ $('<li class="page-item elipsis disabled">...</li>').insertAfter(pageItems.get(insertPoint));
101
+ });
102
+ }
103
+ }
104
+ }
105
+ }, {
106
+ key: 'paginatePage',
107
+ value: function paginatePage(page) {
108
+ if (page <= this.settings.pageAmount && page > 0) {
109
+ this.settings.page = page;
110
+ this.settings.paging(page);
111
+ }
112
+ this.handleElement();
113
+ }
114
+ }, {
115
+ key: 'handleClick',
116
+ value: function handleClick(el) {
117
+ var toPage = this.settings.page;
118
+ if ($(el).hasClass('prev')) {
119
+ toPage--;
120
+ } else if ($(el).hasClass('next')) {
121
+ toPage++;
122
+ } else {
123
+ toPage = $(el).data('page-id');
124
+ }
125
+ this.paginatePage(toPage);
126
+ }
127
+ }]);
128
+ return newPaginator;
129
+ }();
130
+ var paginator = {
131
+ 'data': {
132
+ current_page: 1,
133
+ total_pages: 1,
134
+ items_per_page: 1,
135
+ pages_before: 2,
136
+ pages_after: 2
137
+ },
138
+ 'callback': function() {
139
+ try {
140
+ console.log('default callback');
141
+ } catch (e) {}
142
+ }
143
+ };
144
+ $.fn.extend({
145
+ 'paginator': function(options) {
146
+ this.children().remove();
147
+ if (options !== undefined) {
148
+ if (typeof options.data === 'object') {
149
+ $.extend(paginator.data, options.data);
150
+ paginator.data.current_page = parseInt(paginator.data.current_page);
151
+ paginator.data.total_pages = parseInt(paginator.data.total_pages);
152
+ paginator.data.items_per_page = parseInt(paginator.data.items_per_page);
153
+ paginator.data.pages_before = parseInt(paginator.data.pages_before);
154
+ paginator.data.pages_after = parseInt(paginator.data.pages_after);
155
+ }
156
+ if (typeof options.callback === 'function') {
157
+ paginator.callback = options.callback;
158
+ }
159
+ }
160
+ var element = $('<li>');
161
+ element.addClass('paginator-paging-wrapper');
162
+ var paging = $('<ul>');
163
+ paging.addClass('paginator-paging');
164
+ paging.paginator_paging();
165
+ element.append(paging);
166
+ this.append(element);
167
+ var element = $('<li>');
168
+ element.text('M');
169
+ if (this.data('previousContent')) element.html(this.data('previousContent'));
170
+ element.addClass('paginator-previous paginator-icon');
171
+ paginator.data.current_page == 1 && element.addClass('paginator-disabled');
172
+ element.click(function() {
173
+ if (paginator.data.current_page > 1) {
174
+ paginator.data.current_page = paginator.data.current_page - 1;
175
+ paginator.callback();
176
+ paging.paginator_paging();
177
+ }
178
+ });
179
+ this.prepend(element);
180
+ var element = $('<li>');
181
+ element.text('N');
182
+ if (this.data('nextContent')) element.html(this.data('nextContent'));
183
+ element.addClass('paginator-next paginator-icon');
184
+ paginator.data.current_page == paginator.data.total_pages && element.addClass('paginator-disabled');
185
+ element.click(function() {
186
+ if (paginator.data.current_page < paginator.data.total_pages) {
187
+ paginator.data.current_page = paginator.data.current_page + 1;
188
+ paginator.callback();
189
+ paging.paginator_paging();
190
+ }
191
+ });
192
+ this.append(element);
193
+ },
194
+ 'paginator_paging': function() {
195
+ $('.paginator-paging').children().remove();
196
+ var pages_before = function() {
197
+ if (paginator.data.current_page == paginator.data.total_pages) {
198
+ return paginator.data.pages_before + paginator.data.pages_after + 1;
199
+ }
200
+ if (paginator.data.total_pages - paginator.data.current_page <= paginator.data.pages_after) {
201
+ return paginator.data.current_page - paginator.data.total_pages + paginator.data.pages_before + paginator.data.pages_after + 1;
202
+ }
203
+ return paginator.data.pages_before;
204
+ };
205
+ var pages_after = function() {
206
+ if (paginator.data.current_page == 1) {
207
+ return paginator.data.pages_before + paginator.data.pages_after + 1;
208
+ }
209
+ if (paginator.data.current_page - paginator.data.pages_before <= 1) {
210
+ return paginator.data.pages_before + paginator.data.pages_after + 2 - paginator.data.current_page;
211
+ }
212
+ return paginator.data.pages_after;
213
+ };
214
+ $('.paginator-previous,.paginator-next').removeClass('paginator-disabled')
215
+ paginator.data.current_page == 1 && $('.paginator-previous').addClass('paginator-disabled');
216
+ paginator.data.current_page == paginator.data.total_pages && $('.paginator-next').addClass('paginator-disabled');
217
+ if (paginator.data.current_page > 1) {
218
+ var element = $('<li class="paginator-first">1</li>').click(function() {
219
+ paginator.data.current_page = 1;
220
+ paginator.callback();
221
+ $('.paginator-paging').paginator_paging();
222
+ });
223
+ this.append(element);
224
+ }
225
+ if (paginator.data.total_pages > paginator.data.pages_before + paginator.data.pages_after + 3) {
226
+ if (paginator.data.current_page - paginator.data.pages_before - 1 > 1) {
227
+ var element = $('<li class="paginator-first-spacer">&hellip;</li>');
228
+ this.append(element);
229
+ }
230
+ }
231
+ for (var n = paginator.data.current_page - pages_before(); n < paginator.data.current_page; n++) {
232
+ if (n > 1) {
233
+ var element = $('<li class="paginator-paging-back" page="' + n + '">' + n + '</li>').click(function() {
234
+ paginator.data.current_page = parseInt($(this).text());
235
+ paginator.callback();
236
+ $('.paginator-paging').paginator_paging();
237
+ });
238
+ this.append(element);
239
+ }
240
+ }
241
+ this.append('<li class="paginator-paging-current">' + paginator.data.current_page + '</li>');
242
+ for (var n = paginator.data.current_page + 1; n < paginator.data.current_page + pages_after() + 1; n++) {
243
+ if (n < paginator.data.total_pages) {
244
+ var element = $('<li class="paginator-paging-forward" page="' + n + '">' + n + '</li>').click(function() {
245
+ paginator.data.current_page = parseInt($(this).text());
246
+ paginator.callback();
247
+ $('.paginator-paging').paginator_paging();
248
+ });
249
+ this.append(element);
250
+ }
251
+ }
252
+ if (paginator.data.total_pages > paginator.data.pages_before + paginator.data.pages_after + 3) {
253
+ if (paginator.data.current_page + paginator.data.pages_before + 1 < paginator.data.total_pages) {
254
+ var element = $('<li class="paginator-last-spacer">&hellip;</li>');
255
+ this.append(element);
256
+ }
257
+ }
258
+ if (paginator.data.current_page < paginator.data.total_pages) {
259
+ var element = $('<li class="paginator-last">').text(paginator.data.total_pages).click(function() {
260
+ paginator.data.current_page = paginator.data.total_pages;
261
+ paginator.callback();
262
+ $('.paginator-paging').paginator_paging();
263
+ });
264
+ this.append(element);
265
+ }
266
+ }
267
+ });