new: encountered units

This commit is contained in:
Simone Margaritelli 2019-11-12 23:56:59 +01:00
parent c47b8f2d11
commit a5f9b9b2ee
4 changed files with 71 additions and 1 deletions

View File

@ -45,6 +45,10 @@ def get_advertisement_data():
return call("/mesh/data") return call("/mesh/data")
def memory():
return call("/mesh/memory")
def peers(): def peers():
return call("/mesh/peers") return call("/mesh/peers")

View File

@ -38,6 +38,7 @@ class Handler:
# inbox # inbox
self._app.add_url_rule('/inbox', 'inbox', self.with_auth(self.inbox)) self._app.add_url_rule('/inbox', 'inbox', self.with_auth(self.inbox))
self._app.add_url_rule('/inbox/profile', 'inbox_profile', self.with_auth(self.inbox_profile)) self._app.add_url_rule('/inbox/profile', 'inbox_profile', self.with_auth(self.inbox_profile))
self._app.add_url_rule('/inbox/peers', 'inbox_peers', self.with_auth(self.inbox_peers))
self._app.add_url_rule('/inbox/<id>', 'show_message', self.with_auth(self.show_message)) self._app.add_url_rule('/inbox/<id>', 'show_message', self.with_auth(self.show_message))
self._app.add_url_rule('/inbox/<id>/<mark>', 'mark_message', self.with_auth(self.mark_message)) self._app.add_url_rule('/inbox/<id>/<mark>', 'mark_message', self.with_auth(self.mark_message))
self._app.add_url_rule('/inbox/new', 'new_message', self.with_auth(self.new_message)) self._app.add_url_rule('/inbox/new', 'new_message', self.with_auth(self.new_message))
@ -108,6 +109,21 @@ class Handler:
data=data, data=data,
error=error) error=error)
def inbox_peers(self):
peers = {}
error = None
try:
peers = grid.memory()
except Exception as e:
logging.exception('error while reading pwngrid peers')
error = str(e)
return render_template('peers.html',
name=pwnagotchi.name(),
peers=peers,
error=error)
def show_message(self, id): def show_message(self, id):
message = {} message = {}
error = None error = None

View File

@ -36,7 +36,8 @@
<ul> <ul>
<li><a href="/inbox" id="email" class="ui-btn-active" data-icon="bars">Inbox</a></li> <li><a href="/inbox" id="email" class="ui-btn-active" data-icon="bars">Inbox</a></li>
<li><a href="/inbox/new" id="new" data-icon="mail">New</a></li> <li><a href="/inbox/new" id="new" data-icon="mail">New</a></li>
<li><a href="/inbox/profile" id="profile" data-icon="user">Profile</a></li> <li><a href="/inbox/profile" id="profile" data-icon="info">Profile</a></li>
<li><a href="/inbox/peers" id="peers" data-icon="user">Peers</a></li>
</ul> </ul>
</div> </div>
</div> </div>

View File

@ -0,0 +1,49 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>{{ name }} friends</title>
<link rel="stylesheet" href="/js/jquery.mobile/jquery.mobile-1.4.5.min.css"/>
<script type="text/javascript" src="/js/jquery-1.12.4.min.js"></script>
<script type="text/javascript" src="/js/jquery.mobile/jquery.mobile-1.4.5.min.js"></script>
<script type="text/javascript" src="/js/jquery.timeago.js"></script>
<script type="text/javascript" src="/js/jquery-qrcode-0.17.0.min.js"></script>
<link rel="stylesheet" type="text/css" href="/css/style.css"/>
<script type="text/javascript">
$.mobile.ajaxEnabled = false;
</script>
</head>
<body>
<div data-role="page">
<div data-role="footer">
<div data-role="navbar">
<ul>
<li><a href="/inbox" id="email" data-icon="back">Back</a></li>
</ul>
</div>
</div>
<ul class="peers" data-role="listview" data-filter="true" data-filter-placeholder="Search peers..." data-inset="true">
{% for peer in peers %}
<li class="peer">
<a href="/inbox/new?to={{ peer.fingerprint }}">
<h2>{{ peer.advertisement.face }} {{ peer.advertisement.name }}@{{ peer.fingerprint }}</h2>
<p>
Pwned {{ peer.advertisement.pwnd_tot }} networks, {{ peer.encounters }} encounters.
</p>
</a>
</li>
{% endfor %}
</ul>
</div>
</body>
</html>