class IHautreinigungsmittel(model.Schema): """ Schema eines Hautreinigungsmittels """ title = schema.TextLine(title=_(u"Produktname")) anwendungsbereich = schema.List(title=_(u"Anwendungsbereich"), value_type=schema.Choice(vocabulary=schmutzVocabulary), required=False,) inhaltsstoffe = schema.List(title=_(u"Inhaltsstoffe"), value_type=schema.TextLine(), required=False) reibemittel = schema.List(title=_(u"Reibemittel"), value_type=schema.TextLine(), required=False) loesemittel = schema.List(title=_(u"Lösemittel"), value_type=schema.TextLine(), required=False) konservierungsmittel = schema.List(title=_(u"Konservierungsmittel"), value_type=schema.TextLine(), required=False) duftstoffe = schema.List(title=_(u"Duftstoffe"), value_type=schema.TextLine(), required=False) bemerkungen = schema.Text(title=_(u"Bemerkungen"), required=False) bild = NamedBlobImage(title=_(u"Produktbild"), required=False) hersteller = RelationChoice( title=_(u"Hersteller oder Lieferant"), source=CatalogSource(portal_type=["Folder", "Hersteller"]), required=False)
class IHautpflegemittel(model.Schema): """ Marker interface and Dexterity Python Schema for Hautpflegemittel """ title = schema.TextLine(title=_(u"Produktname")) anwendungsbereich = schema.List( title=_(u"Anwendungsbereich"), value_type=schema.Choice(vocabulary=anwendungVocabulary), required=False, ) inhaltsstoffe = schema.List(title=_(u"Inhaltsstoffe"), value_type=schema.TextLine(), required=False) konservierungsmittel = schema.List(title=_(u"Konservierungsmittel"), value_type=schema.TextLine(), required=False) duftstoffe = schema.List(title=_(u"Duftstoffe"), value_type=schema.TextLine(), required=False) bemerkungen = schema.Text(title=_(u"Bemerkungen"), required=False) bild = NamedBlobImage(title=_(u"Produktbild"), required=False) hersteller = RelationChoice( title=_(u"Hersteller oder Lieferant"), source=CatalogSource(portal_type=["Folder", "Hersteller"]), required=False)
class IDesinfektionsmittel(model.Schema): """ Schema eines Desinfektionsmittels """ title = schema.TextLine(title=_(u"Produktname")) anwendungsbereich = schema.Choice( title=_(u"Anwendungsbereich"), source=desinf_anwendung, required=True,) produktgruppe = schema.Choice( title=_(u"Produktgruppe"), source=desinf_produktgruppe, default=u'haendedesinketionsmittel', required=True, ) wirksamkeit = schema.List( title=_(u"Wirksamkeit"), value_type=schema.Choice( source=desinf_wirksamkeit,), required=True, ) einwirkung = schema.Choice( title = _(u"Einwirkzeit"), source = einwirkzeit, required = True, ) pruefung = schema.Choice( title=_(u"Wirksamkeit geprüft und gelistet von:"), source=desinf_pruefung, default=u'vah', required=True, ) bemerkungen = schema.Text(title=_(u"Bemerkungen"), required=False) bild = NamedBlobImage(title=_(u"Produktbild"), required=False) hersteller = RelationChoice( title=_(u"Hersteller oder Lieferant"), source=CatalogSource(portal_type=["Folder", "Hersteller"]), required=False)
# -*- coding: utf-8 -*- from zope.schema.vocabulary import SimpleTerm from zope.schema.vocabulary import SimpleVocabulary from bgetem.hautschutz import _ gefaehrdungen = SimpleVocabulary([ SimpleTerm(value=u'biologie', token=u'biologie', title=_(u'Biologische Gefährdungen')), SimpleTerm(value=u'chemie', token=u'chemie', title=_(u'Chemische Gefährdungen')), SimpleTerm(value=u'mechanik', token=u'mechanik', title=_(u'Mechanische Gefährdungen')) ]) dummy_gefahrstoffe = SimpleVocabulary([ SimpleTerm(value=u'ameisensaeure', token=u'ameisensaeure', title=u'Ameisensäure'), SimpleTerm(value=u'essigsaeure', token=u'essigsaeure', title=u'Essigsäure'), SimpleTerm(value=u'salzsaeure', token=u'salzsaeure', title=u'Salzäure'), SimpleTerm(value=u'zitronensaeure', token=u'zitronensaeure', title=u'Zitronensäure'), ]) biogefahr = SimpleVocabulary([
def __call__(self): # Implement your own actions: self.msg = _(u'A small message') return self.index()
class ITaetigkeit(model.Schema): """ Marker interface and Dexterity Python Schema for Taetigkeit """ title = schema.TextLine(title=_(u"Tätigkeit")) description = schema.TextLine(title=_(u"Kurzbeschreibung"), required=False) text = schema.Text(title=_(u"Weitere Beschreibungungen der Tätigkeit"), required=False) gefaehrdung = schema.Choice( title=_(u"Primäre Gefährdung bei dieser Tätigkeit"), description= _(u"Bitte wählen Sie hier die primäre Gefährdung bei dieser Tätigkeit aus." ), source=gefaehrdungen, required=True, ) # model.fieldset( # 'chemie', # label=_(u"Chemische/Biologische Risiken"), # fields=['gefahrstoffschutz', 'biologie'] # fields=['gefahrstoffschutz'] # ) # directives.widget('gefahrstoffschutz', DataGridFieldFactory) # gefahrstoffschutz = schema.List(title = u'Gefahrstoffkontakt bei dieser Tätigkeit', # value_type=DictRow(title=u"Gefahrstoff", schema=IGefahrstoffe), # required = False,) biologie = schema.Choice(title=_( u"Mit folgenden biologischen Gefährdungen ist diese Tätigkeit verbunden:" ), source=biologische_gefaehrdung, required=True) model.fieldset('mechanik', label=_(u"Mechanische Risiken"), fields=[ 'mechanik', 'kettensaege', 'abrieb', 'schnitt', 'riss', 'stick', 'stoss' ]) mechanik = schema.Bool( title=_(u"Mechanische Gefährdungen"), description= _(u"(Beispiel: Arbeit mit spitzen oder scharfkantigen Gegenstände, Stosseinwirkung)" ), required=False) kettensaege = schema.Bool(title=_(u"Arbeit mit handgeführten Kettensägen"), required=False) abrieb = schema.Choice(title=_(u"Anforderung an Abriebfestigkeit"), vocabulary=rankvalue, default='nicht_relevant', required=False) schnitt = schema.Choice(title=_(u"Anforderung an Schnittfestigkeit"), vocabulary=rankvalue, default='nicht_relevant', required=False) riss = schema.Choice(title=_(u"Anforderung an Weiterreißfestigkeit"), vocabulary=rankvalue, default='nicht_relevant', required=False) stick = schema.Choice(title=_(u"Anforderung an Durchstichfestigkeit"), vocabulary=rankvalue, default='nicht_relevant', required=False) stoss = schema.Choice( title=_(u"Anforderung an Schutz gegen Stosseinwirkung"), vocabulary=rankvalue, default='nicht_relevant', required=False) model.fieldset( 'waerme_kaelte', label=_(u"Wärme / Kälte"), fields=[ 'thermisch', 'brennverhalten', 'kontaktwaerme', 'konvektive_hitze', 'strahlungswaerme', 'metallspritzer', 'fluessigesmetall', 'konvektive_kaelte', 'kontaktkaelte', 'wasserdichtigkeit' ], ) thermisch = schema.Bool(title=_(u"Thermische Gefährdungen"), description=_(u"(Hitze oder Kälteeinwirkung)"), required=False) brennverhalten = schema.Choice( title=_(u"Anforderung an das Brennverhalten"), vocabulary=rankvalue, default='nicht_relevant', required=False) kontaktwaerme = schema.Choice(title=_(u"Anforderung an die Kontaktwärme"), vocabulary=rankvalue, default='nicht_relevant', required=False) konvektive_hitze = schema.Choice( title=_(u"Anforderung an die Konvektive Hitze"), vocabulary=rankvalue, default='nicht_relevant', required=False) strahlungswaerme = schema.Choice( title=_(u"Anforderung an die Strahlungswärme"), vocabulary=rankvalue, default='nicht_relevant', required=False) metallspritzer = schema.Choice(title=_( u"Anforderung an die Belastung durch kleine Spritzer geschmolzenen Metalls" ), vocabulary=rankvalue, default='nicht_relevant', required=False) fluessigesmetall = schema.Choice(title=_( u"Anforderung an die Belastung durch große Mengen flüssigen Metalls"), vocabulary=rankvalue, default='nicht_relevant', required=False) konvektive_kaelte = schema.Choice( title=_(u"Anforderung an die Konvektive Kälte"), vocabulary=rankvalue, default='nicht_relevant', required=False) kontaktkaelte = schema.Choice(title=_(u"Anforderung an die Kontaktkälte"), vocabulary=rankvalue, default='nicht_relevant', required=False) wasserdichtigkeit = schema.Choice( title=_(u"Anforderung an die Wasserdichtigkeit"), vocabulary=rankvalue, default='nicht_relevant', required=False)
class IHautschutzmittel(model.Schema): """ Schema eines Hautschutzmittels """ title = schema.TextLine(title=_(u"Produktname")) gefaehrdung = schema.List(title=_(u'Gefährdung'), value_type=schema.Choice( vocabulary=hautschutzmittelanwendungen, required=False), required=False) kategorie = schema.List( title=_(u'Schutzfunktion bei chemischer Gefährdung'), value_type=schema.Choice(vocabulary=hskategorieVocabulary), required=False) uvschutzfaktor = schema.TextLine(title=_(u'Sonnenschutzfaktor'), required=False) schweissrauche = schema.TextLine( title=_(u'Zusatzangaben bei Schweissarbeiten'), required=False) zusatzfunktion = schema.Choice(title=_(u'Zusatzfunktion'), vocabulary=zusatzVocabulary, default="keine", required=False) inhaltsstoffe = schema.List(title=_(u'Inhaltsstoffe'), value_type=schema.TextLine(), required=False) konservierungsmittel = schema.List(title=_(u"Konservierungsmittel"), value_type=schema.TextLine(), required=False) duftstoffe = schema.List(title=_(u"Duftstoffe"), value_type=schema.TextLine(), required=False) bemerkungen = schema.Text(title=_(u"Bemerkungen"), required=False) bild = NamedBlobImage(title=_(u'Produktbild'), required=False)
# -*- coding:utf-8 -*- from zope.schema.vocabulary import SimpleVocabulary, SimpleTerm from bgetem.hautschutz import _ desinf_anwendung = SimpleVocabulary((SimpleTerm(value=u'haende', token=u'haende', title=_(u'Hände')), )) desinf_produktgruppe = SimpleVocabulary(( SimpleTerm(value=u'haendewaschprodukt', token=u'haendewaschprodukt', title=u"Hygienisches Händewaschprodukt"), SimpleTerm(value=u'haendedesinketionsmittel', token=u'haendedesinfektionsmittel', title=u'Händedesinfektionsmittel'), )) desinf_wirksamkeit = SimpleVocabulary(( SimpleTerm( value=u'bakterizid', token=u'bakterizid', title= _(u'Bakterizid (d.h. wirksam gegen Bakterien, ohne bakterielle Sporen)' )), SimpleTerm(value=u'begrenzt_viruzid', token=u'begrenzt_viruzid', title=_(u'Begrenzt viruzid PLUS')), SimpleTerm(value=u'levurozide', token=u'levurozide', title=_(u'Levurozide (d.h. wirksam gegen Hefen, Sporen)')),
class ISchutzhandschuh(model.Schema): """ Schema eines Schutzhandschuhs """ title = schema.TextLine(title=_(u"Produktname")) text = RichText(title=_(u"Weitere Beschreibungen des Produkts"), required=False) bild = NamedBlobImage(title=_(u"Produktbild"), required=False) hersteller = RelationChoice( title=_(u"Hersteller oder Lieferant"), source=CatalogSource(portal_type=["Folder", "Hersteller"]), required=False) directives.widget('material_aussen', CheckBoxFieldWidget) material_aussen = schema.List( title=_(u"Material außen"), value_type=schema.Choice(vocabulary=material), required=False, ) directives.widget('material_innen', CheckBoxFieldWidget) material_innen = schema.List(title=_(u"Material innen"), value_type=schema.Choice(vocabulary=material), required=False) directives.widget('profilierung', CheckBoxFieldWidget) profilierung = schema.List( title=_(u"Profilierung"), value_type=schema.Choice(vocabulary=profilierung), required=False) schichtstaerke_min = schema.Float(title=_(u"Schichtstärke (min) in mm"), required=False) schichtstaerke_max = schema.Float(title=_(u"Schichtstärke (max) in mm"), required=False) gesamtlaenge_von = schema.Int(title=_(u"Gesamtlänge (von) in mm"), required=False) gesamtlaenge_bis = schema.Int(title=_(u"Gesamtlänge (bis) in mm"), required=False) cecategory = schema.Choice(title=_(u"CE-Kategorie"), vocabulary=cecatvalues) allergene = schema.List( title=_(u"Allergene"), value_type=schema.Choice(vocabulary=allergene_vocab), required=False) esd = schema.Bool(title=_(u"ESD Produktschutz")) model.fieldset( 'biologie', label=u"Biologische Risiken", #fields=['norm374_2003', 'norm374_2016', 'chemikalienliste', 'norm374_5', 'gefahrstoffschutz'] fields=[ 'norm374_5', ]) model.fieldset( 'chemie', label=u"Chemische Risiken", #fields=['norm374_2003', 'norm374_2016', 'chemikalienliste', 'norm374_5', 'gefahrstoffschutz'] fields=[ 'norm374_2003', 'norm374_2016', 'chemikalienliste', 'chemie_weitere' ]) directives.widget('norm374_2003', CheckBoxFieldWidget) norm374_2003 = schema.List( title=_(u"Norm EN 374-1:2003 (3 Prüfchemikalien)"), value_type=schema.Choice(vocabulary=pruefung374alt), required=False) directives.widget('norm374_2016', RadioFieldWidget) norm374_2016 = schema.Choice(title=_(u"Norm EN ISO 374-1:2016"), vocabulary=pruefung374neu, default='keine', required=False) # directives.widget('chemikalienliste', CheckBoxFieldWidget) chemikalienliste = schema.List( title=_(u"Liste der Prüfchemikalien"), description= _(u"Bitte wählen Sie aus, welche Chemikalien bei der Permeationsprüfung verwendet wurden." ), value_type=schema.Choice(vocabulary=chemikalienpruefung), required=False) directives.widget('norm374_5', RadioFieldWidget) norm374_5 = schema.Choice(title=_(u"Norm EN ISO 374-5:2016"), description=_(u"Schutz gegen Mikroorganismen"), vocabulary=pruefung375_5_2016, default='keine', required=False) directives.widget('chemie_weitere', CheckBoxFieldWidget) chemie_weitere = schema.List( title=_(u"Prüfung gegen weitere Normen"), description= _(u"Bitte wählen Sie aus, gegen welche Normen das Produkt außerdem geprüft wurde." ), value_type=schema.Choice(vocabulary=pruefung_weitere_chemie), required=False, ) # directives.widget('gefahrstoffschutz', DataGridFieldFactory) # form.omitted(IEditForm, 'gefahrstoffschutz') # gefahrstoffschutz = schema.List(title=_(u'Gefahrstoffschutz für dieses Produkt.'), # value_type=DictRow(title=_(u"Gefahrstoff"), schema=IGefahrstoffe), # required = False,) model.fieldset('mechanik', label=u"Mechanische Risiken", fields=[ 'mechanik', 'abrieb', 'schnittcoup', 'riss', 'stick', 'schnittiso', 'stoss' ]) directives.widget('mechanik', CheckBoxFieldWidget) mechanik = schema.List( title=_(u"Prüfung gegen Normen der mechanischen Beständigkeit"), description= _(u"Bitte wählen Sie aus, gegen welche Normen der Handschuh geprüft wurde." ), value_type=schema.Choice(vocabulary=pruefung_normen_mechanik), required=False) abrieb = schema.Choice(title=u"Abriebfestigkeit", vocabulary=catvalue1, required=False) schnittcoup = schema.Choice(title=u"Schnittfestigkeit (Coup-Test)", vocabulary=catvalue2, required=False) riss = schema.Choice(title=u"Weiterreißfestigkeit", vocabulary=catvalue1, required=False) stick = schema.Choice(title=u"Durchstichfestigkeit", vocabulary=catvalue1, required=False) schnittiso = schema.Choice(title=u"Schnittfestigkeit (ISO)", vocabulary=catvalue3, required=False) stoss = schema.Choice(title=u"Schutz gegen Stosseinwirkung", vocabulary=catvalue4, required=False) model.fieldset('hitze', label=u"Hitze", fields=[ 'en407', 'brennverhalten', 'kontaktwaerme', 'konvektive_hitze', 'strahlungswaerme', 'metallspritzer', 'fluessigesmetall' ]) model.fieldset('kaelte', label=u"Kälte", fields=[ 'en511', 'konvektive_kaelte', 'kontaktkaelte', 'wasserdichtigkeit' ]) en407 = schema.Bool( title=_(u"Norm 407"), description= _(u"Erfüllt der Schutzhandschuh die Norm 407 bzw. wurde er dagegen getestet?" ), ) brennverhalten = schema.Choice(title=u"Brennverhalten", vocabulary=catvalue1, required=False) kontaktwaerme = schema.Choice(title=u"Kontaktwärme", vocabulary=catvalue1, required=False) konvektive_hitze = schema.Choice(title=u"Konvektive Hitze", vocabulary=catvalue1, required=False) strahlungswaerme = schema.Choice(title=u"Strahlungswärme", vocabulary=catvalue1, required=False) metallspritzer = schema.Choice( title=u"Belastung durch kleine Spritzer geschmolzenen Metalls", vocabulary=catvalue1, required=False) fluessigesmetall = schema.Choice( title=u"Belastung durch große Mengen flüssigen Metalls", vocabulary=catvalue1, required=False) en511 = schema.Bool( title=_(u"Norm 511"), description= _(u"Erfüllt der Schutzhandschuh die Norm 511 bzw. wurde er dagegen getestet?" ), ) konvektive_kaelte = schema.Choice(title=u"Konvektive Kälte", vocabulary=catvalue1, required=False) kontaktkaelte = schema.Choice(title=u"Kontaktkälte", vocabulary=catvalue1, required=False) wasserdichtigkeit = schema.Choice(title=u"Wasserdichtigkeit", vocabulary=catvalue5, required=False) model.fieldset( 'elektrisch', label=_(u"Elektrische Risiken"), fields=['dummy_elektrisch'], ) dummy_elektrisch = schema.TextLine( title=u"Dummy-Feld Norm", description= u"Bereich für die Felder aus dem Bereich Elektrische Gefährdungen", required=False) model.fieldset( 'schweisser', label=_(u"Schweisser Schutzhandschuh"), fields=['dummy_schweisser'], ) dummy_schweisser = schema.TextLine( title=u"Dummy-Feld Norm", description= u"Bereich für die Felder aus dem Bereich Schweisser Schutzhandschuhe", required=False)