Advertisement
Guest User

Untitled

a guest
Jan 22nd, 2020
202
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.31 KB | None | 0 0
  1. RegisterServerEvent("dqP:RenameSim")
  2. AddEventHandler("dqP:RenameSim", function(id, txt, _)
  3. MySQL.Async.execute(
  4. 'UPDATE user_sim SET label = @label WHERE id=@id',
  5. {
  6. ['@id'] = id,
  7. ['@label'] = txt
  8.  
  9. }
  10. )
  11.  
  12. -- TriggerClientEvent("esx:showNotification",source,"Vous avez bien renommé votre ".."sim".." en "..txt)
  13.  
  14. end)
  15.  
  16. RegisterServerEvent('dqP:SetNumber')
  17. AddEventHandler('dqP:SetNumber', function(numb)
  18.  
  19. local _source = source
  20. local xPlayer = ESX.GetPlayerFromId(_source)
  21.  
  22.  
  23. phoneNumber = numb
  24. TriggerClientEvent("gcPhone:myPhoneNumber",_source,numb)
  25. TriggerClientEvent("dqP:UpdateNumber",_source,numb)
  26.  
  27. MySQL.Async.execute(
  28. 'UPDATE users SET phone_number = @phone_number WHERE identifier = @identifier',
  29. {
  30. ['@identifier'] = xPlayer.identifier,
  31. ['@phone_number'] = phoneNumber
  32. }
  33. )
  34. TriggerClientEvent("dqP:shownotif",_source,"Numéro utilisé : " .. tostring(phoneNumber),26)
  35.  
  36.  
  37.  
  38. end)
  39. ESX.RegisterServerCallback('dqP:getSim', function(source, cb)
  40.  
  41. local _source = source
  42. local xPlayer = ESX.GetPlayerFromId(_source)
  43.  
  44.  
  45.  
  46. MySQL.Async.fetchAll(
  47. 'SELECT * FROM user_sim WHERE identifier = @identifier',
  48. {
  49. ['@identifier'] = xPlayer.identifier
  50. },
  51. function(result)
  52.  
  53. cb(result)
  54. -- --(json.encode(result))
  55.  
  56. end )
  57.  
  58. end)
  59. RegisterServerEvent('dqP:Throw')
  60. AddEventHandler('dqP:Throw', function(number,data)
  61. local _source = source
  62. local xPlayer = ESX.GetPlayerFromId(_source)
  63.  
  64.  
  65. MySQL.Async.execute(
  66. 'UPDATE users SET phone_number = @phone_number WHERE identifier = @identifier',
  67. {
  68. ['@identifier'] = xPlayer.identifier,
  69. ['@phone_number'] = nil
  70.  
  71. }
  72. )
  73. TriggerClientEvent("gcPhone:myPhoneNumber",_source,nil)
  74. TriggerClientEvent("dqP:UpdateNumber",_source,nil)
  75.  
  76. MySQL.Async.execute(
  77. 'DELETE FROM user_sim where identifier = @job AND number = @name ',
  78. {
  79. ['@job'] = xPlayer.identifier,
  80. ['@count'] = "c",
  81. ['@name'] = number
  82.  
  83. }
  84. )
  85. TriggerClientEvent('esx:showNotification', source, '~r~-1 SIM '.. number)
  86.  
  87.  
  88.  
  89. end)
  90.  
  91. ESX.RegisterUsableItem('sim', function(source)
  92. local _source = source
  93. local xPlayer = ESX.GetPlayerFromId(_source)
  94.  
  95. xPlayer.removeInventoryItem('sim', 1)
  96. phoneNumber = GenerateUniquePhoneNumber()
  97.  
  98. TriggerClientEvent('dqP:UpdateNumber', _source,phoneNumber)
  99. MySQL.Async.execute(
  100. 'INSERT INTO user_sim (identifier,number,label) VALUES(@identifier,@phone_number,@label)',
  101. {
  102. ['@identifier'] = xPlayer.identifier,
  103. ['@phone_number'] = phoneNumber,
  104. ['@label'] = "SIM "..phoneNumber,
  105.  
  106. }
  107. )
  108. TriggerClientEvent("dqP:shownotif",_source,"Nouvelle carte SIM : " .. phoneNumber ,26)
  109. TriggerClientEvent("dqP:syncSim",source)
  110.  
  111.  
  112.  
  113. end)
  114.  
  115.  
  116. function GenerateUniquePhoneNumber()
  117. local running = true
  118. local phone = nil
  119. while running do
  120. local rand = '555' .. math.random(1111,9999)
  121. -- --('Recherche ... : ' .. rand)
  122. local count = MySQL.Sync.fetchScalar("SELECT COUNT(number) FROM user_sim WHERE number = @phone_number", { ['@phone_number'] = rand })
  123. if count < 1 then
  124. phone = rand
  125. running = false
  126. end
  127. end
  128. -- --('Numero Choisi : ' .. phone)
  129. return phone
  130. end
  131.  
  132.  
  133. RegisterServerEvent('dqP:useSim')
  134. AddEventHandler('dqP:useSim', function(number)
  135. local _source = source
  136. local xPlayer = ESX.GetPlayerFromId(_source)
  137. TriggerClientEvent("gcPhone:myPhoneNumber",_source,number)
  138. TriggerClientEvent("dqP:UpdateNumber",_source,number)
  139.  
  140. MySQL.Async.execute(
  141. 'UPDATE users SET phone_number = @phone_number WHERE identifier = @identifier',
  142. {
  143. ['@identifier'] = xPlayer.identifier,
  144. ['@phone_number'] = number
  145.  
  146. }
  147. )
  148.  
  149. end)
  150.  
  151. RegisterServerEvent('dqP:GiveNumber')
  152. AddEventHandler('dqP:GiveNumber', function(target,number)
  153. local _source = source
  154. local xPlayer = ESX.GetPlayerFromId(_source)
  155. local xPlayer2 = ESX.GetPlayerFromId(target)
  156. MySQL.Async.fetchAll(
  157. 'SELECT * FROM `users` WHERE `identifier` = @identifier',
  158. {
  159. ['@identifier'] = xPlayer.identifier,
  160.  
  161. },
  162. function(result)
  163.  
  164. if result[1].phone_number == number then
  165. TriggerClientEvent("gcPhone:myPhoneNumber",_source,nil)
  166. TriggerClientEvent("dqP:UpdateNumber",_source,nil)
  167. MySQL.Async.execute(
  168. 'UPDATE users SET phone_number = @phone_number WHERE identifier = @identifier',
  169. {
  170. ['@identifier'] = xPlayer.identifier,
  171. ['@phone_number'] = ""
  172.  
  173. }
  174. )
  175. end
  176. MySQL.Async.execute(
  177. 'DELETE FROM user_sim where identifier = @job AND number = @name ',
  178. {
  179. ['@job'] = xPlayer.identifier,
  180. ['@count'] = "c",
  181. ['@name'] = number
  182.  
  183. }
  184. )
  185. MySQL.Async.execute('INSERT INTO user_sim (identifier, number,label) VALUES (@name, @count,@job)',
  186. {
  187. ['@name'] = xPlayer2.identifier,
  188.  
  189. ['@count'] = number,
  190. ['@job'] = "SIM ".. number
  191. },
  192. function (_)
  193.  
  194. end)
  195. TriggerClientEvent('esx:showNotification', _source, '~r~-1 SIM '.. number)
  196. TriggerClientEvent('esx:showNotification', target, '~g~+1 SIM '.. number)
  197. TriggerClientEvent("dqP:syncSim",_source)
  198. TriggerClientEvent("dqP:syncSim",target)
  199. end
  200. )
  201.  
  202. end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement