diff --git a/contest/cbrparser.py b/contest/cbrparser.py index bc25fda..f574ddc 100644 --- a/contest/cbrparser.py +++ b/contest/cbrparser.py @@ -50,10 +50,17 @@ def parseCBR(raw): qm = qsore.search(q) if qm: qsoData = qm.groupdict() - qsoData["band"] = "2m" if qsoData["band"] == 144 else "70cm" qsoTime = timezone.datetime.strptime(qsoData["datetime"], "%Y-%m-%d %H%M") qsoData["datetime"] = timezone.get_current_timezone().localize(qsoTime) qsoData["no_s"] = qsoNo + + if qsoData["band"] == "144": + qsoData["band"] = "2m" + elif qsoData["band"] == "432": + qsoData["band"] = "70cm" + else: + raise forms.ValidationError("Error parsing band, needs to be either 144 or 432 (as we only support 2m and 70cm in this contest") + info["qsos"].append(qsoData) if info["call"] != qsoData["call_s"]: diff --git a/contest/models.py b/contest/models.py index 9802c81..1daa25c 100644 --- a/contest/models.py +++ b/contest/models.py @@ -220,4 +220,4 @@ class QSO(models.Model): super(QSO, self).save(*args, **kwargs) def __str__(self): - return "QSO no %s at from %s %s with %s@%s %s/%s" % (self.ownNo, self.time.strftime("%H:%M"), self.owner.username, self.call, self.refStr, self.reportTX, self.reportRX) + return "QSO no %s at %s on band %s from %s with %s@%s %s/%s" % (self.ownNo, self.time.strftime("%H:%M"), self.band, self.owner.username, self.call, self.refStr, self.reportTX, self.reportRX)