@@ -33,6 +33,7 @@ const initPagination = () => ({
33
33
34
34
const initFilters = ( ) => ( {
35
35
dateRange : getWeekByDate ( moment ( ) ) ,
36
+ onlyFailedPayments : false ,
36
37
paymentStatuses : { } , // all disabled by default
37
38
userHandle : "" ,
38
39
} ) ;
@@ -597,6 +598,20 @@ const actionHandlers = {
597
598
periodsData : [ periodsData ] ,
598
599
} ;
599
600
} ,
601
+ [ ACTION_TYPE . WP_TOGGLE_ONLY_FAILED_PAYMENTS ] : ( state , on ) => {
602
+ const filters = state . filters ;
603
+ on = on === null ? ! filters . onlyFailedPayments : on ;
604
+ if ( on === filters . onlyFailedPayments ) {
605
+ return state ;
606
+ }
607
+ return {
608
+ ...state ,
609
+ filters : {
610
+ ...filters ,
611
+ onlyFailedPayments : on ,
612
+ } ,
613
+ } ;
614
+ } ,
600
615
[ ACTION_TYPE . WP_TOGGLE_PERIOD ] : ( state , periodId ) => {
601
616
let isSelectedPeriodsAll = state . isSelectedPeriodsAll ;
602
617
let isSelectedPeriodsVisible = state . isSelectedPeriodsVisible ;
@@ -697,13 +712,14 @@ function updateStateFromQuery(queryStr, state) {
697
712
let updatePagination = false ;
698
713
let updateSorting = false ;
699
714
const { filters, pagination, sorting } = state ;
700
- // checking payment statuses
701
715
const { dateRange } = filters ;
716
+ // checking start date
702
717
let range = getWeekByDate ( moment ( params . startDate ) ) ;
703
718
if ( ! range [ 0 ] . isSame ( dateRange [ 0 ] ) ) {
704
719
filters . dateRange = range ;
705
720
updateFilters = true ;
706
721
}
722
+ // checking payment statuses
707
723
let hasSameStatuses = true ;
708
724
const filtersPaymentStatuses = filters . paymentStatuses ;
709
725
const queryPaymentStatuses = { } ;
@@ -729,10 +745,17 @@ function updateStateFromQuery(queryStr, state) {
729
745
filters . paymentStatuses = queryPaymentStatuses ;
730
746
updateFilters = true ;
731
747
}
748
+ // chacking only failed payments flag
749
+ const onlyFailedFlag = params . onlyFailedPayments ?. slice ( 0 , 1 ) ;
750
+ const onlyFailedPayments = onlyFailedFlag === "y" ;
751
+ if ( onlyFailedPayments !== filters . onlyFailedPayments ) {
752
+ filters . onlyFailedPayments = onlyFailedPayments ;
753
+ updateFilters = true ;
754
+ }
732
755
// checking user handle
733
- params . userHandle = params . userHandle || "" ;
734
- if ( params . userHandle !== filters . userHandle ) {
735
- filters . userHandle = params . userHandle . slice ( 0 , 256 ) ;
756
+ const userHandle = params . userHandle ?. slice ( 0 , 256 ) || "" ;
757
+ if ( userHandle !== filters . userHandle ) {
758
+ filters . userHandle = userHandle ;
736
759
updateFilters = true ;
737
760
}
738
761
// checking sorting criteria
0 commit comments