Merge pull request #29 from cblanc/bring_back_user_plugin

Bring back user plugin
This commit is contained in:
simplefl 2015-06-16 00:22:46 +02:00
commit cd2d87d8e9
2 changed files with 55 additions and 0 deletions

View file

@ -0,0 +1,53 @@
class PluginController < ApplicationController
def user
buffer = []
out = []
if ban = Ban.first(:conditions => ["expiry > UTC_TIMESTAMP() AND steamid = ? AND ban_type = ?", params[:id], Ban::TYPE_SERVER])
out << "#USER#"
out << "BANNED"
out << ban.expiry.utc.to_i
out << ban.reason
out << "\r\r\r\r\r\r\r"
elsif user = User.first(:conditions => {:steamid => params[:id]})
teamer = (user.team ? user.teamers.active.of_team(user.team).first : nil)
icon = 0
rank = "User"
if Group.find(Group::DONORS).users.exists?(user)
rank = "Donor"
icon = icon | 1
end
if Group.find(Group::CHAMPIONS).users.exists?(user)
icon = icon | 2
end
if user.ref?
rank = "Referee"
icon = icon | 4
end
if user.admin?
rank = "Admin"
icon = icon | 8
end
buffer << user.steamid
buffer << user.username
buffer << user.lastip
buffer << (user.team ? Verification.uncrap(user.team.to_s) : "No Team")
buffer << user.id
buffer << user.team_id
buffer << rank
buffer << (teamer ? teamer.ranks[teamer.rank] : "")
buffer << icon
buffer << params[:ch] ? params[:ch] : ""
buffer << (user.can_play? ? "1" : "0")
out << "#USER#"
out << Verification.verify(buffer.join)
out << buffer.join("\r")
else
out << "#FAIL#"
end
render_out out
end
end

View file

@ -111,6 +111,8 @@ Ensl::Application.routes.draw do
match 'movies/preview'
match 'movies/snapshot'
match 'plugin/user'
match 'users/forgot'
match 'users/recover'
match 'users/agenda'