def buildFeaturesFields(self): from odoo.addons.splashsync.helpers import TransHelper # ====================================================================# # Set default System Language FieldFactory.setDefaultLanguage(TransHelper.get_default_iso()) # ====================================================================# # Walk on Available Attributes for attribute in ProductsFeatures.find_all(): # ====================================================================# # Walk on Available Languages for iso_code, lang_name in TransHelper.get_all().items(): # ==================================================================== # # Product Feature Field FieldFactory.create(const.__SPL_T_VARCHAR__, self.encode(attribute), attribute.display_name) FieldFactory.group("Features") FieldFactory.microData("http://schema.org/Product", attribute.name) # ==================================================================== # # Add Language Params FieldFactory.description("["+lang_name+"] "+attribute.display_name) FieldFactory.setMultilang(iso_code) # ==================================================================== # # Filter Variants Attributes During Tests if Framework.isDebugMode() and attribute.name in AttributesHelper.attr_test: FieldFactory.isNotTested() if iso_code != TransHelper.get_default_iso(): FieldFactory.association(self.encode(attribute))
def buildBasicFields(self): from odoo.addons.splashsync.helpers import TransHelper # ====================================================================# # Set default System Language FieldFactory.setDefaultLanguage(TransHelper.get_default_iso()) # ====================================================================# # Walk on Model Basic Fields Definitions for fieldId, field in self.get_basic_fields_list().items(): # ====================================================================# # Walk on Available Languages for iso_code, lang_name in TransHelper.for_factory(field).items(): # Build Splash Field Definition FieldFactory.create(self.__BasicTypes__[field["type"]], fieldId, field["string"]) FieldFactory.group("Others") FieldFactory.microData("http://schema.org/Product", field["string"]) if field["required"] or fieldId in self.get_required_fields(): FieldFactory.isRequired( iso_code == TransHelper.get_default_iso()) if field["readonly"]: FieldFactory.isReadOnly() if 'help' in field: FieldFactory.description(field["help"]) if iso_code == TransHelper.get_default_iso( ) and fieldId in self.get_listed_fields(): FieldFactory.isListed() if "translate" in field and field["translate"] is True: FieldFactory.description(field["string"] + " [" + lang_name + "]") FieldFactory.setMultilang(iso_code) if iso_code != TransHelper.get_default_iso(): FieldFactory.association(fieldId) # Selection >> Add Choices if field["type"] == "selection": for key, value in field["selection"]: FieldFactory.addChoice(key, value) # Force Urls generator options if field["type"] == "char": FieldFactory.addOption("Url_Prefix", "http://") # Force Monetary as ReadOnly if field["type"] == "monetary": FieldFactory.isReadOnly()
def buildAttributesFields(): # ====================================================================# # Set default System Language FieldFactory.setDefaultLanguage(TransHelper.get_default_iso()) # ==================================================================== # # Product Variation Attribute Code FieldFactory.create(const.__SPL_T_VARCHAR__, "code", "Attr Code") FieldFactory.inlist("attributes") FieldFactory.microData( "http://schema.org/Product", "VariantAttributeCode" if Framework.isDebugMode() else "VariantAttributeName") FieldFactory.isNotTested() # ==================================================================== # # Product Variation Attribute Name FieldFactory.create(const.__SPL_T_VARCHAR__, "name", "Attr Name") FieldFactory.inlist("attributes") FieldFactory.isReadOnly() FieldFactory.isNotTested() if Framework.isDebugMode(): FieldFactory.microData("http://schema.org/Product", "VariantAttributeName") # ====================================================================# # Walk on Available Languages for iso_code, lang_name in TransHelper.get_all().items(): # ==================================================================== # # Product Variation Attribute Code FieldFactory.create(const.__SPL_T_VARCHAR__, "value", "Attr Value") FieldFactory.description("[" + lang_name + "] Attr Value") FieldFactory.microData("http://schema.org/Product", "VariantAttributeValue") FieldFactory.setMultilang(iso_code) FieldFactory.inlist("attributes") FieldFactory.isNotTested() # ==================================================================== # # Product Variation Attribute Extra Price if not SettingsManager.is_prd_simple_prices(): FieldFactory.create(const.__SPL_T_DOUBLE__, "price_extra", "Extra Price") FieldFactory.inlist("attributes") FieldFactory.microData( "http://schema.org/Product", "VariantAttributeCode" if Framework.isDebugMode() else "VariantExtraPrice") FieldFactory.isNotTested()