536 |
jpm |
1 |
// cette fonction peut déjà être présente
|
|
|
2 |
if (typeof(addListener) != 'function') {
|
|
|
3 |
// fonction portable d'ajout de listeners
|
|
|
4 |
function addListener(element, baseName, handler)
|
|
|
5 |
{
|
|
|
6 |
if (element.addEventListener) {
|
|
|
7 |
element.addEventListener(baseName, handler, false) ;
|
|
|
8 |
} else if (element.attachEvent) {
|
|
|
9 |
element.attachEvent('on'+baseName, handler) ;
|
|
|
10 |
}
|
|
|
11 |
}
|
|
|
12 |
}
|
|
|
13 |
|
142 |
jpm |
14 |
// Fonction déclanchant l'ouverture d'une fenêtre externe pour les liens possédant la classe "lien_ext"
|
4 |
david |
15 |
function open_ext_link()
|
|
|
16 |
{
|
142 |
jpm |
17 |
var liens = document.getElementsByTagName('a');
|
|
|
18 |
// On récupère tous les liens (<a>) du document dans une variable (un array), ici liens.
|
|
|
19 |
// Une boucle qui parcourt le tableau (array) liens du début à la fin.
|
|
|
20 |
for (var i = 0 ; i < liens.length ; ++i) {
|
465 |
jpm |
21 |
// Si les liens ont un nom de class contenant lien_ext ou img_ext, alors on agit.
|
|
|
22 |
var expression = /lien_ext|img_ext/;
|
|
|
23 |
if (expression.exec(liens[i].className)) {
|
142 |
jpm |
24 |
liens[i].title = 'S\'ouvre dans une nouvelle fenêtre';
|
|
|
25 |
// Au clique de la souris.
|
|
|
26 |
liens[i].onclick = function() {
|
|
|
27 |
window.open(this.href);
|
|
|
28 |
return false; // On ouvre une nouvelle page ayant pour URL le href du lien cliqué et on inhibe le lien réel.
|
|
|
29 |
};
|
|
|
30 |
}
|
|
|
31 |
}
|
4 |
david |
32 |
}
|
142 |
jpm |
33 |
|
|
|
34 |
// Fonction cachant le bouton ok du sélecteur de site de Papyrus
|
|
|
35 |
function cacher_btn_ok_selecteur_site()
|
|
|
36 |
{
|
|
|
37 |
if (document.getElementById('sesi_ok')) {
|
438 |
jpm |
38 |
document.getElementById('sesi_ok').style.display = 'none';
|
142 |
jpm |
39 |
}
|
|
|
40 |
}
|
|
|
41 |
|
348 |
jpm |
42 |
// Fonction aggrandissant ou diminuant la taille d'un champ
|
|
|
43 |
// Provient du site https://addons.mozilla.org/
|
|
|
44 |
function basculerTaille(id, grand)
|
|
|
45 |
{
|
|
|
46 |
var sb = document.getElementById(id);
|
|
|
47 |
if (grand) {
|
478 |
jpm |
48 |
sb.style.width = '20em';
|
348 |
jpm |
49 |
} else {
|
478 |
jpm |
50 |
sb.style.width = '10em';
|
348 |
jpm |
51 |
}
|
|
|
52 |
}
|
|
|
53 |
|
|
|
54 |
// Fonction nettoyant un champ de formulaire d'une chaine donnée...
|
|
|
55 |
function nettoyerChamp(id, chaine)
|
|
|
56 |
{
|
|
|
57 |
var sb = document.getElementById(id);
|
|
|
58 |
var valeur = sb.value;
|
|
|
59 |
if (valeur == chaine) {
|
|
|
60 |
sb.value = '';
|
|
|
61 |
}
|
|
|
62 |
if (valeur == '') {
|
|
|
63 |
sb.value = chaine;
|
|
|
64 |
}
|
|
|
65 |
}
|
467 |
jpm |
66 |
|
|
|
67 |
/** Cacher la légende : fonctions et code provenant de Média Wiki
|
|
|
68 |
* Modifié pour pouvoir gérer des listes ul ou dl...
|
|
|
69 |
*/
|
|
|
70 |
function changeText(el, newText) {
|
|
|
71 |
// Safari work around
|
|
|
72 |
if (el.innerText) {
|
|
|
73 |
el.innerText = newText;
|
|
|
74 |
} else if (el.firstChild && el.firstChild.nodeValue) {
|
|
|
75 |
el.firstChild.nodeValue = newText;
|
|
|
76 |
}
|
|
|
77 |
}
|
|
|
78 |
|
|
|
79 |
function toggleToc(id, type_liste) {
|
|
|
80 |
var toc = document.getElementById(id).getElementsByTagName(type_liste)[0];
|
|
|
81 |
var toggleLink = document.getElementById('togglelink');
|
|
|
82 |
|
|
|
83 |
if (toc && toggleLink && toc.style.display == 'none') {
|
|
|
84 |
changeText(toggleLink, tocHideText);
|
|
|
85 |
toc.style.display = 'block';
|
|
|
86 |
document.cookie = "hidetoc=0";
|
|
|
87 |
} else {
|
|
|
88 |
changeText(toggleLink, tocShowText);
|
|
|
89 |
toc.style.display = 'none';
|
|
|
90 |
document.cookie = "hidetoc=1";
|
|
|
91 |
}
|
|
|
92 |
}
|
|
|
93 |
|
|
|
94 |
/** Pour utiliser cette fonction rajouter dans les pages web :
|
|
|
95 |
* <script type="text/javascript">
|
|
|
96 |
* // Le système de masquage des sommaires
|
|
|
97 |
* if (window.showTocToggle) {
|
|
|
98 |
* var tocShowText = "afficher";
|
|
|
99 |
* var tocHideText = "masquer";
|
|
|
100 |
* showTocToggle('faq_sommaire_titre', 'faq_sommaire', 'ul');
|
|
|
101 |
* }
|
|
|
102 |
* </script>
|
|
|
103 |
* Pour id_titre mettre l'identifiant du titre où afficher le texte "masquer"/"afficher"
|
|
|
104 |
* Pour l'id_div mettre l'identifiant de la div contenant la liste à masquer
|
|
|
105 |
* Pour le type de liste indiquer "ul" ou "dl" en fonction du type de liste.
|
|
|
106 |
*/
|
|
|
107 |
function showTocToggle(id_titre, id_div, type_liste) {
|
|
|
108 |
if (document.createTextNode) {
|
|
|
109 |
// Uses DOM calls to avoid document.write + XHTML issues
|
|
|
110 |
|
|
|
111 |
var linkHolder = document.getElementById(id_titre);
|
|
|
112 |
if (!linkHolder) {
|
|
|
113 |
return;
|
|
|
114 |
}
|
|
|
115 |
|
|
|
116 |
var outerSpan = document.createElement('span');
|
|
|
117 |
outerSpan.className = 'toctoggle';
|
|
|
118 |
|
|
|
119 |
var toggleLink = document.createElement('a');
|
|
|
120 |
toggleLink.id = 'togglelink';
|
|
|
121 |
toggleLink.className = 'internal';
|
|
|
122 |
toggleLink.href = 'javascript:toggleToc(\''+id_div+'\', \''+type_liste+'\')';
|
|
|
123 |
toggleLink.appendChild(document.createTextNode(tocHideText));
|
|
|
124 |
|
|
|
125 |
outerSpan.appendChild(document.createTextNode('['));
|
|
|
126 |
outerSpan.appendChild(toggleLink);
|
|
|
127 |
outerSpan.appendChild(document.createTextNode(']'));
|
|
|
128 |
|
|
|
129 |
linkHolder.appendChild(document.createTextNode(' '));
|
|
|
130 |
linkHolder.appendChild(outerSpan);
|
|
|
131 |
|
|
|
132 |
var cookiePos = document.cookie.indexOf("hidetoc=");
|
|
|
133 |
if (cookiePos > -1 && document.cookie.charAt(cookiePos + 8) == 1) {
|
|
|
134 |
toggleToc(id_div, type_liste);
|
|
|
135 |
}
|
|
|
136 |
}
|
|
|
137 |
}
|
|
|
138 |
|
142 |
jpm |
139 |
// Fonction initialisant d'autres fonctions
|
|
|
140 |
function initialiser()
|
|
|
141 |
{
|
|
|
142 |
cacher_btn_ok_selecteur_site();// Doit être avant les lien_ext
|
536 |
jpm |
143 |
// s'il existe une carte dans la page
|
|
|
144 |
/*if(typeof isMap != "undefined") {
|
|
|
145 |
loadMap() ;
|
|
|
146 |
}*/
|
142 |
jpm |
147 |
open_ext_link();
|
|
|
148 |
}
|
467 |
jpm |
149 |
|
142 |
jpm |
150 |
// Au chargement de la page, on appelle la fonction d'initialisation :
|
536 |
jpm |
151 |
addListener(window, 'load', initialiser) ;
|