Example #1
0
    def __init__(self):
        BaseDB.__init__(self, joinWrestlerDir("wrestlers.db"))
        wrestlerFiles = glob.glob(joinWrestlerDir("*.py"))
        basenames = [os.path.basename(f) for f in wrestlerFiles]
        
        self._openDB('c')

        # If there were new wrestlers added to the "Wrestlers" directory
        # since the last time we opened the db, add them to the db here.
        newFiles = self.getKeysNotInDB(basenames)
        mods = {}
        for newFile in newFiles:
            mod = util.getWrestlerModule(newFile)
            if mod:
                   self.db[newFile] = {
                       "NAME": mod.name,
                       "NAMESET": getattr(mod, "nameSet", ""),
                       "MTIME": os.stat(joinWrestlerDir(newFile)).st_mtime
                   }
                
        # If any of the wrestlers have been modified since the last time
        # we opened the db then update the wrestlers' records in the db.
        for filename in self.db:
            record = self.db.get(filename, {})
            fileMtime = os.stat(joinWrestlerDir(filename)).st_mtime
            if record and record.get("MTIME", -1) < fileMtime:
                mod = util.getWrestlerModule(filename)
                if mod:
                    # Wrestler may have changed since the last time we
                    # opened the db so we reload the wrestler module.
                    reload(mod)
                    record["NAME"] = mod.name
                    record["NAMESET"] = getattr(mod, "nameSet", "")
                    record["MTIME"] = fileMtime
                    self.db[filename] = record

        self.save()
Example #2
0
 def loadWrestler(self, wrestler):
     self.clearFields()
     # Ensure we're working with a *.py
     self.loadedFileName = wrestler.path
     
     wrestler = getWrestlerModule(wrestler.path)
     self.setStatusText("Loaded " + self.loadedFileName)
     self.nameCtrl.SetValue(wrestler.name)
     self.populateTwoValueRow("sub", wrestler)
     self.populateTwoValueRow("tagTeam", wrestler)
     self.populateTwoValueRow("priority", wrestler)        
     self.setCardValues("generalCard", wrestler)
     self.setCardValues("defensiveCard", wrestler)
     self.setCardValues("offensiveCard", wrestler)
     self.setCardValues("ropesCard", wrestler)
     self.setCardValues("specialtyCard", wrestler)
     if hasattr(wrestler, "nameSet"):
         self.nameSetCtrl.SetValue(wrestler.nameSet)