def serialize_user(context, request, api=None): if api is None: api = TemplateAPI(context, request) udata = None user = request.user if user is not None: udata = dict() for key in ['id', 'email', 'groups', 'name', 'title']: udata[key] = getattr(user, key) for dt in ['creation_date', 'last_login_date']: value = getattr(user, dt) if value is not None: value = value.isoformat() udata[dt] = value udata['avatar_prefix'] = api.avatar_url(user=request.user, size='') udata['prefs_url'] = api.url(api.root, '@@prefs') return udata