@@ -191,27 +191,19 @@ def wrap_up(self):
191
191
192
192
@staticmethod
193
193
def clean_user (folio_user , index_or_id ):
194
- valid_addresses = []
195
- # Remove empty addresses
196
- if addresses := folio_user .get ("personal" , {}).pop ("addresses" , []):
197
- for address in addresses :
198
- address_fields = [x for x in address .keys () if x not in ["primaryAddress" , "addressTypeId" , "id" ]]
199
- if address_fields :
200
- valid_addresses .append (address )
194
+ valid_addresses = remove_empty_addresses (folio_user )
201
195
# Make sure the user has exactly one primary address
202
196
if valid_addresses :
203
197
primary_true = []
204
198
for address in valid_addresses :
205
199
if "primaryAddress" not in address :
206
200
address ["primaryAddress" ] = False
207
201
elif (
208
- (
209
- isinstance (address ["primaryAddress" ], bool )
210
- and address ["primaryAddress" ] is True
211
- ) or (
212
- isinstance (address ["primaryAddress" ], str )
213
- and address ["primaryAddress" ].lower () == "true"
214
- )
202
+ isinstance (address ["primaryAddress" ], bool )
203
+ and address ["primaryAddress" ] is True
204
+ ) or (
205
+ isinstance (address ["primaryAddress" ], str )
206
+ and address ["primaryAddress" ].lower () == "true"
215
207
):
216
208
primary_true .append (address )
217
209
else :
@@ -243,3 +235,16 @@ def print_email_warning():
243
235
" \n "
244
236
)
245
237
print (s )
238
+
239
+
240
+ def remove_empty_addresses (folio_user ):
241
+ valid_addresses = []
242
+ # Remove empty addresses
243
+ if addresses := folio_user .get ("personal" , {}).pop ("addresses" , []):
244
+ for address in addresses :
245
+ address_fields = [
246
+ x for x in address .keys () if x not in ["primaryAddress" , "addressTypeId" , "id" ]
247
+ ]
248
+ if address_fields :
249
+ valid_addresses .append (address )
250
+ return valid_addresses
0 commit comments