Fixed cognitive complexity issues reported by SonarQube.

This commit is contained in:
Nikhil Mohite
2020-08-10 16:30:07 +05:30
committed by Akshay Joshi
parent 7a0bfecfc5
commit 9d006d0ec5
4 changed files with 246 additions and 141 deletions

View File

@@ -113,35 +113,7 @@ def preferences(module=None, preference=None):
def label(p):
return gettext(p['label'])
for m in pref:
if len(m['categories']):
om = {
"id": m['id'],
"label": gettext(m['label']),
"inode": True,
"open": True,
"branch": []
}
for c in m['categories']:
for p in c['preferences']:
if 'label' in p and p['label'] is not None:
p['label'] = gettext(p['label'])
if 'help_str' in p and p['help_str'] is not None:
p['help_str'] = gettext(p['help_str'])
oc = {
"id": c['id'],
"mid": m['id'],
"label": gettext(c['label']),
"inode": False,
"open": False,
"preferences": sorted(c['preferences'], key=label)
}
(om['branch']).append(oc)
om['branch'] = sorted(om['branch'], key=label)
res.append(om)
_group_pref_by_categories(pref, res, label)
return ajax_response(
response=sorted(res, key=label),
@@ -149,6 +121,56 @@ def preferences(module=None, preference=None):
)
def _group_pref_by_categories(pref, res, label):
"""
Group preference by categories type.
:param pref: preference data.
:param res: response for request.
:param label: get label.
:return:
"""
for pref_d in pref:
if len(pref_d['categories']):
_iterate_categories(pref_d, label, res)
def _iterate_categories(pref_d, label, res):
"""
Iterate preference categories.
:param pref_d: preference data
:param label: get label.
:param res: response.
:return:
"""
om = {
"id": pref_d['id'],
"label": gettext(pref_d['label']),
"inode": True,
"open": True,
"branch": []
}
for c in pref_d['categories']:
for p in c['preferences']:
if 'label' in p and p['label'] is not None:
p['label'] = gettext(p['label'])
if 'help_str' in p and p['help_str'] is not None:
p['help_str'] = gettext(p['help_str'])
oc = {
"id": c['id'],
"mid": pref_d['id'],
"label": gettext(c['label']),
"inode": False,
"open": False,
"preferences": sorted(c['preferences'], key=label)
}
(om['branch']).append(oc)
om['branch'] = sorted(om['branch'], key=label)
res.append(om)
@blueprint.route("/get_all", methods=["GET"], endpoint='get_all')
@login_required
def preferences_s():