ig3tool 0.1.0 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- data/bin/ig3tool +17 -21
- data/lib/actions/bib.rb +295 -0
- data/lib/actions/bitching.rb +19 -0
- data/lib/actions/cultuur.rb +3 -0
- data/lib/actions/interne.rb +98 -0
- data/lib/actions/kaching.rb +90 -0
- data/lib/actions/people.rb +178 -0
- data/lib/actions/printing.rb +125 -0
- data/lib/actions/product.rb +154 -0
- data/lib/bib.rb +94 -0
- data/lib/billing.rb +112 -0
- data/lib/bitching.rb +49 -0
- data/lib/config.rb +19 -0
- data/lib/glade/cola_light_small.png +0 -0
- data/lib/glade/cola_light_xsmall.png +0 -0
- data/lib/glade/cola_small.png +0 -0
- data/lib/glade/cola_xsmall.png +0 -0
- data/lib/glade/doos_small.png +0 -0
- data/lib/glade/doos_xsmall.png +0 -0
- data/lib/glade/icons/cola_light_small.png +0 -0
- data/lib/glade/icons/cola_light_xsmall.png +0 -0
- data/lib/glade/icons/cola_small.png +0 -0
- data/lib/glade/icons/cola_xsmall.png +0 -0
- data/lib/glade/icons/doos_small.png +0 -0
- data/lib/glade/icons/doos_xsmall.png +0 -0
- data/lib/glade/icons/piggy_small.png +0 -0
- data/lib/glade/icons/piggy_xsmall.png +0 -0
- data/lib/glade/money_small.png +0 -0
- data/lib/glade/money_xsmall.png +0 -0
- data/lib/glade/newinterne.glade +504 -0
- data/lib/glade/piggy_small.png +0 -0
- data/lib/glade/piggy_xsmall.png +0 -0
- data/lib/glade/sales.glade +89 -87
- data/lib/horrible_hack.rb +15 -0
- data/lib/interne.rb +111 -0
- data/lib/ldap.rb +104 -0
- data/lib/log.rb +25 -0
- data/lib/membership.rb +32 -0
- data/lib/mymd5.rb +95 -0
- data/lib/people.rb +143 -0
- data/lib/printing.rb +238 -0
- data/lib/request.rb +14 -0
- data/lib/sales.rb +158 -0
- data/lib/ui/automaatwindow.rb +2 -2
- data/lib/ui/bibliotheekwindow.rb +16 -17
- data/lib/ui/bibwindow.rb +15 -15
- data/lib/ui/gladehelper.rb +20 -6
- data/lib/ui/internewindow.rb +12 -9
- data/lib/ui/loginwindow.rb +2 -4
- data/lib/ui/memberswindow.rb +9 -9
- data/lib/ui/newinterne.rb +258 -0
- data/lib/ui/peoplewindow.rb +14 -16
- data/lib/ui/printenwindow.rb +11 -11
- data/lib/ui/printingwindow.rb +19 -20
- data/lib/ui/productswindow.rb +27 -15
- data/lib/ui/saleswindow.rb +21 -8
- data/lib/ui/toolwindow.rb +5 -3
- data/lib/utils.rb +106 -0
- data/lib/web.rb +98 -0
- metadata +48 -3
data/lib/ui/internewindow.rb
CHANGED
@@ -4,7 +4,7 @@ module Ig3tool
|
|
4
4
|
|
5
5
|
## - Constants ----
|
6
6
|
MENU_PATH = ["Interne", "Interne"]
|
7
|
-
ICON = "
|
7
|
+
ICON = "piggy_xsmall.png"
|
8
8
|
|
9
9
|
|
10
10
|
def initialize
|
@@ -29,18 +29,21 @@ module Ig3tool
|
|
29
29
|
@list.insert_column(-1, str, r, :text => i)
|
30
30
|
end
|
31
31
|
|
32
|
-
|
32
|
+
# Eerste box: standaard huidige debugger, kleur window
|
33
|
+
make_debugger_combo @debugger1, @window
|
34
|
+
|
35
|
+
# Tweede box: standaard kas
|
33
36
|
make_debugger_combo @debugger2
|
37
|
+
@debugger2.active = 0
|
34
38
|
|
35
39
|
@window.show_all
|
36
40
|
end
|
37
41
|
|
38
|
-
def make_debugger_combo(combo) # kas is ook een "debugger"
|
39
|
-
super(combo)
|
42
|
+
def make_debugger_combo(combo, window = nil) # kas is ook een "debugger"
|
43
|
+
super(combo, window)
|
40
44
|
r = combo.model.prepend
|
41
45
|
r[0] = nil
|
42
46
|
r[1] = "kas"
|
43
|
-
combo.active = 0
|
44
47
|
end
|
45
48
|
|
46
49
|
def left_clicked
|
@@ -58,7 +61,7 @@ module Ig3tool
|
|
58
61
|
return if username.nil?
|
59
62
|
|
60
63
|
if username != "kas"
|
61
|
-
saldo = $
|
64
|
+
saldo = $client.interne(username)
|
62
65
|
@saldo.text = saldo.from_c.to_s
|
63
66
|
else
|
64
67
|
@saldo.text = ""
|
@@ -71,7 +74,7 @@ module Ig3tool
|
|
71
74
|
|
72
75
|
username = nil if username == "kas"
|
73
76
|
|
74
|
-
transactions = $
|
77
|
+
transactions = $client.interne_log(username)
|
75
78
|
transactions.each do |t|
|
76
79
|
r = m.append
|
77
80
|
r[0] = t.system
|
@@ -108,8 +111,8 @@ module Ig3tool
|
|
108
111
|
:amount => amount
|
109
112
|
}
|
110
113
|
|
111
|
-
new_saldo = $
|
112
|
-
@saldo.text = $
|
114
|
+
new_saldo = $client.interne_transfer! args
|
115
|
+
@saldo.text = $client.interne(from).from_c.to_s
|
113
116
|
|
114
117
|
# Fake Debugger1 changed -> updaten log kaderke
|
115
118
|
debugger1_changed
|
data/lib/ui/loginwindow.rb
CHANGED
@@ -10,8 +10,6 @@ module Ig3tool
|
|
10
10
|
def initialize(client, &block)
|
11
11
|
super("loginwindow.glade", "loginwindow")
|
12
12
|
|
13
|
-
@c = client
|
14
|
-
|
15
13
|
@username = @glade.get_widget("username")
|
16
14
|
@password = @glade.get_widget("password")
|
17
15
|
@apply = @glade.get_widget("apply")
|
@@ -27,12 +25,12 @@ module Ig3tool
|
|
27
25
|
h = {"username" => @username.text, "password" => @password.text}
|
28
26
|
@username.text = ""
|
29
27
|
@password.text = ""
|
30
|
-
|
28
|
+
$client.wannabe!(h)
|
31
29
|
@loginwin.hide
|
32
30
|
@success.call
|
33
31
|
rescue Token => t
|
34
32
|
puts "ERROR: #{t.message}"
|
35
|
-
error_dialog(
|
33
|
+
Ig3tool::error_dialog(nil, t)
|
36
34
|
end
|
37
35
|
def cancel(widget)
|
38
36
|
@username.text = ""
|
data/lib/ui/memberswindow.rb
CHANGED
@@ -29,7 +29,7 @@ module Ig3tool
|
|
29
29
|
@notification_label = _get_widget("notification_label")
|
30
30
|
|
31
31
|
_get_widget("first_name").grab_focus
|
32
|
-
statussen = $
|
32
|
+
statussen = $client.person_statussen
|
33
33
|
make_status_combo(_get_widget("status"), statussen)
|
34
34
|
|
35
35
|
Thread.new do
|
@@ -90,7 +90,7 @@ module Ig3tool
|
|
90
90
|
end
|
91
91
|
|
92
92
|
begin
|
93
|
-
people = $
|
93
|
+
people = $client.person_lookup(attrs)
|
94
94
|
_set_people(people)
|
95
95
|
rescue Exception => e
|
96
96
|
_print_msg "Error: Lookup: #{$!}"
|
@@ -148,7 +148,7 @@ module Ig3tool
|
|
148
148
|
begin
|
149
149
|
FIELDS.each {|n| _get_widget(n).text = who.send(n.to_sym).to_s }
|
150
150
|
|
151
|
-
ms = $
|
151
|
+
ms = $client.person_memberships(who.username)
|
152
152
|
|
153
153
|
|
154
154
|
if !ms.nil?
|
@@ -182,7 +182,7 @@ module Ig3tool
|
|
182
182
|
|
183
183
|
def _delete(who, refresh = true)
|
184
184
|
begin
|
185
|
-
$
|
185
|
+
$client.person_remove!({ :username => who.username })
|
186
186
|
_clear
|
187
187
|
_update_people if refresh
|
188
188
|
rescue Exception => e
|
@@ -217,8 +217,8 @@ module Ig3tool
|
|
217
217
|
if @selected_person.nil? or @selected_person.username != data[:username]
|
218
218
|
# Indien hij nog niet bestaat, aanmaken in de database
|
219
219
|
begin
|
220
|
-
answer = $
|
221
|
-
@selected_person = $
|
220
|
+
answer = $client.person_add! data
|
221
|
+
@selected_person = $client.person_lookup("username" => data[:username])[0]
|
222
222
|
iter = _insert_person(@selected_person)
|
223
223
|
@people_view.selection.select_iter(iter)
|
224
224
|
rescue Exception => e
|
@@ -230,8 +230,8 @@ module Ig3tool
|
|
230
230
|
else
|
231
231
|
# Anders-> zorg voor update via people.real_id
|
232
232
|
begin
|
233
|
-
answer = $
|
234
|
-
@selected_person = $
|
233
|
+
answer = $client.person_update! data
|
234
|
+
@selected_person = $client.person_lookup("username" => data[:username])[0]
|
235
235
|
iter = _insert_person(@selected_person)
|
236
236
|
@people_view.selection.select_iter(iter)
|
237
237
|
rescue Exception => e
|
@@ -257,7 +257,7 @@ module Ig3tool
|
|
257
257
|
r[0] = nil
|
258
258
|
r[1] = "Loading..."
|
259
259
|
end
|
260
|
-
people = $
|
260
|
+
people = $client.send(sym)
|
261
261
|
_set_people(people)
|
262
262
|
end
|
263
263
|
|
@@ -0,0 +1,258 @@
|
|
1
|
+
|
2
|
+
require 'time'
|
3
|
+
|
4
|
+
module Ig3tool
|
5
|
+
|
6
|
+
class InterneWindow < GladeHelper
|
7
|
+
include GetText
|
8
|
+
|
9
|
+
MENU_PATH = ["Interne", "Interne"]
|
10
|
+
ICON = "piggy_xsmall.png"
|
11
|
+
|
12
|
+
|
13
|
+
|
14
|
+
def initialize
|
15
|
+
super("newinterne.glade")
|
16
|
+
|
17
|
+
|
18
|
+
@action = @glade.get_widget("action")
|
19
|
+
@notification = @glade.get_widget("notification")
|
20
|
+
@message = @glade.get_widget("message")
|
21
|
+
@amount = @glade.get_widget("amount")
|
22
|
+
@saldo = @glade.get_widget("saldo")
|
23
|
+
@from = @glade.get_widget("fromcombo")
|
24
|
+
@to = @glade.get_widget("tocombo")
|
25
|
+
|
26
|
+
@transactions = @glade.get_widget("transactions")
|
27
|
+
@transactions.model = @transactions_store = Gtk::ListStore.new(Object, String, String, String, String, String)
|
28
|
+
l = Gtk::CellRendererText.new
|
29
|
+
@transactions.insert_column(-1, "time", l) do |tvc, cell, m, iter|
|
30
|
+
cell.text = Time.parse(iter[0].time).strftime("%d/%m %H:%M")
|
31
|
+
end
|
32
|
+
@transactions.insert_column(-1, "amount", l) do |tvc, cell, m, iter|
|
33
|
+
cell.text = iter[0].amount.from_c.to_s
|
34
|
+
end
|
35
|
+
@transactions.insert_column(-1, "from", l) do |tvc, cell, m, iter|
|
36
|
+
cell.text = iter[0].donor
|
37
|
+
end
|
38
|
+
@transactions.insert_column(-1, "to", l) do |tvc, cell, m, iter|
|
39
|
+
cell.text = iter[0].recipient
|
40
|
+
end
|
41
|
+
@transactions.insert_column(-1, "message", l) do |tvc, cell, m, iter|
|
42
|
+
cell.text = iter[0].message
|
43
|
+
end
|
44
|
+
|
45
|
+
add_window_colorer(@from, @window)
|
46
|
+
|
47
|
+
@amount.text = "0.0"
|
48
|
+
#@window.signal_connect("activate-focus") do
|
49
|
+
# @notification.text = "refreshing..."
|
50
|
+
# _update_debuggers
|
51
|
+
# @notification.text = "refresh done"
|
52
|
+
#end
|
53
|
+
|
54
|
+
_update_debuggers
|
55
|
+
_update_transactions
|
56
|
+
|
57
|
+
end
|
58
|
+
|
59
|
+
def refresh(widget)
|
60
|
+
from = @from.active
|
61
|
+
fromusername = @internes[from-1].username
|
62
|
+
setaction(from, @to.active)
|
63
|
+
_update_debuggers_nothread
|
64
|
+
@from.active = from
|
65
|
+
puts "DEBUG: #{fromusername}"
|
66
|
+
interne = $client.interne(fromusername)
|
67
|
+
@saldo.text = interne.saldo.from_c.to_s unless from == 0
|
68
|
+
@saldo.text = "unlimited moneyz" if from == 0
|
69
|
+
if from == 0
|
70
|
+
_update_transactions
|
71
|
+
else
|
72
|
+
_update_transactions(fromusername)
|
73
|
+
end
|
74
|
+
end
|
75
|
+
|
76
|
+
def tochange(widget)
|
77
|
+
setaction(@from.active, @to.active)
|
78
|
+
end
|
79
|
+
def fromchange(widget)
|
80
|
+
setaction(@from.active, @to.active)
|
81
|
+
fromusername = @internes[@from.active-1].username
|
82
|
+
if @from.active != 0
|
83
|
+
interne = $client.interne(fromusername)
|
84
|
+
@saldo.text = interne.saldo.from_c.to_s
|
85
|
+
end
|
86
|
+
@saldo.text = "unlimited moneyz" if @from.active == 0
|
87
|
+
if @from.active == 0
|
88
|
+
_update_transactions
|
89
|
+
else
|
90
|
+
fromusername = @internes[@from.active - 1].username
|
91
|
+
_update_transactions(fromusername)
|
92
|
+
end
|
93
|
+
end
|
94
|
+
def tossmoney(widget)
|
95
|
+
if @from.active == 0
|
96
|
+
fromusername = "kas"
|
97
|
+
else
|
98
|
+
fromusername = @internes[@from.active-1].username
|
99
|
+
end
|
100
|
+
if @to.active == 0
|
101
|
+
tousername = "kas"
|
102
|
+
else
|
103
|
+
tousername = @internes[@to.active-1].username
|
104
|
+
end
|
105
|
+
begin
|
106
|
+
amount = @amount.text
|
107
|
+
raise Ig3tool::IG3Error, "uncorrect format for amount" unless amount =~ /\d+(\.\d{1,2}){0,1}/
|
108
|
+
$client.interne_transfer!("from" => fromusername, "to" => tousername, "amount" => @amount.text.strip.to_c, "message" => @message.text.strip)
|
109
|
+
_clear
|
110
|
+
_update_transactions(fromusername)
|
111
|
+
@notification.text = "transferred #{amount} EUR from #{fromusername} to #{tousername}"
|
112
|
+
rescue Exception => e
|
113
|
+
@notification.text = e.message
|
114
|
+
end
|
115
|
+
end
|
116
|
+
def setaction(from, to)
|
117
|
+
if from == 0
|
118
|
+
fromusername = "kas"
|
119
|
+
else
|
120
|
+
fromusername = @internes[from-1].username
|
121
|
+
end
|
122
|
+
if to == 0
|
123
|
+
tousername = "kas"
|
124
|
+
else
|
125
|
+
tousername = @internes[to-1].username
|
126
|
+
end
|
127
|
+
@action.set_markup("toss money from <b>#{fromusername}</b> to <b>#{tousername}</b>")
|
128
|
+
@action.set_markup("retract money from kas") if fromusername == "kas"
|
129
|
+
@action.set_markup("deposit money to your interne") if tousername == "kas"
|
130
|
+
@action.set_markup("money masturbation detected!") if from == to
|
131
|
+
end
|
132
|
+
|
133
|
+
|
134
|
+
private
|
135
|
+
|
136
|
+
|
137
|
+
def _clear
|
138
|
+
@amount.text = "0.0"
|
139
|
+
@message.text = ""
|
140
|
+
@saldo.text = ""
|
141
|
+
from = @from.active
|
142
|
+
to = @to.active
|
143
|
+
_update_debuggers
|
144
|
+
@from.active = from
|
145
|
+
@to.active = to
|
146
|
+
end
|
147
|
+
|
148
|
+
def _update_debuggers_nothread
|
149
|
+
begin
|
150
|
+
@internes = $client.internes
|
151
|
+
from_model = Gtk::ListStore.new(Object, String)
|
152
|
+
to_model = Gtk::ListStore.new(Object, String)
|
153
|
+
|
154
|
+
empty = from_model.append
|
155
|
+
empty[0] = nil
|
156
|
+
empty[1] = "kas"
|
157
|
+
empty2 = to_model.append
|
158
|
+
empty2[0] = nil
|
159
|
+
empty2[1] = "kas"
|
160
|
+
|
161
|
+
@internes.each do |s|
|
162
|
+
row = from_model.append
|
163
|
+
row[0] = s
|
164
|
+
row[1] = s.username
|
165
|
+
row2 = to_model.append
|
166
|
+
row2[0] = s
|
167
|
+
row2[1] = s.username
|
168
|
+
end
|
169
|
+
|
170
|
+
@from.model = from_model
|
171
|
+
@from.active = 0
|
172
|
+
@from.clear
|
173
|
+
renderer = Gtk::CellRendererText.new
|
174
|
+
@from.pack_start(renderer, true)
|
175
|
+
@from.set_attributes(renderer, :text => 1)
|
176
|
+
@to.model = to_model
|
177
|
+
@to.active = 0
|
178
|
+
@to.clear
|
179
|
+
renderer = Gtk::CellRendererText.new
|
180
|
+
@to.pack_start(renderer, true)
|
181
|
+
@to.set_attributes(renderer, :text => 1)
|
182
|
+
rescue Exception => e
|
183
|
+
@notification.text = e.to_s + e.message
|
184
|
+
end
|
185
|
+
end
|
186
|
+
|
187
|
+
|
188
|
+
def _update_debuggers
|
189
|
+
Thread.new do
|
190
|
+
begin
|
191
|
+
@internes = $client.internes
|
192
|
+
from_model = Gtk::ListStore.new(Object, String)
|
193
|
+
to_model = Gtk::ListStore.new(Object, String)
|
194
|
+
|
195
|
+
empty = from_model.append
|
196
|
+
empty[0] = nil
|
197
|
+
empty[1] = "kas"
|
198
|
+
empty2 = to_model.append
|
199
|
+
empty2[0] = nil
|
200
|
+
empty2[1] = "kas"
|
201
|
+
|
202
|
+
@internes.each do |s|
|
203
|
+
row = from_model.append
|
204
|
+
row[0] = s
|
205
|
+
row[1] = s.username
|
206
|
+
row2 = to_model.append
|
207
|
+
row2[0] = s
|
208
|
+
row2[1] = s.username
|
209
|
+
end
|
210
|
+
|
211
|
+
@from.model = from_model
|
212
|
+
@from.active = 0
|
213
|
+
@from.clear
|
214
|
+
renderer = Gtk::CellRendererText.new
|
215
|
+
@from.pack_start(renderer, true)
|
216
|
+
@from.set_attributes(renderer, :text => 1)
|
217
|
+
@to.model = to_model
|
218
|
+
@to.active = 0
|
219
|
+
@to.clear
|
220
|
+
renderer = Gtk::CellRendererText.new
|
221
|
+
@to.pack_start(renderer, true)
|
222
|
+
@to.set_attributes(renderer, :text => 1)
|
223
|
+
rescue Exception => e
|
224
|
+
@notification.text = e.to_s + e.message
|
225
|
+
end
|
226
|
+
end
|
227
|
+
end
|
228
|
+
|
229
|
+
def _update_transactions(name=nil)
|
230
|
+
@notification.text = "loading log..."
|
231
|
+
@transactions_store.clear
|
232
|
+
Thread.new do
|
233
|
+
begin
|
234
|
+
if name.nil?
|
235
|
+
transactionslines = $client.interne_log
|
236
|
+
else
|
237
|
+
transactionslines = $client.interne_log(name, 200)
|
238
|
+
end
|
239
|
+
transactionslines.each do |ll|
|
240
|
+
@transactions_store.append[0] = ll
|
241
|
+
end
|
242
|
+
rescue Exception => e
|
243
|
+
@notification.text = e.message
|
244
|
+
end
|
245
|
+
end
|
246
|
+
@notification.text = ""
|
247
|
+
end
|
248
|
+
|
249
|
+
|
250
|
+
|
251
|
+
end
|
252
|
+
|
253
|
+
register_window(InterneWindow)
|
254
|
+
|
255
|
+
end
|
256
|
+
|
257
|
+
|
258
|
+
|
data/lib/ui/peoplewindow.rb
CHANGED
@@ -16,8 +16,6 @@ module Ig3tool
|
|
16
16
|
def initialize
|
17
17
|
super("people.glade")
|
18
18
|
|
19
|
-
@c = $global["client"]
|
20
|
-
|
21
19
|
@username = @glade.get_widget("username")
|
22
20
|
@firstname = @glade.get_widget("firstname")
|
23
21
|
@lastname = @glade.get_widget("lastname")
|
@@ -81,7 +79,7 @@ module Ig3tool
|
|
81
79
|
@notification.text = "please fill in a username..."
|
82
80
|
else
|
83
81
|
|
84
|
-
p =
|
82
|
+
p = $client.person_lookup("username", username)[0]
|
85
83
|
if p.nil?
|
86
84
|
@notification.text = "no user with username #{username} found..."
|
87
85
|
else
|
@@ -94,7 +92,7 @@ module Ig3tool
|
|
94
92
|
begin
|
95
93
|
barc = @barcode.text
|
96
94
|
clear_all(nil)
|
97
|
-
p =
|
95
|
+
p = $client.person_member(barc)
|
98
96
|
_show(p)
|
99
97
|
rescue Exception => e
|
100
98
|
@notification.text = "no user with barcode #{barc} found..."
|
@@ -142,7 +140,7 @@ module Ig3tool
|
|
142
140
|
attrs["status"] = @statushashi[@status.active]
|
143
141
|
|
144
142
|
begin
|
145
|
-
|
143
|
+
$client.person_save!(attrs)
|
146
144
|
@notification.text = "Person succesfully saved, clearing the form..."
|
147
145
|
sleep 2
|
148
146
|
clear_all(nil)
|
@@ -178,7 +176,7 @@ module Ig3tool
|
|
178
176
|
end
|
179
177
|
|
180
178
|
begin
|
181
|
-
people =
|
179
|
+
people = $client.person_lookup(attrs)
|
182
180
|
_show(people[0]) if people.size == 1
|
183
181
|
_update_names(people)
|
184
182
|
rescue Exception => e
|
@@ -229,7 +227,7 @@ module Ig3tool
|
|
229
227
|
def _update_hist(username, clear=true)
|
230
228
|
@history_store.clear if clear
|
231
229
|
Thread.new do
|
232
|
-
hist =
|
230
|
+
hist = $client.person_memberships(username)
|
233
231
|
hist.each do |m|
|
234
232
|
@history_store.append[0] = m
|
235
233
|
end
|
@@ -244,17 +242,17 @@ module Ig3tool
|
|
244
242
|
if people.nil?
|
245
243
|
case @statussearch.active
|
246
244
|
when -1
|
247
|
-
people =
|
245
|
+
people = $client.person_everybody
|
248
246
|
when 0
|
249
|
-
people =
|
247
|
+
people = $client.person_everybody
|
250
248
|
when 1
|
251
|
-
people =
|
249
|
+
people = $client.person_debuggers
|
252
250
|
when 2
|
253
|
-
people =
|
251
|
+
people = $client.person_members
|
254
252
|
when 3
|
255
|
-
people =
|
253
|
+
people = $client.person_nonmembers
|
256
254
|
when 4
|
257
|
-
people =
|
255
|
+
people = $client.person_honorarymembers
|
258
256
|
end
|
259
257
|
else
|
260
258
|
@statussearch.active = -1
|
@@ -305,10 +303,10 @@ module Ig3tool
|
|
305
303
|
end
|
306
304
|
end
|
307
305
|
@mobile.text = person["gsm"]
|
308
|
-
#@status.text =
|
309
|
-
membership =
|
306
|
+
#@status.text = $client.person_status(username)
|
307
|
+
membership = $client.person_membership(person["username"])
|
310
308
|
@barcode.text = membership.barcode unless membership.nil?
|
311
|
-
status =
|
309
|
+
status = $client.person_status(person["username"])
|
312
310
|
@status.active = @statushash[status]
|
313
311
|
_update_hist(person["username"])
|
314
312
|
@notification.text = "the ig3tool imps found #{person["username"]}..."
|