diff --git a/.idea/.idea.ProjectLighthouse/.idea/indexLayout.xml b/.idea/.idea.ProjectLighthouse/.idea/indexLayout.xml
index e9bcd75e..aff6dfa9 100644
--- a/.idea/.idea.ProjectLighthouse/.idea/indexLayout.xml
+++ b/.idea/.idea.ProjectLighthouse/.idea/indexLayout.xml
@@ -14,6 +14,7 @@
ProjectLighthouse.sln.DotSettings.userREADME.mdcreate-migration.sh
+ crowdin.ymldocker-compose.ymlglobal.jsonscripts-and-tools
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 3d72edc6..d2da1519 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -17,9 +17,6 @@ Once you've gotten MySQL running you can run Lighthouse. It will take care of th
PS3 is difficult to set up, so I will be going over how to set up RPCS3 instead. A guide will be coming for PS3 closer
to release. You can also follow this guide if you want to learn how to modify your EBOOT.
-*Note: This requires a patched copy of RPCS3. You can find a working
-version [on our GitHub](https://github.com/LBPUnion/rpcs3).*
-
Start by getting a copy of LittleBigPlanet 1/2 installed. (Check the LittleBigPlanet 1 section, since you'll need to do
extra steps for your game to not crash upon entering pod computer).
@@ -44,8 +41,8 @@ Now, copy the `EBOOTlocalhost.elf` file to where you got your `EBOOT.elf` file f
To launch the game with the patched EBOOT, open up RPCS3, go to File, Boot SELF/ELF, and open up `EBOOTlocalhost.elf`.
-Assuming you are running the patched version of RPCS3, you patched the file correctly, the database is migrated, and
-Project Lighthouse is running, the game should now connect and you may begin contributing!
+Assuming you patched the file correctly, the database is migrated, and
+Project Lighthouse is running, the game should now connect, and you may begin contributing!
### LittleBigPlanet 1
diff --git a/ProjectLighthouse.Localization/BaseLayout.lang-ar-SA.resx b/ProjectLighthouse.Localization/BaseLayout.lang-ar-SA.resx
new file mode 100644
index 00000000..c799594c
--- /dev/null
+++ b/ProjectLighthouse.Localization/BaseLayout.lang-ar-SA.resx
@@ -0,0 +1,66 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+
+ Home
+ A button on the header that takes you to the landing page.
+
+
+
+ Users
+ A button on the header that takes you to the user listing.
+
+
+
+ Photos
+ A button on the header that takes you to a list of user-uploaded photos.
+
+
+
+ Levels
+ A button on the header that takes you to a list of user-uploaded levels. Levels are internally referred to as "slots".
+
+
+
+ Authentication
+ A button on the header that takes you to a list of authentication attempts.
+
+
+
+ Login / Register
+ A button on the header that lets you log in or register.
+
+
+ Profile
+ A quick shortcut on the header to take you to your profile if logged in.
+
+
+ Admin Panel
+ A header link that takes you to the admin panel if available.
+
+
+ Log out
+ A shortcut to log you out of your account.
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/BaseLayout.lang-da-DK.resx b/ProjectLighthouse.Localization/BaseLayout.lang-da-DK.resx
new file mode 100644
index 00000000..e73812c8
--- /dev/null
+++ b/ProjectLighthouse.Localization/BaseLayout.lang-da-DK.resx
@@ -0,0 +1,66 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+
+ Forside
+ A button on the header that takes you to the landing page.
+
+
+
+ Brugere
+ A button on the header that takes you to the user listing.
+
+
+
+ Fotos
+ A button on the header that takes you to a list of user-uploaded photos.
+
+
+
+ Baner
+ A button on the header that takes you to a list of user-uploaded levels. Levels are internally referred to as "slots".
+
+
+
+ Godkendelse
+ A button on the header that takes you to a list of authentication attempts.
+
+
+
+ Log ind / Registrer
+ A button on the header that lets you log in or register.
+
+
+ Profil
+ A quick shortcut on the header to take you to your profile if logged in.
+
+
+ Administrationspanel
+ A header link that takes you to the admin panel if available.
+
+
+ Log ud
+ A shortcut to log you out of your account.
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/BaseLayout.lang-de-DE.resx b/ProjectLighthouse.Localization/BaseLayout.lang-de-DE.resx
new file mode 100644
index 00000000..c799594c
--- /dev/null
+++ b/ProjectLighthouse.Localization/BaseLayout.lang-de-DE.resx
@@ -0,0 +1,66 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+
+ Home
+ A button on the header that takes you to the landing page.
+
+
+
+ Users
+ A button on the header that takes you to the user listing.
+
+
+
+ Photos
+ A button on the header that takes you to a list of user-uploaded photos.
+
+
+
+ Levels
+ A button on the header that takes you to a list of user-uploaded levels. Levels are internally referred to as "slots".
+
+
+
+ Authentication
+ A button on the header that takes you to a list of authentication attempts.
+
+
+
+ Login / Register
+ A button on the header that lets you log in or register.
+
+
+ Profile
+ A quick shortcut on the header to take you to your profile if logged in.
+
+
+ Admin Panel
+ A header link that takes you to the admin panel if available.
+
+
+ Log out
+ A shortcut to log you out of your account.
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/BaseLayout.lang-eo-UY.resx b/ProjectLighthouse.Localization/BaseLayout.lang-eo-UY.resx
new file mode 100644
index 00000000..68388e30
--- /dev/null
+++ b/ProjectLighthouse.Localization/BaseLayout.lang-eo-UY.resx
@@ -0,0 +1,66 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+
+ Hejmo
+ A button on the header that takes you to the landing page.
+
+
+
+ Uzantoj
+ A button on the header that takes you to the user listing.
+
+
+
+ Fotoj
+ A button on the header that takes you to a list of user-uploaded photos.
+
+
+
+ Etaĝoj
+ A button on the header that takes you to a list of user-uploaded levels. Levels are internally referred to as "slots".
+
+
+
+ Aŭtentigado
+ A button on the header that takes you to a list of authentication attempts.
+
+
+
+ Ensaluto / Registro
+ A button on the header that lets you log in or register.
+
+
+ Profilo
+ A quick shortcut on the header to take you to your profile if logged in.
+
+
+ Panelo de administranto
+ A header link that takes you to the admin panel if available.
+
+
+ Adiaŭi
+ A shortcut to log you out of your account.
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/BaseLayout.lang-es-MX.resx b/ProjectLighthouse.Localization/BaseLayout.lang-es-MX.resx
new file mode 100644
index 00000000..9f37276f
--- /dev/null
+++ b/ProjectLighthouse.Localization/BaseLayout.lang-es-MX.resx
@@ -0,0 +1,66 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+
+ Inicio
+ A button on the header that takes you to the landing page.
+
+
+
+ Usuarios
+ A button on the header that takes you to the user listing.
+
+
+
+ Fotos
+ A button on the header that takes you to a list of user-uploaded photos.
+
+
+
+ Niveles
+ A button on the header that takes you to a list of user-uploaded levels. Levels are internally referred to as "slots".
+
+
+
+ Autenticación
+ A button on the header that takes you to a list of authentication attempts.
+
+
+
+ Iniciar sesión / Registrarse
+ A button on the header that lets you log in or register.
+
+
+ Perfil
+ A quick shortcut on the header to take you to your profile if logged in.
+
+
+ Panel de administración
+ A header link that takes you to the admin panel if available.
+
+
+ Cerrar sesión
+ A shortcut to log you out of your account.
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/BaseLayout.lang-fil-PH.resx b/ProjectLighthouse.Localization/BaseLayout.lang-fil-PH.resx
new file mode 100644
index 00000000..c799594c
--- /dev/null
+++ b/ProjectLighthouse.Localization/BaseLayout.lang-fil-PH.resx
@@ -0,0 +1,66 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+
+ Home
+ A button on the header that takes you to the landing page.
+
+
+
+ Users
+ A button on the header that takes you to the user listing.
+
+
+
+ Photos
+ A button on the header that takes you to a list of user-uploaded photos.
+
+
+
+ Levels
+ A button on the header that takes you to a list of user-uploaded levels. Levels are internally referred to as "slots".
+
+
+
+ Authentication
+ A button on the header that takes you to a list of authentication attempts.
+
+
+
+ Login / Register
+ A button on the header that lets you log in or register.
+
+
+ Profile
+ A quick shortcut on the header to take you to your profile if logged in.
+
+
+ Admin Panel
+ A header link that takes you to the admin panel if available.
+
+
+ Log out
+ A shortcut to log you out of your account.
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/BaseLayout.lang-fr-FR.resx b/ProjectLighthouse.Localization/BaseLayout.lang-fr-FR.resx
new file mode 100644
index 00000000..c799594c
--- /dev/null
+++ b/ProjectLighthouse.Localization/BaseLayout.lang-fr-FR.resx
@@ -0,0 +1,66 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+
+ Home
+ A button on the header that takes you to the landing page.
+
+
+
+ Users
+ A button on the header that takes you to the user listing.
+
+
+
+ Photos
+ A button on the header that takes you to a list of user-uploaded photos.
+
+
+
+ Levels
+ A button on the header that takes you to a list of user-uploaded levels. Levels are internally referred to as "slots".
+
+
+
+ Authentication
+ A button on the header that takes you to a list of authentication attempts.
+
+
+
+ Login / Register
+ A button on the header that lets you log in or register.
+
+
+ Profile
+ A quick shortcut on the header to take you to your profile if logged in.
+
+
+ Admin Panel
+ A header link that takes you to the admin panel if available.
+
+
+ Log out
+ A shortcut to log you out of your account.
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/BaseLayout.lang-ga-IE.resx b/ProjectLighthouse.Localization/BaseLayout.lang-ga-IE.resx
new file mode 100644
index 00000000..c799594c
--- /dev/null
+++ b/ProjectLighthouse.Localization/BaseLayout.lang-ga-IE.resx
@@ -0,0 +1,66 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+
+ Home
+ A button on the header that takes you to the landing page.
+
+
+
+ Users
+ A button on the header that takes you to the user listing.
+
+
+
+ Photos
+ A button on the header that takes you to a list of user-uploaded photos.
+
+
+
+ Levels
+ A button on the header that takes you to a list of user-uploaded levels. Levels are internally referred to as "slots".
+
+
+
+ Authentication
+ A button on the header that takes you to a list of authentication attempts.
+
+
+
+ Login / Register
+ A button on the header that lets you log in or register.
+
+
+ Profile
+ A quick shortcut on the header to take you to your profile if logged in.
+
+
+ Admin Panel
+ A header link that takes you to the admin panel if available.
+
+
+ Log out
+ A shortcut to log you out of your account.
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/BaseLayout.lang-gd-GB.resx b/ProjectLighthouse.Localization/BaseLayout.lang-gd-GB.resx
new file mode 100644
index 00000000..c799594c
--- /dev/null
+++ b/ProjectLighthouse.Localization/BaseLayout.lang-gd-GB.resx
@@ -0,0 +1,66 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+
+ Home
+ A button on the header that takes you to the landing page.
+
+
+
+ Users
+ A button on the header that takes you to the user listing.
+
+
+
+ Photos
+ A button on the header that takes you to a list of user-uploaded photos.
+
+
+
+ Levels
+ A button on the header that takes you to a list of user-uploaded levels. Levels are internally referred to as "slots".
+
+
+
+ Authentication
+ A button on the header that takes you to a list of authentication attempts.
+
+
+
+ Login / Register
+ A button on the header that lets you log in or register.
+
+
+ Profile
+ A quick shortcut on the header to take you to your profile if logged in.
+
+
+ Admin Panel
+ A header link that takes you to the admin panel if available.
+
+
+ Log out
+ A shortcut to log you out of your account.
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/BaseLayout.lang-ja-JP.resx b/ProjectLighthouse.Localization/BaseLayout.lang-ja-JP.resx
new file mode 100644
index 00000000..fb8efb4d
--- /dev/null
+++ b/ProjectLighthouse.Localization/BaseLayout.lang-ja-JP.resx
@@ -0,0 +1,66 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+
+ ホーム
+ A button on the header that takes you to the landing page.
+
+
+
+ ユーザー
+ A button on the header that takes you to the user listing.
+
+
+
+ 画像
+ A button on the header that takes you to a list of user-uploaded photos.
+
+
+
+ レベル
+ A button on the header that takes you to a list of user-uploaded levels. Levels are internally referred to as "slots".
+
+
+
+ 認証
+ A button on the header that takes you to a list of authentication attempts.
+
+
+
+ ログイン/サインアップ
+ A button on the header that lets you log in or register.
+
+
+ プロフィール
+ A quick shortcut on the header to take you to your profile if logged in.
+
+
+ 管理者の部屋
+ A header link that takes you to the admin panel if available.
+
+
+ ログアウト
+ A shortcut to log you out of your account.
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/BaseLayout.lang-no-NO.resx b/ProjectLighthouse.Localization/BaseLayout.lang-no-NO.resx
new file mode 100644
index 00000000..aef7314b
--- /dev/null
+++ b/ProjectLighthouse.Localization/BaseLayout.lang-no-NO.resx
@@ -0,0 +1,66 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+
+ Hjem
+ A button on the header that takes you to the landing page.
+
+
+
+ Brukere
+ A button on the header that takes you to the user listing.
+
+
+
+ Bilder
+ A button on the header that takes you to a list of user-uploaded photos.
+
+
+
+ Nivåer
+ A button on the header that takes you to a list of user-uploaded levels. Levels are internally referred to as "slots".
+
+
+
+ Godkjenning
+ A button on the header that takes you to a list of authentication attempts.
+
+
+
+ Logg inn/Registrer
+ A button on the header that lets you log in or register.
+
+
+ Profil
+ A quick shortcut on the header to take you to your profile if logged in.
+
+
+ Administrasjon
+ A header link that takes you to the admin panel if available.
+
+
+ Logg ut
+ A shortcut to log you out of your account.
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/BaseLayout.lang-pl-PL.resx b/ProjectLighthouse.Localization/BaseLayout.lang-pl-PL.resx
new file mode 100644
index 00000000..9ffde647
--- /dev/null
+++ b/ProjectLighthouse.Localization/BaseLayout.lang-pl-PL.resx
@@ -0,0 +1,66 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+
+ Strona Główna
+ A button on the header that takes you to the landing page.
+
+
+
+ Gracze
+ A button on the header that takes you to the user listing.
+
+
+
+ Zdjęcia
+ A button on the header that takes you to a list of user-uploaded photos.
+
+
+
+ Poziomy
+ A button on the header that takes you to a list of user-uploaded levels. Levels are internally referred to as "slots".
+
+
+
+ Autoryzacja
+ A button on the header that takes you to a list of authentication attempts.
+
+
+
+ Login / Rejestracja
+ A button on the header that lets you log in or register.
+
+
+ Profil
+ A quick shortcut on the header to take you to your profile if logged in.
+
+
+ Panel Administracyjny
+ A header link that takes you to the admin panel if available.
+
+
+ Wyloguj
+ A shortcut to log you out of your account.
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/BaseLayout.lang-pt-PT.resx b/ProjectLighthouse.Localization/BaseLayout.lang-pt-PT.resx
new file mode 100644
index 00000000..80baf315
--- /dev/null
+++ b/ProjectLighthouse.Localization/BaseLayout.lang-pt-PT.resx
@@ -0,0 +1,66 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+
+ Início
+ A button on the header that takes you to the landing page.
+
+
+
+ Utilizadores
+ A button on the header that takes you to the user listing.
+
+
+
+ Fotografias
+ A button on the header that takes you to a list of user-uploaded photos.
+
+
+
+ Níveis
+ A button on the header that takes you to a list of user-uploaded levels. Levels are internally referred to as "slots".
+
+
+
+ Autenticação
+ A button on the header that takes you to a list of authentication attempts.
+
+
+
+ Fazer login ou registrar-se
+ A button on the header that lets you log in or register.
+
+
+ Perfil
+ A quick shortcut on the header to take you to your profile if logged in.
+
+
+ Painel do administrador
+ A header link that takes you to the admin panel if available.
+
+
+ Fechar sessão
+ A shortcut to log you out of your account.
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/BaseLayout.lang-ru-RU.resx b/ProjectLighthouse.Localization/BaseLayout.lang-ru-RU.resx
new file mode 100644
index 00000000..b8584493
--- /dev/null
+++ b/ProjectLighthouse.Localization/BaseLayout.lang-ru-RU.resx
@@ -0,0 +1,66 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+
+ Главная
+ A button on the header that takes you to the landing page.
+
+
+
+ Пользователи
+ A button on the header that takes you to the user listing.
+
+
+
+ Фотографии
+ A button on the header that takes you to a list of user-uploaded photos.
+
+
+
+ Уровни
+ A button on the header that takes you to a list of user-uploaded levels. Levels are internally referred to as "slots".
+
+
+
+ Аутентификация
+ A button on the header that takes you to a list of authentication attempts.
+
+
+
+ Вход / Регистрация
+ A button on the header that lets you log in or register.
+
+
+ Профиль
+ A quick shortcut on the header to take you to your profile if logged in.
+
+
+ Админпанель
+ A header link that takes you to the admin panel if available.
+
+
+ Выйти
+ A shortcut to log you out of your account.
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/BaseLayout.lang-sv-SE.resx b/ProjectLighthouse.Localization/BaseLayout.lang-sv-SE.resx
new file mode 100644
index 00000000..ee6f8508
--- /dev/null
+++ b/ProjectLighthouse.Localization/BaseLayout.lang-sv-SE.resx
@@ -0,0 +1,66 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+
+ Startsida
+ A button on the header that takes you to the landing page.
+
+
+
+ Användare
+ A button on the header that takes you to the user listing.
+
+
+
+ Foton
+ A button on the header that takes you to a list of user-uploaded photos.
+
+
+
+ Banor
+ A button on the header that takes you to a list of user-uploaded levels. Levels are internally referred to as "slots".
+
+
+
+ Autentisering
+ A button on the header that takes you to a list of authentication attempts.
+
+
+
+ Logga in / Registrera
+ A button on the header that lets you log in or register.
+
+
+ Min Profil
+ A quick shortcut on the header to take you to your profile if logged in.
+
+
+ Administrationspanel
+ A header link that takes you to the admin panel if available.
+
+
+ Logga ut
+ A shortcut to log you out of your account.
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/BaseLayout.lang-zh-CN.resx b/ProjectLighthouse.Localization/BaseLayout.lang-zh-CN.resx
new file mode 100644
index 00000000..92d025f2
--- /dev/null
+++ b/ProjectLighthouse.Localization/BaseLayout.lang-zh-CN.resx
@@ -0,0 +1,66 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+
+ 主页
+ A button on the header that takes you to the landing page.
+
+
+
+ 用户
+ A button on the header that takes you to the user listing.
+
+
+
+ 图片
+ A button on the header that takes you to a list of user-uploaded photos.
+
+
+
+ 追踪
+ A button on the header that takes you to a list of user-uploaded levels. Levels are internally referred to as "slots".
+
+
+
+ Authentication
+ A button on the header that takes you to a list of authentication attempts.
+
+
+
+ Login / Register
+ A button on the header that lets you log in or register.
+
+
+ Profile
+ A quick shortcut on the header to take you to your profile if logged in.
+
+
+ Admin Panel
+ A header link that takes you to the admin panel if available.
+
+
+ Log out
+ A shortcut to log you out of your account.
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/BaseLayout.resx b/ProjectLighthouse.Localization/BaseLayout.resx
new file mode 100644
index 00000000..cdfeee78
--- /dev/null
+++ b/ProjectLighthouse.Localization/BaseLayout.resx
@@ -0,0 +1,68 @@
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+
+ Home
+ A button on the header that takes you to the landing page.
+
+
+
+ Users
+ A button on the header that takes you to the user listing.
+
+
+
+ Photos
+ A button on the header that takes you to a list of user-uploaded photos.
+
+
+
+ Levels
+ A button on the header that takes you to a list of user-uploaded levels. Levels are internally referred to as "slots".
+
+
+
+ Authentication
+ A button on the header that takes you to a list of authentication attempts.
+
+
+
+ Login / Register
+ A button on the header that lets you log in or register.
+
+
+ Profile
+ A quick shortcut on the header to take you to your profile if logged in.
+
+
+ Admin Panel
+ A header link that takes you to the admin panel if available.
+
+
+ Log out
+ A shortcut to log you out of your account.
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/General.lang-ar-SA.resx b/ProjectLighthouse.Localization/General.lang-ar-SA.resx
new file mode 100644
index 00000000..b3c93d7c
--- /dev/null
+++ b/ProjectLighthouse.Localization/General.lang-ar-SA.resx
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Username
+
+
+ Password
+
+
+ Register
+
+
+ Forgot Password?
+
+
+ Uh oh!
+
+
+ Log In
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/General.lang-da-DK.resx b/ProjectLighthouse.Localization/General.lang-da-DK.resx
new file mode 100644
index 00000000..6db48d85
--- /dev/null
+++ b/ProjectLighthouse.Localization/General.lang-da-DK.resx
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Brugernavn
+
+
+ Adgangskode
+
+
+ Registrer
+
+
+ Glemt adgangskode?
+
+
+ Åh nej!
+
+
+ Log ind
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/General.lang-de-DE.resx b/ProjectLighthouse.Localization/General.lang-de-DE.resx
new file mode 100644
index 00000000..b3c93d7c
--- /dev/null
+++ b/ProjectLighthouse.Localization/General.lang-de-DE.resx
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Username
+
+
+ Password
+
+
+ Register
+
+
+ Forgot Password?
+
+
+ Uh oh!
+
+
+ Log In
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/General.lang-eo-UY.resx b/ProjectLighthouse.Localization/General.lang-eo-UY.resx
new file mode 100644
index 00000000..b3c93d7c
--- /dev/null
+++ b/ProjectLighthouse.Localization/General.lang-eo-UY.resx
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Username
+
+
+ Password
+
+
+ Register
+
+
+ Forgot Password?
+
+
+ Uh oh!
+
+
+ Log In
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/General.lang-es-MX.resx b/ProjectLighthouse.Localization/General.lang-es-MX.resx
new file mode 100644
index 00000000..b3c93d7c
--- /dev/null
+++ b/ProjectLighthouse.Localization/General.lang-es-MX.resx
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Username
+
+
+ Password
+
+
+ Register
+
+
+ Forgot Password?
+
+
+ Uh oh!
+
+
+ Log In
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/General.lang-fil-PH.resx b/ProjectLighthouse.Localization/General.lang-fil-PH.resx
new file mode 100644
index 00000000..b3c93d7c
--- /dev/null
+++ b/ProjectLighthouse.Localization/General.lang-fil-PH.resx
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Username
+
+
+ Password
+
+
+ Register
+
+
+ Forgot Password?
+
+
+ Uh oh!
+
+
+ Log In
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/General.lang-fr-FR.resx b/ProjectLighthouse.Localization/General.lang-fr-FR.resx
new file mode 100644
index 00000000..b3c93d7c
--- /dev/null
+++ b/ProjectLighthouse.Localization/General.lang-fr-FR.resx
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Username
+
+
+ Password
+
+
+ Register
+
+
+ Forgot Password?
+
+
+ Uh oh!
+
+
+ Log In
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/General.lang-ga-IE.resx b/ProjectLighthouse.Localization/General.lang-ga-IE.resx
new file mode 100644
index 00000000..b3c93d7c
--- /dev/null
+++ b/ProjectLighthouse.Localization/General.lang-ga-IE.resx
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Username
+
+
+ Password
+
+
+ Register
+
+
+ Forgot Password?
+
+
+ Uh oh!
+
+
+ Log In
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/General.lang-ja-JP.resx b/ProjectLighthouse.Localization/General.lang-ja-JP.resx
new file mode 100644
index 00000000..247008f3
--- /dev/null
+++ b/ProjectLighthouse.Localization/General.lang-ja-JP.resx
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ ユーザーネーム
+
+
+ パスワード
+
+
+ 登録する
+
+
+ パスワードを忘れましたか?
+
+
+ おおっと!
+
+
+ ログイン
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/General.lang-no-NO.resx b/ProjectLighthouse.Localization/General.lang-no-NO.resx
new file mode 100644
index 00000000..eb66dc58
--- /dev/null
+++ b/ProjectLighthouse.Localization/General.lang-no-NO.resx
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Brukernavn
+
+
+ Passord
+
+
+ Registrer
+
+
+ Glemt Passord?
+
+
+ Ånei!
+
+
+ Logg in
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/General.lang-pl-PL.resx b/ProjectLighthouse.Localization/General.lang-pl-PL.resx
new file mode 100644
index 00000000..b3c93d7c
--- /dev/null
+++ b/ProjectLighthouse.Localization/General.lang-pl-PL.resx
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Username
+
+
+ Password
+
+
+ Register
+
+
+ Forgot Password?
+
+
+ Uh oh!
+
+
+ Log In
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/General.lang-pt-PT.resx b/ProjectLighthouse.Localization/General.lang-pt-PT.resx
new file mode 100644
index 00000000..261f6594
--- /dev/null
+++ b/ProjectLighthouse.Localization/General.lang-pt-PT.resx
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Nome do utilizador
+
+
+ Palavra-chave
+
+
+ Cadastrar
+
+
+ Esqueceu a palavra-passe?
+
+
+ Essa não!
+
+
+ Iniciar Sessão
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/General.lang-ru-RU.resx b/ProjectLighthouse.Localization/General.lang-ru-RU.resx
new file mode 100644
index 00000000..90aeb7d2
--- /dev/null
+++ b/ProjectLighthouse.Localization/General.lang-ru-RU.resx
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Имя пользователя
+
+
+ Пароль
+
+
+ Регистр
+
+
+ Забыли пароль?
+
+
+ Упс!
+
+
+ Вход
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/General.lang-sv-SE.resx b/ProjectLighthouse.Localization/General.lang-sv-SE.resx
new file mode 100644
index 00000000..3c2b250f
--- /dev/null
+++ b/ProjectLighthouse.Localization/General.lang-sv-SE.resx
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Användarnamn
+
+
+ Lösenord
+
+
+ Registrera
+
+
+ Glömt lösenordet?
+
+
+ Ajdå!
+
+
+ Logga in
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/General.lang-zh-CN.resx b/ProjectLighthouse.Localization/General.lang-zh-CN.resx
new file mode 100644
index 00000000..f2ff702f
--- /dev/null
+++ b/ProjectLighthouse.Localization/General.lang-zh-CN.resx
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 用户名
+
+
+ Password
+
+
+ Register
+
+
+ 忘记密码?
+
+
+ 哎呀!
+
+
+ 登入
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/General.resx b/ProjectLighthouse.Localization/General.resx
new file mode 100644
index 00000000..2e014ac5
--- /dev/null
+++ b/ProjectLighthouse.Localization/General.resx
@@ -0,0 +1,39 @@
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Username
+
+
+ Password
+
+
+ Register
+
+
+ Forgot Password?
+
+
+ Uh oh!
+
+
+ Log In
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/LandingPage.lang-ar-SA.resx b/ProjectLighthouse.Localization/LandingPage.lang-ar-SA.resx
new file mode 100644
index 00000000..ed7772d2
--- /dev/null
+++ b/ProjectLighthouse.Localization/LandingPage.lang-ar-SA.resx
@@ -0,0 +1,62 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+
+ Welcome to {0}!
+ A greeting on the main page of the website.
+
+
+
+ You are currently logged in as {0}.
+ A greeting on the main page of the website.
+
+
+
+ There are no users online. Why not hop on?
+ A greeting on the main page of the website.
+
+
+
+ There is 1 user currently online:
+ A greeting on the main page of the website.
+
+
+
+ There are currently {0} users online:
+ A greeting on the main page of the website.
+
+
+
+ You have {0} authentication attempts pending. Click here to view them.
+ A greeting on the main page of the website.
+
+
+
+ Newest Levels
+
+
+
+ Latest Team Picks
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/LandingPage.lang-da-DK.resx b/ProjectLighthouse.Localization/LandingPage.lang-da-DK.resx
new file mode 100644
index 00000000..160394c2
--- /dev/null
+++ b/ProjectLighthouse.Localization/LandingPage.lang-da-DK.resx
@@ -0,0 +1,62 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+
+ Velkommen til {0}!
+ A greeting on the main page of the website.
+
+
+
+ Du er i øjeblikket logget ind som {0}.
+ A greeting on the main page of the website.
+
+
+
+ Der er ingen brugere online. Hvorfor ikke hoppe på?
+ A greeting on the main page of the website.
+
+
+
+ Der er 1 bruger online:
+ A greeting on the main page of the website.
+
+
+
+ Der er {0} brugere online:
+ A greeting on the main page of the website.
+
+
+
+ Du har {0} godkendelsesforsøg afventende. Klik her for at se dem.
+ A greeting on the main page of the website.
+
+
+
+ Seneste Baner
+
+
+
+ Seneste Team Picks
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/LandingPage.lang-de-DE.resx b/ProjectLighthouse.Localization/LandingPage.lang-de-DE.resx
new file mode 100644
index 00000000..ed7772d2
--- /dev/null
+++ b/ProjectLighthouse.Localization/LandingPage.lang-de-DE.resx
@@ -0,0 +1,62 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+
+ Welcome to {0}!
+ A greeting on the main page of the website.
+
+
+
+ You are currently logged in as {0}.
+ A greeting on the main page of the website.
+
+
+
+ There are no users online. Why not hop on?
+ A greeting on the main page of the website.
+
+
+
+ There is 1 user currently online:
+ A greeting on the main page of the website.
+
+
+
+ There are currently {0} users online:
+ A greeting on the main page of the website.
+
+
+
+ You have {0} authentication attempts pending. Click here to view them.
+ A greeting on the main page of the website.
+
+
+
+ Newest Levels
+
+
+
+ Latest Team Picks
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/LandingPage.lang-eo-UY.resx b/ProjectLighthouse.Localization/LandingPage.lang-eo-UY.resx
new file mode 100644
index 00000000..17c09a1d
--- /dev/null
+++ b/ProjectLighthouse.Localization/LandingPage.lang-eo-UY.resx
@@ -0,0 +1,62 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+
+ Welcome to {0}!
+ A greeting on the main page of the website.
+
+
+
+ Vi ensalutinta kiel {0}.
+ A greeting on the main page of the website.
+
+
+
+ Ne estas uzantoj enretaj. Kial ne sursalti?
+ A greeting on the main page of the website.
+
+
+
+ Estas 1 uzanto enreta:
+ A greeting on the main page of the website.
+
+
+
+ Estas {0} uzantoj enretaj:
+ A greeting on the main page of the website.
+
+
+
+ Vi havas {0} pritraktatajn aŭtentigajn provojn. Klaku ĉi tie por vidi ilin.
+ A greeting on the main page of the website.
+
+
+
+ Newest Levels
+
+
+
+ Latest Team Picks
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/LandingPage.lang-es-MX.resx b/ProjectLighthouse.Localization/LandingPage.lang-es-MX.resx
new file mode 100644
index 00000000..874ee983
--- /dev/null
+++ b/ProjectLighthouse.Localization/LandingPage.lang-es-MX.resx
@@ -0,0 +1,62 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+
+ Welcome to {0}!
+ A greeting on the main page of the website.
+
+
+
+ Estás conectado actualmente como {0}
+ A greeting on the main page of the website.
+
+
+
+ No hay usuarios en línea. ¿Por qué no subirse?
+ A greeting on the main page of the website.
+
+
+
+ Hay 1 usuario actualmente en línea:
+ A greeting on the main page of the website.
+
+
+
+ Actualmente hay {0} usuarios en línea:
+ A greeting on the main page of the website.
+
+
+
+ Tiene {0} intentos de autenticación pendientes. Haga clic aquí para verlos.
+ A greeting on the main page of the website.
+
+
+
+ Newest Levels
+
+
+
+ Latest Team Picks
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/LandingPage.lang-fil-PH.resx b/ProjectLighthouse.Localization/LandingPage.lang-fil-PH.resx
new file mode 100644
index 00000000..ed7772d2
--- /dev/null
+++ b/ProjectLighthouse.Localization/LandingPage.lang-fil-PH.resx
@@ -0,0 +1,62 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+
+ Welcome to {0}!
+ A greeting on the main page of the website.
+
+
+
+ You are currently logged in as {0}.
+ A greeting on the main page of the website.
+
+
+
+ There are no users online. Why not hop on?
+ A greeting on the main page of the website.
+
+
+
+ There is 1 user currently online:
+ A greeting on the main page of the website.
+
+
+
+ There are currently {0} users online:
+ A greeting on the main page of the website.
+
+
+
+ You have {0} authentication attempts pending. Click here to view them.
+ A greeting on the main page of the website.
+
+
+
+ Newest Levels
+
+
+
+ Latest Team Picks
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/LandingPage.lang-fr-FR.resx b/ProjectLighthouse.Localization/LandingPage.lang-fr-FR.resx
new file mode 100644
index 00000000..ed7772d2
--- /dev/null
+++ b/ProjectLighthouse.Localization/LandingPage.lang-fr-FR.resx
@@ -0,0 +1,62 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+
+ Welcome to {0}!
+ A greeting on the main page of the website.
+
+
+
+ You are currently logged in as {0}.
+ A greeting on the main page of the website.
+
+
+
+ There are no users online. Why not hop on?
+ A greeting on the main page of the website.
+
+
+
+ There is 1 user currently online:
+ A greeting on the main page of the website.
+
+
+
+ There are currently {0} users online:
+ A greeting on the main page of the website.
+
+
+
+ You have {0} authentication attempts pending. Click here to view them.
+ A greeting on the main page of the website.
+
+
+
+ Newest Levels
+
+
+
+ Latest Team Picks
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/LandingPage.lang-ga-IE.resx b/ProjectLighthouse.Localization/LandingPage.lang-ga-IE.resx
new file mode 100644
index 00000000..ed7772d2
--- /dev/null
+++ b/ProjectLighthouse.Localization/LandingPage.lang-ga-IE.resx
@@ -0,0 +1,62 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+
+ Welcome to {0}!
+ A greeting on the main page of the website.
+
+
+
+ You are currently logged in as {0}.
+ A greeting on the main page of the website.
+
+
+
+ There are no users online. Why not hop on?
+ A greeting on the main page of the website.
+
+
+
+ There is 1 user currently online:
+ A greeting on the main page of the website.
+
+
+
+ There are currently {0} users online:
+ A greeting on the main page of the website.
+
+
+
+ You have {0} authentication attempts pending. Click here to view them.
+ A greeting on the main page of the website.
+
+
+
+ Newest Levels
+
+
+
+ Latest Team Picks
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/LandingPage.lang-gd-GB.resx b/ProjectLighthouse.Localization/LandingPage.lang-gd-GB.resx
new file mode 100644
index 00000000..ed7772d2
--- /dev/null
+++ b/ProjectLighthouse.Localization/LandingPage.lang-gd-GB.resx
@@ -0,0 +1,62 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+
+ Welcome to {0}!
+ A greeting on the main page of the website.
+
+
+
+ You are currently logged in as {0}.
+ A greeting on the main page of the website.
+
+
+
+ There are no users online. Why not hop on?
+ A greeting on the main page of the website.
+
+
+
+ There is 1 user currently online:
+ A greeting on the main page of the website.
+
+
+
+ There are currently {0} users online:
+ A greeting on the main page of the website.
+
+
+
+ You have {0} authentication attempts pending. Click here to view them.
+ A greeting on the main page of the website.
+
+
+
+ Newest Levels
+
+
+
+ Latest Team Picks
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/LandingPage.lang-ja-JP.resx b/ProjectLighthouse.Localization/LandingPage.lang-ja-JP.resx
new file mode 100644
index 00000000..3611578d
--- /dev/null
+++ b/ProjectLighthouse.Localization/LandingPage.lang-ja-JP.resx
@@ -0,0 +1,62 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+
+ {0}へようこそ
+ A greeting on the main page of the website.
+
+
+
+ {0}がログインしています
+ A greeting on the main page of the website.
+
+
+
+ オンラインユーザーはなし
+ A greeting on the main page of the website.
+
+
+
+ 1人のユーザーがオンライン
+ A greeting on the main page of the website.
+
+
+
+ {0}人のユーザーがオンライン
+ A greeting on the main page of the website.
+
+
+
+ {0} の認証が保留中です。ここをクリックして確認してください。
+ A greeting on the main page of the website.
+
+
+
+ 最新のレベル
+
+
+
+ 最新のチームピック
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/LandingPage.lang-no-NO.resx b/ProjectLighthouse.Localization/LandingPage.lang-no-NO.resx
new file mode 100644
index 00000000..bb049a4d
--- /dev/null
+++ b/ProjectLighthouse.Localization/LandingPage.lang-no-NO.resx
@@ -0,0 +1,62 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+
+ Velkommen til {0}
+ A greeting on the main page of the website.
+
+
+
+ Du er logget inn som {0}
+ A greeting on the main page of the website.
+
+
+
+ Det er ingen brukere på. Hvorfor ikke hoppe på?
+ A greeting on the main page of the website.
+
+
+
+ Det er 1 bruker på for øyeblikket:
+ A greeting on the main page of the website.
+
+
+
+ For tiden er {0} brukere pålogget:
+ A greeting on the main page of the website.
+
+
+
+ Du har {0} autentiseringsforsøk. Klikk her for å se dem.
+ A greeting on the main page of the website.
+
+
+
+ Nyeste nivåer
+
+
+
+ Siste lag valg
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/LandingPage.lang-pl-PL.resx b/ProjectLighthouse.Localization/LandingPage.lang-pl-PL.resx
new file mode 100644
index 00000000..3ec4379d
--- /dev/null
+++ b/ProjectLighthouse.Localization/LandingPage.lang-pl-PL.resx
@@ -0,0 +1,62 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+
+ Welcome to {0}!
+ A greeting on the main page of the website.
+
+
+
+ Jesteś zalogowany jako {0}.
+ A greeting on the main page of the website.
+
+
+
+ Nikt nie jest online. Dlaczego by nie zagrać?
+ A greeting on the main page of the website.
+
+
+
+ Jest 1 gracz online:
+ A greeting on the main page of the website.
+
+
+
+ Obecnie jest {0} graczy online:
+ A greeting on the main page of the website.
+
+
+
+ Masz {0} oczekujących prób autoryzacji. Kliknij tutaj, by je zobaczyć.
+ A greeting on the main page of the website.
+
+
+
+ Newest Levels
+
+
+
+ Latest Team Picks
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/LandingPage.lang-pt-PT.resx b/ProjectLighthouse.Localization/LandingPage.lang-pt-PT.resx
new file mode 100644
index 00000000..9e0b0918
--- /dev/null
+++ b/ProjectLighthouse.Localization/LandingPage.lang-pt-PT.resx
@@ -0,0 +1,62 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+
+ Bem-vindo ao {0}!
+ A greeting on the main page of the website.
+
+
+
+ Você está logado como {0}.
+ A greeting on the main page of the website.
+
+
+
+ Não há utilizadores online. Por que não entrar?
+ A greeting on the main page of the website.
+
+
+
+ Há 1 utilizador online no momento:
+ A greeting on the main page of the website.
+
+
+
+ Atualmente, existem {0} utilizadores ‘ligado’:
+ A greeting on the main page of the website.
+
+
+
+ Você tem {0} tentativas de acesso pendentes. Clique aqui para visualizá-las.
+ A greeting on the main page of the website.
+
+
+
+ Níveis novos
+
+
+
+ Escolhas mais recentes da equipa
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/LandingPage.lang-ru-RU.resx b/ProjectLighthouse.Localization/LandingPage.lang-ru-RU.resx
new file mode 100644
index 00000000..f7628214
--- /dev/null
+++ b/ProjectLighthouse.Localization/LandingPage.lang-ru-RU.resx
@@ -0,0 +1,62 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+
+ Добро пожаловать в {0}
+ A greeting on the main page of the website.
+
+
+
+ Вы вошли как {0}
+ A greeting on the main page of the website.
+
+
+
+ Нет пользователей в сети. Почему бы и не поиграть?
+ A greeting on the main page of the website.
+
+
+
+ Сейчас в сети 1 пользователь:
+ A greeting on the main page of the website.
+
+
+
+ В настоящее время сейчас {0} онлайн:
+ A greeting on the main page of the website.
+
+
+
+ У вас есть {0} попыток аутентификации в ожидании. Нажмите здесь, чтобы просмотреть их.
+ A greeting on the main page of the website.
+
+
+
+ Новые уровни
+
+
+
+ Последние избранное
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/LandingPage.lang-sv-SE.resx b/ProjectLighthouse.Localization/LandingPage.lang-sv-SE.resx
new file mode 100644
index 00000000..ca1cae9d
--- /dev/null
+++ b/ProjectLighthouse.Localization/LandingPage.lang-sv-SE.resx
@@ -0,0 +1,62 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+
+ Välkommen till {0}!
+ A greeting on the main page of the website.
+
+
+
+ Du är inloggad som {0}.
+ A greeting on the main page of the website.
+
+
+
+ Ingen är online. Dags att gibba?
+ A greeting on the main page of the website.
+
+
+
+ 1 användare är online:
+ A greeting on the main page of the website.
+
+
+
+ {0} användare är online:
+ A greeting on the main page of the website.
+
+
+
+ {0} autentiseringsförsök väntar. Klicka här för att visa dem.
+ A greeting on the main page of the website.
+
+
+
+ Senaste Banor
+
+
+
+ Senaste Team Picks
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/LandingPage.lang-zh-CN.resx b/ProjectLighthouse.Localization/LandingPage.lang-zh-CN.resx
new file mode 100644
index 00000000..ed7772d2
--- /dev/null
+++ b/ProjectLighthouse.Localization/LandingPage.lang-zh-CN.resx
@@ -0,0 +1,62 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+
+ Welcome to {0}!
+ A greeting on the main page of the website.
+
+
+
+ You are currently logged in as {0}.
+ A greeting on the main page of the website.
+
+
+
+ There are no users online. Why not hop on?
+ A greeting on the main page of the website.
+
+
+
+ There is 1 user currently online:
+ A greeting on the main page of the website.
+
+
+
+ There are currently {0} users online:
+ A greeting on the main page of the website.
+
+
+
+ You have {0} authentication attempts pending. Click here to view them.
+ A greeting on the main page of the website.
+
+
+
+ Newest Levels
+
+
+
+ Latest Team Picks
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/LandingPage.resx b/ProjectLighthouse.Localization/LandingPage.resx
new file mode 100644
index 00000000..287660e3
--- /dev/null
+++ b/ProjectLighthouse.Localization/LandingPage.resx
@@ -0,0 +1,64 @@
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
+ PublicKeyToken=b77a5c561934e089
+
+
+
+
+ Welcome to {0}!
+ A greeting on the main page of the website.
+
+
+
+ You are currently logged in as {0}.
+ A greeting on the main page of the website.
+
+
+
+ There are no users online. Why not hop on?
+ A greeting on the main page of the website.
+
+
+
+ There is 1 user currently online:
+ A greeting on the main page of the website.
+
+
+
+ There are currently {0} users online:
+ A greeting on the main page of the website.
+
+
+
+ You have {0} authentication attempts pending. Click here to view them.
+ A greeting on the main page of the website.
+
+
+
+ Newest Levels
+
+
+
+ Latest Team Picks
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/LocalizationManager.cs b/ProjectLighthouse.Localization/LocalizationManager.cs
new file mode 100644
index 00000000..ba24ae58
--- /dev/null
+++ b/ProjectLighthouse.Localization/LocalizationManager.cs
@@ -0,0 +1,126 @@
+using System.Diagnostics;
+using System.Reflection;
+using System.Resources;
+
+namespace LBPUnion.ProjectLighthouse.Localization;
+
+public static class LocalizationManager
+{
+ private static readonly string namespaceStr = typeof(LocalizationManager).Namespace ?? "";
+ public const string DefaultLang = "en-US";
+
+ public static string GetLocalizedString(TranslationAreas translationArea, string language, string key)
+ {
+ // ASP.NET requires specific names for certain languages (like ja for japanese as opposed to the standard ja-JP)
+ // We map that value back here.
+ language = mapLanguageBack(language);
+
+ #if DEBUG
+ Console.WriteLine($"Attempting to load '{key}' for '{language}'");
+ #endif
+
+ string resourceBasename = $"{namespaceStr}.{translationArea.ToString()}";
+
+ // We don't have an en-US .resx, so if we aren't using en-US then we need to add the appropriate language.
+ // Otherwise, keep it to the normal .resx file
+ // e.g. BaseLayout.resx as opposed to BaseLayout.lang-da-DK.resx.
+ if (language != DefaultLang) resourceBasename += $".lang-{language}";
+
+ string? localizedString = null;
+ try
+ {
+ ResourceManager resourceManager = new(resourceBasename,
+ Assembly.GetExecutingAssembly());
+
+ localizedString = resourceManager.GetString(key);
+ }
+ catch
+ {
+ // ignored
+ }
+
+ if (localizedString == null)
+ {
+ #if DEBUG
+ if (Debugger.IsAttached) Debugger.Break();
+ #endif
+ return $"{translationArea.ToString()}.{language}.{key}";
+ }
+
+ return localizedString;
+ }
+
+ // If a language isn't working, it might be because a language is using a different name than what ASP.NET expects.
+ // You can retrieve the name of the language from the Accept-Language header in an HTTP request.
+ private static readonly Dictionary languageMappings = new()
+ {
+ {
+ "ja-JP", "ja"
+ },
+ {
+ "eo-UY", "eo"
+ },
+ {
+ "ru-RU", "ru"
+ },
+ {
+ "pt-PT", "pt"
+ },
+ {
+ "no-NO", "no"
+ },
+ {
+ "pl-PL", "pl"
+ },
+ {
+ "fr-FR", "fr"
+ },
+ {
+ "de-DE", "de"
+ }
+ };
+
+ ///
+ /// Some languages crowdin uses have names that differ from the ones that ASP.NET expects. This function converts the names.
+ ///
+ /// The language to convert to ASP.NET names
+ /// The name of the language that ASP.NET expects.
+ public static string MapLanguage(string language)
+ {
+ foreach ((string? key, string? value) in languageMappings)
+ {
+ if (key == language) return value;
+ }
+
+ return language;
+ }
+
+ private static string mapLanguageBack(string language)
+ {
+ foreach ((string? key, string? value) in languageMappings)
+ {
+ if (value == language) return key;
+ }
+
+ return language;
+ }
+
+ // This is a bit scuffed, but it will work for what I need it to do.
+ public static IEnumerable GetAvailableLanguages()
+ {
+ string area = TranslationAreas.BaseLayout.ToString();
+
+ List languages = Assembly.GetExecutingAssembly()
+ .GetManifestResourceNames()
+ .Where(r => r.StartsWith($"{namespaceStr}.{area}"))
+ .Select(r => r.Substring(r.IndexOf(area), r.Length - r.IndexOf(area)).Substring(area.Length + 1))
+ .Select(r => r.Replace(".resources", string.Empty)) // Remove .resources
+ .Select(r => r.Replace("lang-", string.Empty)) // Remove 'lang-' prefix from languages
+ .Where(r => r != "resources")
+ .ToList();
+
+ languages.Add(DefaultLang);
+
+ return languages;
+ }
+}
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/LoggedOut.lang-ar-SA.resx b/ProjectLighthouse.Localization/LoggedOut.lang-ar-SA.resx
new file mode 100644
index 00000000..9f53122d
--- /dev/null
+++ b/ProjectLighthouse.Localization/LoggedOut.lang-ar-SA.resx
@@ -0,0 +1,29 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Logged Out
+
+
+ You have been successfully logged out. You will be redirected in 5 seconds, or you may click below to do so manually.
+
+
+ Redirect
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/LoggedOut.lang-da-DK.resx b/ProjectLighthouse.Localization/LoggedOut.lang-da-DK.resx
new file mode 100644
index 00000000..2c1315cd
--- /dev/null
+++ b/ProjectLighthouse.Localization/LoggedOut.lang-da-DK.resx
@@ -0,0 +1,29 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Logget ud
+
+
+ Du er blevet logget ud. Du vil blive omdirigeret om 5 sekunder, eller du kan klikke nedenfor for at gøre det manuelt.
+
+
+ Omdiriger
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/LoggedOut.lang-de-DE.resx b/ProjectLighthouse.Localization/LoggedOut.lang-de-DE.resx
new file mode 100644
index 00000000..9f53122d
--- /dev/null
+++ b/ProjectLighthouse.Localization/LoggedOut.lang-de-DE.resx
@@ -0,0 +1,29 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Logged Out
+
+
+ You have been successfully logged out. You will be redirected in 5 seconds, or you may click below to do so manually.
+
+
+ Redirect
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/LoggedOut.lang-eo-UY.resx b/ProjectLighthouse.Localization/LoggedOut.lang-eo-UY.resx
new file mode 100644
index 00000000..9f53122d
--- /dev/null
+++ b/ProjectLighthouse.Localization/LoggedOut.lang-eo-UY.resx
@@ -0,0 +1,29 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Logged Out
+
+
+ You have been successfully logged out. You will be redirected in 5 seconds, or you may click below to do so manually.
+
+
+ Redirect
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/LoggedOut.lang-es-MX.resx b/ProjectLighthouse.Localization/LoggedOut.lang-es-MX.resx
new file mode 100644
index 00000000..9f53122d
--- /dev/null
+++ b/ProjectLighthouse.Localization/LoggedOut.lang-es-MX.resx
@@ -0,0 +1,29 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Logged Out
+
+
+ You have been successfully logged out. You will be redirected in 5 seconds, or you may click below to do so manually.
+
+
+ Redirect
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/LoggedOut.lang-fil-PH.resx b/ProjectLighthouse.Localization/LoggedOut.lang-fil-PH.resx
new file mode 100644
index 00000000..9f53122d
--- /dev/null
+++ b/ProjectLighthouse.Localization/LoggedOut.lang-fil-PH.resx
@@ -0,0 +1,29 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Logged Out
+
+
+ You have been successfully logged out. You will be redirected in 5 seconds, or you may click below to do so manually.
+
+
+ Redirect
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/LoggedOut.lang-fr-FR.resx b/ProjectLighthouse.Localization/LoggedOut.lang-fr-FR.resx
new file mode 100644
index 00000000..9f53122d
--- /dev/null
+++ b/ProjectLighthouse.Localization/LoggedOut.lang-fr-FR.resx
@@ -0,0 +1,29 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Logged Out
+
+
+ You have been successfully logged out. You will be redirected in 5 seconds, or you may click below to do so manually.
+
+
+ Redirect
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/LoggedOut.lang-ga-IE.resx b/ProjectLighthouse.Localization/LoggedOut.lang-ga-IE.resx
new file mode 100644
index 00000000..9f53122d
--- /dev/null
+++ b/ProjectLighthouse.Localization/LoggedOut.lang-ga-IE.resx
@@ -0,0 +1,29 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Logged Out
+
+
+ You have been successfully logged out. You will be redirected in 5 seconds, or you may click below to do so manually.
+
+
+ Redirect
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/LoggedOut.lang-ja-JP.resx b/ProjectLighthouse.Localization/LoggedOut.lang-ja-JP.resx
new file mode 100644
index 00000000..09810770
--- /dev/null
+++ b/ProjectLighthouse.Localization/LoggedOut.lang-ja-JP.resx
@@ -0,0 +1,29 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ ログアウトしました
+
+
+ 正常にログアウトされました。5秒後にリダイレクトされるか、以下をクリックして手動でログアウトできます。
+
+
+ リダイレクト
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/LoggedOut.lang-no-NO.resx b/ProjectLighthouse.Localization/LoggedOut.lang-no-NO.resx
new file mode 100644
index 00000000..a33eb4e2
--- /dev/null
+++ b/ProjectLighthouse.Localization/LoggedOut.lang-no-NO.resx
@@ -0,0 +1,29 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Logget ut
+
+
+ Du har blitt logget ut. Du vil bli omdirigert om 5 sekunder, eller du kan klikke nedenfor for å gjøre det manuelt.
+
+
+ Videresend
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/LoggedOut.lang-pl-PL.resx b/ProjectLighthouse.Localization/LoggedOut.lang-pl-PL.resx
new file mode 100644
index 00000000..9f53122d
--- /dev/null
+++ b/ProjectLighthouse.Localization/LoggedOut.lang-pl-PL.resx
@@ -0,0 +1,29 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Logged Out
+
+
+ You have been successfully logged out. You will be redirected in 5 seconds, or you may click below to do so manually.
+
+
+ Redirect
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/LoggedOut.lang-pt-PT.resx b/ProjectLighthouse.Localization/LoggedOut.lang-pt-PT.resx
new file mode 100644
index 00000000..f125baa8
--- /dev/null
+++ b/ProjectLighthouse.Localization/LoggedOut.lang-pt-PT.resx
@@ -0,0 +1,29 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Sessão encerrada
+
+
+ Foi desconectado com sucesso. Será redirecionado em 5 segundos, ou pode clicar abaixo para fazê-lo manualmente.
+
+
+ Redirecionar
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/LoggedOut.lang-ru-RU.resx b/ProjectLighthouse.Localization/LoggedOut.lang-ru-RU.resx
new file mode 100644
index 00000000..ba89348f
--- /dev/null
+++ b/ProjectLighthouse.Localization/LoggedOut.lang-ru-RU.resx
@@ -0,0 +1,29 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Выход
+
+
+ Вы успешно вышли из системы. Вы будете перенаправлены через 5 секунд, или можете нажать ниже, чтобы сделать это вручную.
+
+
+ Перенаправить
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/LoggedOut.lang-sv-SE.resx b/ProjectLighthouse.Localization/LoggedOut.lang-sv-SE.resx
new file mode 100644
index 00000000..50daa5ee
--- /dev/null
+++ b/ProjectLighthouse.Localization/LoggedOut.lang-sv-SE.resx
@@ -0,0 +1,29 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Utloggad
+
+
+ Du har loggat ut. Om 5 sekunder kommer du bli omderigerad, eller kan du klicka på knappen under, manuellt.
+
+
+ Omdirigera
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/LoggedOut.lang-zh-CN.resx b/ProjectLighthouse.Localization/LoggedOut.lang-zh-CN.resx
new file mode 100644
index 00000000..9f53122d
--- /dev/null
+++ b/ProjectLighthouse.Localization/LoggedOut.lang-zh-CN.resx
@@ -0,0 +1,29 @@
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Logged Out
+
+
+ You have been successfully logged out. You will be redirected in 5 seconds, or you may click below to do so manually.
+
+
+ Redirect
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/LoggedOut.resx b/ProjectLighthouse.Localization/LoggedOut.resx
new file mode 100644
index 00000000..2d555c7e
--- /dev/null
+++ b/ProjectLighthouse.Localization/LoggedOut.resx
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Logged Out
+
+
+ You have been successfully logged out. You will be redirected in 5 seconds, or you may click below to do so manually.
+
+
+ Redirect
+
+
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/Program.cs b/ProjectLighthouse.Localization/Program.cs
new file mode 100644
index 00000000..a4603129
--- /dev/null
+++ b/ProjectLighthouse.Localization/Program.cs
@@ -0,0 +1,22 @@
+using System.Reflection;
+
+namespace LBPUnion.ProjectLighthouse.Localization;
+
+public static class Program
+{
+ public static void Main()
+ {
+ Console.WriteLine("Resource files loaded:");
+ foreach (string resourceFile in Assembly.GetExecutingAssembly().GetManifestResourceNames())
+ {
+ Console.WriteLine(" " + resourceFile);
+ }
+
+ Console.Write('\n');
+
+ foreach (string language in LocalizationManager.GetAvailableLanguages())
+ {
+ Console.WriteLine(LocalizationManager.GetLocalizedString(TranslationAreas.BaseLayout, language, "header_home"));
+ }
+ }
+}
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/ProjectLighthouse.Localization.csproj b/ProjectLighthouse.Localization/ProjectLighthouse.Localization.csproj
new file mode 100644
index 00000000..57dfbc18
--- /dev/null
+++ b/ProjectLighthouse.Localization/ProjectLighthouse.Localization.csproj
@@ -0,0 +1,26 @@
+
+
+
+ net6.0
+ enable
+ enable
+ LBPUnion.ProjectLighthouse.Localization
+ Exe
+
+
+
+
+ ResXFileCodeGenerator
+ LandingPage.Designer.cs
+
+
+ ResXFileCodeGenerator
+ General.Designer.cs
+
+
+ ResXFileCodeGenerator
+ LoggedOut.Designer.cs
+
+
+
+
diff --git a/ProjectLighthouse.Localization/StringLists/BaseLayoutStrings.cs b/ProjectLighthouse.Localization/StringLists/BaseLayoutStrings.cs
new file mode 100644
index 00000000..91e56acc
--- /dev/null
+++ b/ProjectLighthouse.Localization/StringLists/BaseLayoutStrings.cs
@@ -0,0 +1,17 @@
+namespace LBPUnion.ProjectLighthouse.Localization.StringLists;
+
+public static class BaseLayoutStrings
+{
+ public static readonly TranslatableString HeaderHome = create("header_home");
+ public static readonly TranslatableString HeaderUsers = create("header_users");
+ public static readonly TranslatableString HeaderPhotos = create("header_photos");
+ public static readonly TranslatableString HeaderSlots = create("header_slots");
+ public static readonly TranslatableString HeaderAuthentication = create("header_authentication");
+
+ public static readonly TranslatableString HeaderLoginRegister = create("header_loginRegister");
+ public static readonly TranslatableString HeaderProfile = create("header_profile");
+ public static readonly TranslatableString HeaderAdminPanel = create("header_adminPanel");
+ public static readonly TranslatableString HeaderLogout = create("header_logout");
+
+ private static TranslatableString create(string key) => new(TranslationAreas.BaseLayout, key);
+}
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/StringLists/GeneralStrings.cs b/ProjectLighthouse.Localization/StringLists/GeneralStrings.cs
new file mode 100644
index 00000000..db134368
--- /dev/null
+++ b/ProjectLighthouse.Localization/StringLists/GeneralStrings.cs
@@ -0,0 +1,13 @@
+namespace LBPUnion.ProjectLighthouse.Localization.StringLists;
+
+public static class GeneralStrings
+{
+ public static readonly TranslatableString Username = create("username");
+ public static readonly TranslatableString Password = create("password");
+ public static readonly TranslatableString Register = create("register");
+ public static readonly TranslatableString ForgotPassword = create("forgot_password");
+ public static readonly TranslatableString Error = create("error");
+ public static readonly TranslatableString LogIn = create("log_in");
+
+ private static TranslatableString create(string key) => new(TranslationAreas.General, key);
+}
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/StringLists/LandingPageStrings.cs b/ProjectLighthouse.Localization/StringLists/LandingPageStrings.cs
new file mode 100644
index 00000000..7ec962e8
--- /dev/null
+++ b/ProjectLighthouse.Localization/StringLists/LandingPageStrings.cs
@@ -0,0 +1,18 @@
+namespace LBPUnion.ProjectLighthouse.Localization.StringLists;
+
+public static class LandingPageStrings
+{
+ public static readonly TranslatableString Welcome = create("welcome");
+ public static readonly TranslatableString LoggedInAs = create("loggedInAs");
+
+ public static readonly TranslatableString UsersNone = create("users_none");
+ public static readonly TranslatableString UsersSingle = create("users_single");
+ public static readonly TranslatableString UsersMultiple = create("users_multiple");
+
+ public static readonly TranslatableString LatestTeamPicks = create("latest_team_picks");
+ public static readonly TranslatableString NewestLevels = create("newest_levels");
+
+ public static readonly TranslatableString AuthAttemptsPending = create("authAttemptsPending");
+
+ private static TranslatableString create(string key) => new(TranslationAreas.LandingPage, key);
+}
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/StringLists/LoggedOutStrings.cs b/ProjectLighthouse.Localization/StringLists/LoggedOutStrings.cs
new file mode 100644
index 00000000..e8ae3bb9
--- /dev/null
+++ b/ProjectLighthouse.Localization/StringLists/LoggedOutStrings.cs
@@ -0,0 +1,10 @@
+namespace LBPUnion.ProjectLighthouse.Localization.StringLists;
+
+public static class LoggedOutStrings
+{
+ public static readonly TranslatableString LoggedOut = create("logged_out");
+ public static readonly TranslatableString LoggedOutInfo = create("logged_out_info");
+ public static readonly TranslatableString Redirect = create("redirect");
+
+ private static TranslatableString create(string key) => new(TranslationAreas.LoggedOut, key);
+}
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/TranslatableString.cs b/ProjectLighthouse.Localization/TranslatableString.cs
new file mode 100644
index 00000000..633a5eb4
--- /dev/null
+++ b/ProjectLighthouse.Localization/TranslatableString.cs
@@ -0,0 +1,27 @@
+namespace LBPUnion.ProjectLighthouse.Localization;
+
+public class TranslatableString
+{
+ public TranslatableString(TranslationAreas area, string key)
+ {
+ this.Key = key;
+ this.Area = area;
+ }
+
+ public string Key { get; init; }
+ public TranslationAreas Area { get; init; }
+
+ public string Translate(string language) => LocalizationManager.GetLocalizedString(this.Area, language, this.Key);
+
+ public string Translate(string language, params object?[] format) => string.Format(LocalizationManager.GetLocalizedString(this.Area, language, this.Key), format);
+
+ // CS0809 is a warning about obsolete methods overriding non-obsoleted methods.
+ // That works against what we're trying to do here, so we disable the warning here.
+ #pragma warning disable CS0809
+ [Obsolete("Do not translate by using ToString. Use TranslatableString.Translate().", true)]
+ public override string ToString() => "NOT TRANSLATED CORRECTLY!";
+ #pragma warning restore CS0809
+
+ [Obsolete("Do not translate by using ToString. Use TranslatableString.Translate().", true)]
+ public static implicit operator string(TranslatableString _) => "NOT TRANSLATED CORRECTLY!";
+}
\ No newline at end of file
diff --git a/ProjectLighthouse.Localization/TranslationAreas.cs b/ProjectLighthouse.Localization/TranslationAreas.cs
new file mode 100644
index 00000000..ae90be13
--- /dev/null
+++ b/ProjectLighthouse.Localization/TranslationAreas.cs
@@ -0,0 +1,9 @@
+namespace LBPUnion.ProjectLighthouse.Localization;
+
+public enum TranslationAreas
+{
+ BaseLayout,
+ LandingPage,
+ General,
+ LoggedOut,
+}
\ No newline at end of file
diff --git a/ProjectLighthouse.Servers.GameServer/Controllers/ReportController.cs b/ProjectLighthouse.Servers.GameServer/Controllers/ReportController.cs
index 0b39c355..9883a7d7 100644
--- a/ProjectLighthouse.Servers.GameServer/Controllers/ReportController.cs
+++ b/ProjectLighthouse.Servers.GameServer/Controllers/ReportController.cs
@@ -2,6 +2,7 @@
using System.Text.Json;
using System.Xml.Serialization;
using LBPUnion.ProjectLighthouse.Administration.Reports;
+using LBPUnion.ProjectLighthouse.Configuration;
using LBPUnion.ProjectLighthouse.Helpers;
using LBPUnion.ProjectLighthouse.PlayerData.Profiles;
using LBPUnion.ProjectLighthouse.Types;
@@ -45,6 +46,13 @@ public class ReportController : ControllerBase
this.database.Reports.Add(report);
await this.database.SaveChangesAsync();
+ await WebhookHelper.SendWebhook(
+ title: "New grief report",
+ description: $"Submitted by {user.Username}\n" +
+ $"To view it, click [here]({ServerConfiguration.Instance.ExternalUrl}/admin/report/{report.ReportId}).",
+ dest: WebhookHelper.WebhookDestination.Moderation
+ );
+
return this.Ok();
}
diff --git a/ProjectLighthouse.Servers.Website/Pages/LandingPage.cshtml b/ProjectLighthouse.Servers.Website/Pages/LandingPage.cshtml
index c881ae1e..60dbddf0 100644
--- a/ProjectLighthouse.Servers.Website/Pages/LandingPage.cshtml
+++ b/ProjectLighthouse.Servers.Website/Pages/LandingPage.cshtml
@@ -3,6 +3,7 @@
@using LBPUnion.ProjectLighthouse.Extensions
@using LBPUnion.ProjectLighthouse.PlayerData.Profiles
@using LBPUnion.ProjectLighthouse.Levels
+@using LBPUnion.ProjectLighthouse.Localization.StringLists
@model LBPUnion.ProjectLighthouse.Servers.Website.Pages.LandingPage
@{
@@ -10,22 +11,22 @@
Model.ShowTitleInPage = false;
bool isMobile = this.Request.IsMobile();
}
-
Welcome to @ServerConfiguration.Instance.Customization.ServerName!