ns = params_kw.copy() for k,v in ns.items(): if v == 'NaN' or v == 'null': ns[k] = None userid = await get_user() if not userid: return { "widgettype":"Error", "options":{ "title":"Authorization Error", "timeout":3, "cwidth":16, "cheight":9, "message":"Please login" } } ns['ownerid'] = userid userorgid = await get_userorgid() if not userorgid: return { "widgettype":"Error", "options":{ "title":"Authorization Error", "timeout":3, "cwidth":16, "cheight":9, "message":"Please login" } } ns['orgid'] = userorgid if params_kw.get('apikey'): ns['apikey'] = password_encode(params_kw.get('apikey')) if params_kw.get('apipasswd'): ns['apipasswd'] = password_encode(params_kw.get('apipasswd')) db = DBPools() dbname = get_module_dbname('uapi') async with db.sqlorContext(dbname) as sor: ns1 = { "orgid": userorgid, "ownerid": userid, "id": params_kw.id } recs = await sor.R('upappkey', ns1) if len(recs) < 1: return { "widgettype":"Error", "options":{ "title":"Update Error", "cwidth":16, "cheight":9, "timeout":3, "message":"Record no exist or with wrong ownership" } } r = await sor.U('upappkey', ns) debug('update success'); return { "widgettype":"Message", "options":{ "title":"Update Success", "cwidth":16, "cheight":9, "timeout":3, "message":"ok" } } return { "widgettype":"Error", "options":{ "title":"Update Error", "cwidth":16, "cheight":9, "timeout":3, "message":"failed" } }