extranet/www/js/scripts.js

250 lines
6.6 KiB
JavaScript

$(document).ready(function(){
//Chargement du menu Accordion
$("#Menu").accordion({autoHeight: false, collapsible: true, active: 0});
//Auto Scroll
$(window).scroll(function() {
var offset = $(document).scrollTop();
$("#floatMenu").css('margin-top',offset);
});
//Autocomplete sur le champs NAF
$('#formR-naf').autocomplete({
minLength:3,
source: function(request, response) {
$.getJSON('./?page=naf', { q: request.term },
function(data) { response(data); }
);
}
});
//Champs de recherche
$('input[name=formR[siret]]').focus();
$('form[name=form_recherche]').submit(function(){
var reg = /[a-z]{3}/i;
var siret = $('input[name=formR[siret]]').val();
if(siret.match(reg)){
$('input[name=formR[raisonSociale]]').attr('value',siret);
$('input[name=formR[siret]]').attr('value','');
}
return true;
});
$('input.button').button();
$('input.button:reset').click(function(){
$('input:text','form[name=form_recherche]').val('');
return false;
});
//Boite de dialog surveillance
$('.dialogsurv').live('click', function(){
var title = $(this).attr('title');
var href = $(this).attr('href')+'&dialog=1';
var dialogOpts = {
bgiframe: true,
title: title,
width: 500,
height: 350,
modal: true,
open: function(event, ui) {
$(this).html('Chargement...');
$(this).load(href);
$('#dialogsurv').keypress(function(e){
if (e.keyCode == 13){
e.preventDefault();
survSubmit();
}
});
},
buttons: {
Ok: function() { survSubmit(); },
Annuler: function() { $(this).dialog('close'); }
},
close: function() { $('#dialogsurv').remove(); }
};
$('<div id="dialogsurv"></div>').dialog(dialogOpts);
return false;
});
function survSubmit(){
var buttons = $('#dialogsurv').dialog('option','buttons');
for( var button in buttons ){
$(":button:contains('"+button+"')").attr('disabled','disabled');
}
var formAction = $('#frmSurv').attr('action');
var href = window.location.href;
var serData = $('#frmSurv').serialize();
$('#frmSurv').replaceWith('<div id="frmSurv">Mise sous surveillance en cours...</div>');
$.post(formAction, serData, function(data) {
if(data==''){
$('#frmSurv').html("L'entité a été placé sous surveillance.\n");
window.location.href = href;
}else{
$('#frmSurv').html(data);
}
});
}
$('a[idobjet]').click(function()
{
idObject=$(this).attr('idobjet');
$('#document'+idObject).html('Construction du document en cours...');
$.ajax({
type: "POST",
url: "/",
data: "page=getmarques&idObject="+idObject,
success: function(msg){ $('#document'+idObject).html(msg); },
error: function(){ $('#document'+idObject).html('Erreur'); }
});
});
//Tooltip date de maj
$('.datemaj').qtip({
content: $(this).attr('alt'),
style: { name: 'cream', width: 170 },
position: {
corner: { target: 'bottomMiddle',
tooltip: 'topMiddle' } }
});
//Tooltip de surveillance
$('u[tooltip]').each(function(){
$(this).qtip({
content: $(this).attr('tooltip'),
style: { name: 'dark' },
position: {
corner: { target: 'topMiddle',
tooltip: 'bottomMiddle' } }
});
});
//Tooltip de domiciliation
if ($('div.domiciliation').length){
$('div.domiciliation').qtip({
show: 'click',
hide: 'unfocus',
content: $('div.domiciliation span').html(),
style: { name: 'cream', width: 200 },
position: {
corner: { target: 'bottomMiddle',
tooltip: 'topMiddle' } }
});
}
//Goidentite
$('#goidentite').click(function(){ goidentite(); });
$(document).keydown(function(e) {
if(e.keyCode == 13 && e.ctrlKey) {
goidentite();
return false;
}
});
});
/**
* Vérifie l'adresse email fournit en paramètre
*/
function checkEmail(eMail){
var isMail = eMail.length;
var verif = /^[a-z0-9_.-]+@[a-z0-9_.-]+[.][a-z]{2,4}$/i;
if(!isMail || verif.exec(eMail)==null){
return false;
} else {
return true;
}
}
/**
* Verifie si un SIREN est valide
* @param Le code SIREN dont on veut vérifier la validité.
* @return Un booléen qui vaut 'true' si le code SIREN passé en
* paramètre est valide, false sinon.
*/
function EstSirenValide(siren) {
var estValide;
if ( (siren.length != 9) || (isNaN(siren)) )
estValide = false;
else {
// Donc le SIREN est un numérique à 9 chiffres
var somme = 0;
var tmp;
for (var cpt = 0; cpt<siren.length; cpt++) {
if ((cpt % 2) == 1) { // Les positions paires : 2ème, 4ème, 6ème et 8ème chiffre
tmp = siren.charAt(cpt) * 2; // On le multiplie par 2
if (tmp > 9)
tmp -= 9; // Si le résultat est supérieur à 9, on lui soustrait 9
}
else
tmp = siren.charAt(cpt);
somme += parseInt(tmp);
}
if ((somme % 10) == 0)
estValide = true; // Si la somme est un multiple de 10 alors le SIREN est valide
else
estValide = false;
}
return estValide;
}
/**
* Verifie si un SIRET est valide
* @param Le code SIRET dont on veut vérifier la validité.
* @return Un booléen qui vaut 'true' si le code SIRET passé en
* paramètre est valide, false sinon.
*/
function EstSiretValide(siret) {
var estValide;
if ( (siret.length != 14) || (isNaN(siret)) )
estValide = false;
else {
// Donc le SIRET est un numérique à 14 chiffres
// Les 9 premiers chiffres sont ceux du SIREN (ou RCS), les 4 suivants
// correspondent au numéro d'établissement
// et enfin le dernier chiffre est une clef de LUHN.
var somme = 0;
var tmp;
for (var cpt = 0; cpt<siret.length; cpt++) {
if ((cpt % 2) == 0) { // Les positions impaires : 1er, 3è, 5è, etc...
tmp = siret.charAt(cpt) * 2; // On le multiplie par 2
if (tmp > 9)
tmp -= 9; // Si le résultat est supérieur à 9, on lui soustrait 9
}
else
tmp = siret.charAt(cpt);
somme += parseInt(tmp);
}
if ((somme % 10) == 0)
estValide = true; // Si la somme est un multiple de 10 alors le SIRET est valide
else
estValide = false;
}
return estValide;
}
/**
* Envoi directement vers la fiche identité
*/
function goidentite()
{
var siret = $('input[name="formR[siret]"]').val().replace(/\s+/g, '');
var pays = $('[name="formR[pays]"]').val();
if (pays != 'FR') {
window.location.href = './?page=giant_identite&pays=' + pays +
'&company=' + siret;
} else {
var verif = false;
if (siret.length == 9) {
verif = EstSirenValide(siret);
} else if (siret.length == 14) {
verif = EstSiretValide(siret);
}
if (verif) {
window.location.href = './?page=identite&siret=' + siret;
} else {
$('input[name=submit]').click();
}
}
}