mirror of
https://git.wownero.com/wownero/tippero.git
synced 2024-08-15 00:33:14 +00:00
bookie: factor the optional book code
This commit is contained in:
parent
dd4b45cd41
commit
6ce78e20fb
1 changed files with 43 additions and 85 deletions
|
@ -76,27 +76,35 @@ def Bookie(link,cmd):
|
||||||
return
|
return
|
||||||
link.send('%s opens book #%d for %s, with outcomes: %s' % (link.user.nick, book_index, name, ", ".join(outcomes)))
|
link.send('%s opens book #%d for %s, with outcomes: %s' % (link.user.nick, book_index, name, ", ".join(outcomes)))
|
||||||
|
|
||||||
|
def GetBookIndex(cmd,base_arg_count):
|
||||||
|
active_books=GetActiveBooks()
|
||||||
|
if len(active_books) == 0:
|
||||||
|
return None, 'There is no open book'
|
||||||
|
|
||||||
|
if GetParam(cmd,base_arg_count+1):
|
||||||
|
name = GetParam(cmd,1)
|
||||||
|
if not name in active_books.values():
|
||||||
|
return None, 'Book %s not found' % name
|
||||||
|
book_index = long(active_books.keys()[active_books.values().index(name)])
|
||||||
|
parm_offset = 1
|
||||||
|
else:
|
||||||
|
if len(active_books) > 1:
|
||||||
|
return None, 'There are several open books: %s' % ", ".join(active_books.values())
|
||||||
|
book_index = long(active_books.keys()[0])
|
||||||
|
parm_offset = 0
|
||||||
|
return long(book_index), parm_offset
|
||||||
|
|
||||||
def Cancel(link,cmd):
|
def Cancel(link,cmd):
|
||||||
identity=link.identity()
|
identity=link.identity()
|
||||||
|
|
||||||
SweepClosingTimes()
|
SweepClosingTimes()
|
||||||
|
|
||||||
active_books=GetActiveBooks()
|
res0, res1 = GetBookIndex(cmd,0)
|
||||||
if len(active_books) == 0:
|
if res0 == None:
|
||||||
link.send('There is no open book to cancel')
|
link.send(res1)
|
||||||
return
|
return
|
||||||
|
book_index = res0
|
||||||
name = GetParam(cmd,1)
|
parm_offset = res1
|
||||||
if name:
|
|
||||||
if not name in active_books.values():
|
|
||||||
link.send('Book not found')
|
|
||||||
return
|
|
||||||
book_index = long(active_books.keys()[active_books.values().index(name)])
|
|
||||||
else:
|
|
||||||
if len(active_books) > 1:
|
|
||||||
link.send('There are several open books, specify the one to cancel: %s' % ", ".join(active_books.values()))
|
|
||||||
return
|
|
||||||
book_index = long(active_books.keys()[0])
|
|
||||||
|
|
||||||
tname='bookie:%d' % book_index
|
tname='bookie:%d' % book_index
|
||||||
book_name=redis_hget(tname,'name')
|
book_name=redis_hget(tname,'name')
|
||||||
|
@ -128,22 +136,12 @@ def Close(link,cmd):
|
||||||
|
|
||||||
SweepClosingTimes()
|
SweepClosingTimes()
|
||||||
|
|
||||||
active_books=GetActiveBooks()
|
res0, res1 = GetBookIndex(cmd,0)
|
||||||
if len(active_books) == 0:
|
if res0 == None:
|
||||||
link.send('There is no open book to close')
|
link.send(res1)
|
||||||
return
|
return
|
||||||
|
book_index = res0
|
||||||
name = GetParam(cmd,1)
|
parm_offset = res1
|
||||||
if name:
|
|
||||||
if not name in active_books.values():
|
|
||||||
link.send('Book not found')
|
|
||||||
return
|
|
||||||
book_index = long(active_books.keys()[active_books.values().index(name)])
|
|
||||||
else:
|
|
||||||
if len(active_books) > 1:
|
|
||||||
link.send('There are several open books, specify the one to close: %s' % ", ".join(active_books.values()))
|
|
||||||
return
|
|
||||||
book_index = long(active_books.keys()[0])
|
|
||||||
|
|
||||||
tname = "bookie:%d" % book_index
|
tname = "bookie:%d" % book_index
|
||||||
book_name=redis_hget(tname,'name')
|
book_name=redis_hget(tname,'name')
|
||||||
|
@ -162,24 +160,12 @@ def ScheduleClose(link,cmd):
|
||||||
|
|
||||||
SweepClosingTimes()
|
SweepClosingTimes()
|
||||||
|
|
||||||
active_books=GetActiveBooks()
|
res0, res1 = GetBookIndex(cmd,0)
|
||||||
if len(active_books) == 0:
|
if res0 == None:
|
||||||
link.send('There is no open book to close')
|
link.send(res1)
|
||||||
return
|
return
|
||||||
|
book_index = res0
|
||||||
if GetParam(cmd,2):
|
parm_offset = res1
|
||||||
name = GetParam(cmd,1)
|
|
||||||
if not name in active_books.values():
|
|
||||||
link.send('Book not found')
|
|
||||||
return
|
|
||||||
book_index = long(active_books.keys()[active_books.values().index(name)])
|
|
||||||
parm_offset = 1
|
|
||||||
else:
|
|
||||||
if len(active_books) > 1:
|
|
||||||
link.send('There are several open books, specify the one to close: %s' % ", ".join(active_books.values()))
|
|
||||||
return
|
|
||||||
book_index = long(active_books.keys()[0])
|
|
||||||
parm_offset = 0
|
|
||||||
|
|
||||||
tname = "bookie:%d" % book_index
|
tname = "bookie:%d" % book_index
|
||||||
book_name=redis_hget(tname,'name')
|
book_name=redis_hget(tname,'name')
|
||||||
|
@ -263,26 +249,12 @@ def Bet(link,cmd):
|
||||||
|
|
||||||
SweepClosingTimes()
|
SweepClosingTimes()
|
||||||
|
|
||||||
active_books=GetActiveBooks()
|
res0, res1 = GetBookIndex(cmd,2)
|
||||||
if len(active_books) == 0:
|
if res0 == None:
|
||||||
link.send('The book is empty')
|
link.send(res1)
|
||||||
return
|
return
|
||||||
|
book_index = res0
|
||||||
if GetParam(cmd,3):
|
parm_offset = res1
|
||||||
# name outcome amount
|
|
||||||
name = GetParam(cmd,1)
|
|
||||||
if not name in active_books.values():
|
|
||||||
link.send('Book not found')
|
|
||||||
return
|
|
||||||
book_index = long(active_books.keys()[active_books.values().index(name)])
|
|
||||||
parm_offset = 1
|
|
||||||
else:
|
|
||||||
# outcome amount
|
|
||||||
if len(active_books) > 1:
|
|
||||||
link.send('There are several open books, specify the one to bet on: %s' % ", ".join(active_books.values()))
|
|
||||||
return
|
|
||||||
book_index = long(active_books.keys()[0])
|
|
||||||
parm_offset = 0
|
|
||||||
|
|
||||||
tname = "bookie:%d" % book_index
|
tname = "bookie:%d" % book_index
|
||||||
book_name=redis_hget(tname,'name')
|
book_name=redis_hget(tname,'name')
|
||||||
|
@ -353,26 +325,12 @@ def Result(link,cmd):
|
||||||
|
|
||||||
SweepClosingTimes()
|
SweepClosingTimes()
|
||||||
|
|
||||||
active_books=GetActiveBooks()
|
res0, res1 = GetBookIndex(cmd,1)
|
||||||
if len(active_books) == 0:
|
if res0 == None:
|
||||||
link.send('The book is empty')
|
link.send(res1)
|
||||||
return
|
return
|
||||||
|
book_index = res0
|
||||||
if GetParam(cmd,2):
|
parm_offset = res1
|
||||||
# name outcome
|
|
||||||
name = GetParam(cmd,1)
|
|
||||||
if not name in active_books.values():
|
|
||||||
link.send('Book not found')
|
|
||||||
return
|
|
||||||
book_index = long(active_books.keys()[active_books.values().index(name)])
|
|
||||||
parm_offset = 1
|
|
||||||
else:
|
|
||||||
# outcome
|
|
||||||
if len(active_books) > 1:
|
|
||||||
link.send('There are several open books, specify the one to call result for: %s' % ", ".join(active_books.values()))
|
|
||||||
return
|
|
||||||
book_index = long(active_books.keys()[0])
|
|
||||||
parm_offset = 0
|
|
||||||
|
|
||||||
tname = "bookie:%d" % book_index
|
tname = "bookie:%d" % book_index
|
||||||
book_name=redis_hget(tname,'name')
|
book_name=redis_hget(tname,'name')
|
||||||
|
|
Loading…
Reference in a new issue