Commit graph

60 commits

Author SHA1 Message Date
VigersRay
b69da53ac3 Поддержка телеграм авторизации. 2024-10-10 19:43:55 +03:00
VigersRay
aa38c32b65 upstream 2024-09-16 12:40:23 +03:00
Winkarst
88dcc831c1
Remove calls to FormattedMessage obsolete methods (#31706)
* Remove FormattedMessage obsolete methods

* Oops
2024-09-01 13:00:53 +02:00
VigersRay
d86b4d271c фиксы апстрима и не только 2024-08-22 07:45:57 +03:00
VigersRay
0441b8b814 Merge remote-tracking branch 'refs/remotes/wizards/master'
# Conflicts:
#	Content.Client/Launcher/LauncherConnecting.cs
#	Content.Client/Launcher/LauncherConnectingGui.xaml
#	Content.Client/Launcher/LauncherConnectingGui.xaml.cs
#	Content.Server/Administration/Managers/BanManager.cs
#	Content.Server/Medical/Components/HealthAnalyzerComponent.cs
#	Content.Server/Medical/HealthAnalyzerSystem.cs
#	Content.Server/Nutrition/EntitySystems/CreamPieSystem.cs
#	Content.Server/StationEvents/Events/RandomSentienceRule.cs
#	Content.Shared/Interaction/Components/BlockMovementComponent.cs
#	Content.Shared/Interaction/SharedInteractionSystem.Blocking.cs
#	Content.Shared/Materials/SharedMaterialReclaimerSystem.cs
#	Resources/Prototypes/Accents/word_replacements.yml
#	Resources/Prototypes/Catalog/Fills/Books/bookshelf.yml
#	Resources/Prototypes/Entities/Mobs/Customization/Markings/cat_parts.yml
#	Resources/Prototypes/Entities/Mobs/NPCs/silicon.yml
#	Resources/Prototypes/Entities/Objects/Weapons/Guns/Projectiles/projectiles.yml
#	Resources/Prototypes/Entities/Structures/Machines/lathe.yml
#	Resources/Prototypes/Objectives/objectiveGroups.yml
#	Resources/Prototypes/Objectives/stealTargetGroups.yml
#	Resources/Prototypes/Roles/Jobs/Security/detective.yml
#	Resources/Prototypes/Species/human.yml
#	Resources/Prototypes/Voice/speech_emotes.yml
#	Resources/ServerInfo/Guidebook/Antagonist/Antagonists.xml
#	Resources/ServerInfo/Guidebook/Antagonist/MinorAntagonists.xml
#	Resources/ServerInfo/Guidebook/Antagonist/Nuclear Operatives.xml
#	Resources/ServerInfo/Guidebook/Antagonist/Revolutionaries.xml
#	Resources/ServerInfo/Guidebook/Antagonist/SpaceNinja.xml
#	Resources/ServerInfo/Guidebook/Antagonist/Traitors.xml
#	Resources/ServerInfo/Guidebook/Antagonist/Zombies.xml
#	Resources/migration.yml
2024-08-22 06:50:04 +03:00
Julian Giebel
df95be1ce5
Kick on ban for entire server group (#28649)
* Start work on PostgresNotificationManager
Implement initial version of init and listening code

* Finish implementing PostgresNotificationManager
Implement ban insert trigger

* Implement ignoring notifications if the ban was from the same server

* Address reviews

* Fixes and refactorings

Fix typo in migration SQL

Pull new code in BanManager out into its own partial file.

Unify logic to kick somebody with that when a new ban is placed directly on the server.

New bans are now checked against all parameters (IP, HWID) instead of just user ID.

Extracted SQLite ban matching code into a new class so that it can mostly be re-used by the ban notification code. No copy-paste here.

Database notifications are now not implicitly sent to the main thread, this means basic checks will happen in the thread pool beforehand.

Bans without user ID are now sent to servers. Bans are rate limited to avoid undue work from mass ban imports, beyond the rate limit they are dropped.

Improved error handling and logging for the whole system.

Matching bans against connected players requires knowing their ban exemption flags. These are now cached when the player connects.

ServerBanDef now has exemption flags, again to allow matching full ban details for ban notifications.

Made database notifications a proper struct type to reduce copy pasting a tuple.

Remove copy pasted connection string building code by just... passing the string into the constructor.

Add lock around _notificationHandlers just in case.

Fixed postgres connection wait not being called in a loop and therefore spamming LISTEN commands for every received notification.

Added more error handling and logging to notification listener.

Removed some copy pasting from SQLite database layer too while I was at it because god forbid we expect anybody else to do all the work in this project.

Sorry Julian

---------

Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
2024-08-20 23:31:33 +02:00
VigersRay
c0ee7e3cc9 Merge remote-tracking branch 'refs/remotes/wizards/master'
# Conflicts:
#	.github/PULL_REQUEST_TEMPLATE.md
#	Content.Client/Lobby/LobbyUIController.cs
#	Content.Client/Lobby/UI/HumanoidProfileEditor.xaml.cs
#	Content.Client/Players/PlayTimeTracking/JobRequirementsManager.cs
#	Content.Server/Administration/Systems/BwoinkSystem.cs
#	Content.Server/IoC/ServerContentIoC.cs
#	Content.Server/Players/PlayTimeTracking/PlayTimeTrackingSystem.cs
#	Content.Server/Shuttles/Systems/ArrivalsSystem.cs
#	Content.Shared/Preferences/Loadouts/LoadoutPrototype.cs
#	Content.Shared/Roles/JobRequirements.cs
#	Resources/Prototypes/Accents/word_replacements.yml
#	Resources/Prototypes/Catalog/Fills/Lockers/security.yml
#	Resources/Prototypes/Entities/Mobs/Species/base.yml
#	Resources/Prototypes/Loadouts/Jobs/Cargo/cargo_technician.yml
#	Resources/Prototypes/Loadouts/Jobs/Cargo/quartermaster.yml
#	Resources/Prototypes/Loadouts/Jobs/Civilian/bartender.yml
#	Resources/Prototypes/Loadouts/Jobs/Civilian/botanist.yml
#	Resources/Prototypes/Loadouts/Jobs/Civilian/chaplain.yml
#	Resources/Prototypes/Loadouts/Jobs/Civilian/chef.yml
#	Resources/Prototypes/Loadouts/Jobs/Civilian/janitor.yml
#	Resources/Prototypes/Loadouts/Jobs/Civilian/lawyer.yml
#	Resources/Prototypes/Loadouts/Jobs/Civilian/librarian.yml
#	Resources/Prototypes/Loadouts/Jobs/Civilian/mime.yml
#	Resources/Prototypes/Loadouts/Jobs/Civilian/passenger.yml
#	Resources/Prototypes/Loadouts/Jobs/Command/captain.yml
#	Resources/Prototypes/Loadouts/Jobs/Command/head_of_personnel.yml
#	Resources/Prototypes/Loadouts/Jobs/Engineering/atmospheric_technician.yml
#	Resources/Prototypes/Loadouts/Jobs/Engineering/chief_engineer.yml
#	Resources/Prototypes/Loadouts/Jobs/Engineering/station_engineer.yml
#	Resources/Prototypes/Loadouts/Jobs/Engineering/technical_assistant.yml
#	Resources/Prototypes/Loadouts/Jobs/Medical/chemist.yml
#	Resources/Prototypes/Loadouts/Jobs/Medical/chief_medical_officer.yml
#	Resources/Prototypes/Loadouts/Jobs/Medical/medical_doctor.yml
#	Resources/Prototypes/Loadouts/Jobs/Medical/medical_intern.yml
#	Resources/Prototypes/Loadouts/Jobs/Medical/paramedic.yml
#	Resources/Prototypes/Loadouts/Jobs/Science/research_director.yml
#	Resources/Prototypes/Loadouts/Jobs/Science/scientist.yml
#	Resources/Prototypes/Loadouts/Jobs/Security/detective.yml
#	Resources/Prototypes/Loadouts/Jobs/Security/head_of_security.yml
#	Resources/Prototypes/Loadouts/Jobs/Security/security_cadet.yml
#	Resources/Prototypes/Loadouts/Jobs/Security/security_officer.yml
#	Resources/Prototypes/Loadouts/Jobs/Security/warden.yml
#	Resources/Prototypes/Loadouts/Miscellaneous/trinkets.yml
#	Resources/Prototypes/Recipes/Lathes/medical.yml
#	Resources/Prototypes/Roles/Jobs/Cargo/quartermaster.yml
#	Resources/Prototypes/Roles/Jobs/Command/captain.yml
#	Resources/Prototypes/Roles/Jobs/Command/head_of_personnel.yml
#	Resources/Prototypes/Roles/Jobs/Engineering/chief_engineer.yml
#	Resources/Prototypes/Roles/Jobs/Medical/chief_medical_officer.yml
#	Resources/Prototypes/Roles/Jobs/Science/research_director.yml
#	Resources/Prototypes/Roles/Jobs/Security/head_of_security.yml
#	Resources/Textures/Clothing/Mask/sadmime.rsi/meta.json
#	Resources/Textures/Clothing/Mask/scaredmime.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coat.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatatmos.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatcap.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatcargo.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatce.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatcentcom.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatchem.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatcmo.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatengi.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatgen.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coathop.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coathos.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coathydro.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatjani.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatmed.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatmime.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatminer.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatparamed.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatqm.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatrd.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatrobo.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatsci.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatsec.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatviro.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatwarden.rsi/meta.json
#	Resources/Textures/Structures/Power/apc.rsi/base.png
#	Resources/Textures/Structures/Power/apc.rsi/broken.png
#	Resources/Textures/Structures/Power/apc.rsi/display-charging.png
#	Resources/Textures/Structures/Power/apc.rsi/display-full.png
#	Resources/Textures/Structures/Power/apc.rsi/display-lack.png
#	Resources/Textures/Structures/Power/apc.rsi/display-remote.png
#	Resources/Textures/Structures/Power/apc.rsi/emag-unlit.png
#	Resources/Textures/Structures/Power/apc.rsi/frame.png
#	Resources/Textures/Structures/Power/apc.rsi/static.png
2024-08-05 17:22:05 +03:00
to4no_fix
64273cb914
Display the administrator's title in ahelp and ahelp relay (#30075)
* Adding the admin prefix to the ahelp

* Updating the admin prefix

* The second update of the admin prefix

* Configuration correction
2024-08-02 22:59:20 -05:00
VigersRay
0a408dece4 фиксы апстрима 2024-07-22 04:38:50 +03:00
VigersRay
21fbd92f03 Обновил апишки 2024-07-22 04:07:51 +03:00
SplikZerys
b1d734994b Реверт КД на баны 15 сек 2024-07-17 15:07:47 -07:00
pacable
31aa79a1dd
Изменение имени сервера в лобби (#198)
* кд на баны 15 секунд

Signed-off-by: JDtrimble <igor.mamaev1@gmail.com>

* теперь сервер в лобби можно настроить через cvar

Signed-off-by: JDtrimble <igor.mamaev1@gmail.com>

---------

Signed-off-by: JDtrimble <igor.mamaev1@gmail.com>
2024-07-15 01:26:59 +03:00
Vigers Ray
d7b054c032 Merge remote-tracking branch 'refs/remotes/wizards/master'
# Conflicts:
#	Content.Shared/Preferences/HumanoidCharacterProfile.cs
#	Resources/Prototypes/Accents/word_replacements.yml
#	Resources/ServerInfo/Guidebook/Engineering/Singularity.xml
2024-06-09 00:50:47 +03:00
AJCM-git
63e0ee08cb
Fixes client having authority over rules popup cvars (#28655)
* Fixes client having authority over rules popup cvars

* Delete duplicate migration

* Pre-update

* Post-update
2024-06-07 21:53:20 +02:00
VigersRay
7d0476aab0 Merge remote-tracking branch 'refs/remotes/wizards/master'
# Conflicts:
#	Content.Shared/Roles/JobPrototype.cs
#	Resources/Prototypes/Entities/Mobs/NPCs/silicon.yml
#	Resources/Prototypes/Roles/Antags/nukeops.yml
#	Resources/Prototypes/Roles/Antags/revolutionary.yml
#	Resources/Prototypes/Roles/Antags/traitor.yml
#	Resources/Prototypes/Roles/Antags/zombie.yml
2024-06-07 11:28:58 +03:00
Nemanja
1333b48747
Convert rules to use guidebook parsing (#28647) 2024-06-06 03:11:26 -04:00
VigersRay
5f10d21fa6 Merge remote-tracking branch 'refs/remotes/wizards/master'
# Conflicts:
#	Content.Server/Administration/Commands/PlayTimeCommands.cs
#	Content.Server/Preferences/Managers/ServerPreferencesManager.cs
#	Content.Server/Station/Systems/StationSpawningSystem.cs
#	Content.Server/StationEvents/Events/BreakerFlipRule.cs
#	Content.Shared/Roles/JobPrototype.cs
#	Resources/Prototypes/Catalog/Fills/Backpacks/StarterGear/backpack.yml
#	Resources/Prototypes/Catalog/Fills/Backpacks/StarterGear/duffelbag.yml
#	Resources/Prototypes/Catalog/Fills/Backpacks/StarterGear/satchel.yml
#	Resources/Prototypes/Catalog/Fills/Backpacks/duffelbag.yml
#	Resources/Prototypes/Entities/Mobs/base.yml
#	Resources/Prototypes/Entities/Structures/Storage/Tanks/tanks.yml
#	Resources/Prototypes/GameRules/events.yml
#	Resources/Prototypes/Roles/Antags/traitor.yml
#	Resources/Prototypes/Roles/Jobs/Cargo/quartermaster.yml
#	Resources/Prototypes/Roles/Jobs/Cargo/salvage_specialist.yml
#	Resources/Prototypes/Roles/Jobs/Civilian/clown.yml
#	Resources/Prototypes/Roles/Jobs/Civilian/musician.yml
#	Resources/Prototypes/Roles/Jobs/Engineering/technical_assistant.yml
#	Resources/Prototypes/Roles/Jobs/Fun/misc_startinggear.yml
#	Resources/Prototypes/Roles/Jobs/Medical/chemist.yml
#	Resources/Prototypes/Roles/Jobs/Medical/medical_intern.yml
#	Resources/Prototypes/Roles/Jobs/Science/research_director.yml
#	Resources/Prototypes/Roles/Jobs/Security/security_cadet.yml
2024-06-04 09:41:27 +03:00
DrSmugleaf
19be94c9ea
Add job whitelist system (#28085)
* Add job whitelist system

* Address reviews

* Fix name

* Apply suggestions from code review

Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com>

* cancinium

---------

Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com>
2024-06-01 05:08:31 -07:00
Vigers Ray
5775d4cdef
Merge sunrise build (#2)
* commit
2024-05-31 02:16:18 +03:00
nikthechampiongr
df631ff8a0
Fix Incorrect stealth messages appearing on readmin. (#26511)
Fix major skill issue/Incorrect stealth messages appearing on readmin.
2024-03-28 20:19:53 +01:00
nikthechampiongr
dca0c6694b
Add stealthmins (#26263)
* Add stealthmin command.

* Update Content.Server/Administration/Commands/AdminWhoCommand.cs

As suggested by CE.

Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>

* Add admin notifications for admins toggling stealthmin.

* Localize stealthmin command

---------

Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>
2024-03-24 10:39:53 -05:00
Pieter-Jan Briers
a1817a12db
Add Prometheus stats for admin count (#26284)
* Add Prometheus stats for admin count

Fixes #20828

Reports time series for admin count. Counts are separated by state (active, AFK, or deadminned) and admin rank.

* Use static constructor instead of static readonly for the metric

Docs recommend this due to inconsistent execution of C# static constructors.

* Remove static usage, use IoC IMeterFactory.

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2024-03-24 14:48:04 +11:00
LordCarve
05a2e6b3a2
Obsolete refactor - ConnectedClient to Channel (#24409) 2024-01-23 09:14:13 +11:00
Leon Friedrich
e685cb626b
Un-revert IPlayerManager refactor (#21244) 2023-10-28 09:59:53 +11:00
metalgearsloth
a2bbda43cc
Revert "Update submodule to 172.0.0 (#21222)" (#21225) 2023-10-24 21:55:20 +11:00
Leon Friedrich
7ba0ea2926
IPlayerManager refactor (#21215) 2023-10-24 20:19:08 +11:00
DrSmugleaf
f985e7dc5c
Fix role unbans not applying in real time (#20547) 2023-09-28 16:46:39 -07:00
Moony
3d3c9e3348
Toolshed part 2 (#18997)
* fixe

* Save work.

* Rune-aware parser.

* oogh

* pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests pass tests

* Publicizes a lot of common generic commands, so custom toolshed envs can include them.

* i think i might implode

* Tests.

* a

* b

* awa

---------

Co-authored-by: moonheart08 <moonheart08@users.noreply.github.com>
2023-08-23 16:03:41 -05:00
Leon Friedrich
4d845caa07
Allow zoom command to ignore zoom limits (#19419) 2023-08-22 19:27:41 +10:00
Moony
e2b22a4cd8
Toolshed (#17895)
* ogh

* i should save my work

* ogh

* hhcdfhjbghshbxdfhghshc
- lots of bugs in parsing still
- invocation is a stub

* expr parsing works

* awawa

* Saving work

* Improve APIs a bit all around, add shortcuts.

* awa

* awa

* AAAAAA

* save work

* Move shit to engine

* lord

* bql is kill

* forgot the fucking bike rack

* bql is kill for real

* pjb will kill me

* aughfhbdj

* adgddf

* gdsgvfvxshngfgh

* b

* hfsjhghj

* a

* tf you mean i have to document it

* follow C# standards

* Assorted cleanup and documentation pass, minor bugfix in ValueRefParser.

* Start porting old commands, remove that pesky prefix in favor of integrating with the shell.

* bw

* Fix valueref up a bit, improve autocomplete for it.

* awa

* fix tests

* git shut up

* Arithmetic commands.

* parse improvements

* Update engine.

---------

Co-authored-by: moonheart08 <moonheart08@users.noreply.github.com>
2023-08-02 16:09:08 -05:00
Vasilis
55f935e3fe
Adds a cvar to hide PII information in ban message (#18428)
* my macbook hates running 2 clients

* yes
2023-07-29 20:14:56 +03:00
Pieter-Jan Briers
b4b0fe41db
Admin notes bugfixes (#18189) 2023-07-21 15:43:47 +02:00
Riggle
579913b617
Better notes and bans (#14228)
Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>
2023-07-21 13:38:52 +02:00
Pieter-Jan Briers
4c8965ac32
CVar to promotehost automatically. (#17643) 2023-06-26 13:01:30 +10:00
metalgearsloth
be14380520
Role ban UI updates (#16736) 2023-05-27 14:22:22 +10:00
metalgearsloth
ae01618874
Revert "Revert "Replace ResourcePath with ResPath (#15308)" (#155… (#15566) 2023-04-20 20:16:01 +10:00
metalgearsloth
acf79a8209
Revert "Replace ResourcePath with ResPath (#15308)" (#15551) 2023-04-20 11:43:54 +10:00
Ygg01
71f358a027
Replace ResourcePath with ResPath (#15308) 2023-04-19 23:39:17 +10:00
Leon Friedrich
b148bebd60
Equipment verbs & admin inventory access. (#14315) 2023-03-06 04:12:08 +11:00
Leon Friedrich
2351bbb607
Add power debug verbs (#14212) 2023-02-26 04:14:35 +11:00
Leon Friedrich
69b5562718
Rename IConsoleHost.RegisteredCommands (#14041) 2023-02-12 16:51:56 +00:00
Visne
c6d3e4f3bd
Fix warnings and code cleanup/fixes (#13570) 2023-01-19 13:56:45 +11:00
Visne
e1782ec22b
Disable re-adminning infinitely (#11174) 2022-09-10 06:07:35 -07:00
metalgearsloth
72bc05e3ac
Add department bans (#11085)
* Add department bans

Also localised some stuff while I was there.

* loc
2022-09-08 17:06:21 -05:00
Pieter-Jan Briers
221c23000e
Client command perms cleanup. (#9599) 2022-07-10 15:43:44 +02:00
wrexbe
bc68ac96dd
Cleanup the namespaces (#8132) 2022-05-13 17:59:03 +10:00
Pieter-Jan Briers
b3e7c7af1f
Remove usage of CreateNetMessage. (#7563) 2022-04-15 11:55:49 -07:00
Moony
5c26555144
Fix a bug in rolebans. (#7029) 2022-03-07 22:28:47 -06:00
ShadowCommander
4825142210
Role bans (#6703) 2022-02-21 23:11:39 +01:00
Vera Aguilera Puerto
c4bf0a9479
AdminManager can now load permissions for registered callback commands. (#6025) 2022-01-12 11:05:39 +01:00