Skip to content
This repository has been archived by the owner on Oct 6, 2020. It is now read-only.

Commit

Permalink
fix: Limitation des dates juliennes
Browse files Browse the repository at this point in the history
Il ne doit pas y avoir d’affichage date julienne avec une date
républicaine en entrée comme ’17 frimaire an IV’ si c’est limité
(default)
  • Loading branch information
gtoubiana committed Jan 6, 2017
1 parent aa7ab5a commit 4df6aee
Show file tree
Hide file tree
Showing 10 changed files with 32 additions and 21 deletions.
Binary file modified dist/acte-0.0.17-dist.zip
Binary file not shown.
2 changes: 1 addition & 1 deletion dist/acte.min.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion dist/acte.min.js.map

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion docs/js/concat.js

Large diffs are not rendered by default.

6 changes: 3 additions & 3 deletions src/js/private/functions/tabGregorien.js
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ const tabGregorien = (saisie, limites) => {
saisieGregorien[1]), absInt(saisieGregorien[0]));

// Si limitation et avant début du calendrier grégorien
if ((limites === true) && (tab[4] < gregorienVersJj(
if ((limites) && (tab[4] < gregorienVersJj(
dateDebutGregorien[2], dateDebutGregorien[1], dateDebutGregorien[
0]))) {
tab[5] = absInt(saisieGregorien[0]);
Expand Down Expand Up @@ -78,7 +78,7 @@ const tabGregorien = (saisie, limites) => {
tab[3] = dateValide(tab[0], tab[1], tab[2]);

// Si débridé
if (limites === false) {
if (!limites) {
const dateJulienne = jjVersJulien(tab[4]);

tab[5] = dateJulienne[2];
Expand All @@ -93,7 +93,7 @@ const tabGregorien = (saisie, limites) => {
(tab[4] <= jjFinRepublicain)) ||
((tab[4] >= jjDebutCommuneDeParis) &&
(tab[4] <= jjFinCommuneDeParis)) ||
limites === false) {
!limites) {
const dateRepublicaine = jjVersRepublicain(tab[4]);

tab[9] = dateRepublicaine[3];
Expand Down
12 changes: 7 additions & 5 deletions src/js/private/functions/tabRepublicain.js
Original file line number Diff line number Diff line change
Expand Up @@ -43,18 +43,20 @@ const tabRepublicain = (saisie, limites) => {
(tab[4] <= jjFinRepublicain)) ||
((tab[4] >= jjDebutCommuneDeParis) &&
(tab[4] <= jjFinCommuneDeParis)) ||
limites === false) {
!limites) {
const dateGregorienne = jjVersGregorien(tab[4]);
const dateJulienne = jjVersJulien(tab[4]);

tab[0] = dateGregorienne[2];
tab[1] = dateGregorienne[1];
tab[2] = dateGregorienne[0];
tab[3] = dateValide(tab[0], tab[1], tab[2]);
tab[5] = dateJulienne[2];
tab[6] = dateJulienne[1];
tab[7] = dateJulienne[0];
tab[8] = dateValide(tab[5], tab[6], tab[7]);
if (!limites) {
tab[5] = dateJulienne[2];
tab[6] = dateJulienne[1];
tab[7] = dateJulienne[0];
tab[8] = dateValide(tab[5], tab[6], tab[7]);
}
tab[9] = rjmcVersRjdc(saisieRepublicain[0]);
tab[10] = rjmcVersRdc(saisieRepublicain[0]);
tab[11] = absInt(saisieRepublicain[0]);
Expand Down
2 changes: 2 additions & 0 deletions test/jasmine/acteSpec.js
Original file line number Diff line number Diff line change
Expand Up @@ -454,6 +454,7 @@ describe('new acte.Jour().julien()', function () {
expect(new acte.Jour('14/10/1582').julien('%JSl %JM %Mlb %A')).toEqual('Dimanche 14 octobre 1582');
expect(new acte.Jour('15/10/1582').julien('%JSl %JM %Mlb %A')).toEqual('Pas de correspondances.');
expect(new acte.Jour('15/10/1582', false).julien('%JSl %JM %Mlb %A')).toEqual('Vendredi 5 octobre 1582');
expect(new acte.Jour('17 frimaire an IV', false).julien()).toEqual('27 novembre 1795');

// Gestion des années bissextiles
expect(new acte.Jour('29 février 1004').julien()).toEqual('29 février 1004');
Expand Down Expand Up @@ -549,6 +550,7 @@ describe('new acte.Jour().julien()', function () {
expect(new acte.Jour('1/1/16000').julien('%A')).toEqual('Pas de correspondances.');
expect(new acte.Jour('1/1/-16000').julien('%A')).toEqual('Pas de correspondances.');
expect(new acte.Jour('1/1/16000', false).julien('%A')).toEqual('Pas de correspondances.');
expect(new acte.Jour('17 frimaire an IV').julien()).toEqual('Pas de correspondances.');
});
it('new acte.Jour().julien(0, \'erreur\') = Message d\'erreur.', function () {
expect(new acte.Jour('').julien('', 'Message d\'erreur.')).toEqual('Message d\'erreur.');
Expand Down
21 changes: 11 additions & 10 deletions test/jasmine/lib/acte.js
Original file line number Diff line number Diff line change
Expand Up @@ -2109,9 +2109,8 @@ if (!Array.prototype.reduce) {
saisieGregorien[1]), absInt(saisieGregorien[0]));

// Si limitation et avant début du calendrier grégorien
if (limites === true && tab[4] < gregorienVersJj(
dateDebutGregorien[2], dateDebutGregorien[1],
dateDebutGregorien[0])) {
if (limites && tab[4] < gregorienVersJj(dateDebutGregorien[2],
dateDebutGregorien[1], dateDebutGregorien[0])) {
tab[5] = absInt(saisieGregorien[0]);
tab[6] = absInt(saisieGregorien[1]);
tab[7] = parseInt(saisieGregorien[2], 10);
Expand Down Expand Up @@ -2140,7 +2139,7 @@ if (!Array.prototype.reduce) {
tab[3] = dateValide(tab[0], tab[1], tab[2]);

// Si débridé
if (limites === false) {
if (!limites) {
var dateJulienne = jjVersJulien(tab[4]);

tab[5] = dateJulienne[2];
Expand All @@ -2153,7 +2152,7 @@ if (!Array.prototype.reduce) {
// Limitations republicain
if (tab[4] >= jjDebutRepublicain && tab[4] <= jjFinRepublicain ||
tab[4] >= jjDebutCommuneDeParis && tab[4] <=
jjFinCommuneDeParis || limites === false) {
jjFinCommuneDeParis || !limites) {
var dateRepublicaine = jjVersRepublicain(tab[4]);

tab[9] = dateRepublicaine[3];
Expand Down Expand Up @@ -2216,18 +2215,20 @@ if (!Array.prototype.reduce) {
// Si jj (tab[4]) est dans les limites ou en illimité
if (tab[4] >= jjDebutRepublicain && tab[4] <= jjFinRepublicain ||
tab[4] >= jjDebutCommuneDeParis && tab[4] <=
jjFinCommuneDeParis || limites === false) {
jjFinCommuneDeParis || !limites) {
var dateGregorienne = jjVersGregorien(tab[4]);
var dateJulienne = jjVersJulien(tab[4]);

tab[0] = dateGregorienne[2];
tab[1] = dateGregorienne[1];
tab[2] = dateGregorienne[0];
tab[3] = dateValide(tab[0], tab[1], tab[2]);
tab[5] = dateJulienne[2];
tab[6] = dateJulienne[1];
tab[7] = dateJulienne[0];
tab[8] = dateValide(tab[5], tab[6], tab[7]);
if (!limites) {
tab[5] = dateJulienne[2];
tab[6] = dateJulienne[1];
tab[7] = dateJulienne[0];
tab[8] = dateValide(tab[5], tab[6], tab[7]);
}
tab[9] = rjmcVersRjdc(saisieRepublicain[0]);
tab[10] = rjmcVersRdc(saisieRepublicain[0]);
tab[11] = absInt(saisieRepublicain[0]);
Expand Down
2 changes: 2 additions & 0 deletions test/jasmine/lib/acteSpec.js
Original file line number Diff line number Diff line change
Expand Up @@ -453,6 +453,7 @@ describe('new acte.Jour().julien()', function () {
expect(new acte.Jour('14/10/1582').julien('%JSl %JM %Mlb %A')).toEqual('Dimanche 14 octobre 1582');
expect(new acte.Jour('15/10/1582').julien('%JSl %JM %Mlb %A')).toEqual('Pas de correspondances.');
expect(new acte.Jour('15/10/1582', false).julien('%JSl %JM %Mlb %A')).toEqual('Vendredi 5 octobre 1582');
expect(new acte.Jour('17 frimaire an IV', false).julien()).toEqual('27 novembre 1795');

// Gestion des années bissextiles
expect(new acte.Jour('29 février 1004').julien()).toEqual('29 février 1004');
Expand Down Expand Up @@ -548,6 +549,7 @@ describe('new acte.Jour().julien()', function () {
expect(new acte.Jour('1/1/16000').julien('%A')).toEqual('Pas de correspondances.');
expect(new acte.Jour('1/1/-16000').julien('%A')).toEqual('Pas de correspondances.');
expect(new acte.Jour('1/1/16000', false).julien('%A')).toEqual('Pas de correspondances.');
expect(new acte.Jour('17 frimaire an IV').julien()).toEqual('Pas de correspondances.');
});
it('new acte.Jour().julien(0, \'erreur\') = Message d\'erreur.', function () {
expect(new acte.Jour('').julien('', 'Message d\'erreur.')).toEqual('Message d\'erreur.');
Expand Down
4 changes: 4 additions & 0 deletions test/spec-JourJulien.js
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,8 @@ describe('new acte.Jour().julien()', () => {
expect(new acte.Jour('15/10/1582', false).julien(
'%JSl %JM %Mlb %A'))
.toEqual('Vendredi 5 octobre 1582');
expect(new acte.Jour('17 frimaire an IV', false).julien())
.toEqual('27 novembre 1795');

// Gestion des années bissextiles
expect(new acte.Jour('29 février 1004').julien())
Expand Down Expand Up @@ -204,6 +206,8 @@ describe('new acte.Jour().julien()', () => {
.toEqual('Pas de correspondances.');
expect(new acte.Jour('1/1/16000', false).julien('%A'))
.toEqual('Pas de correspondances.');
expect(new acte.Jour('17 frimaire an IV').julien())
.toEqual('Pas de correspondances.');
});
it(
'new acte.Jour().julien(0, \'erreur\') = Message d\'erreur.',
Expand Down

0 comments on commit 4df6aee

Please sign in to comment.