Calcul de période

En fonction de la date de l'acte et de l'age sur l'acte

by toubia95

HTML

<script src="https://raw.github.com/timrwood/moment/1.7.2/min/moment.min.js"></script>
<div>
  <label>Jour</label>
  <input type="text" placeholder="DD">
  <label>Mois</label>
  <input type="text" placeholder="MM"> 
  <label>Année</label>
  <input type="text" placeholder="YYYY"><br>
  <label>Age sur l'acte</label>
  <input type="text" placeholder="AA"><br>
  <input type="submit" value="Calculer">  
</div><br>
<div class="date"></div>
<div class="age">Age : 40 ans</div>
<div class="datemoins"></div>
<div class="dateplus"></div>
<div class="date-rep"></div>

CSS

/* TODO 
# retrouver la période de naissance en fonction de l.age avec http://momentjs.com/
- réadapter le script calendrier republicain dans les 2 sens
    - http://www.patricklecoq.fr/convert/cnv_calendar.html
    - http://www.mouris-bernard.lu/convert.html
    - http://pgj.pagesperso-orange.fr/Calendrier_conversion.htm
    - http://geneom.free.fr/gomol/CalendFr.html#ancdeb
- intégrer la possibilité d'ajouter plusieurs dates
- recouper plusieurs périodes
*/

/* RANGE js
http://www.codingforums.com/showthread.php?t=180728
http://code.google.com/p/rangy/
*/

JavaScript

// http://momentjs.com/

// Fonctions de date et heure du calendrier républicain par J F Blanc 
// http://jeanfrancois.blanc.online.fr/calrep.html

function AnnadaRep() {
maint = Date.parse(Date());
cesoir = (Math.ceil(maint/86400000))*86400000;
deb208 = Date.parse("September 23,1999 11:31:00"); 
duree = 31556925216;
nombran = Math.floor((cesoir - deb208)/duree); 
annee = 208 + nombran //calcul de l'année
return annee;
}

function JorndinsAnnadaRep() {
maint = Date.parse(Date());
cesoir = (Math.ceil(maint/86400000))*86400000;
deb208 = Date.parse("September 23,1999 11:31:00"); 
duree = 31556925216;
nombran = Math.floor((cesoir - deb208)/duree); 
annee = 208 + nombran //calcul de l'annÈe
equi = deb208 + (nombran * duree) 
debudan = Math.floor(equi/86400000)*86400000 
jouran = Math.floor((maint-debudan)/86400000)
return jouran;
}

function NumMesRep() {
mes = Math.floor(JorndinsAnnadaRep()/30)
return mes
}

function MesRep() {
var moiss = new Array("vendémiaire", "brumaire", "frimaire", "nivôse", "pluviôse", "ventôse", "germinal", "floréal", "prairial", "messidor", "thermidor", "fructidor", "sans culottides");
jourdec = JorndinsAnnadaRep() - (Math.floor(JorndinsAnnadaRep()/10) * 10)
mes = moiss[NumMesRep()];
return mes
}

function QuantRep() {
loquant = JorndinsAnnadaRep() - (NumMesRep() * 30) +1
return loquant
}

function DataRepFr() {
var ladata = "";
if (JorndinsAnnadaRep() > 359) { ladata = AnnadaRep(); }
else { ladata = QuantRep()+" "+MesRep()+" "+AnnadaRep(); }
return ladata;
}


var year1 = 2012;
var month1 = 2;
var day1 = 28;
var age1 = 40;
var date1 = moment([year1, month1-1, day1]);
var yearplus1 = year1 - (age1+1);
var dateplus1 = moment([yearplus1, month1-1, day1+1]);
var yearmoins1 = year1 - (age1-1);
var datemoins1 = moment([yearmoins1, month1-1, day1-1]);

$('.date').text("01 - Date saisie : "+moment(date1).format('DD/MM/YYYY'));
$('.age').text("02 - Age sur l\'acte : "+age1+" ans");
$('.datemoins').html("<br><strong>Calcul de la période de naissance...