Questions & Answers

SOLVED
Chrepp
Occasional Observer

Template-Name von Element innerhalb FS_CATALOG feststellen

Jump to solution

Ich mรถchte eine Regel schreiben, die das Formular als nicht valide markiert, wenn ein bestimmtes Template ausgewรคhlt wurde.

Idealerweise sollte diese Regel in etwa so aussehen (so wie hier geht es natรผrlich nicht):

<RULE>

    <WITH>

        <NOT>

                <PROPERTY name="VALID" source="tt_articles[0].getTemplate().getReferenceName().equals('linktemplate:mag_article')"/>

        </NOT>

    </WITH>

    <DO>

        <VALIDATION scope="SAVE">

            <PROPERTY name="VALID" source="tt_articles"/>

            <MESSAGE lang="*" text="Falsches Template ausgewรคhlt"/>

        </VALIDATION>

    </DO>

</RULE>

1 Solution

Accepted Solutions

Hallo Christian,

dies ist durchaus mรถglich. Der Vergleichsoperator CONTAINS ermรถglicht fรผr einen Catalog, die ausgewรคhlten Vorlagen an Hand ihrer UIDs abzufragen. Folgende Regel (oder so รคhnlich) sollte den Zweck erfรผllen:

<RULE>

    <WITH>

        <NOT>

            <CONTAINS source="tt_articles">

                <TEXT>mag_article</TEXT>

            </CONTAINS>

        </NOT>

    </WITH>

    <DO>

        <VALIDATION scope="SAVE">

            <PROPERTY name="VALID" source="tt_articles"/>

            <MESSAGE lang="*" text="Falsches Template ausgewรคhlt"/>

        </VALIDATION>

    </DO>

</RULE>

Der Operator ist an folgender Stelle in ODFS dokumentiert, allerdings wird Catalog (noch) nicht erwรคhnt:

http://www.e-spirit.com/odfs52/template-development/rules/comparative-expressions/contains-tag/

Beste GrรผรŸe

Stefan

View solution in original post

5 Replies
sglock
I'm new here

Wรคre es nicht besser von vornherein nur die gewรผnschten Templates zu erlauben? รœber den <TEMPLATES>-Tag kannst Du ja die auswรคhlbaren Absatzvorlagen eingrenzen.

Chrepp
Occasional Observer

Das ist nur im Beispiel so, damit der Code in der Frage nicht zu komplex wird. Der tatsรคchliche Anwendungsfall ist so, dass man ein bestimmtes Template nicht nehmen soll, wenn man im FS_CATALOG genau 2 Templates ausgewรคhlt hat.

0 Kudos

Hallo Christian,

generell hรคtte ich dir die Implementierung eines Validation-Services empfohlen. Soweit ich weiรŸ, ist dies in diesem Fall aber keine Lรถsung.

Daher vermute ich, dass es bis auf Sebastians Hinweis nicht umsetzbar ist.

Viele GrรผรŸe

Michaela

0 Kudos

Hallo Christian,

dies ist durchaus mรถglich. Der Vergleichsoperator CONTAINS ermรถglicht fรผr einen Catalog, die ausgewรคhlten Vorlagen an Hand ihrer UIDs abzufragen. Folgende Regel (oder so รคhnlich) sollte den Zweck erfรผllen:

<RULE>

    <WITH>

        <NOT>

            <CONTAINS source="tt_articles">

                <TEXT>mag_article</TEXT>

            </CONTAINS>

        </NOT>

    </WITH>

    <DO>

        <VALIDATION scope="SAVE">

            <PROPERTY name="VALID" source="tt_articles"/>

            <MESSAGE lang="*" text="Falsches Template ausgewรคhlt"/>

        </VALIDATION>

    </DO>

</RULE>

Der Operator ist an folgender Stelle in ODFS dokumentiert, allerdings wird Catalog (noch) nicht erwรคhnt:

http://www.e-spirit.com/odfs52/template-development/rules/comparative-expressions/contains-tag/

Beste GrรผรŸe

Stefan

Hallo Stefan,

das ist genau das, was ich wissen wollte. Danke! Smiley Happy Jetzt muss der Redaktions-Guide doch nicht so streng formuliert werden :smileygrin:

Schรถne GrรผรŸe

Christian

0 Kudos

Type a product name