Set preferred = False for cards that are not preferred
This commit is contained in:
		
					parent
					
						
							
								b6d1e8df6b
							
						
					
				
			
			
				commit
				
					
						a17a5f66bc
					
				
			
		
					 1 changed files with 7 additions and 4 deletions
				
			
		| 
						 | 
					@ -282,7 +282,7 @@ class UserCardDetail(AssignPermissionsMixin, models.Model):
 | 
				
			||||||
        cu = cus_response['response_object']
 | 
					        cu = cus_response['response_object']
 | 
				
			||||||
        cu.default_source = stripe_source_id
 | 
					        cu.default_source = stripe_source_id
 | 
				
			||||||
        cu.save()
 | 
					        cu.save()
 | 
				
			||||||
        self._save_default_card(stripe_api_cus_id, stripe_source_id)
 | 
					        self.save_default_card(stripe_api_cus_id, stripe_source_id)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    def set_default_card_from_stripe(self, stripe_api_cus_id):
 | 
					    def set_default_card_from_stripe(self, stripe_api_cus_id):
 | 
				
			||||||
        stripe_utils = StripeUtils()
 | 
					        stripe_utils = StripeUtils()
 | 
				
			||||||
| 
						 | 
					@ -290,12 +290,15 @@ class UserCardDetail(AssignPermissionsMixin, models.Model):
 | 
				
			||||||
        cu = cus_response['response_object']
 | 
					        cu = cus_response['response_object']
 | 
				
			||||||
        default_source = cu.default_source
 | 
					        default_source = cu.default_source
 | 
				
			||||||
        if default_source is not None:
 | 
					        if default_source is not None:
 | 
				
			||||||
            self._save_default_card(stripe_api_cus_id, default_source)
 | 
					            self.save_default_card(stripe_api_cus_id, default_source)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    def _save_default_card(self, stripe_api_cus_id, card_id):
 | 
					    def save_default_card(self, stripe_api_cus_id, card_id):
 | 
				
			||||||
        stripe_cust = StripeCustomer.objects.get(stripe_id=stripe_api_cus_id)
 | 
					        stripe_cust = StripeCustomer.objects.get(stripe_id=stripe_api_cus_id)
 | 
				
			||||||
        user_card_detail = UserCardDetail.objects.get(
 | 
					        user_card_detail = UserCardDetail.objects.get(
 | 
				
			||||||
            stripe_customer=stripe_cust, card_id=card_id
 | 
					            stripe_customer=stripe_cust, card_id=card_id
 | 
				
			||||||
        )
 | 
					        )
 | 
				
			||||||
 | 
					        for card in stripe_cust.usercarddetail_set.all():
 | 
				
			||||||
 | 
					            card.preferred = False
 | 
				
			||||||
 | 
					            card.save()
 | 
				
			||||||
        user_card_detail.preferred = True
 | 
					        user_card_detail.preferred = True
 | 
				
			||||||
        user_card_detail.save()
 | 
					        user_card_detail.save()
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue