parent
af73dd713d
commit
d3c98e418a
@ -0,0 +1,11 @@ |
||||
import requests |
||||
|
||||
from ...utils import user_dict_kv |
||||
from ..ResultView import ResultView |
||||
|
||||
|
||||
class GetUserResultView(ResultView): |
||||
def show_result(self, resp: requests.Response): |
||||
pairs = user_dict_kv(resp.json()) |
||||
for key, val in pairs: |
||||
self._add_pair(key, val) |
@ -0,0 +1,29 @@ |
||||
from asciimatics.widgets import Layout, Text |
||||
|
||||
from ...utils import http_get |
||||
from ..CeoFrame import CeoFrame |
||||
|
||||
class GetUserView(CeoFrame): |
||||
def __init__(self, screen, width, height, model): |
||||
super().__init__( |
||||
screen, height, width, model, 'GetUser', |
||||
save_data=True, |
||||
) |
||||
layout = Layout([100], fill_frame=True) |
||||
self.add_layout(layout) |
||||
self._username = Text("Username:", "uid") |
||||
layout.add_widget(self._username) |
||||
|
||||
self.add_flash_message_layout() |
||||
self.add_buttons( |
||||
back_btn=True, |
||||
next_scene='GetUserResult', on_next=self._next) |
||||
self.fix() |
||||
|
||||
def _next(self): |
||||
uid = self._username.value |
||||
self.flash_message('Looking up user...', force_update=True) |
||||
try: |
||||
self._model.resp = http_get(f'/api/members/{uid}') |
||||
finally: |
||||
self.clear_flash_message() |
Loading…
Reference in new issue