Flag list displaying 'None' fixed.

This commit is contained in:
Greg Taylor 2009-01-22 15:22:32 +00:00
parent 9403d15ae8
commit cbd5fd9faa

View file

@ -392,14 +392,21 @@ class Object(models.Model):
""" """
Returns an object's flag list. Returns an object's flag list.
""" """
flags = self.flags # Holds the list of flags to display
nosave_flags = self.nosave_flags all_flags = []
if not flags: if self.flags is not None:
flags = "" # Add saved flags to the display list
if not nosave_flags: all_flags = all_flags + self.flags.split()
nosave_flags = "" if self.nosave_flags is not None:
# Add non-saved flags to the display list
all_flags = all_flags + self.nosave_flags.split()
return '%s %s' % (flags, nosave_flags) if not all_flags:
# Guard against returning 'None'
return ""
else:
# Format the Python list to a space separated string of flags
return " ".join(all_flags)
def clear_attribute(self, attribute): def clear_attribute(self, attribute):
""" """
@ -633,7 +640,12 @@ class Object(models.Model):
self.nosave_flags = ' '.join(flags) self.nosave_flags = ' '.join(flags)
else: else:
# Is a savable flag. # Is a savable flag.
flags = str(self.flags).split() if self.flags is not None:
flags = str(self.flags).split()
else:
# This prevents conversion of None to strings
flags = []
flags.append(flag) flags.append(flag)
self.flags = ' '.join(flags) self.flags = ' '.join(flags)
self.save() self.save()