PageSourceSearch

https://ie-cdn.rpmpower.com/wp-content/themes/rpm-power/assets/js/trustpilot_flexslider.js?ver=1760608518

js rpmpower.com collected 2026-10-04 08:16:22 UTC 3,712 bytes, 119 lines download raw bytes

1const TPFlexSlider = {
2	num_items: 0,
3	current_item: 1,
4	current_slide: 1,
5	total_slides: 1,
6	num_reviews_viewable: 1,
7	width: 0,
8
9	init: function (){
10		if (document.querySelector("#slider-container-outer")){
11			this.addEvents();
12
13			document.querySelector("#prev-button").style.display = "none";
14
15			this.num_items = document.querySelectorAll(".slider-item").length;
16			this.num_reviews_viewable = this.get_num_reviews_viewable();
17			this.total_slides = Math.ceil(this.num_items / this.num_reviews_viewable);
18
19			this.width = document.querySelector("#slider-container-outer").clientWidth / this.num_reviews_viewable;
20			document.querySelectorAll(".slider-item").forEach((elem) => {
21				elem.style.width = this.width + "px";
22			});
23		}
24	},
25
26	addEvents: function (){
27		document.querySelector("#slider-container").addEventListener('transitionend', () => {
28			this.transitionEnd();
29		});
30
31		document.querySelector("#prev-button").addEventListener('click', () => {
32			this.gotoPrev();
33		});
34
35		document.querySelector("#next-button").addEventListener('click', () => {
36			this.gotoNext();
37		});
38
39		window.addEventListener('resize', () => {
40			this.onResize();
41		});
42	},
43
44	transitionEnd: function (){
45		document.querySelector("#slider-container").classList.remove('slider-container-transition');
46	},
47
48	onResize: function (){
49		this.num_reviews_viewable = this.get_num_reviews_viewable();
50
51		this.total_slides = Math.ceil(this.num_items / this.num_reviews_viewable);
52		this.current_slide = Math.ceil(this.current_item / this.num_reviews_viewable);
53
54		this.width = document.querySelector("#slider-container-outer").clientWidth / this.num_reviews_viewable;
55
56		translateX = (this.current_slide - 1) * (this.width * -this.num_reviews_viewable);
57
58		document.querySelectorAll(".slider-item").forEach((elem) => {
59			elem.style.width = this.width + "px";
60		});
61		document.querySelector("#slider-container").style.transform = 'translateX(' + translateX + 'px)';
62	},
63
64	gotoPrev: function (){
65		this.current_item -= this.num_reviews_viewable;
66		this.current_slide--;
67
68		document.querySelector("#next-button").style.display = "";
69		if (this.current_slide == 1){
70			document.querySelector("#prev-button").style.display = "none";
71		}
72
73		let translateX;
74		if (this.current_slide >= 1){
75			translateX = (this.current_slide - 1) * (this.width * -this.num_reviews_viewable);
76		} else{
77			translateX = (this.total_slides - 1) * (this.width * -this.num_reviews_viewable);
78			this.current_item = ((this.total_slides - 1) * this.num_reviews_viewable) + 1;
79			this.current_slide = this.total_slides;
80		}
81
82		document.querySelector("#slider-container").classList.add('slider-container-transition');
83		document.querySelector("#slider-container").style.transform = 'translateX(' + translateX + 'px)';
84	},
85
86	gotoNext: function (){
87		this.current_item += this.num_reviews_viewable;
88		this.current_slide++;
89
90		document.querySelector("#prev-button").style.display = "";
91		if (this.current_slide == this.total_slides){
92			document.querySelector("#next-button").style.display = "none";
93		}
94
95		let translateX;
96		if (this.current_slide <= this.total_slides){
97			translateX = (this.current_slide - 1) * (this.width * -this.num_reviews_viewable);
98		} else{
99			translateX = 0;
100			this.current_item = 1;
101			this.current_slide = 1;
102		}
103
104		document.querySelector("#slider-container").classList.add('slider-container-transition');
105		document.querySelector("#slider-container").style.transform = 'translateX(' + translateX + 'px)';
106	},
107
108	get_num_reviews_viewable: function (){
109		if (window.innerWidth >= 1240){
110			return 4;
111		} else if (window.innerWidth >= 990){
112			return 3;
113		} else if (window.innerWidth >= 770){
114			return 2;
115		} else{
116			return 1;
117		}
118	}
119};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.