mirror of
https://github.com/AuthMe/AuthMeReloaded.git
synced 2025-01-03 06:27:33 +01:00
#923 Create /authme purgeplayer command
- Create command to purge a specific player name - Update docs
This commit is contained in:
parent
88d839cab4
commit
578f63b944
@ -1,5 +1,5 @@
|
|||||||
<!-- AUTO-GENERATED FILE! Do not edit this directly -->
|
<!-- AUTO-GENERATED FILE! Do not edit this directly -->
|
||||||
<!-- File auto-generated on Sun Apr 23 19:29:43 CEST 2017. See docs/commands/commands.tpl.md -->
|
<!-- File auto-generated on Sat Apr 29 18:27:38 CEST 2017. See docs/commands/commands.tpl.md -->
|
||||||
|
|
||||||
## AuthMe Commands
|
## AuthMe Commands
|
||||||
You can use the following commands to use the features of AuthMe. Mandatory arguments are marked with `< >`
|
You can use the following commands to use the features of AuthMe. Mandatory arguments are marked with `< >`
|
||||||
@ -34,6 +34,8 @@ brackets; optional arguments are enclosed in square brackets (`[ ]`).
|
|||||||
<br />Requires `authme.admin.setfirstspawn`
|
<br />Requires `authme.admin.setfirstspawn`
|
||||||
- **/authme purge** <days> [all]: Purge old AuthMeReloaded data longer than the specified number of days ago.
|
- **/authme purge** <days> [all]: Purge old AuthMeReloaded data longer than the specified number of days ago.
|
||||||
<br />Requires `authme.admin.purge`
|
<br />Requires `authme.admin.purge`
|
||||||
|
- **/authme purgeplayer** <player> [options]: Purges data of the given player.
|
||||||
|
<br />Requires `authme.admin.purgeplayer`
|
||||||
- **/authme backup**: Creates a backup of the registered users.
|
- **/authme backup**: Creates a backup of the registered users.
|
||||||
<br />Requires `authme.admin.backup`
|
<br />Requires `authme.admin.backup`
|
||||||
- **/authme resetpos** <player/*>: Purge the last know position of the specified player or all of them.
|
- **/authme resetpos** <player/*>: Purge the last know position of the specified player or all of them.
|
||||||
@ -87,4 +89,4 @@ brackets; optional arguments are enclosed in square brackets (`[ ]`).
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
This page was automatically generated on the [AuthMe/AuthMeReloaded repository](https://github.com/AuthMe/AuthMeReloaded/tree/master/docs/) on Sun Apr 23 19:29:43 CEST 2017
|
This page was automatically generated on the [AuthMe/AuthMeReloaded repository](https://github.com/AuthMe/AuthMeReloaded/tree/master/docs/) on Sat Apr 29 18:27:38 CEST 2017
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<!-- AUTO-GENERATED FILE! Do not edit this directly -->
|
<!-- AUTO-GENERATED FILE! Do not edit this directly -->
|
||||||
<!-- File auto-generated on Sun Apr 23 19:30:08 CEST 2017. See docs/config/config.tpl.md -->
|
<!-- File auto-generated on Sat Apr 29 18:27:38 CEST 2017. See docs/config/config.tpl.md -->
|
||||||
|
|
||||||
## AuthMe Configuration
|
## AuthMe Configuration
|
||||||
The first time you run AuthMe it will create a config.yml file in the plugins/AuthMe folder,
|
The first time you run AuthMe it will create a config.yml file in the plugins/AuthMe folder,
|
||||||
@ -52,6 +52,10 @@ DataSource:
|
|||||||
mySQLlastlocZ: 'z'
|
mySQLlastlocZ: 'z'
|
||||||
# Column for storing player LastLocation - World Name
|
# Column for storing player LastLocation - World Name
|
||||||
mySQLlastlocWorld: 'world'
|
mySQLlastlocWorld: 'world'
|
||||||
|
# Column for storing player LastLocation - Yaw
|
||||||
|
mySQLlastlocYaw: 'yaw'
|
||||||
|
# Column for storing player LastLocation - Pitch
|
||||||
|
mySQLlastlocPitch: 'pitch'
|
||||||
# Overrides the size of the DB Connection Pool, -1 = Auto
|
# Overrides the size of the DB Connection Pool, -1 = Auto
|
||||||
poolSize: -1
|
poolSize: -1
|
||||||
ExternalBoardOptions:
|
ExternalBoardOptions:
|
||||||
@ -390,7 +394,7 @@ Purge:
|
|||||||
removePlayerDat: false
|
removePlayerDat: false
|
||||||
# Do we need to remove the Essentials/userdata/player.yml file during purge process?
|
# Do we need to remove the Essentials/userdata/player.yml file during purge process?
|
||||||
removeEssentialsFile: false
|
removeEssentialsFile: false
|
||||||
# World where are players.dat stores
|
# World in which the players.dat are stored
|
||||||
defaultWorld: 'world'
|
defaultWorld: 'world'
|
||||||
# Remove LimitedCreative/inventories/player.yml, player_creative.yml files during purge?
|
# Remove LimitedCreative/inventories/player.yml, player_creative.yml files during purge?
|
||||||
removeLimitedCreativesInventories: false
|
removeLimitedCreativesInventories: false
|
||||||
@ -507,4 +511,4 @@ To change settings on a running server, save your changes to config.yml and use
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
This page was automatically generated on the [AuthMe/AuthMeReloaded repository](https://github.com/AuthMe/AuthMeReloaded/tree/master/docs/) on Sun Apr 23 19:30:08 CEST 2017
|
This page was automatically generated on the [AuthMe/AuthMeReloaded repository](https://github.com/AuthMe/AuthMeReloaded/tree/master/docs/) on Sat Apr 29 18:27:38 CEST 2017
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<!-- AUTO-GENERATED FILE! Do not edit this directly -->
|
<!-- AUTO-GENERATED FILE! Do not edit this directly -->
|
||||||
<!-- File auto-generated on Fri Apr 14 01:40:05 CEST 2017. See docs/hashmethods/hash_algorithms.tpl.md -->
|
<!-- File auto-generated on Sat Apr 29 18:27:40 CEST 2017. See docs/hashmethods/hash_algorithms.tpl.md -->
|
||||||
|
|
||||||
## Hash Algorithms
|
## Hash Algorithms
|
||||||
AuthMe supports the following hash algorithms for storing your passwords safely.
|
AuthMe supports the following hash algorithms for storing your passwords safely.
|
||||||
@ -7,7 +7,7 @@ AuthMe supports the following hash algorithms for storing your passwords safely.
|
|||||||
|
|
||||||
Algorithm | Recommendation | Hash length | ASCII | | Salt type | Length | Separate?
|
Algorithm | Recommendation | Hash length | ASCII | | Salt type | Length | Separate?
|
||||||
--------- | -------------- | ----------- | ----- | --- | --------- | ------ | ---------
|
--------- | -------------- | ----------- | ----- | --- | --------- | ------ | ---------
|
||||||
ARGON2 | Recommended | 96 | | | None | |
|
ARGON2 | Recommended | 96 | | | Text | 16 |
|
||||||
BCRYPT | Recommended | 60 | | | Text | |
|
BCRYPT | Recommended | 60 | | | Text | |
|
||||||
BCRYPT2Y | Recommended | 60 | | | Text | 22 |
|
BCRYPT2Y | Recommended | 60 | | | Text | 22 |
|
||||||
CRAZYCRYPT1 | Do not use | 128 | | | Username | |
|
CRAZYCRYPT1 | Do not use | 128 | | | Username | |
|
||||||
@ -83,4 +83,4 @@ or bad.
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
This page was automatically generated on the [AuthMe/AuthMeReloaded repository](https://github.com/AuthMe/AuthMeReloaded/tree/master/docs/) on Fri Apr 14 01:40:05 CEST 2017
|
This page was automatically generated on the [AuthMe/AuthMeReloaded repository](https://github.com/AuthMe/AuthMeReloaded/tree/master/docs/) on Sat Apr 29 18:27:40 CEST 2017
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<!-- AUTO-GENERATED FILE! Do not edit this directly -->
|
<!-- AUTO-GENERATED FILE! Do not edit this directly -->
|
||||||
<!-- File auto-generated on Sun Apr 23 19:32:06 CEST 2017. See docs/permissions/permission_nodes.tpl.md -->
|
<!-- File auto-generated on Sat Apr 29 18:27:41 CEST 2017. See docs/permissions/permission_nodes.tpl.md -->
|
||||||
|
|
||||||
## AuthMe Permission Nodes
|
## AuthMe Permission Nodes
|
||||||
The following are the permission nodes that are currently supported by the latest dev builds.
|
The following are the permission nodes that are currently supported by the latest dev builds.
|
||||||
@ -19,6 +19,7 @@ The following are the permission nodes that are currently supported by the lates
|
|||||||
- **authme.admin.purge** – Administrator command to purge old user data.
|
- **authme.admin.purge** – Administrator command to purge old user data.
|
||||||
- **authme.admin.purgebannedplayers** – Administrator command to purge all data associated with banned players.
|
- **authme.admin.purgebannedplayers** – Administrator command to purge all data associated with banned players.
|
||||||
- **authme.admin.purgelastpos** – Administrator command to purge the last position of a user.
|
- **authme.admin.purgelastpos** – Administrator command to purge the last position of a user.
|
||||||
|
- **authme.admin.purgeplayer** – Administrator command to purge a given player.
|
||||||
- **authme.admin.register** – Administrator command to register a new user.
|
- **authme.admin.register** – Administrator command to register a new user.
|
||||||
- **authme.admin.reload** – Administrator command to reload the plugin configuration.
|
- **authme.admin.reload** – Administrator command to reload the plugin configuration.
|
||||||
- **authme.admin.seeotheraccounts** – Permission to see the other accounts of the players that log in.
|
- **authme.admin.seeotheraccounts** – Permission to see the other accounts of the players that log in.
|
||||||
@ -60,4 +61,4 @@ The following are the permission nodes that are currently supported by the lates
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
This page was automatically generated on the [AuthMe/AuthMeReloaded repository](https://github.com/AuthMe/AuthMeReloaded/tree/master/docs/) on Sun Apr 23 19:32:06 CEST 2017
|
This page was automatically generated on the [AuthMe/AuthMeReloaded repository](https://github.com/AuthMe/AuthMeReloaded/tree/master/docs/) on Sat Apr 29 18:27:41 CEST 2017
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<!-- AUTO-GENERATED FILE! Do not edit this directly -->
|
<!-- AUTO-GENERATED FILE! Do not edit this directly -->
|
||||||
<!-- File auto-generated on Wed Mar 22 23:10:32 CET 2017. See docs/translations/translations.tpl.md -->
|
<!-- File auto-generated on Sat Apr 29 18:27:41 CEST 2017. See docs/translations/translations.tpl.md -->
|
||||||
|
|
||||||
# AuthMe Translations
|
# AuthMe Translations
|
||||||
The following translations are available in AuthMe. Set `messagesLanguage` to the language code
|
The following translations are available in AuthMe. Set `messagesLanguage` to the language code
|
||||||
@ -9,33 +9,34 @@ Code | Language | Translated |
|
|||||||
---- | -------- | ---------: | ------
|
---- | -------- | ---------: | ------
|
||||||
[en](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_en.yml) | English | 100% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=66ff66&w=100&h=5&txtpad=1" alt="bar" />
|
[en](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_en.yml) | English | 100% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=66ff66&w=100&h=5&txtpad=1" alt="bar" />
|
||||||
[bg](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_bg.yml) | Bulgarian | 95% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=77dd44&w=95&h=5&txtpad=1" alt="bar" />
|
[bg](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_bg.yml) | Bulgarian | 95% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=77dd44&w=95&h=5&txtpad=1" alt="bar" />
|
||||||
[br](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_br.yml) | Brazilian | 85% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=99bb22&w=85&h=5&txtpad=1" alt="bar" />
|
[br](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_br.yml) | Brazilian | 100% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=66ff66&w=100&h=5&txtpad=1" alt="bar" />
|
||||||
[cz](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_cz.yml) | Czech | 85% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=99bb22&w=85&h=5&txtpad=1" alt="bar" />
|
[cz](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_cz.yml) | Czech | 85% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=99bb22&w=85&h=5&txtpad=1" alt="bar" />
|
||||||
[de](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_de.yml) | German | 85% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=99bb22&w=85&h=5&txtpad=1" alt="bar" />
|
[de](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_de.yml) | German | 85% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=99bb22&w=85&h=5&txtpad=1" alt="bar" />
|
||||||
[es](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_es.yml) | Spanish | 95% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=77dd44&w=95&h=5&txtpad=1" alt="bar" />
|
[es](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_es.yml) | Spanish | 100% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=66ff66&w=100&h=5&txtpad=1" alt="bar" />
|
||||||
[eu](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_eu.yml) | Basque | 53% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=bb6600&w=53&h=5&txtpad=1" alt="bar" />
|
[eu](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_eu.yml) | Basque | 53% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=bb6600&w=53&h=5&txtpad=1" alt="bar" />
|
||||||
[fi](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_fi.yml) | Finnish | 56% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=bb6600&w=56&h=5&txtpad=1" alt="bar" />
|
[fi](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_fi.yml) | Finnish | 56% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=bb6600&w=56&h=5&txtpad=1" alt="bar" />
|
||||||
[fr](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_fr.yml) | French | 95% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=77dd44&w=95&h=5&txtpad=1" alt="bar" />
|
[fr](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_fr.yml) | French | 95% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=77dd44&w=95&h=5&txtpad=1" alt="bar" />
|
||||||
[gl](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_gl.yml) | Galician | 60% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=bb7700&w=60&h=5&txtpad=1" alt="bar" />
|
[gl](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_gl.yml) | Galician | 60% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=bb7700&w=60&h=5&txtpad=1" alt="bar" />
|
||||||
[hu](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_hu.yml) | Hungarian | 84% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=99bb22&w=84&h=5&txtpad=1" alt="bar" />
|
[hu](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_hu.yml) | Hungarian | 100% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=66ff66&w=100&h=5&txtpad=1" alt="bar" />
|
||||||
[id](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_id.yml) | Indonesian | 60% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=bb7700&w=60&h=5&txtpad=1" alt="bar" />
|
[id](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_id.yml) | Indonesian | 59% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=bb7700&w=59&h=5&txtpad=1" alt="bar" />
|
||||||
[it](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_it.yml) | Italian | 95% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=77dd44&w=95&h=5&txtpad=1" alt="bar" />
|
[it](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_it.yml) | Italian | 100% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=66ff66&w=100&h=5&txtpad=1" alt="bar" />
|
||||||
[ko](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_ko.yml) | Korean | 61% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=bb7700&w=61&h=5&txtpad=1" alt="bar" />
|
[ko](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_ko.yml) | Korean | 60% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=bb7700&w=60&h=5&txtpad=1" alt="bar" />
|
||||||
[lt](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_lt.yml) | Lithuanian | 45% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=aa5500&w=45&h=5&txtpad=1" alt="bar" />
|
[lt](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_lt.yml) | Lithuanian | 45% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=aa5500&w=45&h=5&txtpad=1" alt="bar" />
|
||||||
[nl](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_nl.yml) | Dutch | 85% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=99bb22&w=85&h=5&txtpad=1" alt="bar" />
|
[nl](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_nl.yml) | Dutch | 100% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=66ff66&w=100&h=5&txtpad=1" alt="bar" />
|
||||||
[pl](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_pl.yml) | Polish | 95% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=77dd44&w=95&h=5&txtpad=1" alt="bar" />
|
[pl](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_pl.yml) | Polish | 95% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=77dd44&w=95&h=5&txtpad=1" alt="bar" />
|
||||||
[pt](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_pt.yml) | Portuguese | 95% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=77dd44&w=95&h=5&txtpad=1" alt="bar" />
|
[pt](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_pt.yml) | Portuguese | 100% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=66ff66&w=100&h=5&txtpad=1" alt="bar" />
|
||||||
[ro](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_ro.yml) | Romanian | 84% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=99bb22&w=84&h=5&txtpad=1" alt="bar" />
|
[ro](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_ro.yml) | Romanian | 84% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=99bb22&w=84&h=5&txtpad=1" alt="bar" />
|
||||||
[ru](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_ru.yml) | Russian | 95% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=77dd44&w=95&h=5&txtpad=1" alt="bar" />
|
[ru](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_ru.yml) | Russian | 95% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=77dd44&w=95&h=5&txtpad=1" alt="bar" />
|
||||||
[sk](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_sk.yml) | Slovakian | 39% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=aa4400&w=39&h=5&txtpad=1" alt="bar" />
|
[sk](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_sk.yml) | Slovakian | 39% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=aa4400&w=39&h=5&txtpad=1" alt="bar" />
|
||||||
[tr](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_tr.yml) | Turkish | 95% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=77dd44&w=95&h=5&txtpad=1" alt="bar" />
|
[tr](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_tr.yml) | Turkish | 95% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=77dd44&w=95&h=5&txtpad=1" alt="bar" />
|
||||||
[uk](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_uk.yml) | Ukrainian | 79% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=bb9900&w=79&h=5&txtpad=1" alt="bar" />
|
[uk](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_uk.yml) | Ukrainian | 79% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=bb9900&w=79&h=5&txtpad=1" alt="bar" />
|
||||||
[vn](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_vn.yml) | Vietnamese | 85% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=99bb22&w=85&h=5&txtpad=1" alt="bar" />
|
[vn](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_vn.yml) | Vietnamese | 85% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=99bb22&w=85&h=5&txtpad=1" alt="bar" />
|
||||||
[zhcn](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_zhcn.yml) | Chinese (China) | 95% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=77dd44&w=95&h=5&txtpad=1" alt="bar" />
|
[zhcn](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_zhcn.yml) | Chinese (China) | 100% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=66ff66&w=100&h=5&txtpad=1" alt="bar" />
|
||||||
[zhhk](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_zhhk.yml) | Chinese (Hong Kong) | 69% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=bb8800&w=69&h=5&txtpad=1" alt="bar" />
|
[zhhk](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_zhhk.yml) | Chinese (Hong Kong) | 68% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=bb8800&w=68&h=5&txtpad=1" alt="bar" />
|
||||||
[zhmc](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_zhmc.yml) | Chinese (Macau) | 82% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=aaaa11&w=82&h=5&txtpad=1" alt="bar" />
|
[zhmc](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_zhmc.yml) | Chinese (Macau) | 81% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=aaaa11&w=81&h=5&txtpad=1" alt="bar" />
|
||||||
[zhtw](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_zhtw.yml) | Chinese (Taiwan) | 69% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=bb8800&w=69&h=5&txtpad=1" alt="bar" />
|
[zhtw](https://github.com/AuthMe/AuthMeReloaded/blob/master/src/main/resources/messages/messages_zhtw.yml) | Chinese (Taiwan) | 68% | <img src="https://placeholdit.imgix.net/~text?txtsize=5&bg=bb8800&w=68&h=5&txtpad=1" alt="bar" />
|
||||||
|
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
This page was automatically generated on the [AuthMe/AuthMeReloaded repository](https://github.com/AuthMe/AuthMeReloaded/tree/master/docs/) on Wed Mar 22 23:10:32 CET 2017
|
This page was automatically generated on the [AuthMe/AuthMeReloaded repository](https://github.com/AuthMe/AuthMeReloaded/tree/master/docs/) on Sat Apr 29 18:27:41 CEST 2017
|
||||||
|
@ -16,6 +16,7 @@ import fr.xephi.authme.command.executable.authme.MessagesCommand;
|
|||||||
import fr.xephi.authme.command.executable.authme.PurgeBannedPlayersCommand;
|
import fr.xephi.authme.command.executable.authme.PurgeBannedPlayersCommand;
|
||||||
import fr.xephi.authme.command.executable.authme.PurgeCommand;
|
import fr.xephi.authme.command.executable.authme.PurgeCommand;
|
||||||
import fr.xephi.authme.command.executable.authme.PurgeLastPositionCommand;
|
import fr.xephi.authme.command.executable.authme.PurgeLastPositionCommand;
|
||||||
|
import fr.xephi.authme.command.executable.authme.PurgePlayerCommand;
|
||||||
import fr.xephi.authme.command.executable.authme.RegisterAdminCommand;
|
import fr.xephi.authme.command.executable.authme.RegisterAdminCommand;
|
||||||
import fr.xephi.authme.command.executable.authme.ReloadCommand;
|
import fr.xephi.authme.command.executable.authme.ReloadCommand;
|
||||||
import fr.xephi.authme.command.executable.authme.SetEmailCommand;
|
import fr.xephi.authme.command.executable.authme.SetEmailCommand;
|
||||||
@ -234,6 +235,18 @@ public class CommandInitializer {
|
|||||||
.executableCommand(PurgeCommand.class)
|
.executableCommand(PurgeCommand.class)
|
||||||
.register();
|
.register();
|
||||||
|
|
||||||
|
// Purge player command
|
||||||
|
CommandDescription.builder()
|
||||||
|
.parent(AUTHME_BASE)
|
||||||
|
.labels("purgeplayer")
|
||||||
|
.description("Purges the data of one player")
|
||||||
|
.detailedDescription("Purges data of the given player.")
|
||||||
|
.withArgument("player", "The player to purge", false)
|
||||||
|
.withArgument("options", "'force' to run without checking if player is registered", true)
|
||||||
|
.permission(AdminPermission.PURGE_PLAYER)
|
||||||
|
.executableCommand(PurgePlayerCommand.class)
|
||||||
|
.register();
|
||||||
|
|
||||||
// Backup command
|
// Backup command
|
||||||
CommandDescription.builder()
|
CommandDescription.builder()
|
||||||
.parent(AUTHME_BASE)
|
.parent(AUTHME_BASE)
|
||||||
|
@ -0,0 +1,46 @@
|
|||||||
|
package fr.xephi.authme.command.executable.authme;
|
||||||
|
|
||||||
|
import fr.xephi.authme.command.ExecutableCommand;
|
||||||
|
import fr.xephi.authme.datasource.DataSource;
|
||||||
|
import fr.xephi.authme.service.BukkitService;
|
||||||
|
import fr.xephi.authme.task.purge.PurgeExecutor;
|
||||||
|
import org.bukkit.OfflinePlayer;
|
||||||
|
import org.bukkit.command.CommandSender;
|
||||||
|
|
||||||
|
import javax.inject.Inject;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import static java.util.Collections.singletonList;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Command to purge a player.
|
||||||
|
*/
|
||||||
|
public class PurgePlayerCommand implements ExecutableCommand {
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
private PurgeExecutor purgeExecutor;
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
private BukkitService bukkitService;
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
private DataSource dataSource;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void executeCommand(CommandSender sender, List<String> arguments) {
|
||||||
|
String option = arguments.size() > 1 ? arguments.get(1) : null;
|
||||||
|
bukkitService.runTaskOptionallyAsync(
|
||||||
|
() -> executeCommand(sender, arguments.get(0), option));
|
||||||
|
}
|
||||||
|
|
||||||
|
private void executeCommand(CommandSender sender, String name, String option) {
|
||||||
|
if ("force".equals(option) || !dataSource.isAuthAvailable(name)) {
|
||||||
|
OfflinePlayer offlinePlayer = bukkitService.getOfflinePlayer(name);
|
||||||
|
purgeExecutor.executePurge(singletonList(offlinePlayer), singletonList(name.toLowerCase()));
|
||||||
|
sender.sendMessage("Purged data for player " + name);
|
||||||
|
} else {
|
||||||
|
sender.sendMessage("This player is still registered! Are you sure you want to proceed? "
|
||||||
|
+ "Use '/authme purgeplayer " + name + " force' to run the command anyway");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -85,6 +85,11 @@ public enum AdminPermission implements PermissionNode {
|
|||||||
*/
|
*/
|
||||||
PURGE_BANNED_PLAYERS("authme.admin.purgebannedplayers"),
|
PURGE_BANNED_PLAYERS("authme.admin.purgebannedplayers"),
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Administrator command to purge a given player.
|
||||||
|
*/
|
||||||
|
PURGE_PLAYER("authme.admin.purgeplayer"),
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Administrator command to toggle the AntiBot protection status.
|
* Administrator command to toggle the AntiBot protection status.
|
||||||
*/
|
*/
|
||||||
|
@ -198,6 +198,23 @@ public class BukkitService implements SettingsDependent {
|
|||||||
return authMe.getServer().getPlayerExact(name);
|
return authMe.getServer().getPlayerExact(name);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the player by the given name, regardless if they are offline or
|
||||||
|
* online.
|
||||||
|
* <p>
|
||||||
|
* This method may involve a blocking web request to get the UUID for the
|
||||||
|
* given name.
|
||||||
|
* <p>
|
||||||
|
* This will return an object even if the player does not exist. To this
|
||||||
|
* method, all players will exist.
|
||||||
|
*
|
||||||
|
* @param name the name the player to retrieve
|
||||||
|
* @return an offline player
|
||||||
|
*/
|
||||||
|
public OfflinePlayer getOfflinePlayer(String name) {
|
||||||
|
return authMe.getServer().getOfflinePlayer(name);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Gets a set containing all banned players.
|
* Gets a set containing all banned players.
|
||||||
*
|
*
|
||||||
|
@ -24,7 +24,7 @@ public final class PurgeSettings implements SettingsHolder {
|
|||||||
public static final Property<Boolean> REMOVE_ESSENTIALS_FILES =
|
public static final Property<Boolean> REMOVE_ESSENTIALS_FILES =
|
||||||
newProperty("Purge.removeEssentialsFile", false);
|
newProperty("Purge.removeEssentialsFile", false);
|
||||||
|
|
||||||
@Comment("World where are players.dat stores")
|
@Comment("World in which the players.dat are stored")
|
||||||
public static final Property<String> DEFAULT_WORLD =
|
public static final Property<String> DEFAULT_WORLD =
|
||||||
newProperty("Purge.defaultWorld", "world");
|
newProperty("Purge.defaultWorld", "world");
|
||||||
|
|
||||||
|
@ -21,7 +21,7 @@ import static fr.xephi.authme.util.FileUtils.makePath;
|
|||||||
/**
|
/**
|
||||||
* Executes the purge operations.
|
* Executes the purge operations.
|
||||||
*/
|
*/
|
||||||
class PurgeExecutor {
|
public class PurgeExecutor {
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
private Settings settings;
|
private Settings settings;
|
||||||
|
@ -17,7 +17,7 @@ softdepend:
|
|||||||
commands:
|
commands:
|
||||||
authme:
|
authme:
|
||||||
description: AuthMe op commands
|
description: AuthMe op commands
|
||||||
usage: /authme register|unregister|forcelogin|password|lastlogin|accounts|email|setemail|getip|spawn|setspawn|firstspawn|setfirstspawn|purge|backup|resetpos|purgebannedplayers|switchantibot|reload|version|converter|messages|debug
|
usage: /authme register|unregister|forcelogin|password|lastlogin|accounts|email|setemail|getip|spawn|setspawn|firstspawn|setfirstspawn|purge|purgeplayer|backup|resetpos|purgebannedplayers|switchantibot|reload|version|converter|messages|debug
|
||||||
login:
|
login:
|
||||||
description: Login command
|
description: Login command
|
||||||
usage: /login <password>
|
usage: /login <password>
|
||||||
@ -67,6 +67,7 @@ permissions:
|
|||||||
authme.admin.purge: true
|
authme.admin.purge: true
|
||||||
authme.admin.purgebannedplayers: true
|
authme.admin.purgebannedplayers: true
|
||||||
authme.admin.purgelastpos: true
|
authme.admin.purgelastpos: true
|
||||||
|
authme.admin.purgeplayer: true
|
||||||
authme.admin.register: true
|
authme.admin.register: true
|
||||||
authme.admin.reload: true
|
authme.admin.reload: true
|
||||||
authme.admin.seeotheraccounts: true
|
authme.admin.seeotheraccounts: true
|
||||||
@ -118,6 +119,9 @@ permissions:
|
|||||||
authme.admin.purgelastpos:
|
authme.admin.purgelastpos:
|
||||||
description: Administrator command to purge the last position of a user.
|
description: Administrator command to purge the last position of a user.
|
||||||
default: op
|
default: op
|
||||||
|
authme.admin.purgeplayer:
|
||||||
|
description: Administrator command to purge a given player.
|
||||||
|
default: op
|
||||||
authme.admin.register:
|
authme.admin.register:
|
||||||
description: Administrator command to register a new user.
|
description: Administrator command to register a new user.
|
||||||
default: op
|
default: op
|
||||||
|
@ -0,0 +1,91 @@
|
|||||||
|
package fr.xephi.authme.command.executable.authme;
|
||||||
|
|
||||||
|
import fr.xephi.authme.datasource.DataSource;
|
||||||
|
import fr.xephi.authme.service.BukkitService;
|
||||||
|
import fr.xephi.authme.task.purge.PurgeExecutor;
|
||||||
|
import org.bukkit.OfflinePlayer;
|
||||||
|
import org.bukkit.command.CommandSender;
|
||||||
|
import org.junit.Test;
|
||||||
|
import org.junit.runner.RunWith;
|
||||||
|
import org.mockito.InjectMocks;
|
||||||
|
import org.mockito.Mock;
|
||||||
|
import org.mockito.junit.MockitoJUnitRunner;
|
||||||
|
|
||||||
|
import static fr.xephi.authme.TestHelper.runOptionallyAsyncTask;
|
||||||
|
import static java.util.Arrays.asList;
|
||||||
|
import static java.util.Collections.singletonList;
|
||||||
|
import static org.hamcrest.Matchers.containsString;
|
||||||
|
import static org.mockito.BDDMockito.given;
|
||||||
|
import static org.mockito.Mockito.mock;
|
||||||
|
import static org.mockito.Mockito.verify;
|
||||||
|
import static org.mockito.Mockito.verifyZeroInteractions;
|
||||||
|
import static org.mockito.hamcrest.MockitoHamcrest.argThat;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Test for {@link PurgePlayerCommand}.
|
||||||
|
*/
|
||||||
|
@RunWith(MockitoJUnitRunner.class)
|
||||||
|
public class PurgePlayerCommandTest {
|
||||||
|
|
||||||
|
@InjectMocks
|
||||||
|
private PurgePlayerCommand command;
|
||||||
|
|
||||||
|
@Mock
|
||||||
|
private BukkitService bukkitService;
|
||||||
|
|
||||||
|
@Mock
|
||||||
|
private PurgeExecutor purgeExecutor;
|
||||||
|
|
||||||
|
@Mock
|
||||||
|
private DataSource dataSource;
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void shouldNotExecutePurgeForRegisteredPlayer() {
|
||||||
|
// given
|
||||||
|
String name = "Bobby";
|
||||||
|
given(dataSource.isAuthAvailable(name)).willReturn(true);
|
||||||
|
CommandSender sender = mock(CommandSender.class);
|
||||||
|
|
||||||
|
// when
|
||||||
|
command.executeCommand(sender, singletonList(name));
|
||||||
|
runOptionallyAsyncTask(bukkitService);
|
||||||
|
|
||||||
|
// then
|
||||||
|
verify(sender).sendMessage(argThat(containsString("This player is still registered")));
|
||||||
|
verifyZeroInteractions(purgeExecutor);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void shouldExecutePurge() {
|
||||||
|
// given
|
||||||
|
String name = "Frank";
|
||||||
|
given(dataSource.isAuthAvailable(name)).willReturn(false);
|
||||||
|
OfflinePlayer player = mock(OfflinePlayer.class);
|
||||||
|
given(bukkitService.getOfflinePlayer(name)).willReturn(player);
|
||||||
|
CommandSender sender = mock(CommandSender.class);
|
||||||
|
|
||||||
|
// when
|
||||||
|
command.executeCommand(sender, singletonList(name));
|
||||||
|
runOptionallyAsyncTask(bukkitService);
|
||||||
|
|
||||||
|
// then
|
||||||
|
verify(dataSource).isAuthAvailable(name);
|
||||||
|
verify(purgeExecutor).executePurge(singletonList(player), singletonList(name.toLowerCase()));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void shouldExecutePurgeOfRegisteredPlayer() {
|
||||||
|
// given
|
||||||
|
String name = "GhiJKlmn7";
|
||||||
|
OfflinePlayer player = mock(OfflinePlayer.class);
|
||||||
|
given(bukkitService.getOfflinePlayer(name)).willReturn(player);
|
||||||
|
CommandSender sender = mock(CommandSender.class);
|
||||||
|
|
||||||
|
// when
|
||||||
|
command.executeCommand(sender, asList(name, "force"));
|
||||||
|
runOptionallyAsyncTask(bukkitService);
|
||||||
|
|
||||||
|
// then
|
||||||
|
verify(purgeExecutor).executePurge(singletonList(player), singletonList(name.toLowerCase()));
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user