Oliver Gerlich
60bc6049b9
Improve docs, and add tool for sending example data ( #16 )
...
* config_example.conf: add documentation
* README.md: add more technical details
* add respondd-sim.py script, for sending test data back to FFMan
Also add some setup/usage notes for the script.
The respondd-sim.py script is based on the respondd.py script from
https://github.com/ffnord/mesh-announce .
2019-06-04 20:47:08 +02:00
Martin/Geno
e063fa2e12
add gitlab-ci build
2019-06-03 16:42:30 +02:00
Martin/Geno
f597f29f72
fix tests after change in yanic
2019-06-03 16:42:29 +02:00
Martin/Geno
77278ca130
[BUGFIX] session_init before auth_status
2018-09-01 17:46:51 +02:00
Martin/Geno
b92c33b10e
[BUGFIX] session check
2018-08-30 10:26:23 +02:00
Martin/Geno
3a887ec1c5
add websockettype ping
2018-08-24 23:44:26 +02:00
Martin/Geno
832c30fa26
update websocket + handle settings in session
2018-08-24 23:34:02 +02:00
Martin/Geno
a198abb8d0
enhanced session
2018-08-11 12:36:21 +02:00
Martin/Geno
88d7e53cdb
use frequency of airtime to get channel
...
to get real/current used values
+ fix naming
2018-08-11 12:34:19 +02:00
Martin/Geno
57955f30e3
[BUGFIX] do not decode lastseen
2018-08-10 19:48:34 +02:00
Martin/Geno
b5989710e8
use duration for blacklist
2018-08-10 18:58:53 +02:00
Martin/Geno
df5a229fc8
merge json message to one node message
2018-08-10 16:47:34 +02:00
Martin/Geno
a641a162a0
[BUGFIX] boolean in example config
2018-08-10 11:55:10 +02:00
Geno
861531712c
[TASK] rewrite table ( #10 )
2018-08-10 11:52:46 +02:00
Martin/Geno
7c5d117784
use dropdown for channel selection
2018-08-03 09:13:23 +02:00
Martin/Geno
58d843ae7e
fix some issues on connect
2018-08-03 09:13:22 +02:00
Martin/Geno
9fbdd5a798
fix node equal check (location)
2018-08-03 09:13:20 +02:00
Martin/Geno
21c398ca42
sql rewrite
2018-08-03 09:13:12 +02:00
Martin/Geno
50a109dee0
split mutex in List,Current and Read,Write
2018-07-25 09:51:57 +02:00
Martin/Geno
f631ac057b
add ssh timeout and ip prefix filter
2018-07-24 15:07:26 +02:00
Oliver Gerlich
0a9c10666a
status box: turn pulsing animation into 1-second blinking, to reduce CPU load
...
With the pulsing animation (which appears when the websocket connection is
down) the CPU load and GPU load goes up, which probably also uses up lots
of battery time.
2018-07-22 21:58:18 +02:00
Oliver Gerlich
444d80f77e
map: save list of enabled layers in localStorage
2018-07-22 21:56:00 +02:00
Oliver Gerlich
f02b047f9a
map: fix exception when enabling Clients layers
...
The layer data array must not contain "null" entries.
2018-07-22 21:47:26 +02:00
Oliver Gerlich
668ba59b8d
node page: ask for confirmation before resetting node location
2018-07-22 21:47:20 +02:00
Oliver Gerlich
bd7b9c10aa
node page: add "Reset Location" button, to unset node location
...
This can be helpful if the node was placed far away (eg. due to IP-based
geolocation).
2018-07-22 21:47:11 +02:00
Oliver Gerlich
d95b41315c
node page: don't display "undefined" if node has never been saved yet
2018-07-22 21:46:43 +02:00
Oliver Gerlich
2cc533c481
node page: display map correctly also if node doesn't have location info
2018-07-22 21:46:29 +02:00
Oliver Gerlich
d7e98625e2
node: don't show "Start follow position" button at all if browser does not support navigator.geolocation
2018-07-22 21:46:22 +02:00
Oliver Gerlich
3a18da51c8
menu: remove logo
...
It doesn't provide any functionality, and it uses up valuable screen space
on a phone screen.
2018-07-22 21:45:41 +02:00
Oliver Gerlich
bd7cef3f00
socket: don't notify user on every failed connection attempt
...
Only notify user if the websocket connection was already established and is
now closed.
2018-07-22 21:45:36 +02:00
Oliver Gerlich
2fca4b49fe
fix exception in list.renderView() introduced by adding debouncer.run()
...
Use arrow function to keep "this" at the same value it has in render().
2018-07-19 22:48:40 +02:00
Martin/Geno
141c8b798e
fix travis builds
2018-07-19 02:04:13 +02:00
Oliver Gerlich
e77e94ef85
list perf: limit list to 20 nodes by default
...
Also add links to bottom of list to select how many nodes shall be
displayed, and store the selection in localStorage.
The shorter list has much better performance. A long list is not really
useful anyway; rather let the user filter/sort it to display interesting
nodes only.
2018-07-19 02:00:39 +02:00
Oliver Gerlich
885b3232c3
move debouncing logic to separate Debouncer class, and use it for list view
...
While the normal GUI is re-rendered at most every 100 msec, the list is
re-rendered at most every second (since it is very expensive to render).
2018-07-19 01:51:21 +02:00
Oliver Gerlich
67dd56d71d
call render() again after render bouncer timer has elapsed
...
This is necessary so that the GUI really shows the latest data from server
after the timer has elapsed.
Also add some other minor fixes.
2018-07-19 01:51:21 +02:00
Martin/Geno
ba1045aacd
render bouncer
2018-07-19 01:51:21 +02:00
Martin/Geno
af80ade82b
Disable notification of successful node update
2018-07-17 23:37:03 +02:00
Martin/Geno
140f11257a
implement full yanic (to run freifunkmanager at his own)
2018-07-17 23:36:57 +02:00
Oliver Gerlich
b97ac6ea43
node page: display GPS coordinates next to toggle button
2018-07-17 22:51:41 +02:00
Oliver Gerlich
fb0f2f054d
node page: some fixes for GPS-following
...
- rename storePosition to gpsPosition
- don't check for btnGPS.innerHTML contents (this is fragile); check for
this.gpsPosition instead
- fix call to updatePosition() when clicking "Stop following"
2018-07-17 22:51:41 +02:00
Oliver Gerlich
ad7cc8d0aa
node page: fix bug if navigator.geolocation.watchPosition() returns 0 as id
2018-07-17 22:51:41 +02:00
Oliver Gerlich
7f498b4a6e
node page: set node details (hostname/owner etc.) also if location is unknown
2018-07-17 22:51:41 +02:00
Oliver Gerlich
2417bc3ae0
extend README file
2018-07-17 22:36:32 +02:00
Oliver Gerlich
b3b8d1f53f
menu: rename "Statistics" to "Stats" to save some space on phone screens
2018-07-17 22:36:32 +02:00
Oliver Gerlich
043e7225fd
list perf: use documentFragment to add all rows to table in one operation
2018-07-17 22:31:29 +02:00
Oliver Gerlich
66d8951ad9
list perf: use textContent instead of innerHTML
2018-07-17 22:31:29 +02:00
Oliver Gerlich
10a717f558
list: fix exception when typing in list filter fields
2018-07-17 22:31:29 +02:00
Martin/Geno
485ecc13c6
default channel on create node + send callback
2018-07-15 22:47:05 +02:00
Martin/Geno
63f77d87c7
fix statistics channel view
2018-07-15 21:55:31 +02:00
Oliver Gerlich
cd511dce8e
web: rework store.js and interaction with view/node.js
...
- store.getNode() no longer adds new node to the list
- instead, store.createNode() can be used to create an empty new node
- view/node.js now now transfer a local copy of the node object it wants to
modify, rather then modifying the real object from store.list. If the
change is accepted by server, the server will send the new values for the
changed object anyway.
Previously, if the user visited the node page for a nonexistent node but
didn't make any changes, the list view would always throw an exception
because an incomplete node object was contained in the list.
2018-07-15 21:51:11 +02:00