def __init__(self, id, title='', description='', abbrev='', email=None, topics=None, classifications=None, importances=None, managers=None, supporters=None, dispatching=None, version_info_spiel=None): SkinnedFolder.__init__(self, id, title) self._setup_internal_catalog() self.last_issue_id = 0 self.description = description self.abbrev = abbrev username = str(getSecurityManager().getUser()) util.add_local_role(self, username, 'Manager') util.add_local_role(self, username, 'Owner') if managers is None: if username: managers = [username] else: managers = [] elif username and username not in managers: managers.append(username) self.managers = managers if supporters is None: supporters = [] self.supporters = supporters self._adjust_staff_roles(no_reindex=1) # XXX We need to ensure *some* collector email addr... self.email = email if topics is None: self.topics = ['Zope', 'Collector', 'Database', 'Catalog', 'ZServer'] else: self.topics = topics if classifications is None: self.classifications = self.DEFAULT_CLASSIFICATIONS else: self.classifications = classifications if importances is None: self.importances = self.DEFAULT_IMPORTANCES else: self.importances = importances if version_info_spiel is None: self.version_info_spiel = self.DEFAULT_VERSION_INFO_SPIEL else: self.version_info_spiel = version_info_spiel return self