Commit graph

3445 commits

Author SHA1 Message Date
mposolda
5aefe52ccc Refactoring of Authentication SPI and Picketlink to use ProviderSessions
Refactoring of ProviderSessionFactory to support dependencies between components
Calling lifecycle methods
Removing KeycloakRegistry
2014-04-09 00:34:01 +02:00
mposolda
c8c4cfbaae Restructure of authentication module and packages 2014-04-09 00:06:04 +02:00
Stian Thorgersen
354cf02aaa Fix audit mongo tests 2014-04-08 12:43:01 +01:00
Stian Thorgersen
7f0cf3eda8 Allow clearing audit events through admin console, and added timer to clear expired events 2014-04-08 11:32:20 +01:00
Stian Thorgersen
8ca46fa35d Audit configurable through admin console 2014-04-07 17:58:52 +01:00
Stian Thorgersen
bbf5fee320 Fix testsuite for mongo 2014-04-07 13:35:26 +01:00
Stian Thorgersen
abde247e14 Moved admin-ui-styles into admin-ui 2014-04-07 10:37:21 +01:00
mposolda
58083fbb96 Hide password tab in acct management if passwordUpdate not supported 2014-04-04 23:47:12 +02:00
mposolda
ad068a300b Basic support for registration of new users in AuthenticationProvider 2014-04-04 19:53:02 +02:00
Stian Thorgersen
88ddc8ebca Added audit to admin console 2014-04-04 15:16:08 +01:00
Stian Thorgersen
3433227fa7 Added audit log to account mngmt 2014-04-03 16:27:31 +01:00
Stian Thorgersen
e6067c915d Added ProviderSession to requests 2014-04-03 16:27:31 +01:00
Bill Burke
126b444d77 brute force merge 2014-04-02 20:26:33 -04:00
Bill Burke
d58870545f brute force protection 2014-04-02 20:09:14 -04:00
Bill Burke
231e8895a5 Merge pull request #309 from vibe13/master
Cleaning of pom.xml files
2014-04-02 11:39:04 -04:00
mposolda
25bf6d63b4 Refactoring of AuthenticationProvider SPI 2014-04-02 17:27:07 +02:00
mposolda
05cd8a82e5 Storing default AuthenticationProvider at the realm creation time 2014-04-02 17:17:33 +02:00
Stian Thorgersen
21239fbab9 Added Mongo audit provider 2014-04-01 18:00:35 +01:00
Stian Thorgersen
225307e855 KEYCLOAK-389 Added AuditListener SPI
KEYCLOAK-390 Added JBoss Logging AuditListener
KEYCLOAK-391 Audit Token events
2014-03-31 17:35:14 +01:00
Andrea Vibelli
84f1e1b56e Extraction into properties of maven-compiler-plugin source and target 2014-03-31 11:17:16 +02:00
Andrea Vibelli
37fdc50fb4 Remove warnings about no schema definition in pom.xml files 2014-03-31 10:44:22 +02:00
mposolda
129eb6a3be Fix LDAP tests and teststuite on windows. Set initial password directly in code as import from LDIF is problematic on windows 2014-03-27 16:20:03 +01:00
mposolda
ab02dea902 Fixes in AuthenticationProvider. Fixing testsuite 2014-03-25 15:05:08 +01:00
mposolda
793f69d4b6 Authentication SPI. Implementations based on Picketlink+LDAP, model and external model (other realm). Added KeycloakRegistry 2014-03-24 23:11:11 +01:00
Stian Thorgersen
702ae0307e Fixes to account referrer to allow configurable referrer uri based on app redirect uri 2014-03-19 16:52:41 +00:00
Stian Thorgersen
331ab71427 KEYCLOAK-380 Added OAuth2Constants 2014-03-15 10:43:52 +00:00
Stian Thorgersen
f9aaa16cfe KEYCLOAK-378 KEYCLOAK-379 KEYCLOAK-381 Fix refresh token if token contains app roles. Changed long time fields in AccessCode and AccessToken to int 2014-03-15 10:15:10 +00:00
Bill Burke
466b6762d9 further adapter tests 2014-03-14 11:21:32 -04:00
Bill Burke
3f1b7a0335 adapter testing 2014-03-13 21:47:46 -04:00
Bill Burke
7763da1273 bump version to beta-1 snapshot 2014-03-13 11:24:38 -04:00
Bill Burke
1c6b867079 bump version 2014-03-13 10:58:22 -04:00
Stian Thorgersen
ee5cab04e0 Set next version 2014-03-13 09:10:42 +00:00
Bill Burke
3ff8d0fd1f bump version 2014-03-12 16:48:12 -04:00
Stian Thorgersen
fbc39e82a1 KEYCLOAK-365 Add IDToken properties to JS SDK 2014-03-12 11:31:59 +00:00
Stian Thorgersen
0214827492 KEYCLOAK-364 Show access denied if social login is cancelled 2014-03-12 09:21:11 +00:00
Stian Thorgersen
6dc156712e KEYCLOAK-359 Add user friendly username for social links 2014-03-12 08:52:47 +00:00
Bill Burke
dd292c1d52 remove scope support for now part 2 2014-03-06 10:26:46 -05:00
Bill Burke
801ef3281a remove scope support for now 2014-03-06 09:59:27 -05:00
Bill Burke
599faa3cb5 public clients 2014-03-05 20:26:27 -05:00
Stian Thorgersen
60bb05e6ca Added Config to centralize system properties used to configure KC 2014-03-05 15:20:53 +00:00
Stian Thorgersen
0219aa1e4c Added support for any port with http://localhost redirect uri 2014-03-05 12:54:57 +00:00
Stian Thorgersen
87aaaf0b06 Started support for installed applications 2014-03-03 12:58:16 +00:00
Bill Burke
c78d1c90e4 remove clientmodel.getAgent() 2014-02-27 16:48:34 -05:00
Bill Burke
3fc273070e remove clientmodel.agent phase1 2014-02-27 13:55:04 -05:00
Bill Burke
f8da693fd0 move secret to clientmodel 2014-02-27 10:59:47 -05:00
Bill Burke
42d30a5a70 rename scope rep username to client 2014-02-26 22:23:04 -05:00
Bill Burke
48d39bf977 Use ClientModel wherever possible 2014-02-26 22:04:57 -05:00
Bill Burke
c02d532001 refactor model 2014-02-26 19:25:42 -05:00
Stian Thorgersen
9a73936002 KEYCLOAK-292 Fine-grained admin control 2014-02-25 12:53:36 +00:00
Bill Burke
01ddafa83a central login timeouts, rememberme framework 2014-02-22 21:52:29 -05:00
Bill Burke
3e88cb3b76 logout 2014-02-22 20:40:06 -05:00
Bill Burke
97dd7470ce rename tokenLifespan to accessTokenLifespan 2014-02-21 12:12:54 -05:00
Bill Burke
e583dc60ae Merge remote-tracking branch 'upstream/master' 2014-02-21 12:02:36 -05:00
Bill Burke
9607acdb6a refactor token creation 2014-02-21 12:02:24 -05:00
Stian Thorgersen
05bd92d765 KEYCLOAK-286 Allow login with username or email. KEYCLOAK-287 Remove recover username as we now support login with email 2014-02-21 15:25:55 +00:00
Bill Burke
9442601e42 rename some classes 2014-02-21 10:16:12 -05:00
Stian Thorgersen
9ce8e16063 KEYCLOAK-284 Subject in token is now user id instead of username 2014-02-21 09:48:43 +00:00
Bill Burke
6794166b58 tokens/access/codes now uses basic auth 2014-02-20 17:19:51 -05:00
Bill Burke
00043423c2 alpha 3 version bump 2014-02-19 23:22:34 -05:00
Bill Burke
27f61a9f86 bump version 2014-02-19 21:01:42 -05:00
mposolda
cec57b169e Fix all tests with MySQL. Removing nested transactions 2014-02-18 11:22:19 +01:00
mposolda
1375e72cf7 KEYCLOAK-289 Refactoring to use UUID instead of autogenerated ID in JPA model 2014-02-17 18:23:14 +01:00
Stian Thorgersen
695eb05d66 Added a SSO test 2014-02-17 14:32:02 +00:00
Stian Thorgersen
0f3b836005 Updated account themes to use patternfly 2014-02-17 12:17:06 +00:00
Stian Thorgersen
01bb835285 Updated login forms to use Patternfly styles 2014-02-14 17:38:04 +00:00
Bill Burke
0cdd5e857e use secrets 2014-02-13 18:36:41 -05:00
Bill Burke
bc1f635779 Merge remote-tracking branch 'upstream/master' 2014-02-13 10:44:38 -05:00
Bill Burke
9390e90b85 more subsystem work 2014-02-13 10:43:29 -05:00
Stian Thorgersen
2ce0a06b51 Minor fixes and tweaks to admin console 2014-02-13 13:18:49 +00:00
mposolda
b9ff73d61c Moved model unit tests from services to model/tests . Mongo profile in testsuite 2014-02-11 18:26:50 +01:00
mposolda
b3f1032f96 Mongo: Refactoring. All unit tests and testsuite are passing with Mongo. 2014-02-11 18:25:57 +01:00
Stian Thorgersen
564223b30a Fix test 2014-02-09 15:54:52 +00:00
Stian Thorgersen
b1ebf237de KEYCLOAK-10 Added JS library 2014-02-07 13:56:13 +00:00
Stian Thorgersen
8b5fbe92d6 Added GitHub provider. Simplified FaceBook provider 2014-02-05 10:55:52 +00:00
Bill Burke
d2ad6349ba remove setComposite 2014-02-04 18:41:36 -05:00
Bill Burke
4e66a3bf81 Merge remote-tracking branch 'upstream/master' 2014-02-04 10:09:25 -05:00
Bill Burke
92091d9474 composite tests 2014-02-04 10:09:09 -05:00
Stian Thorgersen
1d403c6f3f Added documentation for themes 2014-02-04 14:46:51 +00:00
Stian Thorgersen
97897cab1d KEYCLOAK-15 Customize login and registration forms 2014-02-04 11:45:24 +00:00
Stian Thorgersen
38b7dcdf7d Fixes to persistence.xml for distribution 2014-02-04 11:44:02 +00:00
Bill Burke
8505cc612a composite representations 2014-02-03 17:21:56 -05:00
Bill Burke
1cbe3596b4 Merge remote-tracking branch 'upstream/master' 2014-01-30 20:32:11 -05:00
Bill Burke
1543963c9f composite tests 2014-01-30 20:31:44 -05:00
Bill Burke
6a5994c3e2 composite roles 2 2014-01-29 23:28:08 -05:00
Bill Burke
bb5991239b composite roles 2014-01-29 20:19:32 -05:00
Matthias Wessendorf
2efcb95fd6 some minor util class clean-up, to prevent instanciation of util classes 2014-01-28 14:30:22 +01:00
Stian Thorgersen
06c3a6ea30 KEYCLOAK-271 Check password policy when recovering password through email 2014-01-24 14:48:58 +00:00
Stian Thorgersen
4cb98a3aa4 Set version to 1.0-alpha-2-SNAPSHOT 2014-01-24 09:34:54 +00:00
Bill Burke
c77a6dfc40 dist 2014-01-22 19:18:00 -05:00
Stian Thorgersen
070c0ddba4 Renamed registration to default roles, add default roles to all users when they are created 2014-01-17 10:03:13 +00:00
Stian Thorgersen
c5366f1c81 KEYCLOAK-264 Remove option to enable/disable acct mngmt 2014-01-17 09:30:56 +00:00
Stian Thorgersen
dcfb83b0f2 KEYCLOAK-64 KEYCLOAK-246 Updated social to use update profile required action instead of registration form. Fixed Google provider 2014-01-16 12:52:46 +00:00
Bill Burke
b162190c7f remove cookieLoginAllowed 2014-01-15 20:31:01 -05:00
Bill Burke
39b61728d6 change uri scheme 2014-01-13 17:07:36 -05:00
Stian Thorgersen
739866de0c KEYCLOAK-255 Added tmp redirect to admin/index.html as work-around to WildFly issue 2014-01-13 11:27:02 +00:00
Stian Thorgersen
0a57ba026b KEYCLOAK-180 Renamed JWT prn to sub 2014-01-10 10:22:58 +00:00
Stian Thorgersen
212aec8ae3 KEYCLOAK-235 Fix test 2013-12-18 16:58:31 +00:00
Bill Burke
6380dc3d1b refactor out resteasy from adapters 2013-12-17 12:07:02 -05:00
Bill Burke
d22b6f8df7 factor out jwt/jose/jws 2013-12-16 11:19:46 -05:00
Bill Burke
d28b1ff98b refactor core/adapter 2013-12-13 19:53:02 -05:00
Stian Thorgersen
145eab98d8 KEYCLOAK-221 Don't require username to recover password 2013-12-07 13:34:31 +00:00
Stian Thorgersen
cd8c8d52e8 KEYCLOAK-217 Add option to recover username 2013-12-07 13:18:06 +00:00
Bill Burke
edba13e596 realm upload 2013-12-06 17:28:32 -05:00
Bill Burke
d86dec6561 version bump to SNAPSHOT 2013-12-06 09:45:08 -05:00
Bill Burke
4909316d59 pom version bump 2013-12-06 08:40:35 -05:00
Bill Burke
59511c8781 skip 2013-12-06 08:33:47 -05:00
Stian Thorgersen
5415a878e8 KEYCLOAK-183 Don't show totp on main login form if totp is required by realm 2013-12-04 19:42:41 +00:00
Stian Thorgersen
eea812dfda KEYCLOAK-190 KEYCLOAK-191 Fixed redirect uri's 2013-12-04 19:04:19 +00:00
Stian Thorgersen
a7b653de28 KEYCLOAK-185 Added cancel button to login form 2013-12-03 15:11:18 +00:00
Stian Thorgersen
7f499b2833 KEYCLOAK-186 Password policies 2013-12-03 12:53:26 +00:00
Stian Thorgersen
46f7e1f7fc Updated TotpGenerator tool to read secret from System.in instead of arg 2013-11-28 18:08:04 +00:00
Stian Thorgersen
85eeb415e1 KEYCLOAK-181
Link back to application from account management pages
2013-11-28 13:48:30 +00:00
Bill Burke
799df520b8 realm import changes 2013-11-27 17:02:12 -05:00
Bill Burke
f79739f73e oauth client 2013-11-26 15:39:57 -05:00
Stian Thorgersen
42d7e430ce Fix adding all roles for an application to token, should be all roles associated with the user for that application 2013-11-18 14:16:37 +00:00
Stian Thorgersen
45424e5eba Removed '*' role 2013-11-15 16:38:44 +00:00
Stian Thorgersen
158d1740b8 KEYCLOAK-72 and KEYCLOAK-158 2013-11-15 11:03:25 +00:00
Stian Thorgersen
222084bebc Make picketlink model work in testsuite 2013-11-12 11:57:32 +00:00
Stian Thorgersen
2e9a474eac Use service loader to load model provider 2013-11-12 11:49:03 +00:00
Stian Thorgersen
c8a3b82fdf Upgraded to Undertow 1.0.0.Beta21 - this fixes an issue with '/admin/' not opening in Chrome 2013-11-11 15:17:41 +00:00
Stian Thorgersen
fd2bfee7d9 Assign default roles to users when they register instead of directly to tokens 2013-11-08 17:51:44 +00:00
vrockai
2c9fcc2324 KEYCLOAK-133 added favicon 2013-11-08 16:55:29 +01:00
Stian Thorgersen
c477f7c04c Fix tests 2013-11-08 12:33:39 +00:00
Bill Burke
2861ea0e96 nasty merge 2013-11-05 23:12:07 -05:00
Bill Burke
d04ca2c34f jpa backend 2013-11-05 21:26:33 -05:00
Stian Thorgersen
15e9ed5149 Fix for jdk7 2013-11-05 10:02:32 +00:00
Stian Thorgersen
d083909136 Added support for default application roles. Added authz to account, user (or client if oauth) is required to have role manage-account to manage their account, this is a default role for the Account application. 2013-11-04 17:21:46 +00:00
Stian Thorgersen
c6f43baf0d Allow oauth clients to ask for permission to view user profile, and manage user account 2013-11-03 16:14:15 +00:00
Stian Thorgersen
7f691b463c KEYCLOAK-75 Retrieve user profile 2013-11-03 13:33:22 +00:00
Stian Thorgersen
d33c8c53f7 Reduce log output for keycloak dev/test server 2013-11-01 16:41:42 +00:00
Stian Thorgersen
85220ba054 Clean-up in social core 2013-11-01 16:41:16 +00:00
Stian Thorgersen
fd6bde829c Fixed svgs not found when using KeycloakServer 2013-10-25 14:31:16 +01:00
Stian Thorgersen
45b5f5afd5 Add setting realm.accessCodeLifespanUserAction in admin console 2013-10-25 12:39:25 +01:00
Stian Thorgersen
bb3a82f932 KEYCLOAK-116
Use social provider settings from realm
2013-10-22 14:05:56 +01:00
Stian Thorgersen
6e3dd959eb KEYCLOAK-114 Use SMTP server settings from realm 2013-10-22 13:47:30 +01:00
vrockai
f7d6c41304 KEYCLOAK-112 - fixing various forms UI related issues 2013-10-21 18:23:53 +02:00
Stian Thorgersen
0c4df883fc Fixed SocialLoginTest 2013-10-21 10:49:36 +01:00
Stian Thorgersen
c28f30915b Added test for registration on first social login 2013-10-21 10:24:04 +01:00
Stian Thorgersen
1971fa0326 Added log4j to dev KeycloakServer 2013-10-21 09:57:02 +01:00
Stian Thorgersen
d79d299073 Made account management an optional feature on a realm, and added login and logout to account management pages 2013-10-19 16:24:58 +01:00
vrockai
89ca52e960 KEYCLOAK-108 add warning alerts to req action forms 2013-10-18 14:45:28 +02:00
Stian Thorgersen
79c1230a9d Added redirect uris to application 2013-10-17 15:25:06 +01:00
vrockai
5ec74be39e KEYCLOAK-38 Adding OAuth Grant to forms 2013-10-16 19:04:02 +02:00
Bill Burke
ba082b0d6d Merge remote-tracking branch 'upstream/master' 2013-10-16 08:27:06 -04:00
Bill Burke
13c75c02e1 bootstrap 2013-10-16 08:26:33 -04:00
Stian Thorgersen
7194276a34 Fixed loading of resources in KeycloakServer when running using Maven 2013-10-15 11:03:47 +01:00
stianst
91297f1ffd Merge pull request #68 from ammendonca/KEYCLOAK-RersourceLoadingPath
KEYCLOAK When using -Dresources the default path expects to find "keyclo...
2013-10-15 02:51:36 -07:00
ammendonca
0ed3975b54 KEYCLOAK When using -Dresources the default path expects to find "keycloak" in path as root folder. Removed such constraint so it works with different names for root folder. 2013-10-14 17:47:46 +01:00
vrockai
a67cff916d KEYCLOAK-74 fix of a typo and css color issue 2013-10-14 10:57:24 +02:00
vrockai
23f2fb9125 KEYCLOAK-84 added totp test and better form feedback 2013-10-14 10:57:24 +02:00
Stian Thorgersen
91c5fe5e4e Added option to load resources from filesystem to KeycloakServer 2013-10-12 13:02:52 +01:00
Stian Thorgersen
42aba41d6b Make it easier to use test utils 2013-10-12 11:29:12 +01:00
Stian Thorgersen
63ee50e39e Added servlet 3.1 dep to testsuite/integration 2013-10-12 11:04:35 +01:00
Stian Thorgersen
ad25541ee3 Don't require SSL in KeycloakServer 2013-10-12 10:58:36 +01:00
mposolda
b2cc74bf58 Fix errors in testsuite when Mongo model is used 2013-10-11 11:40:51 +02:00
Stian Thorgersen
1f78aa90d5 Added admin to testsuite Keycloak server 2013-10-10 13:08:48 +01:00
mposolda
9f91002348 Adapt latest model changes 2013-10-10 12:10:16 +02:00
mposolda
6ac643c45b Creating MongoDBSessionFactory in KeycloakApplication via reflection to avoid compile-time dependency on mongo module 2013-10-10 10:43:54 +02:00
mposolda
453e1c5cf7 Added ServletContextListener for start of embedded MongoDB at Keycloak deploy. Added PropertiesManager 2013-10-10 10:43:54 +02:00
mposolda
71cd9cffa4 Rebased MongoDB on top of latest master. Divide testsuite into integration and performance submodules 2013-10-10 10:43:54 +02:00
mposolda
58d862819a Added performance tests to testsuite to compare Picketlink+JPA+MySQL with Mongo. 2013-10-10 10:28:36 +02:00
Bill Burke
ef18c773e1 fix testsuite dependency 2013-10-09 17:31:53 -04:00
Stian Thorgersen
453834e807 Added utils for testing Keycloak - includes a quick and easy way to start keycloak, a mail server and a google authenticator simulator 2013-10-09 20:36:12 +01:00
Stian Thorgersen
3e9a7eefe2 Removed printing realm config on startup from testsuite 2013-10-04 15:47:31 +01:00
Stian Thorgersen
00405cc212 Check username on social login 2013-10-04 15:47:31 +01:00
vrockai
3a8c1e54d5 KEYCLOAK-74 fixes for totp related forms 2013-10-02 17:33:23 +01:00
vrockai
8b3e11dd63 KEYCLOAK-74 login action update profile fix 2013-10-02 17:33:23 +01:00
Bill Burke
a4e3431445 model module refactor 2013-10-02 09:54:26 -04:00
vrockai
ee42b74c17 KEYCLOAK-74 email verification fixes 2013-10-01 15:48:46 +02:00
vrockai
144f5f9cfd KEYCLOAK-74 Adapting the Forget password forms to original design 2013-09-30 19:10:23 +02:00
vrockai
fac98c5fd6 KEYCLOAK-74 login page fixes 2013-09-27 17:01:25 +02:00
vrockai
32779d956a KEYCLOAK-74 name to 1st/last name in registration form 2013-09-27 15:55:13 +02:00
Stian Thorgersen
8663c9f026 Added social login test using a dummy social provider 2013-09-27 13:09:52 +01:00
Stian Thorgersen
c96dd592d0 Hide oauth details with non-oauth tests in testsuite 2013-09-27 12:04:20 +01:00
Stian Thorgersen
811493f61a Added some basic oauth tests 2013-09-27 12:04:20 +01:00
Stian Thorgersen
48fd443a69 Added missing copyright statements to testsuite classes 2013-09-26 14:34:12 +01:00
Stian Thorgersen
62d57be59f Updated testsuite readme 2013-09-26 14:19:18 +01:00
Stian Thorgersen
29015dbabf Removed Arquillian from testsuite 2013-09-26 14:12:26 +01:00
Stian Thorgersen
b5a9cfc57e Removed Arquillian Drone and Graphene from testsuite 2013-09-26 14:12:25 +01:00
vrockai
790f09c46f KEYCLOAK-74 applying new design to existing forms 2013-09-26 14:08:03 +02:00
Stian Thorgersen
ea8e7cd86c Implemented test with multiple required user actions 2013-09-23 17:27:13 +01:00
Stian Thorgersen
85568f80b2 Added forms for login actions + some refactoring to required user actions 2013-09-23 15:26:09 +01:00
Stian Thorgersen
72315bb9d7 Improvements to required user actions. Including adding support for required actions to AccessCodeEntry. Added test for temporary password. 2013-09-21 12:21:46 +01:00
Stian Thorgersen
32fcd46e08 Added option on realm to allow reset password via email 2013-09-20 12:53:44 +01:00
Stian Thorgersen
cdce046711 Suppress error warning from GreenMail on stop 2013-09-20 10:48:15 +01:00
Stian Thorgersen
9eb353c6f6 Fixed some mvn warnings 2013-09-20 10:32:52 +01:00
Stian Thorgersen
27d1a2d547 KEYCLOAK-55 Lost credential logic 2013-09-19 16:58:22 +01:00
Stian Thorgersen
636b197c4c KEYCLOAK-32
Registration verification email
2013-09-18 19:33:18 +01:00
Stian Thorgersen
6c124a2172 Added required actions to user. Completed flow for user registering when Realm requires TOTP 2013-09-17 11:24:12 +01:00
Stian Thorgersen
7e64664fbf Changed testsuite to use Firefox to get rid of exception 2013-09-12 09:23:11 +01:00
Stian Thorgersen
6cb7289db0 Fixed testsuite for changes to KeycloakApplication 2013-09-12 09:19:02 +01:00
Stian Thorgersen
7d726bdc1a Fixed dep for testsuite 2013-08-22 15:42:18 +01:00
Stian Thorgersen
b9c6d89325 Added test for updating user profile 2013-08-22 12:09:10 +01:00
Stian Thorgersen
2bc2126317 Added test for changing password, and a small fix 2013-08-22 12:05:34 +01:00
Stian Thorgersen
2f84284390 Added some Arquillian Drone tests 2013-08-22 10:14:44 +01:00