196 Commits

Author SHA1 Message Date
EbonJaguar
7d4bfcd99d - Introduce /email code
- Add max tries for /email code
- Introduce a PasswordRecoveryService
2017-03-06 13:54:46 -05: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
72c5cfac68 Create Duration class and ExpiringSet#getExpiration (prep for #1073)
- Move expiring collections to util.expiring package
- Change ExpiringSet to remove expired entries during normal calls
2017-02-25 17:25:25 +01:00
ljacqu
4edb4e68c2 #1104 Whitelist sensitive commands also when used with "authme:" prefix 2017-02-21 22:51:45 +01:00
ljacqu
ee51bb3971 Minor cleanups
- Remove forgotten test assertion
- Make utils class final
- Change RandomString to use char array
2017-02-20 22:20:48 +01:00
ljacqu
ca708e23cd #949 Create ExpiringSet, integrate into SessionManager 2017-02-19 09:06:15 +01:00
ljacqu
152d1dc216 #949 Created TimedCounter + implement it in TempbanManager 2017-02-18 22:50:30 +01:00
ljacqu
ef1d006cdf #949 Create expiring map type + integrate it into recovery code service 2017-02-18 21:31:37 +01:00
ljacqu
5ad528d5d9 Fix Javadoc errors (as seen in Jenkins build) 2017-02-04 11:35:43 +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
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
ljacqu
666e242212 Delete CollectionUtils (unused) 2017-01-21 14:47:18 +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
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
7d65d2a7c4 Fix various code issues as detected by Sonar
Mostly minor changes:
- Add deprecated javadoc tag on deprecated members
- Reduce duplication (FlatFile, BackupService, ...)
- Make methods static
- Reduce size of anonymous classes
- Replace name with displayName in PermissionsSystemType (avoids confusing with Enum name())
- Tabs to spaces
- Merge if statements

Code from third-party sources (BCryptService, BinTools, PHPBB) not modified.
2016-11-22 18:20:55 +01:00
ljacqu
72853a382f Initialization cleanup: use provider classes for Settings and DataSource
- Separate provider methods from other tasks performed on startup
  - No longer requires BukkitService to be instantiated manually
- Merge MetricsManager and Initializer into OnStartUpTasks
2016-11-06 18:51:07 +01:00
ljacqu
46af922fba Minor refactoring for tool tasks
- Don't scan for translations on initialization in TranslationPageGenerator in order to speed up startup time of ToolsRunner
- Extract checking for null / empty array of File#listFiles into a separate method
- Move single method of RuntimeUtils into Utils class
2016-10-30 10:43:59 +01:00
ljacqu
755f3df33e #768 Create command for updating messages file 2016-10-10 22:36:14 +02:00
Gabriele C
700ab5f3e4 Cleanup 2016-10-09 23:46:07 +02:00
Gabriele C
58c42cf300 Package cleanup
- authme.cache to authme.data
- Rename PlayerData to LimboPlayer to match with LimboCache
- Move authme.converter to authme.datasource.converter
- Split output package into output and message
2016-10-05 21:10:40 +02:00
Gabriele C
f3cd193d47 Move RandomStringUtils 2016-10-04 19:16:06 +02:00
Gabriele C
42dbb27728 Service cleanup 2016-10-04 19:08:18 +02:00
ljacqu
71ac86ff02 Remove StringUtils#join in favor of String#join (Java 8) 2016-10-02 12:44:10 +02:00
ljacqu
6f4a5fee07 Add missing permission to plugin.yml, fix description 2016-10-02 10:48:26 +02:00
Gabriele C
62b8af6a37 Fix #904 (Ljacqu, pls fix me :P) 2016-10-01 23:09:39 +02:00
ljacqu
8d64c0e5bf #830 Initialize login process with more specific methods (with password vs. force login) 2016-10-01 00:48:23 +02:00
ljacqu
4eab258993 #937 Add option for AuthMe to run in sync
- Create BukkitService#runTaskOptionallyAsync and BukkitService#scheduleSyncTaskFromOptionallyAsyncTask whose behavior depends on a new setting
- Use the new methods where applicable
- Declare events async or sync depending on the new setting
2016-09-18 21:58:14 +02:00
ljacqu
bdf8819aa7 Create FileUtils#delete and write tests for FileUtils 2016-09-17 00:42:18 +02:00
ljacqu
bff344ba8f #472 Recovery code: allow to configure length, expiration and email 2016-09-10 16:39:35 +02:00
ljacqu
09f403f357 Merge branch 'master' of https://github.com/AuthMe-Team/AuthMeReloaded into configme-integration
Conflicts:
	pom.xml
2016-09-04 15:25:58 +02:00
ljacqu
589e589e45 #933 Add MySQL to SQLite converter
- Create common parent for converting from one datasource type to another
- Add MySQL to SQLite child
- Create tests
2016-09-04 13:59:23 +02:00
ljacqu
b8153c2578 Merge branch 'master' of https://github.com/AuthMe-Team/AuthMeReloaded into configme-integration 2016-09-03 10:31:05 +02:00
Gabriele C
9fa5f2beea Mysql CP performance enhancements 2016-09-02 15:48:58 +02:00
ljacqu
c7bb7b460e #927 Integrate ConfigMe into AuthMe (work in progress)
- Replace own code with ConfigMe
2016-08-30 15:28:07 +02:00
ljacqu
ceb503469f Merge branch 'master' of https://github.com/AuthMe-Team/AuthMeReloaded into misc-changes 2016-08-18 17:55:33 +02:00
ljacqu
e261650b45 #902 #867 Remove "limboplayer is null" logger statement 2016-08-13 17:33:45 +02:00
ljacqu
02ca2d18b9 Move more complex initializations from main class to Initializer helper (tentative) 2016-08-12 22:04:56 +02:00
ljacqu
5d2da7bd82 Trivial code householding 2016-08-12 18:36:35 +02:00
ljacqu
8002ef45fd Teleportation needs to be scheduled in sync
- Revert removal of sync scheduled task for teleportation
- Add back listener properties from 5d6f3e1 since they don't interfere
2016-08-04 19:08:05 +02:00
ljacqu
3534f680f7 Fix unit tests 2016-08-04 18:25:43 +02:00
Gabriele C
54c2d3e6e9 Fix 1.7 (pre UUID) compatibility 2016-08-04 12:01:30 +02:00
Gabriele C
5d6f3e1f06 Cleanup + fix some teleport behaviour 2016-08-04 11:28:03 +02:00
ljacqu
4aad1d506c #831 Implement single session by canceling kicks caused by same name joining
- A little less nice, but works on both CraftBukkit and Spigot
- Remove obsolete warning
2016-08-03 21:31:40 +02:00
ljacqu
80337f758b #831 Cleanup, finalization
- Handle AsyncPlayerPreLoginEvent in main PlayerListener class: Spigot emits it in offline mode, whereas offline CraftBukkit doesn't
- Remove listener for sync PlayerPreLoginEvent; not fired by offline CraftBukkit either
- Add warning when offline CraftBukkit is detected and single session setting is enabled
2016-08-03 19:58:10 +02:00
Gabriele C
e2d20caf16 Whoops, wrong place! (Damn eclipse class tree XD) 2016-08-03 01:06:34 +02:00
ljacqu
19de5a0525 Close #449 Rename NewSetting class to Settings :) 2016-07-23 15:50:40 +02:00
ljacqu
18a9fbaa26 #449 Migrate remaining non-group legacy Settings 2016-07-23 14:44:52 +02:00
ljacqu
8fcb651ebb Merge branch '784-purgeservice-architecture' of https://github.com/AuthMe-Team/AuthMeReloaded 2016-07-20 21:31:25 +02:00
ljacqu
86df740491 #862 Check that LimboPlayer is not null on login (TeleportationService) 2016-07-20 19:10:27 +02:00