|
@@ -72,6 +72,28 @@ class Person(NamedTuple):
|
72
|
72
|
|
73
|
73
|
return Person.from_dict(data["person"])
|
74
|
74
|
|
|
75
|
+ def make_active(self) -> "Person":
|
|
76
|
+ req = requests.patch(urljoin(SERVER_URL, f"people/{self.person_id}"),
|
|
77
|
+ json={'person': {'active':True}})
|
|
78
|
+
|
|
79
|
+ try:
|
|
80
|
+ data = req.json()
|
|
81
|
+ except ValueError:
|
|
82
|
+ LOG.error(
|
|
83
|
+ "Did not get JSON on updating Person (%s): %s",
|
|
84
|
+ req.status_code,
|
|
85
|
+ req.content,
|
|
86
|
+ )
|
|
87
|
+ return None
|
|
88
|
+
|
|
89
|
+ if "error" in data or req.status_code != 200:
|
|
90
|
+ LOG.error("Could not update Person (%s): %s", req.status_code, data)
|
|
91
|
+ return None
|
|
92
|
+
|
|
93
|
+ return Person.from_dict(data["person"])
|
|
94
|
+
|
|
95
|
+
|
|
96
|
+
|
75
|
97
|
@classmethod
|
76
|
98
|
def get(cls, person_id: int) -> "Person":
|
77
|
99
|
""" Retrieve a Person by id. """
|