| 112 | |
| 113 | |
| 114 | class RoleSerializer(Serializer): |
| 115 | def _serialize(self, obj): |
| 116 | obj["links"] = {"self": url_for("roles_api.view", id=obj.get("id"))} |
| 117 | obj["writeable"] = request.authz.can_write_role(obj.get("id")) |
| 118 | obj["shallow"] = obj.get("shallow", True) |
| 119 | if self.nested or not obj["writeable"]: |
| 120 | obj.pop("has_password", None) |
| 121 | obj.pop("has_api_key", None) |
| 122 | obj.pop("api_key_expires_at", None) |
| 123 | obj.pop("is_admin", None) |
| 124 | obj.pop("is_muted", None) |
| 125 | obj.pop("is_tester", None) |
| 126 | obj.pop("is_blocked", None) |
| 127 | obj.pop("email", None) |
| 128 | obj.pop("locale", None) |
| 129 | obj.pop("created_at", None) |
| 130 | obj.pop("updated_at", None) |
| 131 | if obj["type"] != Role.USER: |
| 132 | obj.pop("has_password", None) |
| 133 | obj.pop("has_api_key", None) |
| 134 | obj.pop("api_key_expires_at", None) |
| 135 | obj.pop("is_admin", None) |
| 136 | obj.pop("is_muted", None) |
| 137 | obj.pop("is_tester", None) |
| 138 | obj.pop("is_blocked", None) |
| 139 | obj.pop("email", None) |
| 140 | obj.pop("locale", None) |
| 141 | obj.pop("api_key", None) |
| 142 | obj.pop("password", None) |
| 143 | return obj |
| 144 | |
| 145 | |
| 146 | class AlertSerializer(Serializer): |
no outgoing calls
no test coverage detected