This code implements the backend processing side
of the ASAQC queue, i.e., the bit that communicates
with the remote API.
Its expected use it to have it running at regular
intervals, e.g., via cron. The entry point is:
lib/www/server/queues/asaqc/index.js
That file is executable and can be run directly
from the shell or within a script. Read the comments
in that file for further instructions.
The URL corresponds to that of a built-in test server.
Note that the /etc/ssl directory is protected against
accidental inclusion into the repository by commit
458b6837. The TLS private key should *never* be
committed.
These functions, in general following the same HTTP-verb
approach as the rest of the database interface, are for
use with both the HTTP API and the queue processor.
Preferences are read from the store and passed to graph components
via the `settings` prop. Component may changed their own settings
by emitting the `update:settings` signal.
The user preferences are saved in the browser's localStorage and
read by setCredentials() whenever that function is called. From
that point they are cached in the Vuex store.
Provided that preferences are only modified through the store,
via the saveUserPreference() call, the preferences should always
be in sync between the store and the browser.
The preferences object is a key/value store. Each key is
expected to be in the form of a series of dot-separated prefixes,
e.g., `UserX.RoleY.Graphs.GraphType1.setting0`.
For user preferences, the first two prefix elements should be the
username and role of the user that the setting applies to. These will
be automatically added and stripped by saveUserPreference() and
loadUserPreferences() respectively.
Fixes#150.
Contributes towards the goal of #149. As irrelevant data (such
as for non-firing guns) is no longer shown at all. This affects:
* Firetime (only active array data shown)
* Gun deltas (only active array shown)
* Fill time (only non-active array shown)