mirror of
https://github.com/GAM-team/GAM.git
synced 2025-07-10 14:43:34 +00:00
Handle case where several user attribute items are set primary (#586)
* Handle where several user attributes items are set primary * Throw error when multiple items are marked primary
This commit is contained in:
34
src/gam.py
34
src/gam.py
@ -6433,21 +6433,27 @@ def doGetUserSchema():
|
||||
schema = callGAPI(cd.schemas(), u'get', customerId=GC_Values[GC_CUSTOMER_ID], schemaKey=schemaKey)
|
||||
_showSchema(schema)
|
||||
|
||||
def checkClearBodyList(i, body, itemName):
|
||||
if sys.argv[i].lower() == u'clear':
|
||||
if itemName in body:
|
||||
del body[itemName]
|
||||
body.setdefault(itemName, None)
|
||||
return True
|
||||
return False
|
||||
|
||||
def appendItemToBodyList(body, itemName, itemValue):
|
||||
if (itemName in body) and (body[itemName] is None):
|
||||
del body[itemName]
|
||||
body.setdefault(itemName, [])
|
||||
body[itemName].append(itemValue)
|
||||
|
||||
def getUserAttributes(i, cd, updateCmd=False):
|
||||
def checkClearBodyList(i, body, itemName):
|
||||
if sys.argv[i].lower() == u'clear':
|
||||
if itemName in body:
|
||||
del body[itemName]
|
||||
body.setdefault(itemName, None)
|
||||
return True
|
||||
return False
|
||||
|
||||
def appendItemToBodyList(body, itemName, itemValue):
|
||||
if (itemName in body) and (body[itemName] is None):
|
||||
del body[itemName]
|
||||
body.setdefault(itemName, [])
|
||||
# Throw an error if multiple items are marked primary
|
||||
if itemValue.get(u'primary', False):
|
||||
for citem in body[itemName]:
|
||||
if citem.get(u'primary', False):
|
||||
print u'ERROR: Multiple {0} are marked primary, only one can be primary'.format(itemName)
|
||||
sys.exit(2)
|
||||
body[itemName].append(itemValue)
|
||||
|
||||
def _splitSchemaNameDotFieldName(sn_fn, fnRequired=True):
|
||||
if sn_fn.find(u'.') != -1:
|
||||
schemaName, fieldName = sn_fn.split(u'.', 1)
|
||||
|
Reference in New Issue
Block a user