bbdocsmaterialize 0.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,250 @@
1
+
2
+ /*
3
+ Tipue Search 6.1
4
+ Copyright (c) 2017 Tipue
5
+ Tipue Search is released under the MIT License
6
+ http://www.tipue.com/search
7
+ */
8
+
9
+
10
+ /* fonts */
11
+
12
+
13
+ #tipue_search_input, #tipue_search_foot_boxes
14
+ {
15
+ font: 300 14px/1 Roboto, sans-serif;
16
+ }
17
+ #tipue_search_results_count, #tipue_search_warning, .tipue_search_content_url, .tipue_search_content_debug, .tipue_search_related_text
18
+ {
19
+ font: 300 14px/1.7 Roboto, sans-serif;
20
+ }
21
+ .tipue_search_content_title
22
+ {
23
+ font: 100 26px/1.7 Roboto, sans-serif;
24
+ }
25
+ .tipue_search_content_text, .tipue_search_related_title
26
+ {
27
+ font: 300 15px/1.7 Roboto, sans-serif;
28
+ }
29
+ .tipue_search_content_bold, .tipue_search_related_bold
30
+ {
31
+ font-weight: 400;
32
+ }
33
+
34
+
35
+ /* search box */
36
+
37
+
38
+ #tipue_search_input
39
+ {
40
+ color: #333;
41
+ max-width: 210px;
42
+ padding: 17px;
43
+ border: 1px solid #e3e3e3;
44
+ border-radius: 0;
45
+ -moz-appearance: none;
46
+ -webkit-appearance: none;
47
+ box-shadow: none;
48
+ outline: 0;
49
+ margin: 0;
50
+ }
51
+ .tipue_search_icon
52
+ {
53
+ width: 24px;
54
+ height: 24px;
55
+ }
56
+ .tipue_search_left
57
+ {
58
+ float: left;
59
+ padding: 15px 9px 0 0;
60
+ }
61
+ .tipue_search_right
62
+ {
63
+ float: left;
64
+ }
65
+
66
+
67
+ /* search results */
68
+
69
+
70
+ #tipue_search_content
71
+ {
72
+ max-width: 750px;
73
+ padding-top: 15px;
74
+ margin: 0;
75
+ }
76
+ #tipue_search_results_count
77
+ {
78
+ color: #333;
79
+ }
80
+ #tipue_search_warning
81
+ {
82
+ color: #333;
83
+ margin: 7px 0;
84
+ }
85
+ #tipue_search_warning a
86
+ {
87
+ color: #5396ea;
88
+ text-decoration: none;
89
+ }
90
+ #tipue_search_warning a:hover
91
+ {
92
+ color: #555;
93
+ }
94
+ .tipue_search_content_title
95
+ {
96
+ color: #666;
97
+ margin-top: 21px;
98
+ }
99
+ .tipue_search_content_title a
100
+ {
101
+ color: #666;
102
+ text-decoration: none;
103
+ }
104
+ .tipue_search_content_title a:hover
105
+ {
106
+ color: #666;
107
+ }
108
+ .tipue_search_content_url
109
+ {
110
+ word-wrap: break-word;
111
+ hyphens: auto;
112
+ }
113
+ .tipue_search_content_url a, .tipue_search_related_text a
114
+ {
115
+ color: #5396ea;
116
+ text-decoration: none;
117
+ }
118
+ .tipue_search_content_url a:hover, .tipue_search_related_text a:hover, .tipue_search_related_before, .tipue_search_related_after
119
+ {
120
+ color: #555;
121
+ }
122
+ .tipue_search_content_text
123
+ {
124
+ color: #333;
125
+ word-wrap: break-word;
126
+ hyphens: auto;
127
+ margin-top: 5px;
128
+ }
129
+ .tipue_search_content_bold
130
+ {
131
+ color: #333;
132
+ }
133
+ .tipue_search_content_debug
134
+ {
135
+ color: #333;
136
+ margin: 5px 0;
137
+ }
138
+ .tipue_search_related_title
139
+ {
140
+ color: #333;
141
+ margin: 26px 0 7px 0;
142
+ }
143
+ .tipue_search_related_cols
144
+ {
145
+ -webkit-columns: 230px 2;
146
+ -moz-columns: 230px 2;
147
+ columns: 230px 2;
148
+ }
149
+
150
+ #tipue_search_foot
151
+ {
152
+ margin: 51px 0 21px 0;
153
+ }
154
+ #tipue_search_foot_boxes
155
+ {
156
+ padding: 0;
157
+ margin: 0;
158
+ cursor: pointer;
159
+ }
160
+ #tipue_search_foot_boxes li
161
+ {
162
+ list-style: none;
163
+ margin: 0;
164
+ padding: 0;
165
+ display: inline;
166
+ }
167
+ #tipue_search_foot_boxes li a
168
+ {
169
+ padding: 10px 17px 11px 17px;
170
+ background-color: #fff;
171
+ border: 1px solid #e3e3e3;
172
+ border-radius: 1px;
173
+ color: #333;
174
+ margin-right: 7px;
175
+ text-decoration: none;
176
+ text-align: center;
177
+ }
178
+ #tipue_search_foot_boxes li.current
179
+ {
180
+ padding: 10px 17px 11px 17px;
181
+ background: #f6f6f6;
182
+ border: 1px solid #e3e3e3;
183
+ border-radius: 1px;
184
+ color: #333;
185
+ margin-right: 7px;
186
+ text-align: center;
187
+ }
188
+ #tipue_search_foot_boxes li a:hover
189
+ {
190
+ background: #f6f6f6;
191
+ }
192
+
193
+
194
+ /* spinner */
195
+
196
+
197
+ .tipue_search_spinner
198
+ {
199
+ width: 50px;
200
+ height: 28px;
201
+ }
202
+ .tipue_search_spinner > div
203
+ {
204
+ background-color: #e3e3e3;
205
+ height: 100%;
206
+ width: 2px;
207
+ display: inline-block;
208
+ margin-right: 2px;
209
+ -webkit-animation: stretchdelay 1.2s infinite ease-in-out;
210
+ animation: stretchdelay 1.2s infinite ease-in-out;
211
+ }
212
+ .tipue_search_spinner .tipue_search_rect2
213
+ {
214
+ -webkit-animation-delay: -1.1s;
215
+ animation-delay: -1.1s;
216
+ }
217
+ .tipue_search_spinner .tipue_search_rect3
218
+ {
219
+ -webkit-animation-delay: -1.0s;
220
+ animation-delay: -1.0s;
221
+ }
222
+ @-webkit-keyframes stretchdelay
223
+ {
224
+ 0%, 40%, 100%
225
+ {
226
+ -webkit-transform: scaleY(0.4)
227
+ }
228
+ 20%
229
+ {
230
+ -webkit-transform: scaleY(1.0)
231
+ }
232
+ }
233
+ @keyframes stretchdelay
234
+ {
235
+ 0%, 40%, 100%
236
+ {
237
+ transform: scaleY(0.4);
238
+ -webkit-transform: scaleY(0.4);
239
+ }
240
+ 20%
241
+ {
242
+ transform: scaleY(1.0);
243
+ -webkit-transform: scaleY(1.0);
244
+ }
245
+ }
246
+
247
+
248
+
249
+
250
+
@@ -0,0 +1,178 @@
1
+ (function($){$.fn.tipuesearch=function(options){var set=$.extend({'contentLocation':'tipuesearch/tipuesearch_content.json','contextBuffer':60,'contextLength':60,'contextStart':90,'debug':false,'descriptiveWords':25,'highlightTerms':true,'liveContent':'*','liveDescription':'*','minimumLength':3,'mode':'static','newWindow':false,'show':9,'showContext':true,'showRelated':true,'showTime':true,'showTitleCount':true,'showURL':true,'wholeWords':true},options);return this.each(function(){var tipuesearch_in={pages:[]};$.ajaxSetup({async:false});var tipuesearch_t_c=0;$('#tipue_search_content').hide().html('<div class="tipue_search_spinner"><div class="tipue_search_rect1"></div><div class="tipue_search_rect2"></div><div class="rect3"></div></div>').show();if(set.mode=='live')
2
+ {for(var i=0;i<tipuesearch_pages.length;i++)
3
+ {$.get(tipuesearch_pages[i]).done(function(html)
4
+ {var cont=$(set.liveContent,html).text();cont=cont.replace(/\s+/g,' ');var desc=$(set.liveDescription,html).text();desc=desc.replace(/\s+/g,' ');var t_1=html.toLowerCase().indexOf('<title>');var t_2=html.toLowerCase().indexOf('</title>',t_1+7);if(t_1!=-1&&t_2!=-1)
5
+ {var tit=html.slice(t_1+7,t_2);}
6
+ else
7
+ {var tit=tipuesearch_string_1;}
8
+ tipuesearch_in.pages.push({"title":tit,"text":desc,"tags":cont,"url":tipuesearch_pages[i]});});}}
9
+ if(set.mode=='json')
10
+ {$.getJSON(set.contentLocation).done(function(json)
11
+ {tipuesearch_in=$.extend({},json);});}
12
+ if(set.mode=='static')
13
+ {tipuesearch_in=$.extend({},tipuesearch);}
14
+ var tipue_search_w='';if(set.newWindow)
15
+ {tipue_search_w=' target="_blank"';}
16
+ function getURLP(name)
17
+ {var _locSearch=location.search;var _splitted=(new RegExp('[?|&]'+name+'='+'([^&;]+?)(&|#|;|$)').exec(_locSearch)||[,""]);var searchString=_splitted[1].replace(/\+/g,'%20');try
18
+ {searchString=decodeURIComponent(searchString);}
19
+ catch(e)
20
+ {searchString=unescape(searchString);}
21
+ return searchString||null;}
22
+ if(getURLP('q'))
23
+ {$('#tipue_search_input').val(getURLP('q'));getTipueSearch(0,true);}
24
+ $(this).keyup(function(event)
25
+ {if(event.keyCode=='13')
26
+ {getTipueSearch(0,true);}});function getTipueSearch(start,replace)
27
+ {var out='';var show_replace=false;var show_stop=false;var standard=true;var c=0;found=[];var d_o=$('#tipue_search_input').val();var d=d_o.toLowerCase();d=$.trim(d);if((d.match("^\"")&&d.match("\"$"))||(d.match("^'")&&d.match("'$")))
28
+ {standard=false;}
29
+ var d_w=d.split(' ');if(standard)
30
+ {d='';for(var i=0;i<d_w.length;i++)
31
+ {var a_w=true;for(var f=0;f<tipuesearch_stop_words.length;f++)
32
+ {if(d_w[i]==tipuesearch_stop_words[f])
33
+ {a_w=false;show_stop=true;}}
34
+ if(a_w)
35
+ {d=d+' '+d_w[i];}}
36
+ d=$.trim(d);d_w=d.split(' ');}
37
+ else
38
+ {d=d.substring(1,d.length-1);}
39
+ if(d.length>=set.minimumLength)
40
+ {if(standard)
41
+ {if(replace)
42
+ {var d_r=d;for(var i=0;i<d_w.length;i++)
43
+ {for(var f=0;f<tipuesearch_replace.words.length;f++)
44
+ {if(d_w[i]==tipuesearch_replace.words[f].word)
45
+ {d=d.replace(d_w[i],tipuesearch_replace.words[f].replace_with);show_replace=true;}}}
46
+ d_w=d.split(' ');}
47
+ var d_t=d;for(var i=0;i<d_w.length;i++)
48
+ {for(var f=0;f<tipuesearch_stem.words.length;f++)
49
+ {if(d_w[i]==tipuesearch_stem.words[f].word)
50
+ {d_t=d_t+' '+tipuesearch_stem.words[f].stem;}}}
51
+ d_w=d_t.split(' ');for(var i=0;i<tipuesearch_in.pages.length;i++)
52
+ {var score=0;var s_t=tipuesearch_in.pages[i].text;for(var f=0;f<d_w.length;f++)
53
+ {if(set.wholeWords)
54
+ {var pat=new RegExp('\\b'+d_w[f]+'\\b','gi');}
55
+ else
56
+ {var pat=new RegExp(d_w[f],'gi');}
57
+ if(tipuesearch_in.pages[i].title.search(pat)!=-1)
58
+ {var m_c=tipuesearch_in.pages[i].title.match(pat).length;score+=(20*m_c);}
59
+ if(tipuesearch_in.pages[i].text.search(pat)!=-1)
60
+ {var m_c=tipuesearch_in.pages[i].text.match(pat).length;score+=(20*m_c);}
61
+ if(tipuesearch_in.pages[i].tags.search(pat)!=-1)
62
+ {var m_c=tipuesearch_in.pages[i].tags.match(pat).length;score+=(10*m_c);}
63
+ if(tipuesearch_in.pages[i].url.search(pat)!=-1)
64
+ {score+=20;}
65
+ if(score!=0)
66
+ {for(var e=0;e<tipuesearch_weight.weight.length;e++)
67
+ {if(tipuesearch_in.pages[i].url==tipuesearch_weight.weight[e].url)
68
+ {score+=tipuesearch_weight.weight[e].score;}}}
69
+ if(d_w[f].match('^-'))
70
+ {pat=new RegExp(d_w[f].substring(1),'i');if(tipuesearch_in.pages[i].title.search(pat)!=-1||tipuesearch_in.pages[i].text.search(pat)!=-1||tipuesearch_in.pages[i].tags.search(pat)!=-1)
71
+ {score=0;}}}
72
+ if(score!=0)
73
+ {found.push({"score":score,"title":tipuesearch_in.pages[i].title,"desc":s_t,"url":tipuesearch_in.pages[i].url});c++;}}}
74
+ else
75
+ {for(var i=0;i<tipuesearch_in.pages.length;i++)
76
+ {var score=0;var s_t=tipuesearch_in.pages[i].text;var pat=new RegExp(d,'gi');if(tipuesearch_in.pages[i].title.search(pat)!=-1)
77
+ {var m_c=tipuesearch_in.pages[i].title.match(pat).length;score+=(20*m_c);}
78
+ if(tipuesearch_in.pages[i].text.search(pat)!=-1)
79
+ {var m_c=tipuesearch_in.pages[i].text.match(pat).length;score+=(20*m_c);}
80
+ if(tipuesearch_in.pages[i].tags.search(pat)!=-1)
81
+ {var m_c=tipuesearch_in.pages[i].tags.match(pat).length;score+=(10*m_c);}
82
+ if(tipuesearch_in.pages[i].url.search(pat)!=-1)
83
+ {score+=20;}
84
+ if(score!=0)
85
+ {for(var e=0;e<tipuesearch_weight.weight.length;e++)
86
+ {if(tipuesearch_in.pages[i].url==tipuesearch_weight.weight[e].url)
87
+ {score+=tipuesearch_weight.weight[e].score;}}}
88
+ if(score!=0)
89
+ {found.push({"score":score,"title":tipuesearch_in.pages[i].title,"desc":s_t,"url":tipuesearch_in.pages[i].url});c++;}}}
90
+ if(c!=0)
91
+ {if(set.showTitleCount&&tipuesearch_t_c==0)
92
+ {var title=document.title;document.title='('+c+') '+title;tipuesearch_t_c++;}
93
+ if(show_replace)
94
+ {out+='<div id="tipue_search_warning">'+tipuesearch_string_2+' '+d+'. '+tipuesearch_string_3+' <a id="tipue_search_replaced">'+d_r+'</a></div>';}
95
+ if(c==1)
96
+ {out+='<div id="tipue_search_results_count">'+tipuesearch_string_4;}
97
+ else
98
+ {c_c=c.toString().replace(/\B(?=(\d{3})+(?!\d))/g,",");out+='<div id="tipue_search_results_count">'+c_c+' '+tipuesearch_string_5;}
99
+ if(set.showTime)
100
+ {var endTimer=new Date().getTime();var time=(endTimer-startTimer)/ 1000;out+=' ('+time.toFixed(2)+' '+tipuesearch_string_14+')';set.showTime=false;}
101
+ out+='</div>';found.sort(function(a,b){return b.score-a.score});var l_o=0;for(var i=0;i<found.length;i++)
102
+ {if(l_o>=start&&l_o<set.show+start)
103
+ {out+='<div class="tipue_search_content_title"><a href="'+found[i].url+'"'+tipue_search_w+'>'+found[i].title+'</a></div>';if(set.debug)
104
+ {out+='<div class="tipue_search_content_debug">Score: '+found[i].score+'</div>';}
105
+ if(set.showURL)
106
+ {var s_u=found[i].url.toLowerCase();if(s_u.indexOf('http://')==0)
107
+ {s_u=s_u.slice(7);}
108
+ out+='<div class="tipue_search_content_url"><a href="'+found[i].url+'"'+tipue_search_w+'>'+s_u+'</a></div>';}
109
+ if(found[i].desc)
110
+ {var t=found[i].desc;if(set.showContext)
111
+ {d_w=d.split(' ');var s_1=found[i].desc.toLowerCase().indexOf(d_w[0]);if(s_1>set.contextStart)
112
+ {var t_1=t.substr(s_1-set.contextBuffer);var s_2=t_1.indexOf(' ');t_1=t.substr(s_1-set.contextBuffer+s_2);t_1=$.trim(t_1);if(t_1.length>set.contextLength)
113
+ {t='... '+t_1;}}}
114
+ if(standard)
115
+ {d_w=d.split(' ');for(var f=0;f<d_w.length;f++)
116
+ {if(set.highlightTerms)
117
+ {var patr=new RegExp('('+d_w[f]+')','gi');t=t.replace(patr,"<h0011>$1<h0012>");}}}
118
+ else if(set.highlightTerms)
119
+ {var patr=new RegExp('('+d+')','gi');t=t.replace(patr,"<span class=\"tipue_search_content_bold\">$1</span>");}
120
+ var t_d='';var t_w=t.split(' ');if(t_w.length<set.descriptiveWords)
121
+ {t_d=t;}
122
+ else
123
+ {for(var f=0;f<set.descriptiveWords;f++)
124
+ {t_d+=t_w[f]+' ';}}
125
+ t_d=$.trim(t_d);if(t_d.charAt(t_d.length-1)!='.')
126
+ {t_d+=' ...';}
127
+ t_d=t_d.replace(/h0011/g,'span class=\"tipue_search_content_bold\"');t_d=t_d.replace(/h0012/g,'/span');out+='<div class="tipue_search_content_text">'+t_d+'</div>';}}
128
+ l_o++;}
129
+ if(set.showRelated&&standard)
130
+ {f=0;for(var i=0;i<tipuesearch_related.searches.length;i++)
131
+ {if(d==tipuesearch_related.searches[i].search)
132
+ {if(show_replace)
133
+ {d_o=d;}
134
+ if(!f)
135
+ {out+='<div class="tipue_search_related_title">'+tipuesearch_string_15+' <span class="tipue_search_related_bold">'+d_o+'</span></div><div class="tipue_search_related_cols">';}
136
+ out+='<div class="tipue_search_related_text"><a class="tipue_search_related" id="'+tipuesearch_related.searches[i].related+'">';if(tipuesearch_related.searches[i].before)
137
+ {out+='<span class="tipue_search_related_before">'+tipuesearch_related.searches[i].before+'</span> ';}
138
+ out+=tipuesearch_related.searches[i].related;if(tipuesearch_related.searches[i].after)
139
+ {out+=' <span class="tipue_search_related_after">'+tipuesearch_related.searches[i].after+'</span>';}
140
+ out+='</a></div>';f++;}}
141
+ if(f)
142
+ {out+='</div>';}}
143
+ if(c>set.show)
144
+ {var pages=Math.ceil(c / set.show);var page=(start / set.show);out+='<nav><div id="tipue_search_foot"><ul id="tipue_search_foot_boxes">';if(start>0)
145
+ {out+='<li role="navigation"><a class="tipue_search_foot_box" accesskey="b" id="'+(start-set.show)+'_'+replace+'">'+tipuesearch_string_6+'</a></li>';}
146
+ if(page<=2)
147
+ {var p_b=pages;if(pages>3)
148
+ {p_b=3;}
149
+ for(var f=0;f<p_b;f++)
150
+ {if(f==page)
151
+ {out+='<li class="current" role="navigation">'+(f+1)+'</li>';}
152
+ else
153
+ {out+='<li role="navigation"><a class="tipue_search_foot_box" id="'+(f*set.show)+'_'+replace+'">'+(f+1)+'</a></li>';}}}
154
+ else
155
+ {var p_b=page+2;if(p_b>pages)
156
+ {p_b=pages;}
157
+ for(var f=page-1;f<p_b;f++)
158
+ {if(f==page)
159
+ {out+='<li class="current" role="navigation">'+(f+1)+'</li>';}
160
+ else
161
+ {out+='<li role="navigation"><a class="tipue_search_foot_box" id="'+(f*set.show)+'_'+replace+'">'+(f+1)+'</a></li>';}}}
162
+ if(page+1!=pages)
163
+ {out+='<li role="navigation"><a class="tipue_search_foot_box" accesskey="m" id="'+(start+set.show)+'_'+replace+'">'+tipuesearch_string_7+'</a></li>';}
164
+ out+='</ul></div></nav>';}}
165
+ else
166
+ {out+='<div id="tipue_search_warning">'+tipuesearch_string_8+'</div>';}}
167
+ else
168
+ {if(show_stop)
169
+ {out+='<div id="tipue_search_warning">'+tipuesearch_string_8+'. '+tipuesearch_string_9+'</div>';}
170
+ else
171
+ {out+='<div id="tipue_search_warning">'+tipuesearch_string_10+'</div>';if(set.minimumLength==1)
172
+ {out+='<div id="tipue_search_warning">'+tipuesearch_string_11+'</div>';}
173
+ else
174
+ {out+='<div id="tipue_search_warning">'+tipuesearch_string_12+' '+set.minimumLength+' '+tipuesearch_string_13+'</div>';}}}
175
+ $('#tipue_search_content').hide().html(out).slideDown(200);$('#tipue_search_replaced').click(function()
176
+ {getTipueSearch(0,false);});$('.tipue_search_related').click(function()
177
+ {$('#tipue_search_input').val($(this).attr('id'));getTipueSearch(0,true);});$('.tipue_search_foot_box').click(function()
178
+ {var id_v=$(this).attr('id');var id_a=id_v.split('_');getTipueSearch(parseInt(id_a[0]),id_a[1]);});}});};})(jQuery);
@@ -0,0 +1,83 @@
1
+ ---
2
+ # Content index for Tipue Search
3
+ # https://github.com/jekylltools/jekyll-tipue-search
4
+ # v1.4
5
+ layout: null
6
+ ---
7
+ {%- assign index = "" | split: "" -%}
8
+ {%- assign excluded_files = site.tipue_search.exclude.files -%}
9
+ {%- assign excluded_tags = site.tipue_search.exclude.tags | uniq -%}
10
+ {%- assign excluded_categories = site.tipue_search.exclude.categories | uniq -%}
11
+ {%- assign excluded_taxonomies = excluded_tags | concat: excluded_categories | uniq -%}
12
+ {%- for post in site.posts -%}
13
+ {%- unless post.exclude_from_search == true or excluded_files contains post.path -%}
14
+ {%- assign has_excluded_taxonomy = false -%}
15
+ {%- for tag in post.tags -%}
16
+ {%- if excluded_taxonomies contains tag -%}
17
+ {%- assign has_excluded_taxonomy = true -%}
18
+ {%- endif -%}
19
+ {%- endfor -%}
20
+ {%- for category in post.categories -%}
21
+ {%- if excluded_taxonomies contains category -%}
22
+ {%- assign has_excluded_taxonomy = true -%}
23
+ {%- endif -%}
24
+ {%- endfor -%}
25
+ {%- unless has_excluded_taxonomy == true -%}
26
+ {%- assign index = index | push: post | uniq -%}
27
+ {%- endunless -%}
28
+ {%- endunless -%}
29
+ {%- endfor -%}
30
+ {%- if site.tipue_search.include.pages == true -%}
31
+ {%- for page in site.html_pages -%}
32
+ {%- unless page.exclude_from_search == true or excluded_files contains page.path -%}
33
+ {%- assign has_excluded_taxonomy = false -%}
34
+ {%- for tag in page.tags -%}
35
+ {%- if excluded_taxonomies contains tag -%}
36
+ {%- assign has_excluded_taxonomy = true -%}
37
+ {%- endif -%}
38
+ {%- endfor -%}
39
+ {%- for category in page.categories -%}
40
+ {%- if excluded_taxonomies contains category -%}
41
+ {%- assign has_excluded_taxonomy = true -%}
42
+ {%- endif -%}
43
+ {%- endfor -%}
44
+ {%- unless has_excluded_taxonomy == true -%}
45
+ {%- assign index = index | push: page | uniq -%}
46
+ {%- endunless -%}
47
+ {%- endunless -%}
48
+ {%- endfor -%}
49
+ {%- endif -%}
50
+ {%- for collection in site.tipue_search.include.collections -%}
51
+ {%- assign documents = site.documents | where:"collection",collection -%}
52
+ {%- for document in documents -%}
53
+ {%- unless document.exclude_from_search == true or excluded_files contains document.path -%}
54
+ {%- assign has_excluded_taxonomy = false -%}
55
+ {%- for tag in document.tags -%}
56
+ {%- if excluded_taxonomies contains tag -%}
57
+ {%- assign has_excluded_taxonomy = true -%}
58
+ {%- endif -%}
59
+ {%- endfor -%}
60
+ {%- for category in document.categories -%}
61
+ {%- if excluded_taxonomies contains category -%}
62
+ {%- assign has_excluded_taxonomy = true -%}
63
+ {%- endif -%}
64
+ {%- endfor -%}
65
+ {%- unless has_excluded_taxonomy == true -%}
66
+ {%- assign index = index | push: document | uniq -%}
67
+ {%- endunless -%}
68
+ {%- endunless -%}
69
+ {%- endfor -%}
70
+ {%- endfor -%}
71
+ var tipuesearch = {"pages": [
72
+ {%- for document in index -%}
73
+ {%- assign tags = document.tags | uniq -%}
74
+ {%- assign categories = document.categories | uniq -%}
75
+ {%- assign taxonomies = tags | concat: categories | uniq -%}
76
+ {
77
+ "title": {{ document.title | smartify | strip_html | normalize_whitespace | jsonify }},
78
+ "text": {{ document.content | strip_html | normalize_whitespace | jsonify }},
79
+ "tags": {{ taxonomies | join: " " | normalize_whitespace | jsonify }},
80
+ "url": {{ document.url | relative_url | jsonify }}
81
+ }{%- unless forloop.last -%},{%- endunless -%}
82
+ {%- endfor -%}
83
+ ]};