PageSourceSearch

https://artsdelamarionnette.eu/visionneuse/javascript/visionneuse.js

js artsdelamarionnette.eu collected 2026-10-03 17:36:33 UTC 4,762 bytes, 125 lines download raw bytes

1// +-------------------------------------------------+
2// � 2002-2010 PMB Services / www.sigb.net [email protected] et contributeurs (voir www.sigb.net)
3// +-------------------------------------------------+
4// $Id: visionneuse.js,v 1.23.2.1.6.1 2026/05/29 09:20:26 tsamson Exp $
5
6var _visionneuse_trigger = null;
7
8function open_visionneuse(callbackFunction,explnum_id,position){
9	_visionneuse_trigger = document.activeElement;
10	callback = function() {
11		return callbackFunction(explnum_id, position);
12	}
13	var visionneuse = document.createElement('div');
14	visionneuse.setAttribute('id','visionneuse');
15	document.getElementsByTagName('body')[0].appendChild(visionneuse);
16	visionneuse.setAttribute('style','position:absolute;left:0;z-index:9000; background: rgba(0,0,0, 0.4);');
17	// NON RGAA - visionneuse.setAttribute('onclick','close_visionneuse();');
18	visionneuse.setAttribute('role','dialog');
19	visionneuse.setAttribute('aria-modal','true');
20	visionneuse.setAttribute('aria-label', pmbDojo.messages.getMessage('visionneuse', 'visionneuse_title'));
21	visionneuse.style.top=getWindowScrollY();
22	visionneuse.style.width="100%";
23	visionneuse.style.height="100%";
24	
25	var background = document.createElement('div');
26	background.setAttribute('id','visionneuseBackground');
27	visionneuse.appendChild(background);
28	
29	var iframe = document.createElement('iframe');
30	iframe.setAttribute('style','width: 96%; height: 96%; overflow:hidden;background-color:white;position:absolute;z-index:9002;left:2%;top:2%;background-image:url("images/ajax-loader.gif");background-repeat:no-repeat;background-position:center center;');		
31	iframe.setAttribute('name','visionneuse');
32	iframe.setAttribute('id','visionneuseIframe');
33	iframe.setAttribute('title', pmbDojo.messages.getMessage('visionneuse', 'visionneuse_title'));
34	iframe.setAttribute('src','');
35	iframe.addEventListener('load', function(e){
36		if(this.contentWindow.location.href != 'about:blank'){
37			this.setAttribute('style','width: 96%; height: 96%; overflow:hidden;background-color:white;position:absolute;z-index:9002;left:2%;top:2%;background-image:none;background-repeat:no-repeat;background-position:center center;');	
38		}
39	});
40	visionneuse.appendChild(iframe);
41	
42	visionneuse.parentNode.style.overflow = "hidden";
43	window.onresize();
44	
45	callback();
46
47}
48
49function open_alertbox(opac_visionneuse_alert) {
50	var alertbox = document.createElement('div');
51	alertbox.setAttribute('id','alertbox');
52	alertbox.setAttribute('style','background-color:white;position:absolute;');
53	alertbox.setAttribute('onclick','window.parent.close_alertbox();');
54	alertbox.style.width="100%";
55	alertbox.style.height="100%";
56	alertbox.innerHTML=opac_visionneuse_alert;
57	try {
58		document.getElementById('visionneuseIframe').contentDocument.getElementsByTagName('body')[0].appendChild(alertbox);
59	}catch(err){
60		try {
61			document.getElementById('visionneuseIframe').contentWindow.getElementsByTagName('body')[0].appendChild(alertbox);
62		}catch(err){}
63	}
64}
65
66function close_alertbox() {
67	try {
68		var ab= document.getElementById('visionneuseIframe').contentDocument.getElementById('alertbox');
69		ab.parentNode.removeChild(ab);
70	}catch(err){
71		try {
72			var ab= document.getElementById('visionneuseIframe').contentWindow.getElementById('alertbox');
73			ab.parentNode.removeChild(ab);
74		}catch(err){}
75	}	 	
76}
77
78window.onresize = function(){
79	var visionneuse = document.getElementById('visionneuse');
80	if (visionneuse){
81		visionneuse.style.width=getWindowWidth()+'px';
82		visionneuse.style.height=getWindowHeight()+'px';
83		visionneuse.style.top=getWindowScrollY()+'px';
84	}	
85}
86
87function close_visionneuse(){
88	var visionneuse = document.getElementById('visionneuse');
89	visionneuse.parentNode.style.overflow = '';
90	visionneuse.parentNode.removeChild(visionneuse);
91	if(document.form_values){
92		document.form_values.target='';
93		document.form_values.action=oldAction;
94		var mode=document.getElementsByName('mode').item(0);
95		if(mode && mode.value == 'extended'){
96			mode.parentNode.removeChild(mode);
97			var explnum_id=document.getElementsByName('explnum_id').item(0);
98			if(explnum_id) explnum_id.parentNode.removeChild(explnum_id);
99			var val_search=document.getElementById('search');
100			if(val_search) val_search.parentNode.removeChild(val_search);
101		}
102	}
103	if (_visionneuse_trigger) {
104		_visionneuse_trigger.focus();
105		_visionneuse_trigger = null;
106	}
107}
108
109function getWindowHeight(){
110	if(window.innerHeight) 
111		return window.innerHeight+"px";
112	else return document.documentElement.clientHeight;
113}
114
115function getWindowWidth(){
116	if(window.innerWidth) 
117		return window.innerWidth+"px";
118	else return document.documentElement.clientWidth;
119}
120
121function getWindowScrollY(){
122	if(window.scrollY)
123		return window.scrollY+"px";
124	else return document.documentElement.scrollTop;
125}

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.