var msIE = navigator.userAgent.match(/Trident\/7\./) || navigator.userAgent.match(/(MSIE\ [0-9]{1})/i); // Internet Explorer ?
$(document).ready(function ()
{
var classSucc = $('form').attr('class');
$('#espaceBibliotheque').closest('#contenantEspaceBibliotheque').addClass('nonVide');
if (classSucc != null && classSucc.length)
{
var posSucc;
classSucc = classSucc.toUpperCase();
posSucc = classSucc.indexOf('SUCC');
if (posSucc >= 0)
{
storageSetSuccursale(classSucc.substring(posSucc + 4), classSucc.substring(posSucc + 4), 1);
}
}
// Activer l'item (les items) du menu relié à la page affichée.
$('#MenuPrincipal li').removeClass('mpItemActif');
$('#contenuSuggestions').closest('body').find('#ctlItemSuggestions').addClass('mpItemActif');
$('#contenuRecherche').closest('body').find('#ctlItemRecherche').addClass('mpItemActif');
$('#contenuRechercheThesaurus').closest('body').find('#ctlItemRechercheThesaurus').addClass('mpItemActif');
$('#contenuResultats').closest('body').find('#ctlItemResultats').addClass('mpItemActif');
$('#contenuHistorique').closest('body').find('#ctlItemHistorique').addClass('mpItemActif');
$('#contenuRechercheZ3950').closest('body').find('#ctlItemZ3950').addClass('mpItemActif');
$('#contenuListeZ3950').closest('body').find('#ctlItemResultatZ3950').addClass('mpItemActif');
$('#contenuResultatsZ3950').closest('body').find('#ctlItemResultatZ3950').addClass('mpItemActif');
$('#contenuPanierZ3950').closest('body').find('#ctlItemPanierZ3950').addClass('mpItemActif');
$('#contenuRessourcesNumeriques').closest('body').find('#ctlItemRessNum').addClass('mpItemActif');
// Activer l'item-parent (1er niveau) du menu principal
$('#contenuSuggestions').closest('body').find('#ctlItemCatalogue').addClass('mpItemActif');
$('#contenuRecherche').closest('body').find('#ctlItemCatalogue').addClass('mpItemActif');
$('#contenuRechercheThesaurus').closest('body').find('#ctlItemCatalogue').addClass('mpItemActif');
$('#contenuSuggRechApprox').closest('body').find('#ctlItemCatalogue').addClass('mpItemActif');
$('#contenuResultats').closest('body').find('#ctlItemCatalogue').addClass('mpItemActif');
$('#contenuHistorique').closest('body').find('#ctlItemCatalogue').addClass('mpItemActif');
$('#contenuPanier').closest('body').find('#ctlItemCatalogue').addClass('mpItemActif');
$('#contenuDetail').closest('body').find('#ctlItemCatalogue').addClass('mpItemActif');
$('#contenuDetailThes').closest('body').find('#ctlItemCatalogue').addClass('mpItemActif');
$('#contenuHistoriqueDetail').closest('body').find('#ctlItemCatalogue').addClass('mpItemActif');
$('#contenuReserv').closest('body').find('#ctlItemCatalogue').addClass('mpItemActif');
$('#conserverRecherche').closest('body').find('#ctlItemCatalogue').addClass('mpItemActif');
$('#contenuRechercheZ3950').closest('body').find('#ctlItemAutresBiblio').addClass('mpItemActif');
$('#contenuListeZ3950').closest('body').find('#ctlItemAutresBiblio').addClass('mpItemActif');
$('#contenuResultatsZ3950').closest('body').find('#ctlItemAutresBiblio').addClass('mpItemActif');
$('#contenuDetailZ3950').closest('body').find('#ctlItemAutresBiblio').addClass('mpItemActif');
$('#contenuPanierZ3950').closest('body').find('#ctlItemAutresBiblio').addClass('mpItemActif');
// Cacher les sous-menus inactifs. Afficher le sous-menu actif.
$('#MenuPrincipal ul ul').addClass('sousMenuInactif');
$('#MenuPrincipal > ul > li.mpItemActif').find('ul').removeClass('sousMenuInactif');
$('#MenuPrincipal > ul > li:not(.mpItemActif)').on('mouseenter mouseleave',
function (e)
{
switch (e.type) {
case 'mouseenter':
$(this).find('ul').hide(); /* Pour retarder l'effet de l'instruction ci-dessous*/
$(this).find('ul').parent().addClass('sousMenuAff');
$(this).find('ul').show('fast');
break;
case 'mouseleave':
$('#MenuPrincipal > ul > li').removeClass('sousMenuAff');
break;
}
}
);
// Empêcher le clic sur l'élément actif. On évite ainsi un paquet de problèmes particulièrement
// pour la page de résultats.
$('#MenuPrincipal ul ul .mpItemActif a').on('click', function (event) {
event.preventDefault();
});
// Au clic sur la zone emprunteur, afficher/cacher son sous-menu.
$('#nomEmpr').on('click', function ()
{
$('#nomEmpr + ul').toggleClass('etendu');
});
// Au clic sur un élément hors de la zone emprunteur (#emprunteur), cacher le sous-menu.
$(document).on('click',function (e)
{
// Si la cible du clic n'est ni #emprunteur ni un des ses enfants...
if ($(e.target).closest('#emprunteur').length === 0)
{
$('#emprunteur .etendu').find('ul li').removeClass('affiche');
$('#emprunteur .etendu').removeClass('etendu');
}
});
initScrollTop('top');
});
function initScrollTop(elementId) {
var oTop = document.getElementById(elementId);
oTop.onclick = function (e) {
e.preventDefault();
var difference = (msIE != null) ? window.document.documentElement.scrollTop : window.pageYOffset;
if (difference > 0) {
var saut = 40, i = 0;
var scroll = setInterval(function () {
window.scrollBy(0, 0 - saut);
i = i + saut;
if (i >= difference)
clearInterval(scroll);
}, 10);
}
}
window.onscroll = function () {
var yOffset = (msIE != null) ? window.document.documentElement.scrollTop : window.pageYOffset;
if (yOffset > 50)
{
classie.remove(oTop, 'masque');
}
else
{
classie.add(oTop, 'masque');
}
};
}
/*!
* classie - class helper functions * from bonzo https://github.com/ded/bonzo
* classie.has( elem, 'my-class' ) -> true/false
* classie.add( elem, 'my-new-class' )
* classie.remove( elem, 'my-unwanted-class' )
* classie.toggle( elem, 'my-class' ) */
(function (window) {
'use strict';
function classReg(className) { return new RegExp("(^|\\s+)" + className + "(\\s+|$)"); }
var hasClass, addClass, removeClass;
if ('classList' in document.documentElement) {
hasClass = function (elem, c) { return elem.classList.contains(c); };
addClass = function (elem, c) { elem.classList.add(c); };
removeClass = function (elem, c) { elem.classList.remove(c); };
}
else {
hasClass = function (elem, c) { return classReg(c).test(elem.className); };
addClass = function (elem, c) { if (!hasClass(elem, c)) { elem.className = elem.className + ' ' + c; } };
removeClass = function (elem, c) { elem.className = elem.className.replace(classReg(c), ' '); };
}
function toggleClass(elem, c) {
var fn = hasClass(elem, c) ? removeClass : addClass;
fn(elem, c);
}
var classie = {
hasClass: hasClass,
addClass: addClass,
removeClass: removeClass,
toggleClass: toggleClass,
has: hasClass,
add: addClass,
remove: removeClass,
toggle: toggleClass
};
if (typeof define === 'function' && define.amd) { define(classie); }
else { window.classie = classie; }
})(window);