Commit 394a22b
authored
Merge pull request #27 from DumbWareio/Fix-EOM-Recurring-Event-Handling
Fixed issue #25 where recurring transactions set for the end of a month (like the 31st) weren't correctly calculating the appropriate date in shorter months.
Changes:
Improved the monthly recurring transaction logic to always use the last day of the month when the original transaction was on the last day of its month
Fixed date rollover issues that caused transactions to appear on incorrect dates (e.g., Jan 31 -> Mar 3 instead of Feb 28/29)
Added special handling for months with fewer days by using a safe approach that avoids JavaScript's automatic date adjustments
Fixed edge cases for all months regardless of their length (30/31 days)
The solution now correctly handles all cases:
Jan 31 -> Feb 28/29 -> Mar 31 -> Apr 30 -> May 31
Apr 30 -> May 31 -> Jun 30
And preserves the "last day of month" intent when appropriate1 file changed
+52
-2
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
635 | 635 | | |
636 | 636 | | |
637 | 637 | | |
638 | | - | |
| 638 | + | |
| 639 | + | |
| 640 | + | |
| 641 | + | |
| 642 | + | |
| 643 | + | |
| 644 | + | |
| 645 | + | |
| 646 | + | |
| 647 | + | |
| 648 | + | |
| 649 | + | |
| 650 | + | |
| 651 | + | |
| 652 | + | |
| 653 | + | |
| 654 | + | |
| 655 | + | |
| 656 | + | |
| 657 | + | |
| 658 | + | |
| 659 | + | |
| 660 | + | |
| 661 | + | |
| 662 | + | |
| 663 | + | |
| 664 | + | |
| 665 | + | |
| 666 | + | |
| 667 | + | |
| 668 | + | |
| 669 | + | |
| 670 | + | |
| 671 | + | |
| 672 | + | |
| 673 | + | |
| 674 | + | |
639 | 675 | | |
640 | 676 | | |
641 | 677 | | |
642 | 678 | | |
643 | 679 | | |
644 | | - | |
| 680 | + | |
645 | 681 | | |
| 682 | + | |
| 683 | + | |
| 684 | + | |
| 685 | + | |
| 686 | + | |
| 687 | + | |
| 688 | + | |
| 689 | + | |
| 690 | + | |
| 691 | + | |
| 692 | + | |
| 693 | + | |
| 694 | + | |
| 695 | + | |
646 | 696 | | |
647 | 697 | | |
648 | 698 | | |
| |||
0 commit comments