mirror of
https://github.com/lifestorm/wnsrc.git
synced 2025-12-17 21:53:46 +03:00
Upload
This commit is contained in:
121
gamemodes/helix/plugins/xenforolink/sh_plugin.lua
Normal file
121
gamemodes/helix/plugins/xenforolink/sh_plugin.lua
Normal file
@@ -0,0 +1,121 @@
|
||||
--[[
|
||||
| This file was obtained through the combined efforts
|
||||
| of Madbluntz & Plymouth Antiquarian Society.
|
||||
|
|
||||
| Credits: lifestorm, Gregory Wayne Rossel JR.,
|
||||
| Maloy, DrPepper10 @ RIP, Atle!
|
||||
|
|
||||
| Visit for more: https://plymouth.thetwilightzone.ru/
|
||||
--]]
|
||||
|
||||
|
||||
local PLUGIN = PLUGIN
|
||||
|
||||
PLUGIN.name = "Xenforo Link"
|
||||
PLUGIN.author = "Gr4Ss"
|
||||
PLUGIN.description = "Links the in-game ranks and factions to the forums."
|
||||
|
||||
if (!sam) then return end
|
||||
|
||||
if (SERVER and !CHTTP) then
|
||||
pcall(require, "chttp")
|
||||
end
|
||||
|
||||
PLUGIN.TOKEN_VALID = 60
|
||||
PLUGIN.NEW_ATTEMPT_WAIT = 1
|
||||
|
||||
PLUGIN.tiers = {
|
||||
"A True Citizen",
|
||||
"Protector",
|
||||
"Galunga Prince"
|
||||
}
|
||||
|
||||
CAMI.RegisterPrivilege({
|
||||
Name = "Helix - Manage Temp Admin",
|
||||
MinAccess = "superadmin"
|
||||
})
|
||||
|
||||
ix.config.Add("whitelistForumLink", true, "Whether or not some whitelists should be linked to forum groups.", nil, {
|
||||
category = "server"
|
||||
})
|
||||
|
||||
ix.util.Include("sh_commands.lua")
|
||||
ix.util.Include("sh_hooks.lua")
|
||||
ix.util.Include("sv_hooks.lua")
|
||||
ix.util.Include("sv_link.lua")
|
||||
ix.util.Include("sv_plugin.lua")
|
||||
|
||||
ix.lang.AddTable("english", {
|
||||
xenforoFailsPause = "You entered the wrong code too many times. Please try again in %d minutes.",
|
||||
xenforoStartWait = "Please wait 1 minute before starting a new linking attempt.",
|
||||
xenforoFailedFindUser = "Something went wrong trying to find the user '%s'.",
|
||||
xenforoFindUserNoExactMatch = "We did not manage to find an exact match for the user '%s'.",
|
||||
xenforoFailedCreatePM = "Something went wrong trying to send the private message with the token.",
|
||||
xenforoFailedCreatePMError = "Received an error when trying to send the private message with the token.",
|
||||
xenforoCodeSend = "Private message with link token was successfully send. Please check your PM's on the forums. Do not disconnect from the server: your token will become invalid.",
|
||||
xenoforoNoLinkActive = "Cannot finishing linking as no link attempt is active. Please use /LinkAccount first.",
|
||||
xenoforoLinkNotValid = "Token is no longer valid. Please start again with /LinkAccount.",
|
||||
xenforoLinkSuccess = "Your account was successfully linked with your forum account!",
|
||||
xenforoFailsPauseStart = "You entered a wrong token too many times. Please wait 1 hour before making a new attempt.",
|
||||
xenforoWrongCode = "You entered a wrong token. You have %d attempts left.",
|
||||
xenforoNotLinked = "%s does not have their forum account linked.",
|
||||
xenforoGroupsUpdateSelf = "Your forum groups have been updated. %d valid groups were found.",
|
||||
xenforoGroupsUpdate = "%s their forum groups have been updated. %d valid groups were found.",
|
||||
xenforoLinkRemoved = "Your link to your forum has been removed.",
|
||||
xenforoNoGroupFound = "Couldn't find the target group '%s'.",
|
||||
xenforoTempGroup = "%s was temporarily given '%s' for '%d' minutes.",
|
||||
xenforoTempGroupRemove = "%s was removed from the temporary group '%s'.",
|
||||
xenforoTempGroupClear = "%s their temporary groups were cleared.",
|
||||
xenforoWhitelistForumLink = "This faction whitelist is managed via the forums. Use /LinkAccount instead!",
|
||||
xenforoTargetForumID = "%s is linked to forum account ID '%d'.",
|
||||
xenforoTargetNoForumID = "%s does not have a forum account linked!",
|
||||
xenforoTargetGroups = "Forum groups: %s",
|
||||
xenforoTargetNoGroups = "%s has no Xenforo groups!",
|
||||
xenforoTargetDynGroups = "Dynamic groups: %s",
|
||||
xenforoTargetDynNoGroups = "%s has no dynamic groups!",
|
||||
xenforoRanks = "SAM ranks: %s",
|
||||
xenforoNoRanks = "%s has no ranks!",
|
||||
xenforoFlags = "Flags: %s",
|
||||
xenforoNoFlags = "%s has no forum-group flags!",
|
||||
xenforoPremium = "Premium tier: %d",
|
||||
xenforoNoPremium = "%s has no premium subscription!",
|
||||
gamemasterToggle = "%s has toggled their gamemaster admin-powers %s!",
|
||||
mentorToggle = "%s has toggled their mentor admin-powers %s!",
|
||||
})
|
||||
|
||||
ix.lang.AddTable("spanish", {
|
||||
xenoforoNoLinkActive = "No se puede linkear al no haber intento de link activo. Por favor, usa /LinkAccount primero.",
|
||||
xenforoNoGroupFound = "No se pudo encontrar el grupo objetivo \"%s\".",
|
||||
xenforoNotLinked = "%s no tiene su cuenta del foro linkeada.",
|
||||
xenforoTempGroupClear = "Grupos temporales de %s removidos.",
|
||||
xenoforoLinkNotValid = "El token ya no es válido. Por favor, empieza de nuevo con /LinkAccount.",
|
||||
xenforoLinkRemoved = "Tu link a tu foro han sido removidos.",
|
||||
xenforoGroupsUpdateSelf = "Tus grupos del foro han sido actualizados. %d grupos válidos fueron encontrados.",
|
||||
xenforoLinkSuccess = "¡Tu cuenta ha sido linkeada exitosamente con tu cuenta del foro!",
|
||||
xenforoCodeSend = "Mensaje privado con el token linkeado fue enviado con éxito. Por favor, revisa tus MPs en el foro. No te desconectes del servidor: Tu token se volverá inválido.",
|
||||
xenforoGroupsUpdate = "%s sus grupos han sido actualizados. %d grupos válidos encontrados.",
|
||||
xenforoFailedCreatePMError = "Error recibido al intentar enviar el mensaje con el token.",
|
||||
xenforoTempGroupRemove = "%s ha sido echado del grupo temporal \"%s\".",
|
||||
xenforoWrongCode = "Introdujiste un token erróneo. Tienes %d intentos más.",
|
||||
xenforoTempGroup = "A %s se le dio temporalmente \"%s\" por \"%d\" minutos.",
|
||||
xenforoFailsPauseStart = "Has introducido un token erróneo demasiadas veces. Por favor, espera 1 hora antes de hacer otro intento.",
|
||||
xenforoWhitelistForumLink = "La whitelist de esta facción es manejada a través del foro ¡Usa /LinkAccount en lugar de eso!",
|
||||
xenforoFindUserNoExactMatch = "No conseguimos encontrar una coincidencia exacta para el usuario '%s'.",
|
||||
xenforoFailedFindUser = "Algo fue mal al intentar buscar al usuario '%s'.",
|
||||
xenforoFailsPause = "Has introducido el código erróneo demasiadas veces. Por favor prueba otra vez en %d minutos.",
|
||||
xenforoFailedCreatePM = "Algo fue mal al intentar enviar el mensaje privado con el token.",
|
||||
xenforoStartWait = "Por favor espera 1 minuto antes de intentar otro intento de enlace.",
|
||||
})
|
||||
|
||||
function PLUGIN:RegisterForumGroup(name, id, data)
|
||||
id = isstring(id) and id or tostring(id)
|
||||
if (!id or id == "") then return end
|
||||
|
||||
if (data.camiGroup) then
|
||||
CAMI.RegisterUsergroup({Name = data.camiGroup, Inherits = data.inherits or "user"}, "helix")
|
||||
end
|
||||
|
||||
if (SERVER) then
|
||||
ix.xenforo:RegisterForumGroup(name, id, data)
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user