Commit Graph

6442 Commits

Author SHA1 Message Date
Torkel Ödegaard
e65a6cc063 added an inital admin settings view, very basic right now only displays all config options in grafana.ini 2015-02-12 15:46:14 +01:00
Torkel Ödegaard
79f798f67b Configuration file options can now be overriden using environment variables using GF_<SectionName>_<KeyName> syntax, if Section name contains dots in config they are replaced with underscores, and the section name and keyname needs to be all upper case, #1473 2015-02-12 13:31:41 +01:00
Torkel Ödegaard
2c16b0f0f3 added unit test for loading configuration file 2015-02-12 11:55:55 +01:00
Torkel Ödegaard
4df6668416 Merge branch 'develop' of github.com:grafana/grafana into develop 2015-02-12 10:34:52 +01:00
Torkel Ödegaard
0140a00884 Added two columns to user table, email_verified and theme, no used right now but will probably shortly 2015-02-12 10:32:22 +01:00
Jason Wilder
793eda7640 Assign new dashboard ID when importing dashboard via command-line 2015-02-11 15:20:36 -07:00
Torkel Ödegaard
71f09ddd94 Added delete user action to user admin api, and made it work in UI, Closes #1466, #1446 2015-02-11 16:47:22 +01:00
Torkel Ödegaard
add4adeec9 Fixed links to user admin views, and backend html routes for user admin edit/create urls, Closes #1451 2015-02-10 16:26:23 +01:00
Torkel Ödegaard
e165e2af95 Worked on user admin features, can now create and edit users as a grafana admin user, #1446 2015-02-10 15:36:51 +01:00
Torkel Ödegaard
c5afcd8e09 Fixed issue with datasource proxying, it required account admin role when it should not 2015-02-10 10:19:43 +01:00
Torkel Ödegaard
5269422f7c Began work on hashing api keys 2015-02-09 13:30:04 +01:00
Torkel Ödegaard
c9f06e1da1 Fixed failing events test and issue with dashboard list panel 2015-02-08 11:24:03 +01:00
woodsaj
c4fe9d50bf correctly handle event being a ptr
Events are passed in as PTRs, so we need to de-reference when getting the type and value.
2015-02-08 18:13:32 +08:00
Torkel Ödegaard
727fc9d3a6 Updated search result view, removed delete link, added delete action from dashboard cogs dropdown 2015-02-07 20:25:53 +01:00
Torkel Ödegaard
9818f81c5f Completed search makover 2015-02-07 16:12:29 +01:00
Torkel Ödegaard
23bbc5160e Fixed validation for adding api keys, added unique index for api key name + account_id 2015-02-07 13:11:39 +01:00
Torkel Ödegaard
397dfc54cd Fixed bug in png rendering when having changed public url 2015-02-06 14:17:40 +01:00
Torkel Ödegaard
85c1c97ea2 Updated readme 2015-02-06 09:10:52 +01:00
Torkel Ödegaard
f8a10fa7af Updated account and profile pages, very temporary solution, do not like it at all 2015-02-06 08:21:00 +01:00
Torkel Ödegaard
e3764ad951 Fixed failing dashboard sql test 2015-02-05 15:53:15 +01:00
Torkel Ödegaard
e5fbbe96fd fixed error handling, and error logging for panel rendering 2015-02-05 12:23:24 +01:00
Torkel Ödegaard
8e1b753664 Added limit to dashboard list panel and search 2015-02-05 11:10:56 +01:00
Torkel Ödegaard
0f63c04beb Fixed bug in user creation and admin role 2015-02-05 10:50:18 +01:00
Torkel Ödegaard
10820f31c2 Changed go package path 2015-02-05 10:37:13 +01:00
Torkel Ödegaard
076905d14e Added isStarred to search result hit, very inefficient loading right now but can be cached later on 2015-02-05 09:49:00 +01:00
Torkel Ödegaard
69e7279cff fixed unit test failing on build server 2015-02-04 18:25:15 +01:00
Torkel Ödegaard
896e6d4662 Merge branch 'notifications' 2015-02-04 17:15:16 +01:00
Torkel Ödegaard
d8db5189c1 More work on events, still have to convert pascal case event type name to rabbitmq dot notation, but after that should be done 2015-02-04 17:15:05 +01:00
Torkel Ödegaard
525179eb85 Added on wire event format 2015-02-04 16:57:20 +01:00
Torkel Ödegaard
dace35d31d Missed setting account name 2015-02-04 15:41:40 +01:00
Torkel Ödegaard
3752379106 Worked on event system, needs a little more work 2015-02-04 15:37:26 +01:00
Torkel Ödegaard
60541a455f Worked on search filter flag IsStarred, and updated frontend with new dashboard list panel 2015-02-04 11:35:59 +01:00
Torkel Ödegaard
1ac3355b03 updated frontend with style changes 2015-02-03 22:06:07 +01:00
woodsaj
a712f1a231 Add inital implementation of Notification events.
If notifications are enabled in the config, Adds a eventHandler
accepting Notification{} payloads to the internal Bus.  The
eventHandler then marshals the payload into json and sends it
to a rabbitmq topic exchange using the
Notification.Priority+Noticiation.EventType as the routing key.
eg.  INFO.account.created

Currently, notifications are only being emitted for
INFO.account.created
INFO.account.updated
INFO.user.created
INFO.user.updated
2015-02-03 23:57:42 +08:00
Torkel Ödegaard
42a5aefb23 Worked on home dashboard 2015-02-03 15:04:35 +01:00
Torkel Ödegaard
bd470abcf0 fontend styles updated 2015-02-03 10:46:52 +01:00
Torkel Ödegaard
97758380e0 Worked on stars in search results 2015-02-02 17:17:57 +01:00
Torkel Ödegaard
ad3d15e28d Worked on dashboard starring and unstarring, renamed favorite model to star 2015-02-02 11:32:32 +01:00
Torkel Ödegaard
20c6925470 Fixed sub url setting bug 2015-01-30 14:21:32 +01:00
Torkel Ödegaard
04d03f73b3 Added disable user sign up feature 2015-01-29 15:46:54 +01:00
Torkel Ödegaard
d95c5e6674 Basic import of json dashboards is working, needs more work to handle updates, and continous watching, #22 2015-01-29 14:33:50 +01:00
Torkel Ödegaard
1d6413bfae More work on backend for user favorites 2015-01-29 12:10:34 +01:00
Torkel Ödegaard
e02e60171e Began work on user favorites backend support & storage 2015-01-28 15:29:36 +01:00
Torkel Ödegaard
b25bf363b3 updated frontend, fixed new dashboard button 2015-01-28 14:31:09 +01:00
Torkel Ödegaard
1cff564483 Fontend handling of account role to hide user actions and links that the user does not have access to 2015-01-28 11:33:50 +01:00
Torkel Ödegaard
aa261bbe23 Login: only enabled oauth options are shown on login page 2015-01-28 10:26:13 +01:00
Torkel Ödegaard
a5e450a0dd Worked on anonymous access 2015-01-27 15:45:27 +01:00
Torkel Ödegaard
757b185398 Worked on ease of use for non multi tenant scenarios, Closes #20 2015-01-27 15:14:53 +01:00
Torkel Ödegaard
257519490a Worked on login remember cookie, and redirect after login 2015-01-27 12:05:23 +01:00
Torkel Ödegaard
95305e7e11 Changed from goconfig to its new counter part go-ini 2015-01-27 10:09:54 +01:00
Torkel Ödegaard
951ce0a102 API token -> API key rename 2015-01-27 08:26:11 +01:00
Torkel Ödegaard
db371d2a5d API: added admin role requirement for account changes, datasource admin, and api keys admin 2015-01-26 20:26:17 +01:00
Torkel Ödegaard
5ba2423626 Worked on account update view 2015-01-26 15:42:22 +01:00
Torkel Ödegaard
9a641ee7c0 Corrected the use of POST vs PUT, POST creates something, PUT updates, got them mixed up 2015-01-26 12:58:03 +01:00
Torkel Ödegaard
3744bc3228 fixed server side rendering 2015-01-21 10:51:42 +01:00
Torkel Ödegaard
3c8c53194f Sign up and login work 2015-01-21 09:52:40 +01:00
Torkel Ödegaard
4786e0f882 Changed name for vendor folder 2015-01-20 17:53:20 +01:00
Torkel Ödegaard
9e6df378c3 worked on account creation 2015-01-20 16:29:48 +01:00
Torkel Ödegaard
eec178458b Validation check for not removing the last account admin 2015-01-20 15:48:19 +01:00
Torkel Ödegaard
4ea5d80099 Various fixes to data access 2015-01-20 15:23:14 +01:00
Torkel Ödegaard
0a695ba17a Final work on migration, now there is no usage of xorm table sync 2015-01-20 14:44:37 +01:00
Torkel Ödegaard
afb847acc8 a lot of work on database schema and migration setup, postgres now works, every integration test passes for all database types, only token table left to do 2015-01-20 14:15:48 +01:00
Torkel Ödegaard
8bb9126b77 added postgres support for db migrations 2015-01-20 09:20:44 +01:00
Torkel Ödegaard
2379c5b770 Added loglevel to migrator, added dashboard table & index migrations 2015-01-20 08:50:08 +01:00
Torkel Ödegaard
581efa857b Small fixes 2015-01-19 19:10:29 +01:00
Torkel Ödegaard
e750508d76 Fixes for update user and add token 2015-01-19 18:57:51 +01:00
Torkel Ödegaard
90925273a0 User / Account model split, User and account now seperate entities, collaborators are now AccountUsers 2015-01-19 18:01:04 +01:00
Torkel Ödegaard
f1996a9f1f Initial work on seperation between user and account 2015-01-19 16:28:45 +01:00
Torkel Ödegaard
d8e5be5782 Worked on database agnostic table creation for db migrations 2015-01-19 10:44:16 +01:00
Torkel Ödegaard
7d70ffe201 adding more columns for account table migration 2015-01-18 20:09:30 +01:00
Torkel Ödegaard
a64a38d7dd Added migration log and migration id, do not execute already executed migrations 2015-01-18 18:41:03 +01:00
Torkel Ödegaard
8bfed7508c More work on sql schema and migrations, starting to get somewhere 2015-01-18 14:51:51 +01:00
Torkel Ödegaard
68a77c4051 More progress on db schema setup and migrations, tricky stuff 2015-01-18 13:08:59 +01:00
Torkel Ödegaard
38f237efcb Merge branch 'master' of github.com:torkelo/grafana-pro 2015-01-18 08:56:32 +01:00
Torkel Ödegaard
2daffe2a15 Api import route updated 2015-01-18 08:56:19 +01:00
Torkel Ödegaard
1f987c1903 Began work on real sql schema definitions, and migration engine 2015-01-17 21:40:22 +01:00
Torkel Ödegaard
9a29b04561 Dashboard import/export now works 2015-01-17 10:39:26 +01:00
Torkel Ödegaard
c970e82758 Small update to update account command 2015-01-17 08:20:25 +01:00
Torkel Ödegaard
1532eb4278 Fixed png rendering 2015-01-16 17:00:31 +01:00
Torkel Ödegaard
ed879df1f4 Corrected spelling of SignedInUser (was SignInUser) 2015-01-16 16:17:35 +01:00
Torkel Ödegaard
2b05dac071 Api Key role is now correcty added do middleware context 2015-01-16 16:15:35 +01:00
Torkel Ödegaard
3912ed5023 Role checking when saving dashboard, making sure that the user has owner or editor role 2015-01-16 15:28:44 +01:00
Torkel Ödegaard
22156fe309 Big refactoring for context.User, and how current user info is fetching, now included collaborator role 2015-01-16 14:32:18 +01:00
Torkel Ödegaard
aa9ca68883 Tokens small fixes 2015-01-16 12:28:35 +01:00
Torkel Ödegaard
9feb8a73fd Added binding to tokens api and role validation 2015-01-16 12:06:24 +01:00
Torkel Ödegaard
f858f6b621 Add collaborator now handles role, added macaron-contrib/binding for binding and validation 2015-01-16 11:54:19 +01:00
Torkel Ödegaard
cd5843e977 Fixed unit tests 2015-01-16 07:45:37 +01:00
Torkel Ödegaard
04bbdbad12 Worked on account update, moved collaborats to its own api url and files 2015-01-15 19:14:47 +01:00
Torkel Ödegaard
804bff55ec Accounts admin view/get api 2015-01-15 15:54:22 +01:00
Torkel Ödegaard
fdfcc3ab2a Admin flagged users, create a default admin user on startup if missing 2015-01-15 14:44:15 +01:00
Torkel Ödegaard
5ec07db143 Refactoring of auth middleware, and starting work on account admin 2015-01-15 12:16:54 +01:00
Torkel Ödegaard
67b935188b Fixed failing unit test 2015-01-15 10:52:22 +01:00
Torkel Ödegaard
6f63d63ee0 Working on account collaborators 2015-01-14 16:12:37 +01:00
woodsaj
f25cffd24e fix getAccountByToken query. 2015-01-14 21:45:00 +08:00
Torkel Ödegaard
5e18afe916 Refactoring of api routes 2015-01-14 14:25:12 +01:00
Torkel Ödegaard
166ce7d2ae Added Gzip option and the macaron Gzip middleware, but does not seem to work 2015-01-14 10:34:14 +01:00
Torkel Ödegaard
5833867b44 renamed register route to signup 2015-01-14 10:19:53 +01:00
Torkel Ödegaard
ced5e5500e mini code cleanup of in auth 2015-01-14 10:14:07 +01:00
woodsaj
7b17e38f5d add Token authentication support
Added CRUD methods for Tokens.
Extend Auth Handler to check for the presence of a Bearer Authorization
header to authenticate against. If there is no header, or the token is not
valid, the Auth Handler falls back to looking for a Session.
2015-01-14 16:33:34 +08:00
Torkel Ödegaard
8e65f36131 Added system admin skeleton 2015-01-11 12:12:29 +01:00
Torkel Ödegaard
68cc3f86dd Handle default datasource management 2015-01-09 16:36:23 +01:00
Torkel Ödegaard
d562dcd90c Default datasource and event system test 2015-01-09 11:01:37 +01:00
Torkel Ödegaard
a81a5315e1 Added graphite docker and fig config 2015-01-08 17:34:41 +01:00
Torkel Ödegaard
d573ee22f1 Fixed missing godep dependency for unit tests 2015-01-08 09:23:34 +01:00
Torkel Ödegaard
3226a3a58e Fixed hashing of passwords, Closes #3 2015-01-08 09:00:00 +01:00
Torkel Ödegaard
35326e1d92 Worked a little on anonymous access, needs more work 2015-01-07 16:37:24 +01:00
Torkel Ödegaard
9d629f2780 Tested with mysql, added simple fig file, need to write a more substantial fig setup 2015-01-07 14:05:57 +01:00
Torkel Ödegaard
1ae52d2472 Dashboard search by tag, and tag cloud now works, god dam I hate SQL 2015-01-07 12:37:24 +01:00
Torkel Ödegaard
bcdbec61d7 Dashboard search works better, tag cloud should be done soon 2015-01-06 18:39:26 +01:00
Torkel Ödegaard
3f266a3e1b Fixed dashboard search 2015-01-06 17:22:10 +01:00
Torkel Ödegaard
3e07605260 added a /api/metrics/test query that returns random walk series 2015-01-06 09:11:00 +01:00
Torkel Ödegaard
0e3f91508e Added validation to stop duplicate dashboards with same name from being saved 2015-01-05 17:04:29 +01:00
Torkel Ödegaard
d06174fb56 Added build script written in go that adds build symbols for version, commit and build date 2015-01-05 10:46:58 +01:00
Torkel Ödegaard
19c70a126f fixed oauth login redirect when using app sub url 2015-01-05 08:21:52 +01:00
Torkel Ödegaard
4cc8a9bd18 More work on getting grafana pro to work in sub url 2015-01-05 07:59:18 +01:00
Torkel Ödegaard
f25a415a9e Work on making grafana work in sub url 2015-01-04 21:03:40 +01:00
Torkel Ödegaard
ee443d91dd Fixed account creation on first github login 2015-01-01 22:27:19 +01:00
Torkel Ödegaard
29c9330965 Changes to config file loading 2015-01-01 15:29:10 +01:00
Torkel Ödegaard
ad4cf373a6 Work on unifying backend grafnaa and standalone grafana, and being able to build both from the same branch 2014-12-31 19:02:00 +01:00
Torkel Ödegaard
e738a67e06 removed the need for symbolic link to grafana/src 2014-12-30 12:03:03 +01:00
Torkel Ödegaard
aafe2c5b98 Updated session lib 2014-12-30 10:28:27 +01:00
Torkel Ödegaard
e9fcca16bd updated to new golang/x/oauth2 2014-12-30 10:10:13 +01:00
Torkel Ödegaard
8faa806c90 Refactoring dashboard delete and search 2014-12-29 13:58:06 +01:00
Torkel Ödegaard
164d11c816 InfluxDB now works in proxy mode, influxdb username and password is added in the backend and never exposed to frontend, #8 2014-12-29 13:36:08 +01:00
Torkel Ödegaard
27b11b1d79 InfluxDB now works in proxy mode, influxdb username and password is added in the backend and never exposed to frontend, #8 2014-12-29 13:35:51 +01:00
Torkel Ödegaard
ec98c201e4 Datasource options are now included in bootData 2014-12-28 19:30:14 +01:00
Torkel Ödegaard
f3132b4513 Trying a different approach to providing frontend settings 2014-12-28 18:37:39 +01:00
Torkel Ödegaard
a55a606a55 Refactoring dashboard data access 2014-12-22 12:25:08 +01:00
Torkel Ödegaard
22bf20a135 Refactoring get account by id and by login to queries 2014-12-19 13:40:02 +01:00
Torkel Ödegaard
5dcf6ff2d3 Refactoring set using account 2014-12-19 13:12:47 +01:00
Torkel Ödegaard
607b0c0c0e More refactoring and aligning code to the command query model 2014-12-19 11:53:27 +01:00
Torkel Ödegaard
d5a59ac6b7 More migration to command/query and sql tests, looking good 2014-12-19 11:08:49 +01:00
Torkel Ödegaard
ccba95542b Moved add collaborator to command way of doing it 2014-12-19 10:45:22 +01:00
Torkel Ödegaard
36c46112df Refactoring data access to command query model, and adding tests for sql code 2014-12-19 09:43:16 +01:00
Torkel Ödegaard
e5811e29b1 Added username, site and password for influxdb datasources 2014-12-19 08:19:12 +01:00
Torkel Ödegaard
525b367a6f Config.js generation, simple temp solution, first is default datasource 2014-12-19 07:42:20 +01:00
Torkel Ödegaard
a7c816c65e Datasource proxy, switch to lookup by id 2014-12-19 07:27:25 +01:00
Torkel Ödegaard
a2a0e0394d Work on data source proxying, #6 2014-12-18 20:26:06 +01:00
Torkel Ödegaard
d69258e28f Backend can now generate config.js, the very basic stuff, more work needed 2014-12-18 15:41:38 +01:00
Torkel Ödegaard
ce947d4793 Update data sources now work, #8 2014-12-17 17:32:22 +01:00
Torkel Ödegaard
adf4e72cf8 More general backend work, in the middle of the night... Zzzz 2014-12-17 03:09:54 +01:00
Torkel Ödegaard
c7ed348ee8 Lots of progress on command/query bus concept, in memory sql testing, datasource admin 2014-12-16 21:05:49 +01:00
Torkel Ödegaard
27f07e9de2 Progress on data source admin 2014-12-16 16:45:07 +01:00
Torkel Ödegaard
b70a3f0958 started work datasources admin 2014-12-16 12:04:08 +01:00
Torkel Ödegaard
53b00d80d6 Fixed GetOtherAccountsFor query 2014-12-16 09:06:49 +01:00
Torkel Ödegaard
705455d5d6 Set active account now works again 2014-12-15 21:56:16 +01:00
Torkel Ödegaard
973b9cad36 moved all http route handling into single package named api 2014-12-15 21:25:02 +01:00
Torkel Ödegaard
1663cbbb34 Merge branch 'master' of github.com:torkelo/grafana-pro
Conflicts:
	.bra.toml
2014-12-15 20:50:38 +01:00
Torkel Ödegaard
26ec858903 Moved grafana bin file to bin folder 2014-12-15 17:36:42 +01:00
Torkel Ödegaard
90ae59ccaf Fixed png rending 2014-12-01 13:25:57 -08:00
Torkel Ödegaard
ff6a2d014a Refactored command/query interface 2014-12-01 08:56:03 -08:00
Torkel Ödegaard
246f41b88a Bus experiment 2014-11-28 22:16:49 +01:00
Torkel Ödegaard
50164324f3 moved back to a main.go file in root 2014-11-28 11:51:34 +01:00
Torkel Ödegaard
d7ee4b4573 Added missing files 2014-11-26 09:58:36 +01:00
Torkel Ödegaard
a492eceff0 refactoring 2014-11-24 17:37:20 +01:00
Torkel Ödegaard
be781bdb98 Tried postgres 2014-11-24 10:17:13 +01:00
Torkel Ödegaard
e750080f00 removed old code 2014-11-24 08:20:16 +01:00
Torkel Ödegaard
fcdcd63dc7 get other accounts works 2014-11-24 08:04:41 +01:00
Torkel Ödegaard
f04932aa67 More work on collaborators, and sql store 2014-11-21 16:43:04 +01:00
Torkel Ödegaard
4eefa73441 Progress on account and dashboard save/load 2014-11-20 15:19:44 +01:00
Torkel Ödegaard
00b4d233cc Small progress, save search works 2014-11-20 13:02:25 +01:00
Torkel Ödegaard
eb2c078898 Progres on move to sql from rethinkdb 2014-11-20 12:11:07 +01:00
Torkel Ödegaard
9b68911d00 Made it it compile again 2014-11-20 09:16:28 +01:00
Torkel Ödegaard
f5b1b192a0 Macaron and sqllite 2014-11-14 17:13:33 +01:00
Torkel Ödegaard
d7cd2b970e OAuth remake 2014-10-07 17:56:37 -04:00
Torkel Ödegaard
450d242d5f working on oauth 2014-10-07 15:54:38 -04:00
Torkel Ödegaard
2783196547 updated 2014-10-07 13:44:20 -04:00
Torkel Ödegaard
e84f06b503 more macaroon stuff 2014-10-07 11:53:25 -04:00
Torkel Ödegaard
222319d924 macaron transition progress 2014-10-05 21:13:07 +02:00
Torkel Ödegaard
201e1d3e6d Macaron rewrite 2014-10-05 16:50:04 +02:00
Torkel Ödegaard
2c72831be1 before macaron 2014-10-05 15:34:24 +02:00
Torkel Ödegaard
a4204880e8 started work on new arch 2014-10-04 13:33:20 +02:00
Torkel Ödegaard
5d120de70e Filtered logging and url query helper 2014-10-03 09:03:16 +02:00
Torkel Ödegaard
05f9e5eef1 rendering 2014-10-01 21:07:58 +02:00
Torkel Ödegaard
4a73e2d0e9 Solo panel and phantom rendering work 2014-10-01 13:20:30 +02:00
Torkel Ödegaard
b499bdea3b working on panel rendering 2014-10-01 11:37:04 +02:00
Torkel Ödegaard
3bba8b2c26 Github oauth login works 2014-09-22 11:39:40 +02:00
Torkel Ödegaard
b0b77d667c added gravatar 2014-09-22 10:46:56 +02:00
Torkel Ödegaard
cd9306df45 Lots of progress on account management 2014-09-21 15:01:59 +02:00
Torkel Ödegaard
015c929bd7 more account stuff 2014-09-20 13:24:06 +02:00
Torkel Ödegaard
40ff57d8c4 Account stuff 2014-09-20 12:13:46 +02:00
Torkel Ödegaard
a9a06ad51d Working on collaborators 2014-09-19 17:37:18 +02:00
Torkel Ödegaard
158b708eac Small progress on adding collaborator 2014-09-18 12:03:46 +02:00
Torkel Ödegaard
4dfe8b6f69 Working on login user name state 2014-09-17 15:25:07 +02:00
Torkel Ödegaard
ecafc7bf8f Added support for delete dashboard 2014-09-17 13:34:42 +02:00
Torkel Ödegaard
2380a26987 updated 2014-09-17 09:49:28 +02:00
Torkel Ödegaard
31fe471da5 working on account registration and more 2014-08-22 18:05:37 +02:00
Torkel Ödegaard
c684b1ddab dashboard load/save work and began work on register 2014-08-22 15:32:42 +02:00
Torkel Ödegaard
07d8b542bf working on rethinkdb stuff 2014-08-21 22:09:48 +02:00
Torkel Ödegaard
d8dca20332 updated 2014-08-17 12:25:37 +02:00
Torkel Ödegaard
efed13b9fe Work on login and sidemenu 2014-08-16 21:54:26 +02:00
Torkel Ödegaard
9e30599f1f rename backend to pkg 2014-08-12 20:45:41 +02:00