def create_help_entry(key, entrytext, category="General", locks=None): """ Create a static help entry in the help database. Note that Command help entries are dynamic and directly taken from the __doc__ entries of the command. The database-stored help entries are intended for more general help on the game, more extensive info, in-game setting information and so on. """ global _HelpEntry if not _HelpEntry: from evennia.help.models import HelpEntry as _HelpEntry try: new_help = _HelpEntry() new_help.key = key new_help.entrytext = entrytext new_help.help_category = category if locks: new_help.locks.add(locks) new_help.save() return new_help except IntegrityError: string = "Could not add help entry: key '%s' already exists." % key logger.log_errmsg(string) return None except Exception: logger.log_trace() return None
def create_help_entry(key, entrytext, category="General", locks=None, aliases=None, tags=None): """ Create a static help entry in the help database. Note that Command help entries are dynamic and directly taken from the __doc__ entries of the command. The database-stored help entries are intended for more general help on the game, more extensive info, in-game setting information and so on. Args: key (str): The name of the help entry. entrytext (str): The body of te help entry category (str, optional): The help category of the entry. locks (str, optional): A lockstring to restrict access. aliases (list of str, optional): List of alternative (likely shorter) keynames. tags (lst, optional): List of tags or tuples `(tag, category)`. Returns: help (HelpEntry): A newly created help entry. """ global _HelpEntry if not _HelpEntry: from evennia.help.models import HelpEntry as _HelpEntry try: new_help = _HelpEntry() new_help.key = key new_help.entrytext = entrytext new_help.help_category = category if locks: new_help.locks.add(locks) if aliases: new_help.aliases.add(make_iter(aliases)) if tags: new_help.tags.batch_add(*tags) new_help.save() return new_help except IntegrityError: string = "Could not add help entry: key '%s' already exists." % key logger.log_err(string) return None except Exception: logger.log_trace() return None signals.SIGNAL_HELPENTRY_POST_CREATE.send(sender=new_help)
def create_help_entry(key, entrytext, category="General", locks=None, aliases=None): """ Create a static help entry in the help database. Note that Command help entries are dynamic and directly taken from the __doc__ entries of the command. The database-stored help entries are intended for more general help on the game, more extensive info, in-game setting information and so on. Args: key (str): The name of the help entry. entrytext (str): The body of te help entry category (str, optional): The help category of the entry. locks (str, optional): A lockstring to restrict access. aliases (list of str): List of alternative (likely shorter) keynames. Returns: help (HelpEntry): A newly created help entry. """ global _HelpEntry if not _HelpEntry: from evennia.help.models import HelpEntry as _HelpEntry try: new_help = _HelpEntry() new_help.key = key new_help.entrytext = entrytext new_help.help_category = category if locks: new_help.locks.add(locks) if aliases: new_help.aliases.add(aliases) new_help.save() return new_help except IntegrityError: string = "Could not add help entry: key '%s' already exists." % key logger.log_err(string) return None except Exception: logger.log_trace() return None