Jump to content

[HELP] Please


Resto

Recommended Posts

What?? If you have a code post it along with the errors. Else, please try to explain better.

But I think what's Admin Panel .. so when I give someone ban shows there's nothing other than "Unknown" and I think that there is such a problem and someone had ..

Link to comment
  • 2 months later...
  • 2 weeks later...
Show us a screenshot of your bans tab in the admin oanel, what is exactly unknown?

Here it is .. and I would like to make it go that way Nickname: name without hex, then Date, Time to work and Banned By: Name without hex. Please help :(

AASFGATE.png

admin_ban:

--[[********************************** 
* 
*   Multi Theft Auto - Admin Panel 
* 
*   gui\admin_ban.lua 
* 
*   Original File by lil_Toady 
* 
**************************************]] 
  
aBanForm = nil 
  
function aBanDetails ( ip ) 
    if ( aBanForm == nil ) then 
        local x, y = guiGetScreenSize() 
        aBanForm        = guiCreateWindow ( x / 2 - 130, y / 2 - 150, 260, 300, "Ban Details", false ) 
        aBanIP          = guiCreateLabel ( 0.03, 0.10, 0.80, 0.09, "", true, aBanForm ) 
        aBanNick        = guiCreateLabel ( 0.03, 0.20, 0.80, 0.09, "", true, aBanForm ) 
        aBanDate        = guiCreateLabel ( 0.03, 0.30, 0.80, 0.09, "", true, aBanForm ) 
        aBanTime        = guiCreateLabel ( 0.03, 0.40, 0.80, 0.09, "", true, aBanForm ) 
        aBanBanner      = guiCreateLabel ( 0.03, 0.50, 0.80, 0.09, "", true, aBanForm ) 
        aBanClose       = guiCreateButton ( 0.80, 0.88, 0.17, 0.08, "Close", true, aBanForm ) 
  
        guiSetVisible ( aBanForm, false ) 
        addEventHandler ( "onClientGUIClick", aBanForm, aClientBanClick ) 
        --Register With Admin Form 
        aRegister ( "BanDetails", aBanForm, aBanDetails, aBanDetailsClose ) 
    end 
    if ( aBans["IP"][ip] ) then 
        guiSetText ( aBanIP, "IP: "..ip ) 
        guiSetText ( aBanNick, "Nickname: "..iif ( aBans["IP"][ip]["nick"], aBans["IP"][ip]["nick"], "Unknown" ) ) 
        guiSetText ( aBanDate, "Date: "..iif ( aBans["IP"][ip]["date"], aBans["IP"][ip]["date"], "Unknown" ) ) 
        guiSetText ( aBanTime, "Time: "..iif ( aBans["IP"][ip]["time"], aBans["IP"][ip]["time"], "Unknown" ) ) 
        guiSetText ( aBanBanner, "Banned by: "..iif ( aBans["IP"][ip]["banner"], aBans["IP"][ip]["banner"], "Unknown" ) ) 
        if ( aBanReason ) then destroyElement ( aBanReason ) end 
        aBanReason = guiCreateLabel ( 0.03, 0.60, 0.80, 0.30, "Reason: "..iif ( aBans["IP"][ip]["reason"], aBans["IP"][ip]["reason"], "Unknown" ), true, aBanForm ) 
        guiLabelSetHorizontalAlign ( aBanReason, "left", true ) 
        guiSetVisible ( aBanForm, true ) 
        guiBringToFront ( aBanForm ) 
    elseif ( aBans["Serial"][ip] ) then 
        guiSetText ( aBanIP, "Serial: "..ip ) 
        guiSetText ( aBanNick, "Nickname: "..iif ( aBans["Serial"][ip]["nick"], aBans["Serial"][ip]["nick"], "Unknown" ) ) 
        guiSetText ( aBanDate, "Date: "..iif ( aBans["Serial"][ip]["date"], aBans["Serial"][ip]["date"], "Unknown" ) ) 
        guiSetText ( aBanTime, "Time: "..iif ( aBans["Serial"][ip]["time"], aBans["Serial"][ip]["time"], "Unknown" ) ) 
        guiSetText ( aBanBanner, "Banned by: "..iif ( aBans["Serial"][ip]["banner"], aBans["Serial"][ip]["banner"], "Unknown" ) ) 
        if ( aBanReason ) then destroyElement ( aBanReason ) end 
        aBanReason = guiCreateLabel ( 0.03, 0.60, 0.80, 0.30, "Reason: "..iif ( aBans["Serial"][ip]["reason"], aBans["Serial"][ip]["reason"], "Unknown" ), true, aBanForm ) 
        guiLabelSetHorizontalAlign ( aBanReason, "left", true ) 
        guiSetVisible ( aBanForm, true ) 
        guiBringToFront ( aBanForm ) 
    end 
end 
  
function aBanDetailsClose ( destroy ) 
    if ( ( destroy ) or ( guiCheckBoxGetSelected ( aPerformanceBan ) ) ) then 
        if ( aBanForm ) then 
            removeEventHandler ( "onClientGUIClick", aBanForm, aClientBanClick ) 
            destroyElement ( aBanForm ) 
            aBanForm = nil 
        end 
    else 
        guiSetVisible ( aBanForm, false ) 
    end 
end 
  
function aClientBanClick ( button ) 
    if ( button == "left" ) then 
        if ( source == aBanClose ) then 
            aBanDetailsClose ( false ) 
        elseif ( source == aBanUnban ) then 
            triggerEvent ( "onClientGUIClick", aTab4.BansUnban, "left" ) 
        end 
    end 
end 

admin_server:

--[[********************************** 
*
*   Multi Theft Auto - Admin Panel
*
*   admin_server.lua
*
*   Original File by lil_Toady
*
**************************************]]
 
_root = getRootElement()
_types = { "player", "team", "vehicle", "resource", "bans", "server", "admin" }
_settings = nil
 
aPlayers = {}
aLogMessages = {}
aInteriors = {}
aStats = {}
aReports = {}
aWeathers = {}
aNickChangeTime = {}
 
function notifyPlayerLoggedIn(player)
        outputChatBox ( "Press 'p' to open your admin panel", player )
    local unread = 0
    for _, msg in ipairs ( aReports ) do
        unread = unread + ( msg.read and 0 or 1 )
    end
    if unread > 0 then
    end
end
 
_getPlayerName = getPlayerName
function getPlayerName(player)
if get("hexRemove") == "true" then
if string.find(_getPlayerName(player), "#%x%x%x%x%x%x") then
    return string.gsub(_getPlayerName(player), "#%x%x%x%x%x%x", "")
else
    return _getPlayerName(player)
end
else
    return _getPlayerName(player)
end
end
 
addEventHandler ( "onResourceStart", _root, function ( resource )
    if ( resource ~= getThisResource() ) then
        for id, player in ipairs(getElementsByType("player")) do
            if ( hasObjectPermissionTo ( player, "general.tab_resources" ) ) then
                triggerClientEvent ( player, "aClientResourceStart", _root, getResourceName ( resource ) )
            end
        end
        return
    end
    _settings = xmlLoadFile ( "conf\\settings.xml" )
    if ( not _settings ) then
        _settings = xmlCreateFile ( "conf\\settings.xml", "main" )
        xmlSaveFile ( _settings )
    end
    aSetupACL()
    aSetupCommands()
    for id, player in ipairs ( getElementsByType ( "player" ) ) do
        aPlayerInitialize ( player )
        if ( hasObjectPermissionTo ( player, "general.adminpanel" ) ) then
            notifyPlayerLoggedIn(player)
        end
    end
    local node = xmlLoadFile ( "conf\\interiors.xml" )
    if ( node ) then
        local interiors = 0
        while ( xmlFindChild ( node, "interior", interiors ) ) do
            local interior = xmlFindChild ( node, "interior", interiors )
            interiors = interiors + 1
            aInteriors[interiors] = {}
            aInteriors[interiors]["world"] = tonumber ( xmlNodeGetAttribute ( interior, "world" ) )
            aInteriors[interiors]["id"] = xmlNodeGetAttribute ( interior, "id" )
            aInteriors[interiors]["x"] = xmlNodeGetAttribute ( interior, "posX" )
            aInteriors[interiors]["y"] = xmlNodeGetAttribute ( interior, "posY" )
            aInteriors[interiors]["z"] = xmlNodeGetAttribute ( interior, "posZ" )
            aInteriors[interiors]["r"] = xmlNodeGetAttribute ( interior, "rot" )
        end
        xmlUnloadFile ( node )
    end
    local node = xmlLoadFile ( "conf\\stats.xml" )
    if ( node ) then
        local stats = 0
        while ( xmlFindChild ( node, "stat", stats ) ) do
            local stat = xmlFindChild ( node, "stat", stats )
            local id = tonumber ( xmlNodeGetAttribute ( stat, "id" ) )
            local name = xmlNodeGetAttribute ( stat, "name" )
            aStats[id] = name
            stats = stats + 1
        end
        xmlUnloadFile ( node )
    end
    local node = xmlLoadFile ( "conf\\weathers.xml" )
    if ( node ) then
        local weathers = 0
        while ( xmlFindChild ( node, "weather", weathers ) ~= false ) do
        local weather = xmlFindChild ( node, "weather", weathers )
            local id = tonumber ( xmlNodeGetAttribute ( weather, "id" ) )
            local name = xmlNodeGetAttribute ( weather, "name" )
            aWeathers[id] = name
            weathers = weathers + 1
        end
        xmlUnloadFile ( node )
    end
    local node = xmlLoadFile ( "conf\\reports.xml" )
    if ( node ) then
        local messages = 0
        while ( xmlFindChild ( node, "message", messages ) ) do
            subnode = xmlFindChild ( node, "message", messages )
            local author = xmlFindChild ( subnode, "author", 0 )
            local subject = xmlFindChild ( subnode, "subject", 0 )
            local category = xmlFindChild ( subnode, "category", 0 )
            local text = xmlFindChild ( subnode, "text", 0 )
            local time = xmlFindChild ( subnode, "time", 0 )
            local read = ( xmlFindChild ( subnode, "read", 0 ) ~= false )
            local id = #aReports + 1
            aReports[id] = {}
            if ( author ) then aReports[id].author = xmlNodeGetValue ( author )
            else aReports[id].author = "" end
            if ( category ) then aReports[id].category = xmlNodeGetValue ( category )
            else aReports[id].category = "" end
            if ( subject ) then aReports[id].subject = xmlNodeGetValue ( subject )
            else aReports[id].subject = "" end
            if ( text ) then aReports[id].text = xmlNodeGetValue ( text )
            else aReports[id].text = "" end
            if ( time ) then aReports[id].time = xmlNodeGetValue ( time )
            else aReports[id].time = "" end
            aReports[id].read = read
            messages = messages + 1
        end
        -- Remove duplicates
        local a = 1
        while a <= #aReports do
            local b = a + 1
            while b <= #aReports do
                if table.cmp( aReports[a], aReports[b] ) then
                    table.remove( aReports, b )
                    b = b - 1
                end
                b = b + 1
            end
            a = a + 1
        end
        -- Upgrade time from '4/9 5:9' to '2009-09-04 05:09'
        for id, rep in ipairs ( aReports ) do
            if string.find( rep.time, "/" ) then
                local monthday, month, hour, minute = string.match( rep.time, "^(.-)/(.-) (.-).-)$" )
                rep.time = string.format( '%04d-%02d-%02d %02d:%02d', 2009, month + 1, monthday, hour, minute )
            end
        end
        -- Sort messages by time
        table.sort(aReports, function(a,b) return(a.time < b.time) end)
        -- Limit number of messages
        while #aReports > g_Prefs.maxmsgs do
            table.remove( aReports, 1 )
        end
        xmlUnloadFile ( node )
    end
    local node = xmlLoadFile ( "conf\\messages.xml" )
    if ( node ) then
        for id, type in ipairs ( _types ) do
            local subnode = xmlFindChild ( node, type, 0 )
            if ( subnode ) then
                aLogMessages[type] = {}
                local groups = 0
                while ( xmlFindChild ( subnode, "group", groups ) ) do
                    local group = xmlFindChild ( subnode, "group", groups )
                    local action = xmlNodeGetAttribute ( group, "action" )
                    local r = tonumber ( xmlNodeGetAttribute ( group, "r" ) )
                    local g = tonumber ( xmlNodeGetAttribute ( group, "g" ) )
                    local b = tonumber ( xmlNodeGetAttribute ( group, "b" ) )
                    aLogMessages[type][action] = {}
                    aLogMessages[type][action]["r"] = r or 0
                    aLogMessages[type][action]["g"] = g or 255
                    aLogMessages[type][action]["b"] = b or 0
                    if ( xmlFindChild ( group, "all", 0 ) ) then aLogMessages[type][action]["all"] = xmlNodeGetValue ( xmlFindChild ( group, "all", 0 ) ) end
                    if ( xmlFindChild ( group, "admin", 0 ) ) then aLogMessages[type][action]["admin"] = xmlNodeGetValue ( xmlFindChild ( group, "admin", 0 ) ) end
                    if ( xmlFindChild ( group, "player", 0 ) ) then aLogMessages[type][action]["player"] = xmlNodeGetValue ( xmlFindChild ( group, "player", 0 ) ) end
                    if ( xmlFindChild ( group, "log", 0 ) ) then aLogMessages[type][action]["log"] = xmlNodeGetValue ( xmlFindChild ( group, "log", 0 ) ) end
                    groups = groups + 1
                end
            end
        end
        xmlUnloadFile ( node )
    end
end )
 
addEventHandler ( "onResourceStop", _root, function ( resource )
    -- Incase the resource being stopped has been deleted
    local stillExists = false
    for i, res in ipairs(getResources()) do
        if res == resource then
            stillExists = true
            break
        end
    end
    if not stillExists then return end
   
    if ( resource ~= getThisResource() ) then
        for id, player in ipairs(getElementsByType("player")) do
            if ( hasObjectPermissionTo ( player, "general.tab_resources" ) ) then
                triggerClientEvent ( player, "aClientResourceStop", _root, getResourceName ( resource ) )
            end
        end
    else
        local node = xmlLoadFile ( "conf\\reports.xml" )
        if ( node ) then
            while ( xmlFindChild ( node, "message", 0 ) ~= false ) do
                local subnode = xmlFindChild ( node, "message", 0 )
                xmlDestroyNode ( subnode )
            end
        else
            node = xmlCreateFile ( "conf\\reports.xml", "messages" )
        end
        for id, message in ipairs ( aReports ) do
            local subnode = xmlCreateChild ( node, "message" )
            for key, value in pairs ( message ) do
                if ( value ) then
                    xmlNodeSetValue ( xmlCreateChild ( subnode, key ), tostring ( value ) )
                end
            end
        end
        xmlSaveFile ( node )
        xmlUnloadFile ( node )
    end
    aclSave ()
end )
 
function aGetSetting ( setting )
    local result = xmlFindChild ( _settings, tostring ( setting ), 0 )
    if ( result ) then
        result = xmlNodeGetValue ( result )
        if ( result == "true" ) then return true
        elseif ( result == "false" ) then return false
        else return result end
    end
    return false
end
 
function aSetSetting ( setting, value )
    local node = xmlFindChild ( _settings, tostring ( setting ), 0 )
    if ( not node ) then
        node = xmlCreateChild ( _settings, tostring ( setting ) )
    end
    xmlNodeSetValue ( node, tostring ( value ) )
    xmlSaveFile ( _settings )
end
 
Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...