diff --git a/Actions.py b/Actions.py index 3612151e..5458172c 100644 --- a/Actions.py +++ b/Actions.py @@ -352,17 +352,27 @@ def onPress( self, event ): if not externalInfo: Utils.MessageOK( self, - '\n\n'.join( [_('Cannot Start. Excel Sheet read failure.'), _('The Excel file is either unconfigured or unreadable.')] ), - _('Excel Sheet Read '), + '\n\n'.join( [ + _('Cannot Start.'), + _('This race uses RFID.'), + _('An Excel file containing the Bibs and RFID tags is required, and it is either unconfigured or unreadable.'), + _('You must have a valid Excel file, or turn off the RFID option in "Properties|RFID" to enter bibs manually.'), + _('See CrosMgr Help "RFID" for more details.'), + ] ), + _('Excel Sheet Read Error'), wx.ICON_ERROR ) return - try: - next((i for i, field in enumerate(externalFields) if field.startswith('Tag'))) - except StopIteration: + if not any( field.startswith('Tag') for field in externalFields) or not any( field.startswith('Bib') for field in externalFields ): Utils.MessageOK( self, - '\n\n'.join( [_('Cannot Start. Excel Sheet missing Tag column.'), _('The Excel file must contain a Tag column to use RFID.')] ), + '\n\n'.join( [ + _('Cannot Start.'), + _('This race uses RFID.'), + _('The linked Excel file must have a Bib and Tag column.'), + _('You must fix your Excel file, or turn off the RFID option in "Properties|RFID".'), + _('See CrosMgr Help "RFID" for more details.'), + ] ), _('Excel Sheet missing Tag column'), wx.ICON_ERROR ) diff --git a/CrossMgrImpinj/Utils.py b/CrossMgrImpinj/Utils.py index 103679ec..221f4a97 100644 --- a/CrossMgrImpinj/Utils.py +++ b/CrossMgrImpinj/Utils.py @@ -101,6 +101,8 @@ def getDocumentsDir(): dirName = os.path.dirname(dirName) if 'CrossMgrImpinj?' in os.path.basename(dirName): dirName = os.path.dirname(dirName) + if not os.path.isdir( os.path.join(dirName, 'CrossMgrImpinjImages') ): + dirName = os.path.dirname(dirName) if os.path.isdir( os.path.join(dirName, 'CrossMgrImpinjImages') ): pass diff --git a/CrossMgrImpinj/Version.py b/CrossMgrImpinj/Version.py index 7d02f330..32893df9 100644 --- a/CrossMgrImpinj/Version.py +++ b/CrossMgrImpinj/Version.py @@ -1 +1 @@ -AppVerName="CrossMgrImpinj 3.0.19-private" +AppVerName="CrossMgrImpinj 3.0.20-private" diff --git a/MainWin.py b/MainWin.py index 4694bee5..c7997eec 100644 --- a/MainWin.py +++ b/MainWin.py @@ -2704,6 +2704,7 @@ def menuNew( self, event ): dlg = PropertiesDialog(self, title=_('Configure Race'), style=wx.DEFAULT_DIALOG_STYLE ) ApplyDefaultTemplate( race ) + race.minutes = 60 # Ensure we start with a reasonable race minutes. dlg.properties.refresh() ret = dlg.ShowModal() fileName = dlg.GetPath() diff --git a/Version.py b/Version.py index 6009911d..6bf81f90 100644 --- a/Version.py +++ b/Version.py @@ -1 +1 @@ -AppVerName="CrossMgr 3.1.32-private" +AppVerName="CrossMgr 3.1.33-private"