PageSourceSearch

https://academy.hpa-faip.it/rslib/js/rsfunctions.js

js hpa-faip.it collected 2026-10-09 22:41:42 UTC 13,307 bytes, 565 lines download raw bytes

1/* vim: set foldmethod=marker: */
2var jsloaded='no';
3
4/*{{{ rsAscii2script(stringa) */
5function rsAscii2script(stringa)
6{
7	/*HEXADECIMAL ASCII CONVERSION*/
8	if(stringa!='')
9	{
10		stringa = stringa.replace(/°/g,'\\xB0');
11		stringa = stringa.replace(/À/g,'\\xC0');
12		stringa = stringa.replace(/à/g,'\\xE0');
13		stringa = stringa.replace(/Á/g,'\\xC1');
14		stringa = stringa.replace(/£/g,'\\xA3');
15		stringa = stringa.replace(/ç/g,'\\xE7');
16		stringa = stringa.replace(/€/g,'\\u20ac');
17		stringa = stringa.replace(/ /g,'\\x81');
18		stringa = stringa.replace(/á/g,'\\xE1');
19		stringa = stringa.replace(/È/g,'\\xC8');
20		stringa = stringa.replace(/è/g,'\\xE8');
21		stringa = stringa.replace(/É/g,'\\xC9');
22		stringa = stringa.replace(/é/g,'\\xE9');
23		stringa = stringa.replace(/Ì/g,'\\xCC');
24		stringa = stringa.replace(/ì/g,'\\xEC');
25		stringa = stringa.replace(/Í/g,'\\xCD');
26		stringa = stringa.replace(/í/g,'\\xED');
27		stringa = stringa.replace(/Ò/g,'\\xD2');
28		stringa = stringa.replace(/ò/g,'\\xF2');
29		stringa = stringa.replace(/Ó/g,'\\xD3');
30		stringa = stringa.replace(/ó/g,'\\xF3');
31		stringa = stringa.replace(/Ù/g,'\\xD9');
32		stringa = stringa.replace(/ù/g,'\\xF9');
33		stringa = stringa.replace(/Ú/g,'\\xDA');
34		stringa = stringa.replace(/ú/g,'\\xFA');
35		stringa = stringa.replace(/&/g,'\\x26');
36		stringa = stringa.replace(/'/g,'\\x27'); /*non funziona altrimenti*/
37		stringa = stringa.replace(/'/g,'\\x27');
38		stringa = stringa.replace(/"/g,'\\x22');
39		stringa = stringa.replace(/</g,'\\x3c');
40		stringa = stringa.replace(/>/g,'\\x3e');
41		stringa = stringa.replace(/<br \/>/g,'\\n');
42		stringa = stringa.replace(/<br>/g,'\\n');
43		stringa = stringa.replace(/<b>/g,'');
44		stringa = stringa.replace(/<\/b>/g,'');
45		return stringa;
46	}
47	else
48		return '';
49}
50var rsHtml2script= rsAscii2script;
51/*}}}*/
52
53/*{{{ rsMouseCoordinates(e)*/
54function rsMouseCoordinates(e)
55{
56	if (e.layerX)
57	{
58		x = e.layerX;
59		y = e.layerY;
60	}
61	else if (e.offsetX)
62	{
63		x = e.offsetX;
64		y = e.offsetY;
65	}
66	var position=new Array(x,y);
67	return position;
68}
69/*}}}*/
70
71/*{{{ rsCreateLabel(padre,id,testo,myStyle)*/
72function rsCreateLabel(padre,id,testo,myStyle)
73{
74	var myLabel=document.createElement('label');
75	myLabel.setAttribute('for',id);
76	myLabel.innerHTML=testo;
77	if(typeof(myStyle)!='undefined')
78		myLabel.className=myStyle;
79	else
80		myLabel.className='dynamicLabel';
81	padre.appendChild(myLabel);
82	return myLabel;
83}
84/*}}}*/
85
86/*{{{ getIEversion()*/
87function getIEversion()
88{
89if (/MSIE (\d+\.\d+);/.test(navigator.userAgent)){ //test for MSIE x.x;
90 var ieversion=new Number(RegExp.$1) // capture x.x portion and store as a number
91return ieversion;
92}
93else
94return false;
95}
96/*}}}*/
97
98/*{{{ rsCreate(padre,myElement,props)*/
99function rsCreate(padre,myElement,props)
100{
101	var ieVersion=getIEversion();
102	if(document.all && ieVersion && parseInt(ieVersion)<9)
103	{
104		var attributes='';
105		if(typeof(props)!='undefined')
106		{
107			for(i in props)
108				attributes+=' '+i+'="'+props[i]+'"';
109		}
110		var myNew=document.createElement('<'+myElement+attributes+((myElement=='input' || myElement=='img' || myElement=='br')?' />':'>'));
111	}
112	else
113	{
114		var myNew=document.createElement(myElement);
115		for(i in props)
116			myNew.setAttribute(i,props[i]);
117	}
118	if(padre!='')
119	{
120		padre.appendChild(myNew);
121		return myNew;
122	}
123	else
124		return myNew;
125}
126/*}}}*/
127
128/*{{{ rsTestNodes(padre,figlio)*/
129function rsTestNodes(padre,figlio)
130{
131	if(typeof(padre)=='object')
132		var arrayNodes=padre.childNodes;
133	else
134		var arrayNodes=document.getElementById(padre).childNodes;
135	for(var i in arrayNodes)
136	{
137		if(arrayNodes[i].id==figlio)
138			return true;
139	}
140	return false;
141}
142/*}}}*/
143
144/*{{{ rsRemoveChilds(padre,figlio)*/
145function rsRemoveChilds(padre,figlio)
146{
147	if(typeof(padre)=='object')
148		var myNodes=padre;
149	else
150	{
151		if(document.getElementById(padre))
152			var myNodes=document.getElementById(padre);
153		else
154			return false;
155	}
156	var arrayNodes=myNodes.childNodes;
157	if(typeof(figlio)!='undefined')
158	{
159		for(var i in arrayNodes)
160		{
161			if(typeof(arrayNodes[i])=='object' && figlio==arrayNodes[i].id)
162				myNodes.removeChild(arrayNodes[i]);
163		}
164	}
165	else
166	{
167		var uscita='no';
168		while(arrayNodes[0] && uscita=='no')
169		{
170			var c=0;
171			for(var i in arrayNodes)
172			{
173				if(typeof(arrayNodes[i])=='object')
174				{
175					document.getElementById(padre).removeChild(arrayNodes[i]);
176					++c;
177				}
178			}
179			if(c==0)
180				uscita='yes';
181		}
182	}
183	return true;
184}
185/*}}}*/
186
187/*{{{ rsGetScrollXY()*/
188function rsGetScrollXY() {
189	var scrOfX = 0; scrOfY = 0;
190	if( typeof( window.pageYOffset ) == 'number' ) {
191		/*Netscape compliant*/
192		scrOfY = window.pageYOffset;
193		scrOfX = window.pageXOffset;
194	} else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
195		/*DOM compliant*/
196		scrOfY = document.body.scrollTop;
197		scrOfX = document.body.scrollLeft;
198	} else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
199		/*IE6 standards compliant mode*/
200		scrOfY = document.documentElement.scrollTop;
201		scrOfX = document.documentElement.scrollLeft;
202	}
203	return [ scrOfX, scrOfY ];
204}
205/*}}}*/
206
207/*{{{ rsSizeOf(myObject)*/
208function rsSizeOf(myObject)
209{
210	if(typeof(myObject.length)!='undefined')
211		return myObject.length;
212	else
213	{
214		var c=0;
215		for(var i in myObject)
216			c++;
217		return c;
218	}
219}
220/*}}}*/
221
222/*{{{ rsFindPosX(obj)*/
223function rsFindPosX(obj)
224{
225	var curtop = 0;
226	if (obj.offsetParent)
227	{
228		while (obj.offsetParent)
229		{
230			curtop += obj.offsetLeft;
231			obj = obj.offsetParent;
232		}
233	}
234	else if (obj.x)
235		curtop += obj.x;
236	return curtop;
237}
238/*}}}*/
239
240/*{{{ rsFindPosY(obj)*/
241function rsFindPosY(obj)
242{
243	var curtop = 0;
244	if (obj.offsetParent)
245	{
246		while (obj.offsetParent)
247		{
248			curtop += obj.offsetTop;
249			obj = obj.offsetParent;
250		}
251	}
252	else if (obj.x)
253		curtop += obj.y;
254	return curtop;
255}
256/*}}}*/
257
258/*{{{ rsconnect*/
259var rsconnection=false;
260function rsconnect2 (tipo,myUrl,myVars,myReferer)
261{
262	rsconnection=false;
263	try
264	{
265		rsconnection=new XMLHttpRequest();
265  /*mozilla, firefox, safari, netscape*/
266	}
267	catch(e)      /*microsoft recente*/
268	{
269		try
270		{
271			rsconnection=new ActiveXObject("Msxml2.XMLHTTP");
272		}
273		catch(e)      /*microsoft vecchio*/
274		{
275			try
276			{
277				rsconnection=new ActiveXObject("Microsoft.XMLHTTP");
278			}
279			catch(e)      /*altrimenti*/
280			{
281				rsconnection=false;
282			}
283		}
284	}
285	if(!rsconnection)
286		return;
287	rsconnection.onreadystatechange=rscontrol2;
288	rsconnection.open(tipo, myUrl, true);
289	rsconnection.setRequestHeader('Content-Type','application/x-www-form-urlencoded;');
290	if(tipo == 'POST')
291		rsconnection.send(myVars);
292	else
293		rsconnection.send(null);
294}
295
296function rscontrol2 ()
297{
298	if(rsconnection.readyState==4)
299	{
300		var myHtml = rsconnection.responseText;
301		if(myHtml!='' && myHtml=='changeimage')
302		{
303			if(typeof(myImmagine)=='object')
304			{
305				var cc=1;
306				var fine='no';
307				while(fine!='yes')
308				{
309					if(document.getElementById(myImmagine[1]+cc))
310					{
311						++myImgCase;
312						document.getElementById(myImmagine[1]+cc).src=myImmagine[0]+myImgCase+'.jpg'+'?'+myImmagine[1]+'='+cc;
313						++cc;
314					}
315					else
316						fine='yes';
317				}
318			}
319		}
320		else if(myHtml!='')
321		{
322			eval(myHtml);
323		}
324	}
325}
326/*}}}*/
327
328/*{{{ getkey(e)*/
329function getkey(e)
330{
331  if (window.event)
332    return window.event.keyCode;
333  else if (e)
334    return e.which;
335  else
336    return false;
337}
338/*}}}*/
339
340/*{{{ check_int(e,valore)*/
341function check_int(e,valore)
342{
343  var key_code=getkey(e);
344  var key_str=String.fromCharCode(key_code);
345  var key_num=parseInt(key_str);
346  if(key_str!= key_num && key_code!=8 && key_code!=17 && key_code!=18 && key_code!=19 && key_code!=20 && key_code!=0)
347    return false;
348  else
349    return true;
350}
351/*}}}*/
352
353/*{{{ checkEmail(email)*/
354function checkEmail(email){
355var filter = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
356if(email.match(filter))
357return true;
358return false;
359}
360/*}}}*/
361
362/*{{{ fillSelectField(id,els,offset) */ 
363function fillSelectField(id,els,offset)
364{
365  var offset=typeof('offset')=='undefined'?0:offset;
366  resetSelectField(id,offset);
367  dest=document.getElementById(id);
368	if(typeof(els[0])!='undefined' ){
369  for(var i=0;i<els.length;i++)
370  {
371	 if(els[i]['value']!=''){
372		if(typeof(els[i]['value'])!='undefined')
373    addSelOption(dest,els[i]['value'],els[i]['text']);
374		else
375    addSelOption(dest,els[i][0],els[i][1]);
376  }
377  }
378	} else {
379		for(var i in els){
380		addSelOption(dest,i,els[i]);
381		} 
382	}
383}
384/*}}}*/
385
386/*{{{ addSelOption(father,val,text)*/
387 function addSelOption(father,val,text,style)
388 {
389  if(typeof(style)!='undefined')
390   var newPar=rsCreate('','option',{'value':unescape(val),'style':style});
391  else
392   var newPar=rsCreate('','option',{'value':unescape(val)});
393  newPar.appendChild(document.createTextNode(unescape(text)));
394	father.appendChild(newPar); 
395
396 }
397/*}}}*/
398
399/*{{{ resetSelectField(obj,offset) */
400function resetSelectField(obj,offset)
401{
402  var offset=typeof('offset')=='undefined'?0:offset;
403  document.getElementById(obj).options.length=offset;
404}
405/*}}}*/
406
407/*{{{ formVars(idForm)*/ 
408function formVars(idForm){
409  return jQuery('#'+idForm).serializeArray();
410}
411/*}}}*/
412
413/*{{{ selectField(field,value) */
414function selectField(field,value)
415{
416var myOption=jQuery('#'+field+' option[value="'+value+'"]');
417if(myOption.length>0)
418myOption.attr("selected","selected") ;
419else
420{
421	jQuery('#'+field+' option').each(function(){
422	if(typeof(value)!='object' && jQuery(this).attr('value').trim().toLowerCase()==value.trim().toLowerCase())
423	{
424	jQuery(this).attr("selected","selected");
425	return;
426	} else { 
427		for(var i in value) {
428			if(jQuery(this).attr('value').trim().toLowerCase()==value[i].trim().toLowerCase())
429				jQuery(this).attr("selected","selected");
430		}
431	}
432	});
433}
434
435}
436/*}}}*/
437
438/*{{{ encodeToHex(str) */
439function encodeToHex(str){
440  var r="";
441  var e=str.length;
442  var c=0;
443  var h;
444  while(c <e){
445      h=str.charCodeAt(c++).toString(16);
446      while(h.length<3) h="0"+h;
447      r+=h;
448  }
449  return r;
450}
451/*}}}*/
452
453/*{{{ decodeFromHex(str) */
454function decodeFromHex(str){
455  var r="";
456  var e=str.length;
457  var s;
458  while(e>=0){
459      s=e-3;
460      r=String.fromCharCode("0x"+str.substring(s,e))+r;
461      e=s;
462  }
463  return r;
464}
465/*}}}*/
466
467/*{{{ ascii2script(stringa) */
468function html2script(stringa){
469return ascii2script(stringa);
470}
471function ascii2script(stringa)
472{
473  /*HEXADECIMAL ASCII CONVERSION*/
474  if(stringa!='')
475  {
476  stringa = stringa.replace(/&deg;/g,'\xB0');
477  stringa = stringa.replace(/&Agrave;/g,'\xC0');
478  stringa = stringa.replace(/&agrave;/g,'\xE0');
479  stringa = stringa.replace(/&Aacute;/g,'\xC1');
480  stringa = stringa.replace(/&pound;/g,'\xA3');
481  stringa = stringa.replace(/&ccedil;/g,'\xE7');
482  stringa = stringa.replace(/&euro;/g,'\u20ac');
483  stringa = stringa.replace(/&nbsp;/g,'\x81');
484  stringa = stringa.replace(/&aacute;/g,'\xE1');
485  stringa = stringa.replace(/&Egrave;/g,'\xC8');
486  stringa = stringa.replace(/&egrave;/g,'\xE8');
487  stringa = stringa.replace(/&Eacute;/g,'\xC9');
488  stringa = stringa.replace(/&eacute;/g,'\xE9');
489  stringa = stringa.replace(/&Igrave;/g,'\xCC');
490  stringa = stringa.replace(/&igrave;/g,'\xEC');
491  stringa = stringa.replace(/&Iacute;/g,'\xCD');
492  stringa = stringa.replace(/&iacute;/g,'\xED');
493  stringa = stringa.replace(/&Ograve;/g,'\xD2');
494  stringa = stringa.replace(/&ograve;/g,'\xF2');
495  stringa = stringa.replace(/&Oacute;/g,'\xD3');
496  stringa = stringa.replace(/&oacute;/g,'\xF3');
497  stringa = stringa.replace(/&Ugrave;/g,'\xD9');
498  stringa = stringa.replace(/&ugrave;/g,'\xF9');
499  stringa = stringa.replace(/&Uacute;/g,'\xDA');
500  stringa = stringa.replace(/&uacute;/g,'\xFA');
501  stringa = stringa.replace(/&amp;/g,'\x26');
502  stringa = stringa.replace(/&rsquo;/g,"'");
503  stringa = stringa.replace(/&uuml;/g,'\xFC');
504  stringa = stringa.replace(/&ntilde;/g,'\xF1');
505  stringa = stringa.replace(/&amp;#039;/g,'\x27'); /*non funziona altrimenti*/
506  stringa = stringa.replace(/&#039;/g,'\x27');
507  stringa = stringa.replace(/&quot;/g,'\x22');
508  stringa = stringa.replace(/&lt;/g,'\x3c');
509  stringa = stringa.replace(/&gt;/g,'\x3e');
510  stringa = stringa.replace(/<br \/>/g,'\n');
511  stringa = stringa.replace(/<br>/g,'\n');
512  stringa = stringa.replace(/<b>/g,'');
513  stringa = stringa.replace(/<\/b>/g,'');
514  return stringa;
515  }
516  else
517  return '';
518}
519/*}}}*/
520
521/*{{{ encode_utf8(s) */
522function encode_utf8(s) {
523	  return unescape(encodeURIComponent(s));
524}
525/*}}}*/
526
527/*{{{ decode_utf8(s) */
528function decode_utf8(s) {
529	  return decodeURIComponent(escape(s));
530}
531/*}}}*/
532
533/*{{{ zeroPad(num, places) */
534function zeroPad(num, places) {
535	  var zero = places - num.toString().length + 1;
536		  return Array(+(zero > 0 && zero)).join("0") + num;
537}
538/*}}}*/
539
540/*{{{ Trim for IE8 */
541if(typeof String.prototype.trim !== 'function') {
542	  String.prototype.trim = function() {
543			    return this.replace(/^\s+|\s+$/g, ''); 
544	}
545}
546/*}}}*/
547
548/*{{{ getGetVars(myVar) */
549function getGetVars(myVar){
550	var tmpGet=window.location.search.substring(1).split("&");
551	var myGet={};
552	for(var i=0;i<tmpGet.length;i++){
553		var myTmp=tmpGet[i].split("=");
554		myGet[myTmp[0]]=myTmp[1];
555	}
556	if(typeof(myVar)=='undefined')
557	return myGet;
558	else if(typeof(myGet[myVar])!='undefined')
559	return myGet[myVar];
560	
561	return false;
562}
563/*}}}*/
564
565jsloaded='yes';

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.