Skip to content
This repository was archived by the owner on Jan 25, 2024. It is now read-only.

Commit

Permalink
optimize Labels.json fetching and adjust checking if label type exist…
Browse files Browse the repository at this point in the history
…s to accommodate similar types across Label models
  • Loading branch information
birbjam committed Aug 25, 2023
1 parent 2c02f73 commit 8266164
Show file tree
Hide file tree
Showing 3 changed files with 26 additions and 20 deletions.
16 changes: 8 additions & 8 deletions bclabels/utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,11 @@
data = get_labels_json()

def check_bclabel_type(label):
for key, values in data.items():
if key == 'bcLabels':
if(isinstance(values, list)):
for value in values:
if label == value['labelCode']:
return value['labelType']
elif label == 'placeholder':
return False
bc_labels = data.get('bcLabels', [])

if label == 'placeholder':
return False

for value in bc_labels:
if label == value['labelCode']:
return value['labelType']
12 changes: 9 additions & 3 deletions communities/utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,14 @@ def get_form_and_label_type(label_code):
return label_map.get(label_code[:2], (None, None, None))

def does_label_type_exist(community, label_code):
label_type = check_tklabel_type(label_code) or check_bclabel_type(label_code)
if label_type:
return TKLabel.objects.filter(community=community, label_type=label_type).exists() or BCLabel.objects.filter(community=community, label_type=label_type).exists()
tk_label_type = check_tklabel_type(label_code)
bc_label_type = check_bclabel_type(label_code)

if tk_label_type:
return TKLabel.objects.filter(community=community, label_type=tk_label_type).exists()

if bc_label_type:
return BCLabel.objects.filter(community=community, label_type=bc_label_type).exists()

return False

18 changes: 9 additions & 9 deletions tklabels/utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,13 @@

# fetch data from Labels.json
data = get_labels_json()

def check_tklabel_type(label):
for key, values in data.items():
if key == 'tkLabels':
if(isinstance(values, list)):
for value in values:
if label == value['labelCode']:
return value['labelType']
elif label == 'placeholder':
return False
tk_labels = data.get('tkLabels', [])

if label == 'placeholder':
return False

for value in tk_labels:
if label == value['labelCode']:
return value['labelType']

0 comments on commit 8266164

Please sign in to comment.