161 Commits

Author SHA1 Message Date
ljacqu
7864bb06ac Minor cleanups
- Fix line length violations
- Add JavaDoc to some longer methods
- Remove unused imports
2018-02-23 23:23:24 +01:00
sgdc3
a92084ec60 Fix the deploy system 2018-01-29 15:08:59 +01:00
ljacqu
6f2c586441 Test initialization of permission handlers in PermissionManager 2018-01-21 22:11:47 +01:00
Gabriele C
779c4a2b33 Fix build 2017-12-19 10:53:07 +01:00
ljacqu
50dbbb8d87 #1254 Create command to see recently logged in players
- Create datasource method to fetch most recent players by last login date
- Add command to view last logged in players
2017-11-28 21:07:10 +01:00
ljacqu
44a7baff9a #1350 Add option to force using the sync PlayerLoginEvent
- Introduce new configuration (taken from @sgdc3)
- Create JoiningPlayer, based on a Player object or String name, determining how permissions will be checked
2017-11-01 21:02:22 +01:00
Gabriele C
a5542051f4 Add a way to load user's permission data from the permission handler on demand.
#1350
2017-10-29 19:35:23 +01:00
Gabriele C
d8d87c8b67 Add option to force using the generic Vault permission handler hook
Requested in #1350
2017-10-29 11:47:38 +01:00
HexelDev
ba65633182 Email verification code (#1382)
* Base verification code implementation, must define command, manager, events
* VerificationManager, verification command and messages, handled some sensible commands, configuration values
* Improved manager and sensible commands trigger
* Updated messages
* Updated verification code manager, fixed tests
* Switched to a permission based command
* Verification manager and command improved and added tests
* Edited messages
2017-10-28 12:23:14 +02:00
ljacqu
d6e2369f36 #792 Force migration of SQLite when necessary (#1371)
- Detect if a migration is necessary
- Create a backup
- Perform the migration
2017-10-22 09:16:48 +02:00
ljacqu
1651a61063 #792 #814 Implement SQLite migration, allow last IP to be nullable in MySQL
- Old SQLite setups have the last IP column as NOT NULL but without a default value. With the new concept (where we don't set a last IP on player registration) it fails.
  - Create an /authme debug child that allows to migrate SQLite (tricky because SQLite does not support dropping or modifying columns)
  - Allow last IP column to be NOT NULL in MySQL as well (extend MySQL /authme debug child)
- Add TODO comments with follow-up issue to extend our commands with new registration IP field
2017-10-21 10:45:48 +02:00
ljacqu
1df5308e56 #792 #814 Create command to remove NOT NULL constraints
- Create command under /authme debug that allows to change the 'nullable' status of MySQL columns (currently last date and email only)
   - We need to offer a default value for forum integrations that have a NOT NULL email column. Offering a command avoids us from force-migrating existing databases while still offering migrations in both directions
- Change in default value handling: lack of values are not handled by setting default values to the PlayerAuth anymore, and reading a default value from the database into a PlayerAuth will be translated into null by the PlayerAuth builder
- When a new database is created, email and lastlogin are now nullable and lack a default a value

Open points:
- Finish MySqlDefaultChangerTest
- Revise purging logic (#792)
- Allow to have more columns nullable (#814)
2017-10-15 12:56:13 +02:00
Gabriele C
fafbef6be7 Prevent another deadlock in LuckPermsHandler #1350 2017-10-09 09:05:09 +02:00
Gabriele C
45dda0deba Prevent deadlock in LuckPermsHandler #1350 2017-10-09 09:02:14 +02:00
sgdc3
920e65c4f4 Codestyle cleanup 2017-09-27 15:16:33 +02:00
Gabriele C
9392291b36 Fix luckperms permission check 2017-09-14 21:03:08 +02:00
Gabriele C
a5466a8937 Fix luckperms user cleanup 2017-09-14 20:50:09 +02:00
Gabriele C
f754331de6 Implement LuckPerms permission handler
#1324
2017-09-14 20:39:15 +02:00
Gabriele C
2fbdd46919 #1298 Make permission manager accept OfflinePlayers + fix permission purge 2017-09-03 02:07:00 +02:00
Gabriele C
72da27e734 Fix #1324 2017-09-03 01:04:05 +02:00
Gabriele C
97f580d9ec Fix permission node description 2017-09-02 12:26:03 +02:00
Gabriele C
6b875a9ba4 Add permission to bypass country check (#1323)
* Add permission to bypass country check

#1321 Still need to fix unit tests

* Fix test
2017-08-31 19:36:57 +02:00
Gabriele C
b96ae61697 Remove some old plugin hooks, update dependencies 2017-08-31 11:47:55 +02:00
HexelDev
1dfb3575b5 #1119 email show permission and privacy improvements (#1312)
* #1119 new permission and email hider

* Updated commands.md

* Improved email hiding method

* Revert "Improved email hiding method"

This reverts commit cb60d7b

* New config option, updated tests, config.md and permission_nodes.md

* Moved to service import, fixed typo and updated config.md

* Removed unused imports O.o
2017-08-12 16:20:06 +02:00
ljacqu
f150668fc1 Minor - remove unused imports
- As determined by CodeClimate
2017-07-02 11:00:17 +02:00
Gabriele C
c758e15cd7 Store the entire player's list of groups instead of primary group 2017-07-01 19:18:42 +02:00
ljacqu
1f8307c8f6 Fix minor checkstyle issues
- Add JavaDoc where checkstyle expects it
- Fix line too long issues
- ...
2017-05-07 11:59:01 +02:00
ljacqu
e0e4cd112d #761 Restore permission group in sync with limbo players
- Couple AuthGroupHandler closer to the LimboService: whenever a limbo player is restored, the auth group should be restored as well. This fixes some consistency issues.
- Move AuthGroupHandler into limbo package and make it package-private
- Change permission handler to skip any empty groups (prevents odd command output e.g. for BukkitPermissions)
2017-04-29 22:37:34 +02:00
ljacqu
578f63b944 #923 Create /authme purgeplayer command
- Create command to purge a specific player name
- Update docs
2017-04-29 18:31:37 +02:00
ljacqu
0e923b6a70 #1180 Create command for performing a backup 2017-04-23 20:23:40 +02:00
ljacqu
2a747c7d01 #1034 Create permissions for debug sections
- Add an individual permission for each debug section (including wildcard perm)
- Create test for DebugCommand
- Refactor tests for the enum permission nodes to use the same abstract class
- Update related project files (plugin.yml, permission docs, command docs)
2017-04-14 19:54:17 +02:00
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
ljacqu
22ccf582b8 #1113 Create LimboService (work in progress)
- Introduce new LimboService with a higher level abstraction for outside classes to trigger LimboPlayer actions
- Add methods to LimboPlayerTaskManager for muting the MessagesTask safely
2017-03-05 19:25:35 +01:00
ljacqu
8aa573b9ed Minor fixes as found by Checkstyle 2017-03-05 10:58:29 +01:00
ljacqu
7c1a9062ba #761 Simplify auth group handling 2017-02-15 20:05:14 +01:00
ljacqu
2b1a97e959 #761 Fix removal and restoration of primary permission group
- Improve how a player is being switched between permission groups (add new group before removing old one)
- Remove group handling logic from LimboCache: AuthGroupHandler is now solely responsible for changing the player's permission group
2017-02-05 13:12:04 +01:00
ljacqu
24162ad94b #1034 Create debug command structure + utility to see permission groups
- Relevant to current work... :)
2017-01-29 19:47:14 +01:00
ljacqu
350ef9b5e6 PermissionHandlers: add default methods for trivial duplications
- Add easy default methods on PermissionHandler interface (override whenever there's a better way!)
- Change getGroups() signature to return a Collection instead of a List
2017-01-29 18:16:17 +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
Xephi59
de97c60b5d FixMe from Gnat008 : Add PermissionsBukkit groups support 2016-12-20 21:35:26 +01:00
ljacqu
5ec1c3fe24 #1018 Load group names when AuthGroupHandler is constructed 2016-11-26 16:34:14 +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
Gabriele C
dd9ac75f3a #916 Fix authme.vip node description 2016-10-23 15:39:53 +02:00
ljacqu
1d11824367 #293 Translatable help - show translated description of child commands
- Show translated command descriptions when available
- Fix bug where localized command is registered on the parent each time

Thanks to @Maxetto
2016-10-18 19:47:57 +02:00
ljacqu
77d4f4b24d #768 Adjust to ConfigMe 0.2 and restrict command with permission 2016-10-16 21:40:59 +02:00
ljacqu
c30e7acdc5 Merge branch 'master' of https://github.com/AuthMe-Team/AuthMeReloaded into 293-translate-help-messages
Conflicts:
	src/main/java/fr/xephi/authme/command/help/HelpProvider.java
2016-10-07 19:11:49 +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
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
f6a2b2b34b #293 Translatable help messages: basic structure
(work in progress)
- Create service that provides localized messages when available for HelpProvider
2016-10-01 14:42:49 +02:00