Merge branch 'master' of git://git.assembla.com/free_poker_tools.git
This commit is contained in:
commit
a93718f953
42
pyfpdb/Configuration.py
Normal file → Executable file
42
pyfpdb/Configuration.py
Normal file → Executable file
|
@ -205,9 +205,18 @@ class Import:
|
||||||
self.interval = node.getAttribute("interval")
|
self.interval = node.getAttribute("interval")
|
||||||
self.callFpdbHud = node.getAttribute("callFpdbHud")
|
self.callFpdbHud = node.getAttribute("callFpdbHud")
|
||||||
self.hhArchiveBase = node.getAttribute("hhArchiveBase")
|
self.hhArchiveBase = node.getAttribute("hhArchiveBase")
|
||||||
|
if node.hasAttribute("saveActions"):
|
||||||
|
self.saveActions = node.getAttribute("saveActions")
|
||||||
|
else:
|
||||||
|
self.saveActions = False
|
||||||
|
if node.hasAttribute("fastStoreHudCache"):
|
||||||
|
self.fastStoreHudCache = node.getAttribute("fastStoreHudCache")
|
||||||
|
else:
|
||||||
|
self.saveActions = False
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
return " interval = %s\n callFpdbHud = %s\n hhArchiveBase = %s" % (self.interval, self.callFpdbHud, self.hhArchiveBase)
|
return " interval = %s\n callFpdbHud = %s\n hhArchiveBase = %s\n saveActions = %s\n fastStoreHudCache = %s\n" \
|
||||||
|
% (self.interval, self.callFpdbHud, self.hhArchiveBase, self.saveActions, self.saveActions)
|
||||||
|
|
||||||
class Tv:
|
class Tv:
|
||||||
def __init__(self, node):
|
def __init__(self, node):
|
||||||
|
@ -391,6 +400,11 @@ class Config:
|
||||||
return layout_node
|
return layout_node
|
||||||
|
|
||||||
def get_location_node(self, layout_node, seat):
|
def get_location_node(self, layout_node, seat):
|
||||||
|
if seat == "common":
|
||||||
|
for location_node in layout_node.getElementsByTagName("location"):
|
||||||
|
if location_node.hasAttribute("common"):
|
||||||
|
return location_node
|
||||||
|
else:
|
||||||
for location_node in layout_node.getElementsByTagName("location"):
|
for location_node in layout_node.getElementsByTagName("location"):
|
||||||
if int( location_node.getAttribute("seat") ) == int( seat ):
|
if int( location_node.getAttribute("seat") ) == int( seat ):
|
||||||
return location_node
|
return location_node
|
||||||
|
@ -420,12 +434,18 @@ class Config:
|
||||||
def edit_aux_layout(self, aux_name, max, width = None, height = None, locations = None):
|
def edit_aux_layout(self, aux_name, max, width = None, height = None, locations = None):
|
||||||
aux_node = self.get_aux_node(aux_name)
|
aux_node = self.get_aux_node(aux_name)
|
||||||
layout_node = self.get_layout_node(aux_node, max)
|
layout_node = self.get_layout_node(aux_node, max)
|
||||||
if layout_node == None: return
|
if layout_node == None:
|
||||||
for i in range(1, max + 1):
|
print "aux node not found"
|
||||||
|
return
|
||||||
|
print "editing locations =", locations
|
||||||
|
for (i, pos) in locations.iteritems():
|
||||||
location_node = self.get_location_node(layout_node, i)
|
location_node = self.get_location_node(layout_node, i)
|
||||||
location_node.setAttribute("x", str( locations[i-1][0] ))
|
location_node.setAttribute("x", str( locations[i][0] ))
|
||||||
location_node.setAttribute("y", str( locations[i-1][1] ))
|
location_node.setAttribute("y", str( locations[i][1] ))
|
||||||
self.aux_windows[aux_name].layout[max].location[i] = ( locations[i-1][0], locations[i-1][1] )
|
if i == "common":
|
||||||
|
self.aux_windows[aux_name].layout[max].common = ( locations[i][0], locations[i][1] )
|
||||||
|
else:
|
||||||
|
self.aux_windows[aux_name].layout[max].location[i] = ( locations[i][0], locations[i][1] )
|
||||||
|
|
||||||
def get_db_parameters(self, name = None):
|
def get_db_parameters(self, name = None):
|
||||||
if name == None: name = 'fpdb'
|
if name == None: name = 'fpdb'
|
||||||
|
@ -480,10 +500,14 @@ class Config:
|
||||||
imp['callFpdbHud'] = self.imp.callFpdbHud
|
imp['callFpdbHud'] = self.imp.callFpdbHud
|
||||||
imp['interval'] = self.imp.interval
|
imp['interval'] = self.imp.interval
|
||||||
imp['hhArchiveBase'] = self.imp.hhArchiveBase
|
imp['hhArchiveBase'] = self.imp.hhArchiveBase
|
||||||
|
imp['saveActions'] = self.imp.saveActions
|
||||||
|
imp['fastStoreHudCache'] = self.imp.fastStoreHudCache
|
||||||
except: # Default params
|
except: # Default params
|
||||||
imp['callFpdbHud'] = True
|
imp['callFpdbHud'] = True
|
||||||
imp['interval'] = 10
|
imp['interval'] = 10
|
||||||
imp['hhArchiveBase'] = "~/.fpdb/HandHistories/"
|
imp['hhArchiveBase'] = "~/.fpdb/HandHistories/"
|
||||||
|
imp['saveActions'] = False
|
||||||
|
imp['fastStoreHudCache'] = False
|
||||||
return imp
|
return imp
|
||||||
|
|
||||||
def get_default_paths(self, site = "PokerStars"):
|
def get_default_paths(self, site = "PokerStars"):
|
||||||
|
@ -689,9 +713,9 @@ if __name__== "__main__":
|
||||||
print c.get_aux_parameters(mw)
|
print c.get_aux_parameters(mw)
|
||||||
|
|
||||||
print "mucked locations =", c.get_aux_locations('mucked', 9)
|
print "mucked locations =", c.get_aux_locations('mucked', 9)
|
||||||
c.edit_aux_layout('mucked', 9, locations = [(487, 113), (555, 469), (572, 276), (522, 345),
|
# c.edit_aux_layout('mucked', 9, locations = [(487, 113), (555, 469), (572, 276), (522, 345),
|
||||||
(333, 354), (217, 341), (150, 273), (150, 169), (230, 115)])
|
# (333, 354), (217, 341), (150, 273), (150, 169), (230, 115)])
|
||||||
print "mucked locations =", c.get_aux_locations('mucked', 9)
|
# print "mucked locations =", c.get_aux_locations('mucked', 9)
|
||||||
|
|
||||||
for site in c.supported_sites.keys():
|
for site in c.supported_sites.keys():
|
||||||
print "site = ", site,
|
print "site = ", site,
|
||||||
|
|
|
@ -200,8 +200,8 @@ class Hud:
|
||||||
self.aux_windows = []
|
self.aux_windows = []
|
||||||
|
|
||||||
def reposition_windows(self, *args):
|
def reposition_windows(self, *args):
|
||||||
if self.stat_windows and len(self.stat_windows > 0):
|
if self.stat_windows != {} and len(self.stat_windows) > 0:
|
||||||
map(lambda x: x.window.move(x.x, x.y), self.stat_windows)
|
map(lambda x: x.window.move(x.x, x.y), self.stat_windows.itervalues())
|
||||||
return True
|
return True
|
||||||
|
|
||||||
def debug_stat_windows(self, *args):
|
def debug_stat_windows(self, *args):
|
||||||
|
@ -216,6 +216,11 @@ class Hud:
|
||||||
new_loc = (loc[0] - self.table.x, loc[1] - self.table.y)
|
new_loc = (loc[0] - self.table.x, loc[1] - self.table.y)
|
||||||
new_layout[self.stat_windows[sw].adj - 1] = new_loc
|
new_layout[self.stat_windows[sw].adj - 1] = new_loc
|
||||||
self.config.edit_layout(self.table.site, self.max, locations = new_layout)
|
self.config.edit_layout(self.table.site, self.max, locations = new_layout)
|
||||||
|
# ask each aux to save its layout back to the config object
|
||||||
|
for aux in self.aux_windows:
|
||||||
|
aux.save_layout()
|
||||||
|
# save the config object back to the file
|
||||||
|
print "saving new xml file"
|
||||||
self.config.save()
|
self.config.save()
|
||||||
|
|
||||||
def adj_seats(self, hand, config):
|
def adj_seats(self, hand, config):
|
||||||
|
|
|
@ -49,6 +49,9 @@ class Aux_Window:
|
||||||
def create(self, *parms):
|
def create(self, *parms):
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
def save_layout(self, *args):
|
||||||
|
pass
|
||||||
|
|
||||||
def destroy(self):
|
def destroy(self):
|
||||||
self.container.destroy()
|
self.container.destroy()
|
||||||
|
|
||||||
|
@ -312,12 +315,13 @@ class Flop_Mucked(Aux_Window):
|
||||||
def __init__(self, hud, config, params):
|
def __init__(self, hud, config, params):
|
||||||
self.hud = hud # hud object that this aux window supports
|
self.hud = hud # hud object that this aux window supports
|
||||||
self.config = config # configuration object for this aux window to use
|
self.config = config # configuration object for this aux window to use
|
||||||
self.params = params # hash aux params from config
|
self.params = params # dict aux params from config
|
||||||
|
self.positions = {} # dict of window positions
|
||||||
|
self.displayed_cards = False
|
||||||
self.card_images = self.get_card_images()
|
self.card_images = self.get_card_images()
|
||||||
|
|
||||||
def create(self):
|
def create(self):
|
||||||
|
self.adj = self.hud.adj_seats(0, self.config)
|
||||||
adj = self.hud.adj_seats(0, self.config)
|
|
||||||
loc = self.config.get_aux_locations(self.params['name'], int(self.hud.max))
|
loc = self.config.get_aux_locations(self.params['name'], int(self.hud.max))
|
||||||
|
|
||||||
self.m_windows = {} # windows to put the card images in
|
self.m_windows = {} # windows to put the card images in
|
||||||
|
@ -328,7 +332,7 @@ class Flop_Mucked(Aux_Window):
|
||||||
if i == 'common':
|
if i == 'common':
|
||||||
(x, y) = self.params['layout'][self.hud.max].common
|
(x, y) = self.params['layout'][self.hud.max].common
|
||||||
else:
|
else:
|
||||||
(x, y) = loc[adj[i]]
|
(x, y) = loc[self.adj[i]]
|
||||||
self.m_windows[i] = gtk.Window()
|
self.m_windows[i] = gtk.Window()
|
||||||
self.m_windows[i].set_decorated(False)
|
self.m_windows[i].set_decorated(False)
|
||||||
self.m_windows[i].set_property("skip-taskbar-hint", True)
|
self.m_windows[i].set_property("skip-taskbar-hint", True)
|
||||||
|
@ -340,6 +344,7 @@ class Flop_Mucked(Aux_Window):
|
||||||
self.seen_cards[i] = gtk.image_new_from_pixbuf(self.card_images[('B', 'H')])
|
self.seen_cards[i] = gtk.image_new_from_pixbuf(self.card_images[('B', 'H')])
|
||||||
self.eb[i].add(self.seen_cards[i])
|
self.eb[i].add(self.seen_cards[i])
|
||||||
self.m_windows[i].move(int(x) + self.hud.table.x, int(y) + self.hud.table.y)
|
self.m_windows[i].move(int(x) + self.hud.table.x, int(y) + self.hud.table.y)
|
||||||
|
self.positions[i] = (int(x) + self.hud.table.x, int(y) + self.hud.table.y)
|
||||||
self.m_windows[i].set_opacity(float(self.params['opacity']))
|
self.m_windows[i].set_opacity(float(self.params['opacity']))
|
||||||
self.m_windows[i].show_all()
|
self.m_windows[i].show_all()
|
||||||
self.m_windows[i].hide()
|
self.m_windows[i].hide()
|
||||||
|
@ -350,11 +355,9 @@ class Flop_Mucked(Aux_Window):
|
||||||
|
|
||||||
def update_gui(self, new_hand_id):
|
def update_gui(self, new_hand_id):
|
||||||
"""Prepare and show the mucked cards."""
|
"""Prepare and show the mucked cards."""
|
||||||
pos = {}
|
if self.displayed_cards:
|
||||||
for i, w in self.m_windows.iteritems():
|
|
||||||
pos[i] = w.get_position() # I hate this. I don't know why I have to save position and then move back
|
|
||||||
self.hide_mucked_cards()
|
self.hide_mucked_cards()
|
||||||
displayed_cards = False
|
self.displayed_cards = False
|
||||||
for (i, cards) in self.hud.cards.iteritems():
|
for (i, cards) in self.hud.cards.iteritems():
|
||||||
if self.has_cards(cards):
|
if self.has_cards(cards):
|
||||||
# scratch is a working pixbuf, used to assemble the image
|
# scratch is a working pixbuf, used to assemble the image
|
||||||
|
@ -370,11 +373,11 @@ class Flop_Mucked(Aux_Window):
|
||||||
x = x + int(self.params['card_wd'])
|
x = x + int(self.params['card_wd'])
|
||||||
self.seen_cards[i].set_from_pixbuf(scratch)
|
self.seen_cards[i].set_from_pixbuf(scratch)
|
||||||
# self.m_windows[i].show_all()
|
# self.m_windows[i].show_all()
|
||||||
self.m_windows[i].move(pos[i][0], pos[i][1]) # here is where I move back
|
|
||||||
self.m_windows[i].present()
|
self.m_windows[i].present()
|
||||||
displayed_cards = True
|
self.m_windows[i].move(self.positions[i][0], self.positions[i][1]) # here is where I move back
|
||||||
|
self.displayed_cards = True
|
||||||
|
|
||||||
if displayed_cards and float(self.params['timeout']) > 0:
|
if self.displayed_cards and float(self.params['timeout']) > 0:
|
||||||
gobject.timeout_add(int(1000*float(self.params['timeout'])), self.hide_mucked_cards)
|
gobject.timeout_add(int(1000*float(self.params['timeout'])), self.hide_mucked_cards)
|
||||||
|
|
||||||
def destroy(self):
|
def destroy(self):
|
||||||
|
@ -385,8 +388,10 @@ class Flop_Mucked(Aux_Window):
|
||||||
def hide_mucked_cards(self):
|
def hide_mucked_cards(self):
|
||||||
"""Hide the mucked card windows."""
|
"""Hide the mucked card windows."""
|
||||||
# this is the callback from the timeout
|
# this is the callback from the timeout
|
||||||
for w in self.m_windows.values():
|
for (i, w) in self.m_windows.iteritems():
|
||||||
|
self.positions[i] = w.get_position()
|
||||||
w.hide()
|
w.hide()
|
||||||
|
self.displayed_cards = False
|
||||||
return False # this tells the system to NOT run this timeout again
|
return False # this tells the system to NOT run this timeout again
|
||||||
|
|
||||||
def button_press_cb(self, widget, event, *args):
|
def button_press_cb(self, widget, event, *args):
|
||||||
|
@ -403,17 +408,16 @@ class Flop_Mucked(Aux_Window):
|
||||||
|
|
||||||
def save_layout(self, *args):
|
def save_layout(self, *args):
|
||||||
"""Save new layout back to the aux element in the config file."""
|
"""Save new layout back to the aux element in the config file."""
|
||||||
# similar to same method in stat_windows
|
new_locs = {}
|
||||||
new_layout = [(0, 0)] * self.hud.max
|
print "adj =", self.adj
|
||||||
for (i, w) in self.m_windows.iteritems():
|
for (i, pos) in self.positions.iteritems():
|
||||||
(x, y) = w.get_position()
|
if i != 'common':
|
||||||
new_loc = (x - self.hud.table.x, y - self.hud.table.y)
|
new_locs[self.adj[int(i)]] = (pos[0] - self.hud.table.x, pos[1] - self.hud.table.y)
|
||||||
if i != "common":
|
|
||||||
new_layout[self.hud.stat_windows[int(i)].adj - 1] = new_loc
|
|
||||||
else:
|
else:
|
||||||
pass
|
new_locs[i] = (pos[0] - self.hud.table.x, pos[1] - self.hud.table.y)
|
||||||
self.config.edit_layout(self.table.site, self.max, locations = new_layout)
|
print "old locations =", self.params['layout'][self.hud.max]
|
||||||
self.config.save()
|
print "saving locations =", new_locs
|
||||||
|
self.config.edit_aux_layout(self.params['name'], self.hud.max, locations = new_locs)
|
||||||
|
|
||||||
if __name__== "__main__":
|
if __name__== "__main__":
|
||||||
|
|
||||||
|
|
|
@ -353,7 +353,7 @@ class Importer:
|
||||||
|
|
||||||
try:
|
try:
|
||||||
handsId=fpdb_parse_logic.mainParser(self.settings['db-backend'], self.fdb.db
|
handsId=fpdb_parse_logic.mainParser(self.settings['db-backend'], self.fdb.db
|
||||||
,self.fdb.cursor, site, category, hand)
|
,self.fdb.cursor, site, category, hand, self.config)
|
||||||
self.fdb.db.commit()
|
self.fdb.db.commit()
|
||||||
|
|
||||||
stored+=1
|
stored+=1
|
||||||
|
|
|
@ -21,7 +21,7 @@ import fpdb_simple
|
||||||
import fpdb_save_to_db
|
import fpdb_save_to_db
|
||||||
|
|
||||||
#parses a holdem hand
|
#parses a holdem hand
|
||||||
def mainParser(backend, db, cursor, site, category, hand):
|
def mainParser(backend, db, cursor, site, category, hand, config):
|
||||||
category=fpdb_simple.recogniseCategory(hand[0])
|
category=fpdb_simple.recogniseCategory(hand[0])
|
||||||
if (category=="holdem" or category=="omahahi" or category=="omahahilo"):
|
if (category=="holdem" or category=="omahahi" or category=="omahahilo"):
|
||||||
base="hold"
|
base="hold"
|
||||||
|
@ -150,7 +150,7 @@ def mainParser(backend, db, cursor, site, category, hand):
|
||||||
|
|
||||||
if base=="hold":
|
if base=="hold":
|
||||||
result = fpdb_save_to_db.tourney_holdem_omaha(
|
result = fpdb_save_to_db.tourney_holdem_omaha(
|
||||||
backend, db, cursor, base, category, siteTourneyNo, buyin
|
config, backend, db, cursor, base, category, siteTourneyNo, buyin
|
||||||
, fee, knockout, entries, prizepool, tourneyStartTime
|
, fee, knockout, entries, prizepool, tourneyStartTime
|
||||||
, payin_amounts, ranks, tourneyTypeId, siteID, siteHandNo
|
, payin_amounts, ranks, tourneyTypeId, siteID, siteHandNo
|
||||||
, gametypeID, handStartTime, names, playerIDs, startCashes
|
, gametypeID, handStartTime, names, playerIDs, startCashes
|
||||||
|
@ -159,7 +159,7 @@ def mainParser(backend, db, cursor, site, category, hand):
|
||||||
, actionNos, hudImportData, maxSeats, tableName, seatNos)
|
, actionNos, hudImportData, maxSeats, tableName, seatNos)
|
||||||
elif base=="stud":
|
elif base=="stud":
|
||||||
result = fpdb_save_to_db.tourney_stud(
|
result = fpdb_save_to_db.tourney_stud(
|
||||||
backend, db, cursor, base, category, siteTourneyNo
|
config, backend, db, cursor, base, category, siteTourneyNo
|
||||||
, buyin, fee, knockout, entries, prizepool, tourneyStartTime
|
, buyin, fee, knockout, entries, prizepool, tourneyStartTime
|
||||||
, payin_amounts, ranks, tourneyTypeId, siteID, siteHandNo
|
, payin_amounts, ranks, tourneyTypeId, siteID, siteHandNo
|
||||||
, gametypeID, handStartTime, names, playerIDs, startCashes
|
, gametypeID, handStartTime, names, playerIDs, startCashes
|
||||||
|
@ -171,7 +171,7 @@ def mainParser(backend, db, cursor, site, category, hand):
|
||||||
else:
|
else:
|
||||||
if base=="hold":
|
if base=="hold":
|
||||||
result = fpdb_save_to_db.ring_holdem_omaha(
|
result = fpdb_save_to_db.ring_holdem_omaha(
|
||||||
backend, db, cursor, base, category, siteHandNo
|
config, backend, db, cursor, base, category, siteHandNo
|
||||||
, gametypeID, handStartTime, names, playerIDs
|
, gametypeID, handStartTime, names, playerIDs
|
||||||
, startCashes, positions, cardValues, cardSuits
|
, startCashes, positions, cardValues, cardSuits
|
||||||
, boardValues, boardSuits, winnings, rakes
|
, boardValues, boardSuits, winnings, rakes
|
||||||
|
@ -179,7 +179,7 @@ def mainParser(backend, db, cursor, site, category, hand):
|
||||||
, hudImportData, maxSeats, tableName, seatNos)
|
, hudImportData, maxSeats, tableName, seatNos)
|
||||||
elif base=="stud":
|
elif base=="stud":
|
||||||
result = fpdb_save_to_db.ring_stud(
|
result = fpdb_save_to_db.ring_stud(
|
||||||
backend, db, cursor, base, category, siteHandNo, gametypeID
|
config, backend, db, cursor, base, category, siteHandNo, gametypeID
|
||||||
, handStartTime, names, playerIDs, startCashes, antes
|
, handStartTime, names, playerIDs, startCashes, antes
|
||||||
, cardValues, cardSuits, winnings, rakes, actionTypes, allIns
|
, cardValues, cardSuits, winnings, rakes, actionTypes, allIns
|
||||||
, actionAmounts, actionNos, hudImportData, maxSeats, tableName
|
, actionAmounts, actionNos, hudImportData, maxSeats, tableName
|
||||||
|
|
|
@ -26,18 +26,29 @@ MYSQL_INNODB=2
|
||||||
PGSQL=3
|
PGSQL=3
|
||||||
SQLITE=4
|
SQLITE=4
|
||||||
|
|
||||||
fastStoreHudCache=False # set this to True to test the new storeHudCache routine
|
fastStoreHudCache=True # set this to True to test the new storeHudCache routine
|
||||||
|
|
||||||
saveActions=True # set this to False to avoid storing action data
|
saveActions=False # set this to False to avoid storing action data
|
||||||
# Pros: speeds up imports
|
# Pros: speeds up imports
|
||||||
# Cons: no action data is saved, so you need to keep the hand histories
|
# Cons: no action data is saved, so you need to keep the hand histories
|
||||||
# variance not available on stats page
|
# variance not available on stats page
|
||||||
|
|
||||||
#stores a stud/razz hand into the database
|
#stores a stud/razz hand into the database
|
||||||
def ring_stud(backend, db, cursor, base, category, site_hand_no, gametype_id, hand_start_time
|
def ring_stud(config, backend, db, cursor, base, category, site_hand_no, gametype_id, hand_start_time
|
||||||
,names, player_ids, start_cashes, antes, card_values, card_suits, winnings, rakes
|
,names, player_ids, start_cashes, antes, card_values, card_suits, winnings, rakes
|
||||||
,action_types, allIns, action_amounts, actionNos, hudImportData, maxSeats, tableName
|
,action_types, allIns, action_amounts, actionNos, hudImportData, maxSeats, tableName
|
||||||
,seatNos):
|
,seatNos):
|
||||||
|
|
||||||
|
import_options = config.get_import_parameters()
|
||||||
|
if import_options['saveActions'] == 'True':
|
||||||
|
saveActions = True
|
||||||
|
else:
|
||||||
|
saveActions = False
|
||||||
|
if import_options['fastStoreHudCache'] == 'True':
|
||||||
|
fastStoreHudCache = True
|
||||||
|
else:
|
||||||
|
fastStoreHudCache = False
|
||||||
|
|
||||||
fpdb_simple.fillCardArrays(len(names), base, category, card_values, card_suits)
|
fpdb_simple.fillCardArrays(len(names), base, category, card_values, card_suits)
|
||||||
|
|
||||||
hands_id=fpdb_simple.storeHands(backend, db, cursor, site_hand_no, gametype_id
|
hands_id=fpdb_simple.storeHands(backend, db, cursor, site_hand_no, gametype_id
|
||||||
|
@ -56,11 +67,22 @@ def ring_stud(backend, db, cursor, base, category, site_hand_no, gametype_id, ha
|
||||||
return hands_id
|
return hands_id
|
||||||
#end def ring_stud
|
#end def ring_stud
|
||||||
|
|
||||||
def ring_holdem_omaha(backend, db, cursor, base, category, site_hand_no, gametype_id
|
def ring_holdem_omaha(config, backend, db, cursor, base, category, site_hand_no, gametype_id
|
||||||
,hand_start_time, names, player_ids, start_cashes, positions, card_values
|
,hand_start_time, names, player_ids, start_cashes, positions, card_values
|
||||||
,card_suits, board_values, board_suits, winnings, rakes, action_types, allIns
|
,card_suits, board_values, board_suits, winnings, rakes, action_types, allIns
|
||||||
,action_amounts, actionNos, hudImportData, maxSeats, tableName, seatNos):
|
,action_amounts, actionNos, hudImportData, maxSeats, tableName, seatNos):
|
||||||
"""stores a holdem/omaha hand into the database"""
|
"""stores a holdem/omaha hand into the database"""
|
||||||
|
|
||||||
|
import_options = config.get_import_parameters()
|
||||||
|
if import_options['saveActions'] == 'True':
|
||||||
|
saveActions = True
|
||||||
|
else:
|
||||||
|
saveActions = False
|
||||||
|
if import_options['fastStoreHudCache'] == 'True':
|
||||||
|
fastStoreHudCache = True
|
||||||
|
else:
|
||||||
|
fastStoreHudCache = False
|
||||||
|
|
||||||
t0 = time()
|
t0 = time()
|
||||||
fpdb_simple.fillCardArrays(len(names), base, category, card_values, card_suits)
|
fpdb_simple.fillCardArrays(len(names), base, category, card_values, card_suits)
|
||||||
t1 = time()
|
t1 = time()
|
||||||
|
@ -89,7 +111,7 @@ def ring_holdem_omaha(backend, db, cursor, base, category, site_hand_no, gametyp
|
||||||
return hands_id
|
return hands_id
|
||||||
#end def ring_holdem_omaha
|
#end def ring_holdem_omaha
|
||||||
|
|
||||||
def tourney_holdem_omaha(backend, db, cursor, base, category, siteTourneyNo, buyin, fee, knockout
|
def tourney_holdem_omaha(config, backend, db, cursor, base, category, siteTourneyNo, buyin, fee, knockout
|
||||||
,entries, prizepool, tourney_start, payin_amounts, ranks, tourneyTypeId
|
,entries, prizepool, tourney_start, payin_amounts, ranks, tourneyTypeId
|
||||||
,siteId #end of tourney specific params
|
,siteId #end of tourney specific params
|
||||||
,site_hand_no, gametype_id, hand_start_time, names, player_ids
|
,site_hand_no, gametype_id, hand_start_time, names, player_ids
|
||||||
|
@ -97,6 +119,17 @@ def tourney_holdem_omaha(backend, db, cursor, base, category, siteTourneyNo, buy
|
||||||
,board_suits, winnings, rakes, action_types, allIns, action_amounts
|
,board_suits, winnings, rakes, action_types, allIns, action_amounts
|
||||||
,actionNos, hudImportData, maxSeats, tableName, seatNos):
|
,actionNos, hudImportData, maxSeats, tableName, seatNos):
|
||||||
"""stores a tourney holdem/omaha hand into the database"""
|
"""stores a tourney holdem/omaha hand into the database"""
|
||||||
|
|
||||||
|
import_options = config.get_import_parameters()
|
||||||
|
if import_options['saveActions'] == 'True':
|
||||||
|
saveActions = True
|
||||||
|
else:
|
||||||
|
saveActions = False
|
||||||
|
if import_options['fastStoreHudCache'] == 'True':
|
||||||
|
fastStoreHudCache = True
|
||||||
|
else:
|
||||||
|
fastStoreHudCache = False
|
||||||
|
|
||||||
fpdb_simple.fillCardArrays(len(names), base, category, card_values, card_suits)
|
fpdb_simple.fillCardArrays(len(names), base, category, card_values, card_suits)
|
||||||
fpdb_simple.fill_board_cards(board_values, board_suits)
|
fpdb_simple.fill_board_cards(board_values, board_suits)
|
||||||
|
|
||||||
|
@ -123,12 +156,23 @@ def tourney_holdem_omaha(backend, db, cursor, base, category, siteTourneyNo, buy
|
||||||
return hands_id
|
return hands_id
|
||||||
#end def tourney_holdem_omaha
|
#end def tourney_holdem_omaha
|
||||||
|
|
||||||
def tourney_stud(backend, db, cursor, base, category, siteTourneyNo, buyin, fee, knockout, entries
|
def tourney_stud(config, backend, db, cursor, base, category, siteTourneyNo, buyin, fee, knockout, entries
|
||||||
,prizepool, tourneyStartTime, payin_amounts, ranks, tourneyTypeId, siteId
|
,prizepool, tourneyStartTime, payin_amounts, ranks, tourneyTypeId, siteId
|
||||||
,siteHandNo, gametypeId, handStartTime, names, playerIds, startCashes, antes
|
,siteHandNo, gametypeId, handStartTime, names, playerIds, startCashes, antes
|
||||||
,cardValues, cardSuits, winnings, rakes, actionTypes, allIns, actionAmounts
|
,cardValues, cardSuits, winnings, rakes, actionTypes, allIns, actionAmounts
|
||||||
,actionNos, hudImportData, maxSeats, tableName, seatNos):
|
,actionNos, hudImportData, maxSeats, tableName, seatNos):
|
||||||
#stores a tourney stud/razz hand into the database
|
#stores a tourney stud/razz hand into the database
|
||||||
|
|
||||||
|
import_options = config.get_import_parameters()
|
||||||
|
if import_options['saveActions'] == 'True':
|
||||||
|
saveActions = True
|
||||||
|
else:
|
||||||
|
saveActions = False
|
||||||
|
if import_options['fastStoreHudCache'] == 'True':
|
||||||
|
fastStoreHudCache = True
|
||||||
|
else:
|
||||||
|
fastStoreHudCache = False
|
||||||
|
|
||||||
fpdb_simple.fillCardArrays(len(names), base, category, cardValues, cardSuits)
|
fpdb_simple.fillCardArrays(len(names), base, category, cardValues, cardSuits)
|
||||||
|
|
||||||
tourney_id=fpdb_simple.store_tourneys(cursor, tourneyTypeId, siteTourneyNo, entries, prizepool, tourneyStartTime)
|
tourney_id=fpdb_simple.store_tourneys(cursor, tourneyTypeId, siteTourneyNo, entries, prizepool, tourneyStartTime)
|
||||||
|
|
|
@ -156,12 +156,16 @@ def prepareBulkImport(fdb):
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
elif fdb.backend == PGSQL:
|
elif fdb.backend == PGSQL:
|
||||||
print "dropping pg fk", fk['fktab'], fk['fkcol']
|
# DON'T FORGET TO RECREATE THEM!!
|
||||||
try:
|
print "Index dropping disabled for postgresql."
|
||||||
fdb.cursor.execute("alter table " + fk['fktab'] + " drop constraint "
|
# print "dropping pg fk", fk['fktab'], fk['fkcol']
|
||||||
+ fk['fktab'] + '_' + fk['fkcol'] + '_fkey')
|
# try:
|
||||||
except:
|
# fdb.cursor.execute("alter table " + fk['fktab'] + " drop constraint "
|
||||||
pass
|
# + fk['fktab'] + '_' + fk['fkcol'] + '_fkey')
|
||||||
|
# print "alter table " + fk['fktab'] + " drop constraint " \
|
||||||
|
# + fk['fktab'] + '_' + fk['fkcol'] + '_fkey'
|
||||||
|
# except:
|
||||||
|
# pass
|
||||||
else:
|
else:
|
||||||
print "Only MySQL and Postgres supported so far"
|
print "Only MySQL and Postgres supported so far"
|
||||||
return -1
|
return -1
|
||||||
|
@ -175,12 +179,17 @@ def prepareBulkImport(fdb):
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
elif fdb.backend == PGSQL:
|
elif fdb.backend == PGSQL:
|
||||||
print "dropping pg index ", idx['tab'], idx['col']
|
# DON'T FORGET TO RECREATE THEM!!
|
||||||
# mod to use tab_col for index name?
|
print "Index dropping disabled for postgresql."
|
||||||
try:
|
# print "dropping pg index ", idx['tab'], idx['col']
|
||||||
fdb.cursor.execute( "drop index %s_%s_idx" % (idx['tab'],idx['col']) )
|
# # mod to use tab_col for index name?
|
||||||
except:
|
# try:
|
||||||
pass
|
# pass
|
||||||
|
# print "drop index %s_%s_idx" % (idx['tab'],idx['col'])
|
||||||
|
# fdb.cursor.execute( "drop index %s_%s_idx" % (idx['tab'],idx['col']) )
|
||||||
|
# print "dropped pg index ", idx['tab'], idx['col']
|
||||||
|
# except:
|
||||||
|
# pass
|
||||||
else:
|
else:
|
||||||
print "Only MySQL and Postgres supported so far"
|
print "Only MySQL and Postgres supported so far"
|
||||||
return -1
|
return -1
|
||||||
|
@ -219,14 +228,19 @@ def afterBulkImport(fdb):
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
elif fdb.backend == PGSQL:
|
elif fdb.backend == PGSQL:
|
||||||
print "creating fk ", fk['fktab'], fk['fkcol'], "->", fk['rtab'], fk['rcol']
|
|
||||||
try:
|
|
||||||
fdb.cursor.execute("alter table " + fk['fktab'] + " add constraint "
|
|
||||||
+ fk['fktab'] + '_' + fk['fkcol'] + '_fkey'
|
|
||||||
+ " foreign key (" + fk['fkcol']
|
|
||||||
+ ") references " + fk['rtab'] + "(" + fk['rcol'] + ")")
|
|
||||||
except:
|
|
||||||
pass
|
pass
|
||||||
|
# print "creating fk ", fk['fktab'], fk['fkcol'], "->", fk['rtab'], fk['rcol']
|
||||||
|
# try:
|
||||||
|
# print "alter table " + fk['fktab'] + " add constraint " \
|
||||||
|
# + fk['fktab'] + '_' + fk['fkcol'] + '_fkey' \
|
||||||
|
# + " foreign key (" + fk['fkcol'] \
|
||||||
|
# + ") references " + fk['rtab'] + "(" + fk['rcol'] + ")"
|
||||||
|
# fdb.cursor.execute("alter table " + fk['fktab'] + " add constraint "
|
||||||
|
# + fk['fktab'] + '_' + fk['fkcol'] + '_fkey'
|
||||||
|
# + " foreign key (" + fk['fkcol']
|
||||||
|
# + ") references " + fk['rtab'] + "(" + fk['rcol'] + ")")
|
||||||
|
# except:
|
||||||
|
# pass
|
||||||
else:
|
else:
|
||||||
print "Only MySQL and Postgres supported so far"
|
print "Only MySQL and Postgres supported so far"
|
||||||
return -1
|
return -1
|
||||||
|
@ -241,15 +255,16 @@ def afterBulkImport(fdb):
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
elif fdb.backend == PGSQL:
|
elif fdb.backend == PGSQL:
|
||||||
# mod to use tab_col for index name?
|
|
||||||
print "creating pg index ", idx['tab'], idx['col']
|
|
||||||
try:
|
|
||||||
print "create index %s_%s_idx on %s(%s)" % (idx['tab'], idx['col'], idx['tab'], idx['col'])
|
|
||||||
fdb.cursor.execute( "create index %s_%s_idx on %s(%s)"
|
|
||||||
% (idx['tab'], idx['col'], idx['tab'], idx['col']) )
|
|
||||||
except:
|
|
||||||
print " ERROR! :-("
|
|
||||||
pass
|
pass
|
||||||
|
# # mod to use tab_col for index name?
|
||||||
|
# print "creating pg index ", idx['tab'], idx['col']
|
||||||
|
# try:
|
||||||
|
# print "create index %s_%s_idx on %s(%s)" % (idx['tab'], idx['col'], idx['tab'], idx['col'])
|
||||||
|
# fdb.cursor.execute( "create index %s_%s_idx on %s(%s)"
|
||||||
|
# % (idx['tab'], idx['col'], idx['tab'], idx['col']) )
|
||||||
|
# except:
|
||||||
|
# print " ERROR! :-("
|
||||||
|
# pass
|
||||||
else:
|
else:
|
||||||
print "Only MySQL and Postgres supported so far"
|
print "Only MySQL and Postgres supported so far"
|
||||||
return -1
|
return -1
|
||||||
|
|
Loading…
Reference in New Issue
Block a user