Write project card to string.

        Args:
            originalPrefix (str): Original name to give to files that follow the project naming convention
                (e.g: prefix.gag).
            newPrefix (str, optional): If new prefix is desired, pass in this parameter. Defaults to None.

        Returns:
            str: Card and value as they would be written to the project file.

def write(self, originalPrefix, newPrefix=None):
        """
        Write project card to string.

        Args:
            originalPrefix (str): Original name to give to files that follow the project naming convention
                (e.g: prefix.gag).
            newPrefix (str, optional): If new prefix is desired, pass in this parameter. Defaults to None.

        Returns:
            str: Card and value as they would be written to the project file.
        """
        # Determine number of spaces between card and value for nice alignment
        numSpaces = max(2, 25 - len(self.name))

        # Handle special case of booleans
        if self.value is None:
            line = '%s\n' % self.name
        else:
            if self.name == 'WMS':
                line = '%s %s\n' % (self.name, self.value)
            elif newPrefix is None:
                line = '%s%s%s\n' % (self.name, ' ' * numSpaces, self.value)
            elif originalPrefix in self.value:
                line = '%s%s%s\n' % (self.name, ' ' * numSpaces, self.value.replace(originalPrefix, newPrefix))
            else:
                line = '%s%s%s\n' % (self.name, ' ' * numSpaces, self.value)
        return line