f4exb
|
c7e1526930
|
Added decimation class with unsigned to signed conversion with shift. Applied to RTL-SDR
|
2018-01-16 00:01:38 +01:00 |
|
f4exb
|
18fa3b6156
|
RTL-SDR: corrected bit shifts for 8 bit samples and corrected RTL-SDR unsigned to signed conversion
|
2018-01-15 23:37:26 +01:00 |
|
f4exb
|
45e04f06ae
|
Compromise on 8 bit decimator pre process shift constants so that it pads to 15 bits instead of 16. Prevents saturation in all cases.
|
2018-01-14 05:12:24 +01:00 |
|
f4exb
|
176792c0ce
|
Corrected 8 bit decimator pre process shift constants
|
2018-01-14 04:43:04 +01:00 |
|
f4exb
|
89b67b0378
|
AirspyHF support: specify int16 samples
|
2018-01-11 04:40:13 +01:00 |
|
f4exb
|
7bdc161c91
|
Added information about O/S, CPU architecture and application name where it was missing
|
2018-01-07 01:33:57 +01:00 |
|
f4exb
|
eafeaa2a77
|
Commands: added run and delete group. Presets: added delete group.
|
2018-01-06 20:02:08 +01:00 |
|
f4exb
|
9256e6b0ed
|
Web API: DeviceSetList: added focused device set index for the GUI
|
2018-01-06 09:50:09 +01:00 |
|
f4exb
|
f60f418f1b
|
Audio in/out mutex corrections
|
2018-01-06 06:12:30 +01:00 |
|
f4exb
|
8a032d0532
|
Web API: implemented /sdrangel/deviceset/{deviceSetIndex}/focus PATCH
|
2018-01-06 03:46:53 +01:00 |
|
f4exb
|
aa8e01f8ce
|
Commands and presets: added possibility to rename group or merge groups. In addition for presets: added possibility to edit description
|
2018-01-05 11:45:20 +01:00 |
|
f4exb
|
9de6aabee6
|
Commands: removed debug messages on event handlers
|
2018-01-05 02:13:15 +01:00 |
|
f4exb
|
2bd1692a2f
|
Commands: use monospaced font to view the log
|
2018-01-05 01:59:01 +01:00 |
|
f4exb
|
098ae3be74
|
Commands: fixed error and exit signals handling
|
2018-01-04 23:10:05 +01:00 |
|
f4exb
|
069d9a7d07
|
Commands: implemented run and output GUI
|
2018-01-04 20:15:33 +01:00 |
|
f4exb
|
89f98f504a
|
Commands: implemented management GUI
|
2018-01-04 11:11:53 +01:00 |
|
f4exb
|
1ec8eecefb
|
DSD demod: use lower cutoff for optional audio high pass filter
|
2018-01-02 20:02:30 +01:00 |
|
f4exb
|
36b3137a48
|
DSP device source/sink engines: reworked add source sequence of actions
|
2018-01-02 16:25:34 +01:00 |
|
f4exb
|
23e5ef76d4
|
Device sink engine: fixed adding source channels while it runs
|
2018-01-02 11:00:00 +01:00 |
|
f4exb
|
f30edc983d
|
Tx: new handling of multiple channel sources. Fixed segfault
|
2018-01-02 04:01:01 +01:00 |
|
f4exb
|
df1e09fdb7
|
Tx: new handling of multiple channel sources (1)
|
2018-01-02 03:40:55 +01:00 |
|
f4exb
|
1056a39983
|
Tx support: single channel: make FIFO read and writes truly independent (optimized)
|
2018-01-02 02:14:31 +01:00 |
|
f4exb
|
420ef78ad5
|
Tx support: single channel: make FIFO read and writes truly independent (unoptimized)
|
2018-01-02 01:33:09 +01:00 |
|
f4exb
|
b731ff851a
|
Renamed some DSP messages to make them more explicit
|
2018-01-02 01:04:49 +01:00 |
|
f4exb
|
9a2ae892ed
|
Sample source FIFO: moved emit data write at top of method so that samples can be written with no delay
|
2018-01-02 01:04:04 +01:00 |
|
f4exb
|
8801462f96
|
DSP device sink engine: simplify code for single channel source handling
|
2018-01-02 00:27:45 +01:00 |
|
f4exb
|
e5baca1a37
|
NFM, SSB and WFM Mods : use specific method to apply channelizer sample rate and frequency offset changes. Separate this data from settings
|
2017-12-30 00:18:51 +01:00 |
|
f4exb
|
906d04dd41
|
Up/Down channelizers: use input message queue for all message forwarding to sample source/sinks and do not forward unknown messages
|
2017-12-29 05:48:54 +01:00 |
|
f4exb
|
cf79a7bb56
|
Web API: NFMDemod settings: removed input sample rate which is not set via API (internal)
|
2017-12-29 05:47:51 +01:00 |
|
f4exb
|
e39e080cc0
|
Channel source/sink APIs: removed useless getDeltaFrequency pure virtual method
|
2017-12-29 05:22:26 +01:00 |
|
f4exb
|
c6083ea6f4
|
Down/Up channelizers: enqeue MsgChannelizerNotification to sample sink/source instead of processing it directly
|
2017-12-29 05:14:40 +01:00 |
|
f4exb
|
14626393e6
|
Web API: fixed HackRF settings
|
2017-12-29 02:44:35 +01:00 |
|
f4exb
|
1b96f25184
|
Server and web API: added HackRF support
|
2017-12-29 01:40:34 +01:00 |
|
f4exb
|
d854e4ea3f
|
Web API: updated some descriptions. Documented JSON body in /sdrangel/deviceset/{deviceSetIndex}/channel/{channelIndex}/settings PUT, PATCH
|
2017-12-28 22:46:01 +01:00 |
|
f4exb
|
92a4639a17
|
Server: fix possible core dumps in device sink/source APIs saveSinkSettings or saveSourceSettings by removing reference to pluginInstanceUI which is null in server mode
|
2017-12-28 17:22:18 +01:00 |
|
f4exb
|
8ecc209934
|
Web API: fixed segfault on device and channel GETs
|
2017-12-28 10:58:50 +01:00 |
|
f4exb
|
0dd36d4f3e
|
Sink plugins: put a serializer and deserializer in the core plugin for server
|
2017-12-28 04:04:50 +01:00 |
|
f4exb
|
8399baeb4e
|
Source plugins: put a serializer and deserializer in the core plugin for server. NFM demod: fixed deserializer
|
2017-12-28 03:21:48 +01:00 |
|
f4exb
|
3bc221bab8
|
Server: web API: /sdrangel/deviceset/{deviceSetIndex}/device/run POST,DELETE. LimeSDR Tx example working
|
2017-12-27 11:10:47 +01:00 |
|
f4exb
|
ccffb5101d
|
Web API: /sdrangel/deviceset/{deviceSetIndex}/device/settings PUT, PATCH with all settings parameters optional
|
2017-12-27 01:46:33 +01:00 |
|
f4exb
|
2145eeb7b6
|
DSD demod: highpass filtering for audio completed
|
2017-12-26 20:29:23 +01:00 |
|
f4exb
|
e1d7ada5dd
|
DSD demod: highpass filtering for audio (1)
|
2017-12-26 10:59:51 +01:00 |
|
f4exb
|
9213b3c0b2
|
Device sink plugins: implemented an init method for initializations to be done when all collaborating objects are created and possibly connected
|
2017-12-25 12:59:44 +01:00 |
|
f4exb
|
49d1439981
|
Device source plugins: implemented an init method for initializations to be done when all collaborating objects are created and possibly connected
|
2017-12-25 09:10:19 +01:00 |
|
f4exb
|
1987bbac77
|
Device plugins: make setMessageQueueToGUI pure virtual so that child classes must have to deal with this
|
2017-12-24 19:58:26 +01:00 |
|
f4exb
|
b127182062
|
All plugins: removed apply settings in constructors as it causes segfaults
|
2017-12-24 18:37:33 +01:00 |
|
f4exb
|
7577e6f145
|
Web API: NFM modulator settings parameters optional
|
2017-12-24 04:19:44 +01:00 |
|
f4exb
|
bf6607044a
|
Server: Web API: /sdrangel/deviceset/{deviceSetIndex}/channel/{channelIndex}/settings PUT, PATCH with all settings parameters optional
|
2017-12-24 03:27:07 +01:00 |
|
f4exb
|
ead034e21d
|
Web API: /sdrangel/deviceset/{deviceSetIndex}/channel/{channelIndex} DELETE implemented in GUI also
|
2017-12-23 23:41:37 +01:00 |
|
f4exb
|
b011185e42
|
Server: Web API: /sdrangel/deviceset/{deviceSetIndex}/channel/{channelIndex} DELETE
|
2017-12-23 22:33:30 +01:00 |
|
f4exb
|
d79ef49112
|
Plugin interface: simplify createTxChannelGUI
|
2017-12-23 10:38:45 +01:00 |
|
f4exb
|
31aacc9571
|
Plugin interface: simplify createRxChannelGUI
|
2017-12-23 10:32:02 +01:00 |
|
f4exb
|
0f7faff299
|
Plugin interface: simplify createTxChannel
|
2017-12-23 10:16:27 +01:00 |
|
f4exb
|
703aa21159
|
Plugin interface: simplify createRxChannel
|
2017-12-23 09:54:42 +01:00 |
|
f4exb
|
a72200d2d0
|
Web API: /sdrangel/deviceset/{deviceSetIndex}/device PUT: let client specify only the necessary fields. Inernally set integer value default (-1) if not specified
|
2017-12-23 07:28:02 +01:00 |
|
f4exb
|
514e408aac
|
Server: Web API: /sdrangel/deviceset/{deviceSetIndex}/channel POST implementation and rework in the PluginInterface
|
2017-12-23 05:56:40 +01:00 |
|
f4exb
|
d4ca83ff61
|
Server: Web API: implemented /sdrangel/deviceset/{deviceSetIndex}/channel POST with bugs
|
2017-12-22 18:19:49 +01:00 |
|
f4exb
|
e444a17fe5
|
Set message identifier to null pointer in the Message paremt class as it should be set by child class. Better core early,.. Actually this fixes a strange segfault in the server version when adding the first channel
|
2017-12-22 17:05:36 +01:00 |
|
f4exb
|
78aa24014e
|
Web API: make 500:Service not available returned as JSON
|
2017-12-22 15:27:25 +01:00 |
|
f4exb
|
4b51599706
|
Web API: changed /sdrangel/devicesets POST,DELETE to /sdrangel/deviceset to reflect that it applies to a single device set
|
2017-12-22 01:07:03 +01:00 |
|
f4exb
|
a945d582bc
|
Web API: return more descriptive messages on status 202
|
2017-12-21 22:35:25 +01:00 |
|
f4exb
|
5d0fafdfe6
|
Web API: embellish a little bit the swagger.yaml file and factorize errors 500 and 501
|
2017-12-21 18:48:24 +01:00 |
|
f4exb
|
41e18eefd2
|
Web API: replaced status code 200 by 202 whenever an asynchronous message is enqueued
|
2017-12-21 18:10:43 +01:00 |
|
f4exb
|
88e56d1a37
|
Web API: renamed /sdrangel/preset GET to /sdrangel/presets GET as this returns the list of presets
|
2017-12-21 00:50:58 +01:00 |
|
f4exb
|
9dd707896d
|
Use a name field in channels to be used in headless version to replace the GUI object name that was used as the name field
|
2017-12-20 23:57:06 +01:00 |
|
f4exb
|
894d926329
|
Server: Web API: implemented /sdrangel/preset (PUT)
|
2017-12-20 14:31:17 +01:00 |
|
f4exb
|
ffea25fe71
|
Web API: issue JSON error message on default error 501
|
2017-12-20 14:17:26 +01:00 |
|
f4exb
|
c7e75b4bef
|
Server: implemented add device set and remove last device set and associated web API entry points
|
2017-12-20 01:01:53 +01:00 |
|
f4exb
|
da4884d1a0
|
Web API: suppress waiting after asynchronous message posting and return 200 with a simple message
|
2017-12-19 17:55:05 +01:00 |
|
f4exb
|
66929eb021
|
Server: web API: implemented /sdrangel/preset/file
|
2017-12-19 01:11:34 +01:00 |
|
f4exb
|
2784a026d6
|
Web API: added Qt version in the instance summary
|
2017-12-18 13:19:20 +01:00 |
|
f4exb
|
a459982fa7
|
Web API: updated documentation
|
2017-12-18 01:56:56 +01:00 |
|
f4exb
|
7dab0f67bb
|
Server: reviewed application handling
|
2017-12-18 00:00:21 +01:00 |
|
f4exb
|
6d12443100
|
Server: changes to support DeviceSet
|
2017-12-17 23:15:42 +01:00 |
|
f4exb
|
f2cdacb057
|
Server: pass plugins subdirectory to the PluginManager::loadPlugins method
|
2017-12-17 10:36:22 +01:00 |
|
f4exb
|
eceb3ac68d
|
Server: added build subdirectory for plugins without GUI
|
2017-12-17 10:25:08 +01:00 |
|
f4exb
|
48e29c275f
|
Server version: changed plugin lookup locations: correction
|
2017-12-16 13:54:48 +01:00 |
|
f4exb
|
20c69adedf
|
Server version: changed plugin lookup locations
|
2017-12-16 13:39:13 +01:00 |
|
f4exb
|
bf1771f8d6
|
Ewb API: updated swagger.yaml documentation
|
2017-12-15 19:10:45 +01:00 |
|
f4exb
|
6de0e20ceb
|
Web API: /sdrangel/deviceset/{deviceSetIndex}/device/run POST,DELETE: return previous state instead of attempt to wait and return the state after change since it does not work reliably
|
2017-12-14 23:29:12 +01:00 |
|
f4exb
|
0436848490
|
Web API: /sdrangel/deviceset/{deviceSetIndex}/channel/{channelIndex}/settings PUT, PATCH for NFM demod and mod. Fixes (2)
|
2017-12-12 23:21:31 +01:00 |
|
f4exb
|
b446f67434
|
Web API: /sdrangel/deviceset/{deviceSetIndex}/channel/{channelIndex}/settings PUT, PATCH for NFM demod and mod. Fixes (1)
|
2017-12-12 18:56:24 +01:00 |
|
f4exb
|
c22460723c
|
Web API: return 404 with API HTML documentation if URL is incorrect. Avoids response OK mistaken when not using a browser
|
2017-12-12 15:58:04 +01:00 |
|
f4exb
|
e4b65b52b4
|
Web API: /sdrangel/deviceset/{deviceSetIndex}/channel/{channelIndex}/settings PUT, PATCH for NFM demod and mod
|
2017-12-11 18:18:47 +01:00 |
|
f4exb
|
a513bd62b5
|
Web API: /sdrangel/deviceset/{deviceSetIndex}/channel (POST) fix and example
|
2017-12-11 01:36:34 +01:00 |
|
f4exb
|
0e3b558141
|
Web API: /sdrangel/deviceset/{deviceSetIndex}/channel (POST)
|
2017-12-11 01:18:10 +01:00 |
|
f4exb
|
2dd82e9eca
|
Web API: /sdrangel/deviceset/{deviceSetIndex}/channel/{channelIndex}/settings GET for NFM demod and mod
|
2017-12-10 20:27:08 +01:00 |
|
f4exb
|
565083e5f5
|
Web API: implemented device run APIs for BladeRF output, HackRF, PlutoSDR and LimeSDR ourput
|
2017-12-10 01:57:50 +01:00 |
|
f4exb
|
7d122b6b67
|
Web API: created run state getter. Implemented in RTLSDR
|
2017-12-09 10:49:20 +01:00 |
|
f4exb
|
9c581107e8
|
Web API: RTLSDR run implementation
|
2017-12-08 17:12:33 +01:00 |
|
f4exb
|
34cb4aa89b
|
Web API: /sdrangel/deviceset/{deviceSetIndex}/device/settings PUT,PATCH RtlSdr (1)
|
2017-12-08 00:56:29 +01:00 |
|
f4exb
|
a041f827b4
|
Web API: have /sdrangel/deviceset/{deviceSetIndex}/device/settings PUT,PATCH (3)
|
2017-12-07 22:38:39 +01:00 |
|
f4exb
|
2cf797a0a2
|
Web API: have /sdrangel/deviceset/{deviceSetIndex}/device/settings PUT,PATCH (2)
|
2017-12-07 18:50:36 +01:00 |
|
f4exb
|
c38497d9df
|
Web API: have /sdrangel/deviceset/{deviceSetIndex}/device/settings PUT,PATCH (1)
|
2017-12-07 13:55:42 +01:00 |
|
f4exb
|
3b69d6517b
|
Web API: Added settings getter for RTLSDR. Added more device URLs
|
2017-12-06 23:49:14 +01:00 |
|
f4exb
|
f9794c7701
|
Web API: have /sdrangel/deviceset/{deviceSetIndex}/device/settings URL in its own right
|
2017-12-06 22:08:34 +01:00 |
|
f4exb
|
fc4627f82e
|
Web API: file source settings getter (1)
|
2017-12-06 19:23:42 +01:00 |
|
f4exb
|
d6b156a8d3
|
Web API: added FileSource settings. Generated code and up to date documentation
|
2017-12-06 08:25:04 +01:00 |
|
f4exb
|
3fb4af82e6
|
Web API: implement devicesetDeviceGet (2)
|
2017-12-04 23:07:30 +01:00 |
|
f4exb
|
7dafae3fa1
|
Web API: implement devicesetDeviceGet (1)
|
2017-12-04 18:22:25 +01:00 |
|
f4exb
|
8d3541c5ad
|
Web API: changed namespace and some namings
|
2017-12-02 05:45:30 +01:00 |
|
f4exb
|
3bfdd49b4f
|
Web API: /sdrangel/deviceset/{index}/device (PUT) implementation
|
2017-11-27 08:14:07 +01:00 |
|
f4exb
|
c5a19e261c
|
Web API: /sdrangel/deviceset/{index} (GET) implementation
|
2017-11-26 10:37:39 +01:00 |
|
f4exb
|
3e7efb4c6f
|
Web API: Swagger definitions of deviceset GET and deviceset/device PUT
|
2017-11-26 00:26:56 +01:00 |
|
f4exb
|
3086c4772b
|
Web API: /sdrangel/devicesets (POST, DELETE) implementation
|
2017-11-25 22:52:24 +01:00 |
|
f4exb
|
c91918840e
|
Web API: /sdrangel/devicesets (GET) implementation
|
2017-11-25 20:14:16 +01:00 |
|
f4exb
|
9fab034f14
|
Web API: /sdrangel/preset (DELETE) implementation
|
2017-11-25 19:42:56 +01:00 |
|
f4exb
|
4a3901d688
|
Web API: /sdrangel/preset (PUT, POST) implementation
|
2017-11-25 18:32:37 +01:00 |
|
f4exb
|
33e39f161a
|
Web API: /sdrangel/preset (PUT) implementation
|
2017-11-25 16:47:13 +01:00 |
|
f4exb
|
57bda99c2b
|
Web API: /sdrangel/preset (PATCH) implementation
|
2017-11-25 16:08:18 +01:00 |
|
f4exb
|
2b41601b83
|
Web API: /sdrangel/preset (GET) implementation
|
2017-11-25 11:14:52 +01:00 |
|
f4exb
|
68fbbcf768
|
Web API: /sdrangel/dvserial implementation
|
2017-11-25 04:43:22 +01:00 |
|
f4exb
|
aa8b02a225
|
Web API: /sdrangel/location implementation
|
2017-11-25 04:02:11 +01:00 |
|
f4exb
|
72615b188e
|
Web API: /sdrangel/audio (PATCH) implementation
|
2017-11-24 17:12:53 +01:00 |
|
f4exb
|
dad604dcf8
|
Web API: /sdrangel/audio (GET) implementation (1)
|
2017-11-24 08:46:12 +01:00 |
|
f4exb
|
6c31320812
|
Web API: change all boolean parameters to integer
|
2017-11-24 00:55:47 +01:00 |
|
f4exb
|
7a2f60fe5d
|
Web API: /sdrangel/logging implementation (2)
|
2017-11-24 00:47:42 +01:00 |
|
f4exb
|
4999b04379
|
Web API: /sdrangel/logging implementation (1)
|
2017-11-23 18:43:01 +01:00 |
|
f4exb
|
02e0945368
|
Web API: implemented /sdrangel/channels: Get a list of channel plugins available in this instance
|
2017-11-23 01:19:32 +01:00 |
|
f4exb
|
2ac9a82b02
|
Web API: implemented /sdrange/devices: Get a list of sampling devices that can be used to take part in a device set
|
2017-11-22 18:57:35 +01:00 |
|
f4exb
|
e7dc0f9b53
|
Web API: resources and static file controller updates
|
2017-11-22 00:28:26 +01:00 |
|
f4exb
|
5e13c16cb6
|
Web API: static page build on Linux
|
2017-11-20 23:57:53 +01:00 |
|
f4exb
|
1b5f944302
|
Web API: send API documentation if path is invalid
|
2017-11-20 18:38:26 +01:00 |
|
f4exb
|
7fa26835bd
|
Windows build fixes
|
2017-11-20 00:10:01 +01:00 |
|
f4exb
|
0b5ab32a90
|
Web API: changed default port to 8091
|
2017-11-19 23:58:49 +01:00 |
|
f4exb
|
d0572a6f84
|
Added microsecond epoch as unique id to channel instances
|
2017-11-19 11:36:20 +01:00 |
|
f4exb
|
b91ad7c4b7
|
Web API: added channel enumeration in /sdrangel GET. Partial implementation in channel plugins
|
2017-11-19 03:38:07 +01:00 |
|
f4exb
|
30cd01cad0
|
Web API: return device information in /sdrangel GET
|
2017-11-19 01:05:16 +01:00 |
|
f4exb
|
93d36b20a4
|
Created web API adapter for he main window
|
2017-11-18 19:34:47 +01:00 |
|
f4exb
|
9fe66f960c
|
Swagger: implemented standard 500 and 501 error responses
|
2017-11-18 11:03:42 +01:00 |
|
f4exb
|
2b65fb2d62
|
Http server: fixed parameters passing
|
2017-11-18 10:15:29 +01:00 |
|
f4exb
|
1e73525280
|
Implemented arguments parser to pass web API host address and port
|
2017-11-18 05:06:43 +01:00 |
|
f4exb
|
05ec6d1074
|
Windows build: catch up with recent updates
|
2017-11-17 18:40:18 +01:00 |
|
f4exb
|
279a88a17f
|
Put web server for API in place in the main window (1)
|
2017-11-17 08:52:15 +01:00 |
|
f4exb
|
5628b580ce
|
Added web API server class
|
2017-11-17 03:55:36 +01:00 |
|
f4exb
|
b0eb838f15
|
Added Swagger generated code and skeleton of webapi
|
2017-11-17 03:17:15 +01:00 |
|
f4exb
|
7b8b492bdd
|
New channel marker signal handling. Applied to channel analyzer
|
2017-11-14 00:06:42 +01:00 |
|
f4exb
|
bc793b4095
|
Corrected some error messages
|
2017-11-12 16:34:38 +01:00 |
|
f4exb
|
6556096a63
|
Implemented optional logging to file
|
2017-11-12 02:23:55 +01:00 |
|
f4exb
|
82083c353e
|
Main window: implement the logging options dialog. Use it only for log level
|
2017-11-11 19:26:23 +01:00 |
|
f4exb
|
d110a3749d
|
Moved logger to QtApplication level. Corrections to some messages
|
2017-11-11 11:11:44 +01:00 |
|
f4exb
|
c4e26bf66d
|
Rx channel plugins: use the demodulator constructor separated from the demodulator GUI constructor
|
2017-11-09 01:03:05 +01:00 |
|
f4exb
|
f2b53fe3aa
|
Use the modulator constructor separated from the modulator GUI constructor
|
2017-11-08 22:54:58 +01:00 |
|
f4exb
|
cef9d5d7bc
|
Added demod constructor interface in the plugin API. Created method in AM demod
|
2017-11-08 08:31:00 +01:00 |
|
f4exb
|
d4c9765480
|
Renamed createTxChannel to createTxChannelGUI to described only the GUI will be created there in the future
|
2017-11-08 00:05:49 +01:00 |
|
f4exb
|
9ff05baa70
|
Renamed createRxChannel to createRxChannelGUI to described only the GUI will be created there in the future
|
2017-11-07 23:49:27 +01:00 |
|
f4exb
|
636ede56cf
|
Renamed the moving average of util section to avoid confusion
|
2017-11-06 01:02:20 +01:00 |
|
f4exb
|
d133b5218d
|
Fixed device enumerator Tx devices enumeration
|
2017-11-02 18:17:10 +01:00 |
|
f4exb
|
e77074ad60
|
Handle the remove last device in main window with the new sampling device control
|
2017-11-02 14:29:49 +01:00 |
|
f4exb
|
10e92686fc
|
Move main window readme to the sdrgui folder where it makes more sense
|
2017-11-02 14:09:15 +01:00 |
|