| 
									
										
										
										
											2020-03-18 10:28:19 +00:00
										 |  |  | <html> | 
					
						
							|  |  |  |    <head> | 
					
						
							|  |  |  |       <title>Search</title> | 
					
						
							|  |  |  |       <style> | 
					
						
							|  |  |  | body { | 
					
						
							|  |  |  | 	background: #f0f0f0 | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | input#what { | 
					
						
							|  |  |  | 	width: 80% | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | span.srch_sect { | 
					
						
							|  |  |  | 	color: #2f4f4f | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | a.srch_link { | 
					
						
							|  |  |  | 	color: #4b0082 | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | span.srch_url { | 
					
						
							|  |  |  | 	color: #20b2aa | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | a[onclick] { | 
					
						
							|  |  |  | 	cursor: pointer | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  |       </style> | 
					
						
							|  |  |  |       <script> | 
					
						
							| 
									
										
										
										
											2020-06-22 12:17:19 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  | // API document: | 
					
						
							|  |  |  | //	 1. Open https://ss.wodferndripvpe6ib4uz4rtngrnzichnirgn7t5x64gxcyroopbhsuqd.onion/ | 
					
						
							|  |  |  | //	 2. Click = | 
					
						
							|  |  |  | //	 3. Click "Public API" | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-05-19 11:03:57 +02:00
										 |  |  | let apiurl = 'https://api.wodferndripvpe6ib4uz4rtngrnzichnirgn7t5x64gxcyroopbhsuqd.onion/_/ansero.php'; | 
					
						
							|  |  |  | let favurl = 'https://api.wodferndripvpe6ib4uz4rtngrnzichnirgn7t5x64gxcyroopbhsuqd.onion/_/favicon.php?f='; | 
					
						
							| 
									
										
										
										
											2020-03-18 10:28:19 +00:00
										 |  |  | let mylang = 'en-US'; | 
					
						
							|  |  |  | let hide_domain = []; // e.g. 'google.com' | 
					
						
							|  |  |  | let hide_fqdn = []; // e.g. 'en.wikipedia.org' | 
					
						
							|  |  |  | let removeMITMsites = false; | 
					
						
							| 
									
										
										
										
											2020-06-22 12:17:19 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-03-18 10:28:19 +00:00
										 |  |  | function searchfor(key) { | 
					
						
							|  |  |  | 	document.getElementById('what').value = key; | 
					
						
							|  |  |  | 	search(); | 
					
						
							|  |  |  | } | 
					
						
							| 
									
										
										
										
											2020-06-22 12:17:19 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-03-18 10:28:19 +00:00
										 |  |  | function search() { | 
					
						
							|  |  |  | 	let answer = '', | 
					
						
							|  |  |  | 		keyword = document.getElementById('what').value; | 
					
						
							|  |  |  | 	if (keyword.length < 2) { | 
					
						
							|  |  |  | 		return false; | 
					
						
							|  |  |  | 	} | 
					
						
							|  |  |  | 	fetch(apiurl, { | 
					
						
							|  |  |  | 		method: 'POST', | 
					
						
							|  |  |  | 		mode: 'cors', | 
					
						
							|  |  |  | 		headers: { | 
					
						
							|  |  |  | 			'Content-Type': 'application/x-www-form-urlencoded' | 
					
						
							|  |  |  | 		}, | 
					
						
							|  |  |  | 		body: 't=json' + (removeMITMsites ? '&m' : '') + '&l=' + mylang + '&q=' + encodeURI(keyword) | 
					
						
							|  |  |  | 	}).then(r => r.json()).then(r => { | 
					
						
							|  |  |  | 		if (r.info.desc != undefined) { | 
					
						
							|  |  |  | 			answer += '<span class="srch_sect">'; | 
					
						
							|  |  |  | 			answer += '' + r.info.desc + '<br>'; | 
					
						
							|  |  |  | 			answer += '<a href="' + r.info.url + '" class="srch_link">' + r.info.title + '</a>'; | 
					
						
							|  |  |  | 			answer += '</span><br><br>'; | 
					
						
							|  |  |  | 		} | 
					
						
							|  |  |  | 		if (r.sgst.length > 0) { | 
					
						
							|  |  |  | 			answer += '<span class="srch_sect">Search other: <br>'; | 
					
						
							|  |  |  | 			r.sgst.forEach(x => { | 
					
						
							|  |  |  | 				answer += '[<a class="srch_link" onclick="searchfor(\'' + x + '\');return false;">' + x + '</a>]<br>'; | 
					
						
							|  |  |  | 			}); | 
					
						
							|  |  |  | 			answer += '</span><br><br>'; | 
					
						
							|  |  |  | 		} | 
					
						
							|  |  |  | 		r.res.forEach(x => { | 
					
						
							|  |  |  | 			if (!hide_fqdn.includes(x.fqdn) && !hide_domain.includes(x.dom)) { | 
					
						
							|  |  |  | 				answer += '<span class="srch_sect">'; | 
					
						
							|  |  |  | 				answer += '<img src="' + favurl + (x.url.startsWith('https:') ? '1-' : '0-') + x.fqdn + '"> '; | 
					
						
							|  |  |  | 				answer += '<a href="' + x.url + '" class="srch_link">' + (x.mitm == 1 ? '[MITM!!] ' : '') + x.title + '</a><br>'; | 
					
						
							|  |  |  | 				answer += '' + x.desc + '<br>'; | 
					
						
							|  |  |  | 				answer += '<span class="srch_url">' + x.url + '</span></span>'; | 
					
						
							|  |  |  | 				answer += '<br><br>'; | 
					
						
							|  |  |  | 			} | 
					
						
							|  |  |  | 		}); | 
					
						
							|  |  |  | 		document.getElementById('resultarea').innerHTML = answer; | 
					
						
							|  |  |  | 	}).catch(e => console.log(e)); | 
					
						
							|  |  |  | 	return false; | 
					
						
							|  |  |  | } | 
					
						
							| 
									
										
										
										
											2020-06-22 12:17:19 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-03-18 10:28:19 +00:00
										 |  |  |       </script> | 
					
						
							|  |  |  |    </head> | 
					
						
							|  |  |  |    <body> | 
					
						
							|  |  |  |       <form action="#" onsubmit="return search()"> | 
					
						
							|  |  |  |          <input type="text" id="what" placeholder="Search for..." minlength="2" required> | 
					
						
							|  |  |  |          <input type="submit" value="Search"> | 
					
						
							|  |  |  |       </form> | 
					
						
							|  |  |  |       <br> | 
					
						
							|  |  |  |       <br> | 
					
						
							|  |  |  |       <span id="resultarea"></span> | 
					
						
							|  |  |  |    </body> | 
					
						
							|  |  |  | </html> |