client side
GUIEditor = {
label = {}
}
addEventHandler("onClientResourceStart", resourceRoot,
function()
local screenW, screenH = guiGetScreenSize()
wnd = guiCreateWindow((screenW - 390) / 2, (screenH - 329) / 2, 390, 200, ".::[ Login & Register Systeam ]::.", false)
guiWindowSetSizable(wnd, false)
guiSetProperty(wnd, "CaptionColour", "FF2FFE00")
guiSetAlpha(wnd, 1.00)
user = guiCreateEdit(80, 45, 280, 29, "", false, wnd)
pass = guiCreateEdit(80, 95, 179, 29, "", false, wnd)
guiEditSetMasked(pass, true)
user_l = guiCreateLabel(10, 50, 64, 18, "Username :", false, wnd)
pass_l = guiCreateLabel(10, 100, 64, 18, "Password :", false, wnd)
remember = guiCreateCheckBox(260, 95, 100, 30, "Save Password !", true, false, wnd)
guiSetFont(remember, "default-small")
login = guiCreateButton(83, 140, 105, 48, "Login!", false, wnd)
guiSetProperty(login, "NormalTextColour", "FF00FDFB")
guiSetFont(login, "default-bold-small")
reg = guiCreateButton(211, 140, 105, 48, "Register!", false, wnd)
guiSetFont(reg, "default-bold-small")
guiSetProperty(reg, "NormalTextColour", "FF00FDFB")
triggerServerEvent("onGetSave",localPlayer)
showCursor ( true )
end
)
addEvent("onPutSave",true)
addEventHandler("onPutSave",root,
function (puser,ppass)
guiSetText(user,puser)
guiSetText(pass,ppass)
end
)
addEventHandler("onClientGUIClick",root,
function ()
if ( source == guest ) then
guiSetVisible(wnd,false)
showCursor(false)
guiSetInputEnabled(false)
Show()
elseif ( source == english ) then
guiSetText(user_l,"Username")
guiSetText(pass_l,"Password")
guiSetText(login,"Login!")
guiSetText(reg,"Register!")
guiSetText(remember,"(Save!)")
guiSetText(guest,"Guest")
elseif ( source == arabic ) then
guiSetText(user_l,"حسابك")
guiSetText(pass_l,"كلمه المرور")
guiSetText(login,"تسجيل الدخول")
guiSetText(reg,"حساب جديد")
guiSetText(remember,"تذكرني")
guiSetText(guest,"زائر")
end
end
)
---------------------------------------------------------------
addEventHandler("onClientGUIClick",root,
function ()
local user = guiGetText(user)
local pass = guiGetText(pass)
if ( source == login ) then
if user ~= "" and pass ~= "" then
if guiCheckBoxGetSelected(remember) then
triggerServerEvent("onLoginWith",localPlayer,user,pass)
else
triggerServerEvent("onLogin",localPlayer,user,pass)
end
else
outputChatBox("* You Must Write Username Or Password",255,0,0)
end
elseif ( source == reg ) then
if user ~= "" and pass ~= "" then
triggerServerEvent("onReg",localPlayer,user,pass)
else
outputChatBox("* You Must Write Username Or Password",255,0,0)
end
end
end
)
----------------------------------------------------------------------------
addEventHandler ( "onClientGUIClick", resourceRoot, function ( )
if ( source == login ) then
guiSetVisible ( wnd, false )
showCursor ( false )
end
end )
-----------------------------------------
server side
executeSQLQuery("CREATE TABLE IF NOT EXISTS players_save( serial TEXT, user TEXT, pass TEXT)")
function AddPlayer(serial,user,pass)
executeSQLQuery("INSERT INTO players_save(serial,user,pass) VALUES(?,?,?)",serial,user,pass)
end
function isPlayerSave(serial)
local sel = executeSQLQuery("SELECT serial FROM players_save WHERE serial=?",serial)
if sel == 0 then
return false
else
return true
end
end
function getUserAndPass(serial)
local user,pass = "",""
if isPlayerSave(serial) then
local sel = executeSQLQuery("SELECT * FROM players_save WHERE serial=?",serial)
for i,player in ipairs(sel) do
if i == 1 then
user = player.user
pass = player.pass
end
end
return user,pass
end
return false
end
addEvent("onGetSave",true)
addEventHandler("onGetSave",root,
function ()
local serial = getPlayerSerial(source)
if isPlayerSave(serial) then
local user,pass = getUserAndPass(serial)
triggerClientEvent(source,"onPutSave",source,user,pass)
end
end
)
addEvent("onLoginWith",true)
addEventHandler("onLoginWith",root,
function (user,pass)
local acc = getAccount(user,pass)
local serial = getPlayerSerial(source)
if acc then
logIn(source,acc,pass)
outputChatBox("* تم بنجاح تسجيل دخول",source,0,255,0)
AddPlayer(serial,user,pass)
triggerClientEvent(source,"onCl",source)
else
outputChatBox("* الحساب او كلمة المرور خطأ",source,255,0,0)
end
end
)
addEvent("onLogin",true)
addEventHandler("onLogin",root,
function (user,pass)
local acc = getAccount(user,pass)
if acc then
logIn(source,acc,pass)
outputChatBox("* تم بنجاح تسجيل دخول",source,0,255,0)
triggerClientEvent(source,"onCl",source)
else
outputChatBox("* الحساب او كلمة مرور خطأ",source,255,0,0)
end
end
)
addEvent("onReg",true)
addEventHandler("onReg",root,
function (user,pass)
local acc = getAccount(user,pass)
if acc then
outputChatBox("* هذا الحساب مستخدم من قبل",source,255,0,0)
else
addAccount(user,pass)
outputChatBox("* Username = " .. user .. "",source,0,255,0)
outputChatBox("* Password = " .. pass .. "",source,0,255,0)
end
end
)