Guest User

startup

a guest
May 13th, 2018
39
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 3.72 KB | None | 0 0
  1. local termWidth, termHeight = term.getSize()
  2. local selectedItem = 1
  3. local onMainMenu = true
  4. local username=nil
  5. local sendFreq=1338
  6. local returnFreq=1337
  7. local modem=peripheral.wrap("back")
  8. if fs.exists(".user") then
  9.   file = fs.open(".user","r")
  10.   username=file.readLine()
  11.   file.close()
  12. end
  13.  
  14. function Choice1()
  15.   term.clear()
  16.   term.setCursorPos(1,1)
  17.   print("Password for "..username..":")
  18.   input = read("*")
  19.   modem.open(returnFreq)
  20.   modem.transmit(sendFreq,returnFreq,"getcode,"..username..","..input)
  21.   local a,b,c,d,e=os.pullEvent("modem_message")
  22.   print(e)  
  23.   read()
  24. end
  25.  
  26. function Choice2()
  27.   term.clear()
  28.   term.setCursorPos(1,1)
  29.   print("Old Password:")
  30.   old=read("*")
  31.   print("New Password:")
  32.   new=read("*")
  33.   print("Again:")
  34.   newR=read("*")
  35.   if (new~=newR) then
  36.     print("Passwords do not match")
  37.   else
  38.     modem.open(returnFreq)
  39.     modem.transmit(sendFreq,returnFreq,"changepass,"..username..","..old..","..new)
  40.     local a,b,c,d,e=os.pullEvent("modem_message")
  41.     print(e)
  42.   end
  43.   sleep(1)
  44. end
  45.  
  46. function Choice3()
  47. term.clear()
  48. term.setCursorPos(1,1)
  49. print("Change Username:")
  50. input = read()
  51. username=input
  52. file=fs.open(".user","w")
  53. file.write(input)
  54. file.close()
  55. end
  56.  
  57. function newUser()
  58.   term.clear()
  59.   term.setCursorPos(1,1)
  60.   print("New Username:")
  61.   user=read()
  62.   print("Password:")
  63.   pass=read("*")
  64.   print("Again:")
  65.   passR=read("*")
  66.   if (pass~=passR) then
  67.     print("Passwords do not match")
  68.   else
  69.     modem.open(returnFreq)
  70.     modem.transmit(sendFreq,returnFreq,"makepass,"..user..","..pass)
  71.     local a,b,c,d,e=os.pullEvent("modem_message")
  72.     print(e)
  73.     if e=="User added" then
  74.       username=user
  75.       file=fs.open(".user","w")
  76.       file.write(username)
  77.       file.close()
  78.     end
  79.   end
  80.   sleep(1)  
  81. end
  82.  
  83. function delUser()
  84.   print("Password:")
  85.   p=read("*")
  86.   modem.open(returnFreq)
  87.   modem.transmit(sendFreq,returnFreq,"removepass,"..username..","..p..",0")
  88.   local a,b,c,d,e=os.pullEvent("modem_message")
  89.   print(e)
  90.   sleep(1)
  91. end
  92. function chgNew()
  93.   print("Password:")
  94.   p=read("*")
  95.   print("Enable or disable?(E/D)")
  96.   ans=read()
  97.   modem.open(returnFreq)
  98.   if ans=="e" or ans=="E" then
  99.     modem.transmit(sendFreq, returnFreq, "changenew,"..username..","..p..",true")
  100.   elseif ans=="d" or ans=="D" then
  101.     modem.transmit(sendFreq,returnFreq,"changenew,"..username..","..p..",false")  
  102.   end
  103.   local a,b,c,d,e=os.pullEvent("modem_message")
  104.   print(e)
  105.   sleep(1)
  106. end
  107. function Exit()
  108.  onMainMenu = false
  109. end
  110.  
  111. mainMenu = {
  112. [1] = { text = "Get Code", handler = Choice1 },
  113. [2] = { text = "Change Password", handler = Choice2 },
  114. [3] = { text = "Change Username", handler = Choice3 },
  115. [4] = { text = "Create New User", handler = newUser },
  116. [5] = { text = "Delete Current User", handler = delUser },
  117. [6] = { text = "Allow new users[Admin]",handler=chgNew },
  118. [7] = { text = "Exit", handler = Exit }
  119. }
  120.  
  121. function printMenu( menu )
  122. if username==nil then
  123.   print("Hello\nPlease set a username")
  124. else
  125.   print("Hello, "..username)
  126. end
  127.  for i=1,#menu do
  128.   if i == selectedItem then
  129.    print(">> "..menu[i].text)
  130.   else
  131.    print("   "..menu[i].text)
  132.   end
  133.  end
  134. end
  135.  
  136. function onKeyPressed( key, menu )
  137.  if key == keys.enter then
  138.   onItemSelected(menu)
  139.  elseif key == keys.up then
  140.   if selectedItem > 1 then
  141.    selectedItem = selectedItem - 1
  142.   end
  143.  elseif key == keys.down then
  144.   if selectedItem < #menu then
  145.    selectedItem = selectedItem + 1
  146.   end
  147.  end
  148. end
  149.  
  150. function onItemSelected( menu )
  151.  menu[selectedItem].handler()
  152. end
  153.  
  154. function main()
  155.  while onMainMenu do
  156.   term.clear()
  157.   term.setCursorPos(1,1)
  158.   printMenu(mainMenu)
  159.   event, key = os.pullEvent("key")
  160.   onKeyPressed(key,mainMenu)
  161.  end
  162. end
  163.  
  164. main()
Add Comment
Please, Sign In to add comment