PageSourceSearch

https://contemplativeinterbeing.org/wp-content/plugins/quotes-collection/js/quotes-collection.js?ver=2.5.2

js contemplativeinterbeing.org collected 2026-10-04 20:47:00 UTC 3,653 bytes, 82 lines download raw bytes

1var quotescollectionInstances = [];
2
3function quotescollectionRefresh(args) {
4	if(args.ajaxRefresh && !args.autoRefresh)
5		jQuery("#"+args.instanceID+" .nav-next").html(quotescollectionAjax.loading);
6	jQuery.ajax({
7		type: "POST",
8		url: quotescollectionAjax.ajaxUrl,
9		data: "action=quotescollection&_ajax_nonce="+quotescollectionAjax.nonce+"&current="+args.currQuoteID+"&char_limit="+args.charLimit+"&tags="+args.tags+"&orderby="+args.orderBy,
10		success: function(response) {
11			if(response == '-1' || !response) {
12				if(args.ajaxRefresh && args.autoRefresh)
13					quotescollectionTimer(args);
14				else if(args.ajaxRefresh && !args.autoRefresh)
15					jQuery("#"+args.instanceID+" .nav-next").html('<a class=\"next-quote-link\" style=\"cursor:pointer;\" onclick=\"quotescollectionRefreshInstance(\''+args.instanceID+'\')\">'+quotescollectionAjax.nextQuote+'</a>');
16			}
17			else {
18				if(args.dynamicFetch) {
19					args.dynamicFetch = 0;
20				}
21				args.currQuoteID = response.quote_id;
22				quotescollectionInstances[args.instanceID] = args;
23				display = quotescollectionDisplayFormat(response, args);
24				jQuery("#"+args.instanceID).hide();
25				jQuery("#"+args.instanceID).html(display, args);
26				jQuery("#"+args.instanceID).fadeIn('slow');
27				if(args.ajaxRefresh && args.autoRefresh)
28					quotescollectionTimer(args);
29			}
30		},
31		error: function(xhr, textStatus, errorThrown) {
32			console.log(textStatus+' '+xhr.status+': '+errorThrown);
33			if(args.ajaxRefresh && !args.autoRefresh) {
34				jQuery("#"+args.instanceID+" .nav-next").html('<a class=\"next-quote-link\" style=\"cursor:pointer;\" onclick=\"quotescollectionRefreshInstance(\''+args.instanceID+'\')\">'+quotescollectionAjax.nextQuote+';</a>');
35			}
36		}
37	});
38
39}
40
41function quotescollectionDisplayFormat(quoteData, args) {
42	var display = "";
43	var attribution = "";
44
45	display += '<p>' + quoteData.quote + '</p>';
46	if( args.showAuthor && quoteData.author && quoteData.author != 'null' ) {
47		attribution = '<cite class=\"author\">' + quoteData.author + '</cite>';
48	}
49	if( args.showSource && quoteData.source && quoteData.source != 'null' ) {
50		if(attribution) attribution += ', ';
51		attribution += '<cite class=\"source title\">' + quoteData.source + '</cite>';
52	}
53	if(attribution) {
54		display += quotescollectionHtmlDecode(args.beforeAttribution) + attribution + quotescollectionHtmlDecode(args.afterAttribution);
55	}
56	display = quotescollectionHtmlDecode(args.before) + display + quotescollectionHtmlDecode(args.after);
57	if(args.ajaxRefresh && !args.autoRefresh)
58		display += '<div class=\"navigation\"><div class=\"nav-next\"><a class=\"next-quote-link\" style=\"cursor:pointer;\" onclick=\"quotescollectionRefreshInstance(\''+args.instanceID+'\')\">'+quotescollectionAjax.nextQuote+'</a></div></div>';
59	return display;
60}
61
62function quotescollectionRefreshInstance(instanceID) {
63	quotescollectionRefresh(quotescollectionInstances[instanceID]);
64}
65
66function quotescollectionTimer(args) {
67	var timeInterval = args.autoRefresh * 1000;
68	var autoRefreshMax = Number(quotescollectionAjax.autoRefreshMax);
69	var autoRefreshCount = Number(quotescollectionAjax.autoRefreshCount);
70	if(!quotescollectionInstances[args.instanceID])
71		quotescollectionInstances[args.instanceID] = args;
72	if( (autoRefreshMax == 0) || (autoRefreshCount < autoRefreshMax) ) {
73		setTimeout("quotescollectionRefreshInstance('"+args.instanceID+"')", timeInterval);
74		quotescollectionAjax.autoRefreshCount = ++autoRefreshCount;
75	}
76}
77
78/* Thanks https://stackoverflow.com/a/34064434 */
79function quotescollectionHtmlDecode(input) {
80	var doc = new DOMParser().parseFromString(input, "text/html");
81	return doc.documentElement.textContent;
82}

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.