| @@ 517-530 (lines=14) @@ | ||
| 514 | */ |
|
| 515 | public static function compare(Date $a, Date $b) { |
|
| 516 | // Get min/max JD for each date. |
|
| 517 | switch ($a->qual1) { |
|
| 518 | case 'BEF': |
|
| 519 | $amin = $a->minimumJulianDay() - 1; |
|
| 520 | $amax = $amin; |
|
| 521 | break; |
|
| 522 | case 'AFT': |
|
| 523 | $amax = $a->maximumJulianDay() + 1; |
|
| 524 | $amin = $amax; |
|
| 525 | break; |
|
| 526 | default: |
|
| 527 | $amin = $a->minimumJulianDay(); |
|
| 528 | $amax = $a->maximumJulianDay(); |
|
| 529 | break; |
|
| 530 | } |
|
| 531 | switch ($b->qual1) { |
|
| 532 | case 'BEF': |
|
| 533 | $bmin = $b->minimumJulianDay() - 1; |
|
| @@ 531-544 (lines=14) @@ | ||
| 528 | $amax = $a->maximumJulianDay(); |
|
| 529 | break; |
|
| 530 | } |
|
| 531 | switch ($b->qual1) { |
|
| 532 | case 'BEF': |
|
| 533 | $bmin = $b->minimumJulianDay() - 1; |
|
| 534 | $bmax = $bmin; |
|
| 535 | break; |
|
| 536 | case 'AFT': |
|
| 537 | $bmax = $b->maximumJulianDay() + 1; |
|
| 538 | $bmin = $bmax; |
|
| 539 | break; |
|
| 540 | default: |
|
| 541 | $bmin = $b->minimumJulianDay(); |
|
| 542 | $bmax = $b->maximumJulianDay(); |
|
| 543 | break; |
|
| 544 | } |
|
| 545 | if ($amax < $bmin) { |
|
| 546 | return -1; |
|
| 547 | } elseif ($amin > $bmax && $bmax > 0) { |
|