split_bills 0.0.4 → 0.0.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/split_bills.rb +1 -116
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5b277379dbdf6022c25590426d21084662a16f8b
|
4
|
+
data.tar.gz: d572d5b828dd017ee6f6fcfc6a6f0a5a16f3b820
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e2977b28f32b5f104963c9f8d1f68b07afa15f21a7193740d9e782f33e968d713ed18e2fdd6093025cd52c37cae61c2eeac48b7ddee0c7b7d9cf8483ed6b4fa8
|
7
|
+
data.tar.gz: aad87184a55de42332ad1d85d7758ad19dfc9d4f602f6a67a04175b903e21b4e9ffe89a42c3db2d2de2c161ece67e0b710299fe0e03967d4e1516b7ed5e567ce
|
data/lib/split_bills.rb
CHANGED
@@ -66,11 +66,6 @@ class SplitBills
|
|
66
66
|
#$members = load_work
|
67
67
|
end
|
68
68
|
|
69
|
-
def list_members #remove?
|
70
|
-
end
|
71
|
-
|
72
|
-
|
73
|
-
|
74
69
|
def del_member!(del_mem)
|
75
70
|
$members.delete_if{ |m| m==del_mem }
|
76
71
|
end
|
@@ -130,7 +125,7 @@ class SplitBills
|
|
130
125
|
# Monthly bills methods
|
131
126
|
|
132
127
|
def save_monthly_bills
|
133
|
-
save_file(@
|
128
|
+
save_file(@monthly_bills_file, $monthly_bills)
|
134
129
|
end
|
135
130
|
|
136
131
|
def load_monthly_bills
|
@@ -167,11 +162,6 @@ class SplitBills
|
|
167
162
|
#$monthly_split = load_work
|
168
163
|
end
|
169
164
|
|
170
|
-
#def split_monthly_split #set value of bill split for
|
171
|
-
# populate_divide_by
|
172
|
-
#list_keys.each {|key| get_target_val(key) }
|
173
|
-
#end
|
174
|
-
|
175
165
|
def list_keys
|
176
166
|
$monthly_bills.keys
|
177
167
|
end
|
@@ -188,12 +178,7 @@ class SplitBills
|
|
188
178
|
split_key_list = list_keys.each { |key| get_split_bill_list(key) } #[:rent], [:garbage]
|
189
179
|
split_key_list.each { |key| get_split_bill_list(key) }
|
190
180
|
@split_bill_list = @split_bill_list.uniq
|
191
|
-
# for each bill in split_bill_list
|
192
181
|
@split_bill_list.each { |key| calculate_and_set_split(key) }
|
193
|
-
# eligible_members = split_key_list.each { |key| get_eligible_member_list(key) }
|
194
|
-
#divide_by = (eligible_members.uniq).count
|
195
|
-
#get_whole = split_key_list.each { |key| calculate_split_value(key) }
|
196
|
-
#calculate_split = get_whole.to_f/divide_by.to_f
|
197
182
|
end
|
198
183
|
|
199
184
|
def get_split_bill_list(key) #evaluate sub_keys for instance of "split" and store key = :rent, sub_key = :mon_rent
|
@@ -231,10 +216,6 @@ class SplitBills
|
|
231
216
|
mem_keys.each { |mem_key| eligible_member_test(mem_key, mem_sub_key) }
|
232
217
|
end
|
233
218
|
|
234
|
-
#def get_eligible_member_sub_keys(mem_key) # [:scott_dodson]
|
235
|
-
# test_list = $members[mem_key].keys
|
236
|
-
#end
|
237
|
-
|
238
219
|
def eligible_member_test(mem_key, sub_key) # [:scott_dodson], [:my_garbage]
|
239
220
|
elig_list = Array.new
|
240
221
|
#sub_key = return_mem_sub_sym(key) # [:my_garbage]
|
@@ -261,89 +242,6 @@ class SplitBills
|
|
261
242
|
end
|
262
243
|
end
|
263
244
|
|
264
|
-
#
|
265
|
-
#
|
266
|
-
# old unfactored
|
267
|
-
#
|
268
|
-
#
|
269
|
-
|
270
|
-
|
271
|
-
#def count_to_split_by # <--- cruft
|
272
|
-
#$members.keys
|
273
|
-
#keys = show_members.keys
|
274
|
-
#keys
|
275
|
-
#end
|
276
|
-
|
277
|
-
def get_divide_by_val(sub_sym)
|
278
|
-
#count_to_split_by.each {|key| get_divide_by(key, sub_sym)}
|
279
|
-
mem_keys = $members.keys
|
280
|
-
mem_keys.each {|key| get_divide_by(key, sub_sym)}
|
281
|
-
end
|
282
|
-
|
283
|
-
def populate_divide_by #populate my_ bill keys in the counting hash
|
284
|
-
list_keys.each {|key| @divide_by[return_mem_sub_sym(key)] = 0}
|
285
|
-
end
|
286
|
-
|
287
|
-
def get_divide_by(sym, sub_sym) #member key, bill key
|
288
|
-
new_sym = return_mem_sub_sym(sub_sym) #how do I get the sub key
|
289
|
-
work_test = $members[sym][new_sym][0]
|
290
|
-
if work_test=="split"
|
291
|
-
@divide_by[new_sym] += 1
|
292
|
-
#work_test
|
293
|
-
else
|
294
|
-
end
|
295
|
-
end
|
296
|
-
|
297
|
-
def increment_divide_by(sym)
|
298
|
-
if show_divide_by.has_key?(sym)
|
299
|
-
show_divide_by[sym] += 1
|
300
|
-
else
|
301
|
-
end
|
302
|
-
end
|
303
|
-
|
304
|
-
def split_monthly_fixed #divide 'split' bill between assigned members
|
305
|
-
end
|
306
|
-
|
307
|
-
def list_mem_with_key(sub_sym)
|
308
|
-
@mem_with_key.clear
|
309
|
-
mem_keys = $members.keys
|
310
|
-
mem_keys.each {|key| mem_with_key_search(key, sub_sym)}
|
311
|
-
end
|
312
|
-
|
313
|
-
def mem_with_key_search(key, sub_sym)
|
314
|
-
new_sym = return_mem_sub_sym(sub_sym)
|
315
|
-
work_test = $members[key]
|
316
|
-
mem_key = $members[key]
|
317
|
-
#if work_test==new_sym # bad test
|
318
|
-
if work_test.has_key?(sub_sym)
|
319
|
-
@mem_with_key << key
|
320
|
-
else
|
321
|
-
end
|
322
|
-
#new_sym = return_mem_sub_sym(sub_sym) #how do I get the sub key
|
323
|
-
#work_test = $members[sym][new_sym][0]
|
324
|
-
#if work_test=="split"
|
325
|
-
# @divide_by[new_sym] += 1
|
326
|
-
# #work_test
|
327
|
-
#else
|
328
|
-
#end
|
329
|
-
end
|
330
|
-
|
331
|
-
def ms_get_bill_total(bill_key)
|
332
|
-
key_work = "mon_" + bill_key.to_s
|
333
|
-
mon_sym = key_work.to_sym
|
334
|
-
$monthly_bills[bill_key][mon_sym][1]
|
335
|
-
end
|
336
|
-
|
337
|
-
#def ms_get_mem_number#(bill_key)
|
338
|
-
#$members.values.inject(Hash.new(0)) { |m, n| m[n] += 1; m }
|
339
|
-
#$members
|
340
|
-
#$members.each_with_object(Hash.new{|h,k|h[k]='0'}) do |h,res|
|
341
|
-
# res[h['country']].succ!
|
342
|
-
#end
|
343
|
-
|
344
|
-
def check_split_total #total members split for a given bill
|
345
|
-
end
|
346
|
-
|
347
245
|
# Test Methods
|
348
246
|
|
349
247
|
def show_divide_by
|
@@ -354,13 +252,6 @@ class SplitBills
|
|
354
252
|
@mem_with_key
|
355
253
|
end
|
356
254
|
|
357
|
-
def show_monthly_split #show bill total, members split and total of members split
|
358
|
-
$monthly_split
|
359
|
-
end
|
360
|
-
|
361
|
-
def show_members_split #use after split values calculated
|
362
|
-
end
|
363
|
-
|
364
255
|
def show_bills
|
365
256
|
$bills
|
366
257
|
end
|
@@ -438,16 +329,10 @@ class SplitBills
|
|
438
329
|
|
439
330
|
def return_sub_sym(sym)
|
440
331
|
("mon_" + sym.to_s).to_sym
|
441
|
-
#key_work = "mon_" + sym.to_s
|
442
|
-
#new_sym = key_work.to_sym
|
443
|
-
#new_sym
|
444
332
|
end
|
445
333
|
|
446
334
|
def return_mem_sub_sym(sym) #for getting number to split by
|
447
335
|
("my_" + sym.to_s).to_sym
|
448
|
-
#key_work = "my_" + sym.to_s
|
449
|
-
#new_sym = key_work.to_sym
|
450
|
-
#new_sym
|
451
336
|
end
|
452
337
|
|
453
338
|
def self.hi
|