def __init__(self): CardType.__init__(self) self.id = "4" self.name = _("Map") self.description = _("A card type for learning locations on a map") # List and name the keys. self.fields.append(("loc", _("Location"))) self.fields.append(("blank", _("Blank map"))) self.fields.append(("marked", _("Marked map"))) # Recognition. v = FactView(1, _("Recognition")) v.q_fields = ["marked"] v.a_fields = ["loc"] v.required_fields = ["marked", "loc"] self.fact_views.append(v) # Production. v = FactView(2, _("Production")) v.q_fields = ["loc","blank"] v.a_fields = ["marked"] v.required_fields = ["loc", "blank", "marked"] v.a_on_top_of_q = True self.fact_views.append(v) # The following field needs to be unique. self.unique_fields = ["loc"]
def __init__(self, language_name=""): CardType.__init__(self) if not language_name: self.id = "2" self.name = _("Front-to-back and back-to-front") self.is_language = False else: self.id = "2_" + language_name self.name = language_name self.is_language = True # List and name the keys. self.fields.append(("q", _("Question"))) self.fields.append(("a", _("Answer"))) # Front-to-back. v = FactView(1, _("Front-to-back")) v.q_fields = ["q"] v.a_fields = ["a"] v.required_fields = ["q"] self.fact_views.append(v) # Back-to-front. v = FactView(2, _("Back-to-front")) v.q_fields = ["a"] v.a_fields = ["q"] v.required_fields = ["a"] self.fact_views.append(v) # The question field needs to be unique. As for duplicates is the answer # field, these are better handled through a synonym detection plugin. self.unique_fields = ["q"]
def __init__(self, language_name=""): CardType.__init__(self) if not language_name: self.id = "3" self.name = _("Foreign word with pronunciation") self.is_language = False else: self.id = "3_" + language_name self.name = language_name self.is_language = True # List and name the keys. self.fields.append(("f", _("Foreign word"))) self.fields.append(("p", _("Pronunciation"))) self.fields.append(("t", _("Translation"))) # Recognition. v = FactView(1, _("Recognition")) v.q_fields = ["f"] v.a_fields = ["p", "t"] v.required_fields = ["f"] self.fact_views.append(v) # Production. v = FactView(2, _("Production")) v.q_fields = ["t"] v.a_fields = ["f", "p"] v.required_fields = ["t"] self.fact_views.append(v) # The foreign word field needs to be unique. As for duplicates is the # answer field, these are better handled through a synonym detection # plugin. self.unique_fields = ["f"]
def __init__(self): CardType.__init__(self) self.id = "5" self.name = _("Cloze deletion") self.description = \ _("A card type blanking out certain fragments in a text.") self.fields.append(("text", _("Text"))) self.unique_fields = ["text"] self.fact_views_can_be_deactivated = False
def __init__(self): CardType.__init__(self) self.id = "1" self.name = _("Front-to-back only") # List and name the keys. self.fields.append(("q", _("Question"))) self.fields.append(("a", _("Answer"))) # Front-to-back. v = FactView(1, _("Front-to-back")) v.q_fields = ["q"] v.a_fields = ["a"] v.required_fields = ["q"] self.fact_views.append(v) # The following field needs to be unique. self.unique_fields = ["q"]