Commit graph

2251 commits

Author SHA1 Message Date
jesopo
7affd3b9f3 Add missing on_kick event hook in channel_save 2018-07-02 12:51:18 +01:00
jesopo
cb486d6122 random.py -> random_number.py due to name collision (stdlib) 2018-07-02 11:09:49 +01:00
jesopo
3c138c1d18 If BitBot is kicked from a channel, remove from channel_save 2018-07-02 11:09:22 +01:00
jesopo
464510cd80 OMDBAPI now needs an api key 2018-07-02 11:09:02 +01:00
jesopo
d84cb62180 Added first version of print_message to prettyprint log certain activities 2018-05-02 07:30:16 +01:00
jesopo
11ddb1fca5 Remove rickroll 2018-05-02 07:20:52 +01:00
jesopo
dcd0c0a542 Use IRCServer.original_nickname in perform.py as we might not have our "given" nickname yet 2018-05-02 07:20:13 +01:00
Evelyn
b85d7bd3b5 NR: Don't titlecase Eagle station names. This is already done. 2018-02-04 09:42:09 +00:00
Evelyn
840fbcdb10 Merge branch 'master' of github.com:jesopo/bitbot 2018-02-04 09:27:54 +00:00
Evelyn
922ba20117 NR: Eagle endpoints are now under /json/ going forward 2018-02-04 09:27:35 +00:00
jesopo
5794b3cd92 Added option to ban highlight spammers instead of just kicking them 2017-12-26 13:51:10 +00:00
jesopo
14ffa6716d Added highlight spam detection/prevention logic to channel_op 2017-12-26 11:50:18 +00:00
jesopo
0cc72d5d66 Added a "replay" system to EventManager hooks, to replay missed .calls 2017-12-26 10:32:36 +00:00
Evelyn
62ac516d1f NR: Indicate interesting activity at locations 2017-12-10 15:20:48 +00:00
Evelyn
c6572bd6f4 NR: 0000 if headcode None 2017-12-04 18:28:13 +00:00
Evelyn
0f1b87a8c9 NR: Work with Eagle's new and improved format 2017-12-04 17:50:11 +00:00
Evelyn
6bdeccac03 NR: bool.get, what 2017-11-03 19:24:27 +00:00
Evelyn
93862e0347 NR: Don't die if Eagle's not here 2017-11-03 19:20:12 +00:00
Evelyn
9588b7520a NR: change eagle ~branding~ 2017-11-02 22:56:00 +00:00
Evelyn
0894d642bb typo 2017-11-01 14:27:36 +00:00
Evelyn
1f09d69a75 Abandon capability request if an empty ACK (a spec violation but okay) is received 2017-11-01 14:25:52 +00:00
Evelyn
c833d9dbb6 NR: Formatting improvements for external, don't reference non-existent summaries 2017-11-01 12:03:36 +00:00
Evelyn
57dfb56ba7 NR: slightly simplify association summaries 2017-10-31 23:13:16 +00:00
Evelyn
e669b7c2e6 NR: Indicate direction for associations 2017-10-31 11:57:22 +00:00
Evelyn
2055b6656d NR: Full association summaries for SCHEDULE, LDB 2017-10-31 10:58:05 +00:00
Evelyn
6008cbac2c NR: Add date filter 2017-10-29 12:00:08 +00:00
jesopo
0df7abb03e Handle empty CAP, additional IRCLog feature, better tls, better channel_save logic, add sed-sender-only setting
Signed-off-by: jesopo <github@lolnerd.net>
2017-10-27 13:15:33 +01:00
Evelyn
72b2f3bc29 Amber Rudd 2017-10-27 09:40:26 +01:00
Evelyn
aa6529ab0c NR: Use the same association descriptions for LDB and SCHEDULE 2017-10-23 18:41:00 +01:00
Evelyn
b35a64ae48 NR: Don't assume associations present in eagle output 2017-10-23 16:18:10 +01:00
Evelyn
fa8f7da166 NR: Use SCHEDULE associations 2017-10-23 16:13:58 +01:00
Evelyn
b289909bcc NR: Multiline support for head, include ferry services in nrtrains 2017-10-14 23:11:42 +01:00
Evelyn
a8ea18202e Signals: Glenn Moramarco quote 2017-10-10 10:54:38 +01:00
Evelyn
1e644e78f3 Signals: Add Turnball 2017-09-29 21:45:48 +01:00
Evelyn
249a3b40b3 Make the telegram module vaguely optional 2017-09-06 00:17:55 +01:00
Evelyn
84bfe81182 Bitbot can do Telegram now, I guess 2017-09-05 20:50:20 +01:00
Evelyn
5dcbfe588d Increase default period 2017-09-03 06:20:41 +01:00
Evelyn
48fd351089 NR: Shorten times 2017-09-02 12:54:20 +01:00
Evelyn
267edd7c0b NR: Allow displaying CRS only for arrivals/departures 2017-09-02 12:37:08 +01:00
Evelyn
3a7937d0e2 NR: Support Eagle API keys, don't assume platforms are available 2017-09-02 10:11:26 +01:00
Evelyn
f00f1bda94 NR: Eagle now provides a best name via the combined TIPLOC set as 'name', use that 2017-09-01 10:07:21 +01:00
Evelyn
d3d2be44cb NR: Use the actual name field 2017-08-31 19:39:04 +01:00
Evelyn
0822d323bc NR: Take platforms from SCHEDULE if not available in LDB 2017-08-31 19:08:09 +01:00
Evelyn
a78b713268 NR: List delayed trains properly, strip prefix 2017-08-29 22:53:49 +01:00
Evelyn
e69a0c3937 NR: Expand period 2017-08-27 14:46:16 +01:00
Evelyn
f6766ae477 Implement 'time' parameter 2017-08-27 14:41:11 +01:00
Evelyn
bb8d73d9d1 Signals: add quote 2017-08-25 10:57:54 +01:00
Evelyn
78c80a71dd Signals: Don't take Hitler out of context, add 'tear down this wall' etc 2017-08-24 17:00:55 +01:00
Evelyn
9d62e6f301 Add power/inferred tops filtering to nrtrains 2017-08-11 10:03:05 +01:00
Evelyn
69b1a6bd9b 'Death solves all problems - no man, no problem.' was in fact written by Anatoly Rybakov, not Stalin 2017-08-10 00:18:45 +01:00
Evelyn
e232ad5dae Add IRCv3→SASL support for nickserv auth, added optional module whitelist, added server option for recording channel keys, increased flexibility for event raising in linehandler, probably other things too 2017-07-12 10:00:45 +01:00
Evelyn
81edacfba6 Sun Tzu*2, optimism (ha) 2017-06-23 21:13:31 +01:00
Evelyn
a740ccbb61 add quote 2017-06-17 11:29:54 +01:00
Evelyn
36816af1d8 Dag Hammarskjöld quote somewhat relevant to our lives at present 2017-06-16 14:04:04 +01:00
Evelyn
bc94c862c1 NR: Allow null scheduled times, add inferred power/class if available in both modes, titlecase scheduled only location names 2017-06-05 14:25:05 +01:00
Evelyn
9ef5af3894 NR: Prefer LDBSVWS for headcodes 2017-05-30 22:25:12 +01:00
Evelyn
7e19fbe047 NR: I really hate SOAP. Don't break if you don't have a LDBSVWS query 2017-05-30 22:17:30 +01:00
Evelyn
f9e773fc69 NR: Allow use of Eagle for scheduling data (docs/source will follow\!). Slight regression in use of RIDs (but who uses them anyway?) 2017-05-30 22:11:27 +01:00
Evelyn
28425202ce NR: Show shorter TOC code instead of name in service info 2017-04-06 11:25:21 +01:00
Evelyn
70bd021187 NR: Time colouring improvements primarily for service 2017-04-06 10:39:59 +01:00
Evelyn
7c1e2ac2a0 NR: I'm slipping. =→== 2017-04-04 10:20:39 +01:00
Evelyn
cad3482069 NR: Give scheduled times a neutral colour status 2017-04-04 10:19:04 +01:00
Evelyn
b3b6ac823b NR: Put arrived/departed status in map, not local variable (oops) 2017-04-04 10:16:36 +01:00
Evelyn
9dc18311b1 NR: Change service info to use same time system as trains, add departure time option 2017-03-30 16:38:56 +01:00
Evelyn
9f04faaa90 NR: Turns out arrivals/departure doesn't actually respect UTC indication 2017-03-26 14:13:50 +01:00
Evelyn
67d7a20c5c NR: Clocks go back tonight. Make UTC explicit in nrtrains call 2017-03-25 18:21:39 +00:00
Evelyn
710699175b Attribute quote to topiary 2017-03-21 15:05:30 +00:00
Evelyn
cceb0a76d0 NR: dividing 'from' if division at origin, 'as' otherwise 2017-03-21 14:56:07 +00:00
Evelyn
24a8b11191 NR: Add length at origin and division/join, shorten summary for TIPLOC only locations 2017-03-21 14:05:27 +00:00
Evelyn
88f88b76f4 NR: Change time determination for trains command 2017-03-09 17:01:56 +00:00
Evelyn
a69ac85414 NR: Give 'arrivals' command more appropriate name, help now mentions buses 2017-03-09 13:33:24 +00:00
Evelyn
ad8bde0232 NR: Use station_summary for service listing 2017-03-09 12:16:41 +00:00
Evelyn
e175567537 NR: Handle departure SOAP errors, reduce lines for returning with error message 2017-03-09 11:57:35 +00:00
Evelyn
e3c97db55f NR: Cancellation codes inline, reference to 'major' severity nrcc messages, filter now accepts ! for bools 2017-03-08 09:35:23 +00:00
Evelyn
f6cb42e5af NR: Suffix 'hidden' platforms 2017-02-26 12:27:00 +00:00
Evelyn
ddb54cd159 NR: Reference UIDs instead of RIDs in headcode ambiguity message 2017-02-16 10:42:46 +00:00
Evelyn
8682440d4c NR: Minor formatting improvements 2017-02-16 10:32:45 +00:00
Evelyn
2dd9a9077d NR: Reuse SOAP client for performance improvements, add delay/cancellation code command 2017-02-14 11:10:18 +00:00
Evelyn
6615dda7a1 quotes 2017-01-27 21:30:54 +00:00
Evelyn
955ba23b86 Inform the user when they've got filtering wrong 2017-01-16 16:22:09 +00:00
Evelyn
8293ade8ec NR: Add better filtering, add arrivals capablity, add train joining information 2016-12-21 15:50:45 +00:00
Evelyn
cb41b9be37 NR: Remove unused span/countdown code 2016-12-20 14:11:16 +00:00
Evelyn
40b31d9860 NR: Train division information for services, simple '*' filtering for arrivals 2016-12-20 14:03:14 +00:00
Evelyn
9669f6d058 NR: No service information and service disambiguation aren't errors 2016-12-20 12:16:54 +00:00
Evelyn
92fa4c02b0 NR: Allow for multiple destinations for departures 2016-12-20 12:01:16 +00:00
Evelyn
7580516dff Remove unused service list 2016-12-20 08:57:56 +00:00
Evelyn
18397bbe15 NR: Fix 'Cancelled' being shown in green, give departed trains a different colour 2016-12-20 08:54:56 +00:00
Evelyn
c5713e8b54 nr things 2016-12-17 17:34:19 +00:00
Evelyn
ba16f84b15 Convert NR module to use SV for more detail. Abridge some service info, add primitive service filtering, command for headcode/uid/rsid service summaries. If you have a NR API key, you'll need to switch it! 2016-12-16 10:05:54 +00:00
Evelyn
67f0d16c1c Add quote to signals module 2016-12-14 14:43:55 +00:00
Evelyn
d6b50a7a63 Remove 'plat' prefix for space 2016-12-12 10:54:17 +00:00
Evelyn
5f8b61f231 Add tflservice. Arrivals are incomplete, but it's the best we can do with the API 2016-12-06 00:14:14 +00:00
jesopo
a1ddc61af8
Reset font just before "(more)" truncation. 2016-12-05 23:32:31 +00:00
Evelyn
e924d492d0 Remember the filtered output, not the entire service list for !nrservice 2016-12-04 13:50:00 +00:00
Evelyn
60a728f959 More quit quotes! 2016-11-28 10:11:22 +00:00
Evelyn
49af64d553 Dag Hammarskjöld quote 2016-11-17 22:19:26 +00:00
Evelyn
e54473622c Use channel IDs instead of names (lolsecurity) 2016-11-12 11:07:07 +00:00
Evelyn
293f1d5935 Revert NR departures to showing times, not countdown, add colours, allow referring to service from departures 2016-11-04 17:06:07 +00:00
Evelyn
46766507c5 More reformatting, colours! 2016-11-04 16:11:03 +00:00
Evelyn
08894b26b5 Add service command to nr 2016-11-02 01:28:47 +00:00
Evelyn
b92abaf20d Start of tflstop command 2016-11-01 21:19:03 +00:00
Evelyn
25c214f363 Force CRS to upper (Darwin doesn't like lowercase CRS codes) 2016-10-29 15:38:54 +01:00
Evelyn
fc55e853e3 more quotes and stuff 2016-10-25 21:10:56 +01:00
Evelyn
a1a816b1cd Add monty python quit quotes! 2016-10-16 21:21:46 +01:00
Evelyn
5b527e247a Another quit quote! :D 2016-10-13 18:14:55 +01:00
Evelyn
50a01b7bf1 Add Donald Trump, lulzsec to quotes 2016-10-09 09:07:27 +01:00
Evelyn
8d74905481 nrtrains now doesn't break if a platform isn't known 2016-10-09 09:01:06 +01:00
Evelyn
8ad424c906 Add National Rail module w/ arrivals 2016-10-06 14:27:35 +01:00
Evelyn
4b4c5e8103 tfl improvements 2016-10-03 15:10:08 +01:00
Evelyn
f8f011f69e Hacky s/ /%20/ fixes tflsearch problem. @jesopo: Please look at URL encoding in Utils 2016-09-27 02:27:09 +01:00
Evelyn
0a468c19d4 remove comments 2016-09-26 11:05:09 +01:00
Evelyn
842ee38146 Add tflvehicle, simplify tflbus 2016-09-26 11:02:45 +01:00
jesopo
7425afa90f Merge branch 'master' of github.com:jesopo/bitbot 2016-07-14 00:42:49 +01:00
jesopo
c55982b11f
implemented error logging to EventManager (WIP) 2016-07-14 00:42:17 +01:00
Evelyn
068011b7a2 Add proper no result message 2016-07-14 00:41:50 +01:00
Evelyn
57de4f9b44 Change tflsearch no result message 2016-07-14 00:35:11 +01:00
jesopo
5f8d51cbf0
fixed duplicate response 2016-07-14 00:31:44 +01:00
jesopo
369b784a0d
added logs.py and changed EventHook objects to know their name. 2016-07-13 07:31:09 +01:00
jesopo
e604a8de31 Merge branch 'master' of github.com:jesopo/bitbot 2016-07-13 07:06:23 +01:00
jesopo
07457a3626
fixed some crashes in tfl.py. 2016-07-13 07:05:46 +01:00
Evelyn
80bf0bb978 s/tflstop/tflsearch/ 2016-07-10 23:44:37 +01:00
Evelyn
36e12dda1f TfL stop search, 'bus' can now accept proper IDs, fixed issue with time in ms 2016-07-10 13:29:24 +01:00
Evelyn
ddd2a0a463 TfL tube line status 2016-07-10 10:19:29 +01:00
jesopo
145cb90c3d
changed tflbus command to only show next time for each bus, not every single bus it can find. 2016-07-09 14:51:39 +01:00
jesopo
f5f756b39a
added a way to filter what bus you're looking for at a stop in tfl.py. 2016-07-06 13:18:27 +01:00
jesopo
afc8a72f05
changed channel_op.py to not need an argument for (de)op/(de)voice. 2016-07-05 12:17:22 +01:00
jesopo
c02470ddbf
changed tfl.py to show bus stop name. 2016-07-05 12:16:40 +01:00
jesopo
6da747981f
did some tweaks to tfl.py. 2016-06-28 00:18:09 +01:00
jesopo
f21618eeb1 Merge branch 'master' of github.com:jesopo/bitbot 2016-06-28 00:09:51 +01:00
jesopo
cbec3657f4
added tfl.py. 2016-06-28 00:09:33 +01:00
Evelyn
51fa7fee3e We're all fucked. I'm fucked. You're fucked. [...] It's been the biggest cock-up ever and we're all completely fucked 2016-06-27 23:11:46 +01:00
Evelyn
871e7fc80d Add Walter Ulbricht quote 2016-06-25 22:12:06 +01:00
jesopo
6a3b9b28b4
tweaked karma.py. 2016-06-24 13:10:36 +01:00
jesopo
d3a1c2db52
added a part command to admin.py. 2016-06-24 09:17:27 +01:00
jesopo
e5dfd04045
you know what, this module has too many flaws. 2016-05-17 16:20:18 +01:00
jesopo
1c6632e0e7
fixed a problem in nickname_aliases.py that made the bot assume root aliases were just new names that needed aliasing. 2016-05-17 16:16:49 +01:00
jesopo
d042f0dc4a
added admin.py, for admin-type things. 2016-05-17 16:14:23 +01:00
jesopo
f06033483f
added a way to set the bot's nickserv password through a command. 2016-05-17 14:52:07 +01:00
jesopo
8dadd7d339
added deop, voice and devoice to channel_op.py. 2016-05-17 14:51:47 +01:00
jesopo
2fb299e9b7
on second thought, should probably only show people their nickname's permissions when they're identified. 2016-05-17 14:51:15 +01:00
jesopo
5286157326
added a command to show you what permissions you have. 2016-05-17 14:50:48 +01:00
jesopo
e31d606d16
added stats.py. 2016-05-09 16:14:12 +01:00
Evelyn
eb603fccb9 Another quote 2016-05-09 13:35:52 +01:00
jesopo
18a5d2087e Merge branch 'master' of github.com:jesopo/bitbot 2016-05-06 13:37:30 +01:00
jesopo
5338859e31
added a function to Utils to get the "closest" setting, with channel/user settings being more important than server-wide settings. 2016-05-06 13:36:01 +01:00
Evelyn
2df29ab76e more quotes 2016-05-04 14:31:45 +01:00
jesopo
9c9d7aa439
added wikipedia.py. 2016-05-04 13:30:31 +01:00
jesopo
9b6d8d2dc0
added bitcoin.py. 2016-05-03 11:58:42 +01:00
jesopo
bdf21643a3
made set/channelset settings consistent. 2016-05-01 22:47:59 +01:00
jesopo
3a7481315d
added a command to quotes.py to get a random quote from a category. 2016-05-01 17:47:35 +01:00
jesopo
c1f8835653
added quotes.py. 2016-04-29 12:43:48 +01:00
jesopo
52deab53aa
added an error to the kickban command in channel_op.py for when a user is not present in a channel to be kickbanned. 2016-04-24 03:01:44 +01:00
jesopo
00dd425210
added an op command to channel_op.py. 2016-04-22 11:48:28 +01:00
jesopo
5e9574e195
added a timeout error and fixed the regex on karma.py. 2016-04-21 00:09:30 +01:00
jesopo
c5c53bc481
added hash.py. why not. 2016-04-20 13:52:23 +01:00
jesopo
bc12c77891
did what I said I would sooner than I thought I would. centralised persisting timers through bot restarts. 2016-04-19 13:25:50 +01:00
jesopo
9eff1b8931
entirely reworked the timer system to work with the event system, will eventually persist all timers to database until complete in a central way. 2016-04-19 12:21:27 +01:00
jesopo
ce4f0f68b0
fixed words.py to always show nicknames with the same count in the same order. 2016-04-18 16:51:06 +01:00
jesopo
1127682872
added a way for a command callback to neatly ask to only be available for people with a rank or above, added a channel_op module to utilise this. 2016-04-18 16:50:19 +01:00
jesopo
100fad4599
added some code to the nickname_aliases module, I do not trust this module yet. :| 2016-04-18 16:49:21 +01:00
jesopo
2d729b68c3
started passing some more helpful info when preprocessing a command. 2016-04-18 16:48:36 +01:00
jesopo
9c5f0d6035
added command-prefix to channel settings. 2016-04-14 16:48:44 +01:00
jesopo
390eff4c2b
added experimental module to track what nicknames are actually aliases for other nicknames. 2016-04-13 14:55:38 +01:00
Evelyn
190d42fbb5 simpler boolean channel settings 2016-04-10 17:40:58 +01:00
jesopo
954a1b4dfc
added a confirmation of message save to in.py. 2016-04-10 17:32:51 +01:00
jesopo
ab05ea6509
beefed up the words.py module. 2016-04-10 17:32:33 +01:00
jesopo
1750c2b1ec
changed commands.py to show usage help (if available) when minimum arguments are not met. 2016-04-10 17:31:55 +01:00
jesopo
eac1d127bd
added the code to prevent users using certain commands based on permissions. 2016-04-06 18:23:02 +01:00
jesopo
99299c9df5
made some finishing touches to todo.py. 2016-04-06 16:38:46 +01:00
jesopo
3ba307300f
added more code to deal with lastfm having a ridiculously unreliably structured API. 2016-04-06 16:22:52 +01:00
jesopo
7f7a1f6d55
added spotify.py and soundcloud.py, updated bot.json.example. 2016-04-06 13:56:12 +01:00
jesopo
9b2556a65a
added usage help to a lot of modules, added a verbose option to karma.py. 2016-04-06 12:02:44 +01:00
jesopo
afec1deb5c
added tracking certain words in words.py and fixed/changed a couple of things to allow it to work. 2016-04-06 09:40:49 +01:00
jesopo
27c0de701c
added words.py for keeping track of how many words people have said. 2016-04-05 18:43:17 +01:00
jesopo
e1188e153a
fixed a crash-causing bug in lastfm when userplaycount isn't present. 2016-04-05 18:42:36 +01:00
jesopo
efa8c91552
used set.py as an example for the new usage command. 2016-04-05 18:41:33 +01:00
jesopo
e8875ef17d
added a usage command to show usage help for commands. 2016-04-05 18:41:03 +01:00
jesopo
f19389ec8c
added todo.py. 2016-04-05 14:26:46 +01:00
jesopo
f9ce711b25
oops 2016-04-04 23:20:55 +01:00
jesopo
3c0a8562a9
ironed out some little issues with permissions.py. 2016-04-04 18:48:39 +01:00
jesopo
62a73df22f
added permissions.py which contains code for identifying/registering/logouting users. updated README.md to reflect the newly required scrypt module. 2016-04-04 18:42:37 +01:00
jesopo
436db4b9a8
added a way for command event hooks to ask to only be fired from private messages. 2016-04-04 18:41:07 +01:00
jesopo
d5e4c7bbe7
added code to youtube.py to prevent a crash when a video has likes/dislikes disabled. 2016-04-04 18:40:39 +01:00
jesopo
1cc28a5581
fixed showing track tags in lastfm.py. 2016-04-04 12:37:17 +01:00
jesopo
a348bf4241
fixed some dumb typos 2016-04-03 17:08:48 +01:00
jesopo
e10ba5f293
added some more to the skeleton of the auto_mode module. 2016-04-03 13:23:47 +01:00
jesopo
504e93a78d
tinkered with some modules and fixed a few bugs, also added the skeleton for the auto_mode.py module. 2016-04-03 13:20:05 +01:00
jesopo
8843d9a469
removed yet more left over code from when commands were channel-only. 2016-03-31 13:37:08 +01:00
jesopo
4bca2cb95d
fixed the frankly ridiculously wrong youtube url regex in youtube.py. 2016-03-31 13:36:26 +01:00
jesopo
6dff99490c
added CTCP SOURCE and TIME responses. 2016-03-31 12:10:51 +01:00
jesopo
1c00b20d51
made the @ for the twitter command optional. 2016-03-31 12:10:18 +01:00
jesopo
87af05d4b6
added a "hashflag" to modules to stop modules being loaded that rely on a not-present config option. 2016-03-30 19:31:23 +01:00
jesopo
e7dc2d566c
fixed a left over reference to event["channel"] that is now broken in to.py. 2016-03-30 12:50:07 +01:00
jesopo
dc24b6b680
made channel commands prefixable with the bot's nickname, not just the command prefix. 2016-03-30 12:49:46 +01:00
jesopo
426068f0cf
fixed a couple of problems in some modules. 2016-03-29 21:06:07 +01:00
jesopo
57a0e2f10f
made commands work in channel AND in private message. 2016-03-29 16:22:22 +01:00
jesopo
16d1af9057
added bitly.py and haveibeenpwned.py. 2016-03-29 16:20:50 +01:00
jesopo
7de9970cd0
added help strings where they were missing. 2016-03-29 14:37:35 +01:00
jesopo
bf0e271546
added random.py, added code to commands.py to remove all empty strings from args_split. 2016-03-29 14:32:01 +01:00
jesopo
cd0311d269
updated ctcp.py. 2016-03-29 13:00:01 +01:00
jesopo
f943d63098
first commit. 2016-03-29 12:56:58 +01:00