SHOW:
|
|
- or go back to the newest paste.
1 | - | local persons = { |
1 | + | -- USER MANAGER 2.1. DATABASE FILE AT C:/database |
2 | - | ["Alex"] = {rank = "Teacher"; PermLevel = "3"; name = "Alex"}; |
2 | + | -- Thanks lots to "danielsv03" for helping me do this stuff. |
3 | - | ["Paul"] = {rank = "Student"; PermLevel = "0"; name = "Paul"}; |
3 | + | |
4 | - | } |
4 | + | -- Get database file and contents |
5 | if fs.exists("database") then | |
6 | - | local teachers = {} |
6 | + | local hPeople = fs.open("database", "r") |
7 | - | local student = {} |
7 | + | local persols = hPeople.readAll() |
8 | hPeople.close() | |
9 | local persons = textutils.unserialize(persols) | |
10 | ||
11 | - | table.insert(teachers, k) |
11 | + | -- UserM.list() |
12 | - | print(k.." = Teacher") |
12 | + | |
13 | for k,v in pairs(persons) do | |
14 | - | table.insert(student, k) |
14 | + | |
15 | - | print(k.." = Student") |
15 | + | print(v.name.." = Teacher") |
16 | elseif v.rank == "Student" then | |
17 | print(v.name.." = Student") | |
18 | else | |
19 | - | function getrank( sArgs ) |
19 | + | print(v.name.." = "..v.rank) |
20 | end | |
21 | end | |
22 | end | |
23 | ||
24 | -- UserM.getRank(<Name>) | |
25 | function getRank( sArgs ) | |
26 | if sArgs == nil then | |
27 | return nil | |
28 | else | |
29 | for k,v in pairs(persons) do | |
30 | if v.name == sArgs then | |
31 | return v.rank | |
32 | end | |
33 | end | |
34 | print("Person does not exist.") | |
35 | end | |
36 | end | |
37 | ||
38 | -- UserM.getPermLevel(<Name>) | |
39 | function getPermLevel( sArgs ) | |
40 | if sArgs == nil then | |
41 | return nil | |
42 | else | |
43 | for k,v in pairs(persons) do | |
44 | if v.name == sArgs then | |
45 | return v.PermLevel | |
46 | end | |
47 | end | |
48 | print("Person does not exist.") | |
49 | end | |
50 | end | |
51 | ||
52 | -- UserM.setPermLevel(<Name>, <PermLevel>) | |
53 | function setPermLevel( sArgs, nArgs ) | |
54 | if sArgs == nil then | |
55 | return nil | |
56 | else | |
57 | for k,v in pairs(persons) do | |
58 | if v.name == sArgs then | |
59 | v.PermLevel = nArgs | |
60 | return true | |
61 | end | |
62 | end | |
63 | print("Person does not exist.") | |
64 | end | |
65 | end | |
66 | ||
67 | -- UserM.userInfo(<Name>) | |
68 | function userInfo( sArgs ) | |
69 | if sArgs == nil then | |
70 | return nil | |
71 | else | |
72 | for k,v in pairs(persons) do | |
73 | if v.name == sArgs then | |
74 | return v.name, v.rank, v.PermLevel | |
75 | end | |
76 | end | |
77 | print("Person does not exist.") | |
78 | end | |
79 | end | |
80 | ||
81 | -- UserM.setUserName(<OldName>, <NewName>) | |
82 | function setUserName( sArg, sArgs) | |
83 | if sArg == nil then | |
84 | return nil | |
85 | else | |
86 | for k,v in pairs(persons) do | |
87 | if v.name == sArg then | |
88 | v.name = sArgs | |
89 | return true | |
90 | end | |
91 | end | |
92 | print("Person does not exist.") | |
93 | end | |
94 | end | |
95 | ||
96 | -- UserM.setRank(<Name>, <Rank>) | |
97 | function setRank( sArg, sArgs) | |
98 | if sArg == nil then | |
99 | return nil | |
100 | else | |
101 | for k,v in pairs(persons) do | |
102 | if v.name == sArg then | |
103 | v.rank = sArgs | |
104 | return true | |
105 | end | |
106 | end | |
107 | print("Person does not exist.") | |
108 | end | |
109 | end | |
110 | ||
111 | -- UserM.save() (ADDED IN 2.1) | |
112 | function save() | |
113 | local persols = textutils.serialize(persons) | |
114 | local hWrite = fs.open("database", "w") | |
115 | hWrite.write(persols) | |
116 | hWrite.close() | |
117 | return true | |
118 | end | |
119 | else | |
120 | shell.run("pastebin get NJHfssa9 database") | |
121 | print("Downloaded example database file. Feel free to edit it!") | |
122 | shell.run(shell.getRunningProgram()) | |
123 | end |