def add_deck(self, color, color_name, deck_name, aliases, commanders, link=""): decks = self.decks() document = { "name": deck_name, "color": utils.sort_color_str(color), "color_name": color_name, "link": link, "aliases": aliases, "canonical_aliases": [utils.transform_deck_name(alias) for alias in aliases], "commanders": commanders } if not decks.find_one({"name": deck_name}): decks.insert_one(document) return 1 else: decks.find_one_and_replace({"name": deck_name}, document) return 0
def _get_color_identity(commanders): colors = [] for commander in commanders: if commander: colors += commander["color_identity"] return utils.sort_color_str("".join(set(colors)))
def find_decks_by_color(self, color): return self.decks().find({"color": utils.sort_color_str(color)})