377 Commits

Author SHA1 Message Date
ljacqu
32a664ef59 Update checkstyle config and CodeClimate exclusions
- Add new checkstyle checks: require Javadoc on large private methods, default in switch, declaration order & others
- Update path exclusions in CodeClimate config to match newly renamed classes (e.g. PHPBB -> PhpBB)
  - Create consistency check testing that excluded paths exist as classes
- Fix some trivial violations
2017-03-23 10:34:28 +01:00
Gnat008
9d21eefc74 Merge branches 'master' and 'passwd_recovery_process' of https://github.com/AuthMe/AuthMeReloaded into passwd_recovery_process
# Conflicts:
#	docs/config.md
#	src/main/resources/messages/messages_bg.yml
#	src/main/resources/messages/messages_es.yml
#	src/main/resources/messages/messages_pt.yml
#	src/main/resources/messages/messages_zhcn.yml
2017-03-21 17:26:29 -04:00
ljacqu
42f46b51d3 Merge branch 'master' of https://github.com/AuthMe/AuthMeReloaded into limbo
# Conflicts:
#	src/main/java/fr/xephi/authme/process/join/AsynchronousJoin.java
#	src/test/java/fr/xephi/authme/settings/SettingsConsistencyTest.java
2017-03-15 08:28:15 +01:00
ljacqu
457c07b53f Consistency test: check that all values are mentioned for enum properties 2017-03-15 08:24:40 +01:00
Gnat008
2214fa5839 Implement /email setpassword 2017-03-14 18:26:32 -04:00
ljacqu
1da74cb987 #1005 Improve restricted user feature (performance, error handling)
- Move check for restricted user into validation service
- Keep restrictions in a map by name for fast lookup, avoid splitting Strings on every call
- Gracefully handle case when entry does not have the expected ';' and log exception
2017-03-14 22:26:19 +01:00
ljacqu
84acc4557a #1125 Limbo persistence: convert old segments, add tests
- On startup / reload the playerdata folder is scanned for old segment files, whose data is migrated before they are deleted
- Add tests for segment files persistence holder
2017-03-14 20:46:28 +01:00
ljacqu
9c3baa7f14 #1125 Create persistence of LimboPlayers in segment files (work in progress)
- Instead of one huge file or a file for each player, allow the user to define how many files he wants to distribute the LimboPlayers over. This is based on a function that creates a String (segment ID) based on the player's UUID.
2017-03-13 20:29:08 +01:00
ljacqu
710198833c #1125 Create SingleFilePersistenceHandler + extract (de)serializer for LimboPlayer 2017-03-13 18:30:52 +01:00
ljacqu
8557621c02 #1125 Create infrastructure for Limbo persistence + restore 5.2 JSON storage
- Introduce configurable storage mechanism
  - LimboPersistence wraps a LimboPersistenceHandler, of which there are multiple implementations
  - Outside of the limbo.persistence package, classes only talk to LimboPersistence
  - Restore the way of persisting to JSON from 5.2 (SeparateFilePersistenceHandler)

- Add handling for stored limbo players
  - Merge any existing LimboPlayers together with the goal of only keeping one version of a LimboPlayer: there is no way for a player to be online without triggering the creation of a LimboPlayer first, so we can guarantee that the in-memory LimboPlayer is the most up-to-date, i.e. when restoring limbo data we don't have to check against the disk.
  - Create and delete LimboPlayers at the same time when LimboPlayers are added or removed from the in-memory map

- Catch all exceptions in LimboPersistence so a handler throwing an unexpected exception does not stop the limbo process (#1070)

- Extend debug command /authme debug limbo to show LimboPlayer information on disk, too
2017-03-12 18:43:37 +01:00
ljacqu
689e5eeccc Merge branch 'master' of https://github.com/AuthMe/AuthMeReloaded into limbo
# Conflicts:
#	src/main/java/fr/xephi/authme/command/executable/authme/debug/DebugCommand.java
2017-03-12 14:54:25 +01:00
ljacqu
10d8f00c92 Various minor changes
- AsynchronousLogin: call common permission methods through CommonService instead of PermissionsManager
- CommandManager: remove superfluous replacement of %p (handled by lazy tag replacer)
- Remove unused method in CommonService
- Create DebugSectionConsistencyTest
- SendMailSSL: Enable debug output if AuthMe log level is set to debug
- Add Utils#logAndSendMessage and replace existing, separate implementations
2017-03-12 14:04:39 +01:00
ljacqu
c766b5c259 #1036 Add restoration options for Limbo allowFlight / fly speed / walk speed
- Introduce options to define how allow flight, fly & walk speed should be restored from LimboPlayer
- Create consistency tests for line length in SectionComments methods and to ensure that all SettingsHolder classes are part of the returned ConfigurationData
2017-03-12 13:51:03 +01:00
EbonJaguar
7d4bfcd99d - Introduce /email code
- Add max tries for /email code
- Introduce a PasswordRecoveryService
2017-03-06 13:54:46 -05:00
Martin
6d67b82860 Xenforo
Added Xenforo group
2017-03-06 06:31:51 +02:00
Martin
7f8b31f9d4 Merge remote-tracking branch 'refs/remotes/AuthMe/master' 2017-03-06 06:16:34 +02:00
Martin
648e71cf0f IPB4 Improve
IPB4 prefix, group, lastvisit support added.
2017-03-06 06:11:59 +02:00
ljacqu
8aa573b9ed Minor fixes as found by Checkstyle 2017-03-05 10:58:29 +01:00
ljacqu
57903f1c08 Merge pull request #220 from AuthMe/1073-email-cooldown
Configurable cooldown for /email recovery
2017-02-26 22:44:39 +01:00
ljacqu
a847deac16 #1075 Mail sender - allow to turn off TLS for port 25 2017-02-26 14:12:51 +01:00
ljacqu
c197a330f3 #1073 Add delay to email recovery command
- Add configurable cooldown period after sending an email for /email recovery
- Change ExpiringMap to remove expired entries (like ExpiringSet)
- Create method to translate durations via the messages file
2017-02-25 22:41:49 +01:00
ljacqu
18d8186804 #1026 List all available tags for commands.yml in comment 2017-02-20 21:18:13 +01:00
ljacqu
39395836b4 #949 Add configurable timeout for captcha count 2017-02-19 11:50:06 +01:00
ljacqu
8ae06ed480 Minor improvements to config layout
- Change placement and comment of settings.restrictions.banUnsafedIP to make it clear that it only bans unknown IPs using a restricted username
- Move "MySQL use SSL" option outside of the column options
2017-02-05 13:48:24 +01:00
ljacqu
3eab42ae68 Remove obsolete "session expires on IP change" config
- Session always expire on IP change; the config only controlled whether an error message was shown or not
2017-02-05 13:40:11 +01:00
ljacqu
f6c560cbbe Merge branch 'master' of https://github.com/AuthMe-Team/AuthMeReloaded into 761-permission-groups 2017-02-04 23:05:31 +01:00
ljacqu
f6b08ece68 Trivial code householding
- Convert field to local variable
- Remove unused constructor parameter
- Move limbo class into limbo package
2017-01-30 21:53:00 +01:00
ljacqu
95945ffd22 #761 Improve permissions group support
- Drop one auth group type in favor of three: logged in, registered but not logged in, and unregistered
- Move  properties to same parent path
2017-01-29 17:44:06 +01:00
ljacqu
bba35944b9 Merge branch '5.3-DEV' of https://github.com/AuthMe-Team/AuthMeReloaded
Conflicts:
	pom.xml
2017-01-29 14:45:42 +01:00
ljacqu
89c70ff447 #1026 Add more tags for forced commands (lazily replaced) (#214)
* #1026 Add more tags for forced commands (lazily replaced)
- Extract lazy replacement of tags to its own class
- Implement wrapper to replace a String property within an object
  - Use wrapper in command manager and add new tags

* Make argument type generic in lazy tags util
2017-01-29 13:54:37 +01:00
ljacqu
12566f03ef Fix country code link in config comment 2017-01-29 12:40:20 +01:00
ljacqu
56017c81d0 Minor - don't perform registration settings migration if old path doesn't exist
- Migration was otherwise performed if config.yml was blank, which produces confusing output
2017-01-22 13:14:26 +01:00
ljacqu
367380265e #1015 Distinguish player-dependent tags from "simple" tags 2017-01-22 10:52:51 +01:00
ljacqu
811bdee128 #1015 Implement lazy replace of tags for welcome message
- Check which tags are used when loading the welcome message and only apply their replacements afterwards
- Moves AuthMe#replaceAllInfo to a more appropriate place
- Avoid fetching data again for each line
2017-01-22 10:52:51 +01:00
Gabriele C
26194d676d #1063 Add useSSL option 2017-01-14 22:14:37 +01:00
hsombini
4d4e6b43fb Email address field for email servers that does not use email as the auth username 2017-01-07 15:47:24 -02:00
ljacqu
47e6cc4885 #1044 Fix custom join message feature; change default to empty string 2017-01-07 11:34:58 +01:00
ljacqu
deb5c65f89 #1055 Add link to Wiki registration page in config, update translations page 2017-01-07 11:08:45 +01:00
ljacqu
385f7d6b1d #1055 Remove multiple "please register" messages
Part 1:
- Use only one message entry for "Please register", that may have to be adapted to reflect the proper /register arguments
- Remove other message entries from code and from the messages files

Breaking change: reg_email_msg is also removed
2017-01-07 09:01:03 +01:00
Gabriele C
dcf046dfc5 Add option "customJoinMessage" #1044 2017-01-05 01:39:24 +01:00
ljacqu
429088a42f commands.yml: Fix executor property name in comments 2017-01-02 16:32:24 +01:00
ljacqu
0b4d7273f6 #427 Define registration type with two options - one configuring the 2nd argument
- Split sole setting to two: one defining the registration type, and one defining what the register command should take as second argument
- Contains ugly code that will be fixed with a later issue
2016-12-31 15:34:40 +01:00
ljacqu
e905ff3013 #427 Make email option for /register [pass] [email] variant 2016-12-27 15:37:52 +01:00
ljacqu
d717f75bb4 #1014 Use ConfigMe improvements to create custom Enum set property 2016-12-23 23:51:23 +01:00
ljacqu
9ce680f56e Merge remote-tracking branch 'origin/master' 2016-12-23 23:22:19 +01:00
ljacqu
5f8a19223f Update ConfigMe and Mockito version 2016-12-23 23:22:05 +01:00
koca2000
4a2e0d4216 #427 Add message entry for each registration type
* Added message for /register password email
* Added messages for /register password and /register email commands
2016-12-23 14:39:43 +01:00
ljacqu
a52fb95656 #427 Implement /register [pass] [email] variant 2016-12-17 15:09:31 +01:00
ljacqu
f9acb3cca1 #427 Replace registration settings with one registration type property
- Merge "useEmail" / "usePasswordConfirmation" / "useEmailConfirmation" settings into enum property
- Migrate old settings
2016-12-15 22:36:54 +01:00
ljacqu
2bd5fcde3c Merge branch 'master' of https://github.com/AuthMe-Team/AuthMeReloaded into 411-forced-commands 2016-11-28 21:57:09 +01:00