PageSourceSearch

https://gretchenrubin.com/wp-content/plugins/gr-customize/gr-filte…/js/gr_pagination.js?ver=1.2.0

js gretchenrubin.com collected 2026-10-01 08:36:34 UTC 11,372 bytes, 293 lines download raw bytes

1
2jQuery( document ).ready(function() {
3	var pg=1;
4	const urlParams = new URLSearchParams(location.search);
5	const urlGRPg = new URL(document.location.href);
6	urlGRPg.search = '';
7	/*console.log(urlGRPg.href);
8	for (const [key, value] of urlParams) {
9		if(key=='page'){
10			console.log(`${key}:${value}`);
11			pg=value;
12		}
13		
14	}
15	console.log("pg",pg);
16	*/
17	
18	var tmpurlgrpgarr=urlGRPg.href.toLowerCase().split("/");
19	var newlinkpg=urlGRPg.href.toLowerCase();
20	
21	let pgidxpg=tmpurlgrpgarr.lastIndexOf("page");
22	if(pgidxpg!=-1){
23		pg=parseInt(tmpurlgrpgarr[pgidxpg+1]);
24		newlinkpg=newlinkpg.substring(0,newlinkpg.lastIndexOf("page"));
25		
26	}
27	window.loadGRPage=function(){
28		
29		var elem_cont=jQuery(this).closest(".gr-cust-pagination-filter");
30		var elem_nam=elem_cont.data("parent");
31		if(elem_nam){
32			elem_nam='.'+elem_nam;
33		}
34		var orderbyv='date';
35		if(jQuery(elem_nam+"-srt")){
36			orderbyv=jQuery(elem_nam+"-srt").find(".gr-sortby-items").val();
37		}
38		var elem=jQuery(elem_nam).first();
39		var uparamsrl = elem.data('stxt');
40		var nxtpgv=parseInt(pg)-1;
41		var nosv=(elem.data('nos'));
42		var txtval=jQuery(".gr-cust-search-filter .gr-cust-search-txt").val();
43		var tabfiltername=elem.data('tabfilter');
44		if(tabfiltername){
45			var elemtab=jQuery('.gr-cust-'+tabfiltername).first();
46			var ptypev="";
47			var termsv="";			
48			var forposttypev=elemtab.data("forposttype");
49			var itagsv=elemtab.data("itags");
50			var icatgv=elemtab.data("icatg");
51			var filterv=elemtab.data("filter");
52			var for_termv=elemtab.data("forterms");
53			switch(elemtab.data("filter")){
54				case "terms":
55					if(elemtab.data("displaytype")=="dropdown"){
56						ptypev=elemtab.find(".gr-tab-items").data("ptype");
57						termsv=elemtab.find(".gr-tab-items :selected").data("terms");
58						}
59					else{
60						ptypev=elemtab.find(".gr-tab-item.gr-selected").data("ptype");
61						termsv=elemtab.find(".gr-tab-item.gr-selected").data("terms");
62					}
63				break;
64				case "post_type":
65					if(elemtab.data("displaytype")=="dropdown"){
66						ptypev=elemtab.find(".gr-tab-items :selected").data("ptype");
67						
68					}
69					else{
70						ptypev=elemtab.find(".gr-tab-item.gr-selected").data("ptype");
71					}
72				break;
73			}
74		}
75		else{
76			var ptypev=elem.data("forposttype");
77			var termsv=elem.data("terms");		
78			var forposttypev=elem.data("forposttype");
79			var itagsv=elem.data("itags");
80			var icatgv=elem.data("icatg");
81			var filterv=elem.data("filter");
82			var for_termv=elem.data("forterms");
83		}
84		
85		
86		
87		elem.find(".gr-loop-content").html("");
88		elem.find(".gr-loop-loader").removeClass("gr-loop-noloader");
89		let obj = {action: 'get_gr_request_list',ptype:ptypev,itags:itagsv,icatg:icatgv,filter:filterv,terms:termsv,for_terms:for_termv,stxt:txtval,forposttype:forposttypev,nxtpg:nxtpgv,nos:nosv,uprm:uparamsrl,orderby:orderbyv};
90		
91		jQuery.post(gr_pagination.ajaxurl, obj, function(data) {
92		
93		 
94		  grPaginationupdate(elem_cont,elem_nam,data,nxtpgv)
95		  elem.find(".gr-loop-content").html(data["html"]);
96		  elem.find(".gr-loop-loader").addClass("gr-loop-noloader");
97		  var mcontainer = jQuery("html,body");
98		  var etop=0;
99		  var htop=jQuery(".elementor.elementor-location-header").outerHeight(true);
100		  if(tabfiltername){
101			  etop=jQuery('.gr-cust-'+tabfiltername).first().closest(".elementor-section").offset().top;
102		  }
103		  else{
104			  etop=elem.offsetTop;
105		  }
106			
107			setTimeout(function(){mcontainer.animate({scrollTop: etop -htop},600);},100);
108			
109		},'json');
110	};
111	jQuery(document).on("click",".gr-cust-pagination-filter .gr-pg:not(.gr-pg-disabled)",function(e){
112		e.preventDefault();
113		
114		var elem_cont=jQuery(this).closest(".gr-cust-pagination-filter");
115		var elem_nam=elem_cont.data("parent");
116		if(elem_nam){
117			elem_nam='.'+elem_nam;
118		}
119		var orderbyv='date';
120		if(jQuery(elem_nam+"-srt")){
121			orderbyv=jQuery(elem_nam+"-srt").find(".gr-sortby-items").val();
122		}
123		var elem=jQuery(elem_nam).first();
124		var uparamsrl = elem.data('stxt');
125		var nxtpgv=jQuery(this).data("idx");
126		var nosv=(elem.data('nos'));
127		var txtval=jQuery(".gr-cust-search-filter .gr-cust-search-txt").val();
128		var tabfiltername=elem.data('tabfilter');
129		if(tabfiltername){
130			var elemtab=jQuery('.gr-cust-'+tabfiltername).first();
131			var ptypev="";
132			var termsv="";			
133			var forposttypev=elemtab.data("forposttype");
134			var itagsv=elemtab.data("itags");
135			var icatgv=elemtab.data("icatg");
136			var filterv=elemtab.data("filter");
137			var for_termv=elemtab.data("forterms");
138			switch(elemtab.data("filter")){
139				case "terms":
140					if(elemtab.data("displaytype")=="dropdown"){
141						ptypev=elemtab.find(".gr-tab-items").data("ptype");
142						termsv=elemtab.find(".gr-tab-items :selected").data("terms");
143						}
144					else{
145						ptypev=elemtab.find(".gr-tab-item.gr-selected").data("ptype");
146						termsv=elemtab.find(".gr-tab-item.gr-selected").data("terms");
147					}
148				break;
149				case "post_type":
150					if(elemtab.data("displaytype")=="dropdown"){
151						ptypev=elemtab.find(".gr-tab-items :selected").data("ptype");
152						
153					}
154					else{
155						ptypev=elemtab.find(".gr-tab-item.gr-selected").data("ptype");
156					}
157				break;
158			}
159		}
160		else{
161			var ptypev=elem.data("forposttype");
162			var termsv=elem.data("terms");		
163			var forposttypev=elem.data("forposttype");
164			var itagsv=elem.data("itags");
165			var icatgv=elem.data("icatg");
166			var filterv=elem.data("filter");
167			var for_termv=elem.data("forterms");
168		}
169		
170		
171		
172		elem.find(".gr-loop-content").html("");
173		elem.find(".gr-loop-loader").removeClass("gr-loop-noloader");
174		let obj = {action: 'get_gr_request_list',ptype:ptypev,itags:itagsv,icatg:icatgv,filter:filterv,terms:termsv,for_terms:for_termv,stxt:txtval,forposttype:forposttypev,nxtpg:nxtpgv,nos:nosv,uprm:uparamsrl,orderby:orderbyv};
175		
176		jQuery.post(gr_pagination.ajaxurl, obj, function(data) {
177		
178		 
179		  grPaginationupdate(elem_cont,elem_nam,data,nxtpgv)
180		  elem.find(".gr-loop-content").html(data["html"]);
181		  elem.find(".gr-loop-loader").addClass("gr-loop-noloader");
182		  var mcontainer = jQuery("html,body");
183		  var etop=0;
184		  var htop=jQuery(".elementor.elementor-location-header").outerHeight(true);
185		  if(tabfiltername){
186			  etop=jQuery('.gr-cust-'+tabfiltername).first().closest(".elementor-section").offset().top;
187		  }
188		  else{
189			  etop=elem.offset().top;
190		  }
191			
192			setTimeout(function(){mcontainer.animate({scrollTop: etop -htop},600);},100);
193			
194		},'json');
195		history.pushState(null, "", newlinkpg+"page/"+(nxtpgv+1));
196		return false;
197	});
198	/*loadGRPage();*/
199	window.grPaginationupdate=function(elem_cont,elem_nam,data,idx){
200	var elem_loop=jQuery(".gr-cust-loop"+elem_nam);
201	var totalpg=parseInt(elem_loop.attr("data-total"));
202	var foundpost=parseInt(elem_loop.attr("data-found"));
203	var pgitems=parseInt(elem_loop.attr("data-nos"));
204	var currpg=parseInt(elem_loop.attr("data-nopg"));
205	
206	if(foundpost==0){
207		elem_cont.hide();
208	}
209	else{
210		pgstr="";
211		if(totalpg<=8){
212				
213			if(idx>0 && idx< 8){
214				elem_cont.find(".gr-pg-selected").removeClass("gr-pg-selected");
215				elem_cont.find(".gr-prev").removeClass("gr-pg-disabled");
216				elem_cont.find(".gr-next").removeClass("gr-pg-disabled");
217				elem_cont.find(".gr-pgidx-"+idx).addClass("gr-pg-selected");
218				elem_cont.find(".gr-pgidx-"+idx).attr("href","");
219				elem_cont.find(".gr-prev").attr("data-idx",""+(parseInt(idx)-1));
220				elem_cont.find(".gr-prev").attr("href",newlinkpg+"page/"+(idx));
221				elem_cont.find(".gr-next").attr("data-idx",""+(parseInt(idx)+1));
222				elem_cont.find(".gr-next").attr("href",newlinkpg+"page/"+(idx+2));	
223			}
224			if(idx==0){
225				elem_cont.find(".gr-prev").addClass("gr-pg-disabled");
226				elem_cont.find(".gr-prev").attr("href","");
227				elem_cont.find(".gr-prev").attr("data-idx","0");
228			}
229			if(idx==7){
230				elem_cont.find(".gr-next").addClass("gr-pg-disabled");
231				elem_cont.find(".gr-next").attr("href","");
232				elem_cont.find(".gr-next").attr("data-idx",""+idx);
233			}
234		}
235		else if(totalpg>8){
236			
237			if(idx<5){
238				pgstr+="<a href='"+(idx==0?"":newlinkpg+"page/"+(idx))+"' class='gr-pg gr-prev' data-idx='"+(idx-1)+"'><i class='fas fa-chevron-left'></i></a>";
239				for (let i = 0; i < 6; i++) {
240				  pgstr+="<a href='"+(i==idx?"":newlinkpg+"page/"+(i+1))+"' class='gr-pg gr-pgidx gr-pgidx-"+i+" "+(i==idx? " gr-pg-selected":"")+"' data-idx='"+i+"'>"+(i+1)+"</a>";
241				}
242				pgstr+="<div class='gr-pg gr-pg-disabled' data-idx='"+0+"'>...</div>";
243				pgstr+="<a href='"+newlinkpg+"page/"+(totalpg)+"' class='gr-pg gr-pgidx gr-pgidx-"+(totalpg-1)+"' data-idx='"+(totalpg-1)+"'>"+totalpg+"</a>";
244				pgstr+="<a href='"+(idx==totalpg-1?"":newlinkpg+"page/"+(idx+2))+"' class='gr-pg gr-next ' data-idx='"+(idx+1)+"'><i class='fas fa-chevron-right'></i></a>";
245			}
246			else if(idx>=5 && (idx<(totalpg-5))){
247				
248				pgstr+="<a href='"+(idx==0?"":newlinkpg+"page/"+(idx))+"' class='gr-pg gr-prev' data-idx='"+(idx-1)+"'><i class='fas fa-chevron-left'></i></a>";
249				pgstr+="<a href='"+newlinkpg+"page/1' class='gr-pg gr-pgidx gr-pgidx-"+(0)+"' data-idx='"+(0)+"'>"+(1)+"</a>";
250				pgstr+="<div class='gr-pg gr-pg-disabled' data-idx='"+0+"'>...</div>";
251				for (let i = (idx-2); i < (idx+3); i++) {
252				  pgstr+="<a href='"+(i==idx?"":newlinkpg+"page/"+(i+1))+"' class='gr-pg gr-pgidx gr-pgidx-"+i+" "+(i==idx? " gr-pg-selected":"")+"' data-idx='"+i+"'>"+(i+1)+"</a>";
253				}
254				pgstr+="<div class='gr-pg gr-pg-disabled' data-idx='"+0+"'>...</div>";
255				pgstr+="<a href='"+newlinkpg+"page/"+(totalpg)+"' class='gr-pg gr-pgidx gr-pgidx-"+(totalpg-1)+"' data-idx='"+(totalpg-1)+"'>"+totalpg+"</a>";
256				pgstr+="<a href='"+(idx==totalpg-1?"":newlinkpg+"page/"+(idx+2))+"'  class='gr-pg gr-next ' data-idx='"+(idx+1)+"'><i class='fas fa-chevron-right'></i></a>";
257			}
258			else if((idx)>=(totalpg-5)){
259				pgstr+="<a href='"+(idx==0?"":newlinkpg+"page/"+(idx))+"' class='gr-pg gr-prev' data-idx='"+(idx-1)+"'><i class='fas fa-chevron-left'></i></a>";
260				pgstr+="<a href='"+newlinkpg+"page/1' class='gr-pg gr-pgidx gr-pgidx-0' data-idx='0'>1</a>";
261				pgstr+="<div class='gr-pg gr-pg-disabled' data-idx='"+0+"'>...</div>";
262				for (let i = totalpg-6; i < totalpg; i++) {
263				  pgstr+="<a href='"+(i==idx?"":newlinkpg+"page/"+(i+1))+"' class='gr-pg gr-pgidx gr-pgidx-"+i+" "+(i==idx? " gr-pg-selected":"")+"' data-idx='"+i+"'>"+(i+1)+"</a>";
264				}
265				pgstr+="<a href='"+(idx==totalpg-1?"":newlinkpg+"page/"+(idx+2))+"' class='gr-pg gr-next ' data-idx='"+(idx+1)+"'><i class='fas fa-chevron-right'></i></a>";
266				
267				
268				
269			}
270			elem_cont.find(".gr-pg-contr").html(pgstr);
271			
272			if(idx>0 && idx<totalpg){
273				elem_cont.find(".gr-pg-selected").removeClass("gr-pg-selected");
274				elem_cont.find(".gr-pgidx-"+idx).addClass("gr-pg-selected");
275				elem_cont.find(".gr-prev").attr("data-idx",""+(parseInt(idx)-1));
276				elem_cont.find(".gr-next").attr("data-idx",""+(parseInt(idx)+1));					
277			}
278			if(idx==0){
279				elem_cont.find(".gr-prev").addClass("gr-pg-disabled");
280				elem_cont.find(".gr-prev").attr("data-idx","0");
281			}
282			if(idx==totalpg-1){
283				elem_cont.find(".gr-next").addClass("gr-pg-disabled");
284				elem_cont.find(".gr-next").attr("data-idx",""+idx);
285			}
286		}
287		
288	}
289}
290	
291});
292
293	

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.