tessguefen
7/7/2015 - 10:01 PM

replace %module|DEN_PRODFIELDS|*wildcard*|% with customfield values. (using raw_prompt, can switch it out form attr_prompt)

replace %module|DEN_PRODFIELDS|wildcard|% with customfield values. (using raw_prompt, can switch it out form attr_prompt)

<mvt:assign name="l.settings:attributeID" value="'l-' $ tolower(l.settings:attribute:code)" />
  <mvt:assign name="l.settings:attribute:raw_prompt" value="glosub( l.settings:attribute:raw_prompt, '%25', '%' )" />
  <mvt:assign name="l.settings:attribute:raw_prompt" value="glosub( l.settings:attribute:raw_prompt, '%7C', '|' )" />
  <mvt:if expr="'DEN_PRODFIELDS' cin l.settings:attribute:raw_prompt">
    <!-- Before: &mvt:attribute:raw_prompt; -->
    <mvt:comment>
    | Check for all %module|DEN_PRODFIELDS|*widlcard*|%
    | Replace with customfield value (needed to use customfields, as some codes have dashes)
    | Splits raw_prompt with |
    | Checks if DEN_PRODFIELDS is in the part
    | If it is, it will find the wildcard and replace it with the wildcard's customfield value
    </mvt:comment>

    <mvt:do file="g.module_library_utilities" name="l.settings:result" value="SplitStringAndTrim(l.settings:attribute:raw_prompt, '|', l.settings:split_results)" />
    <mvt:assign name="l.settings:wildcard" value="''" />

    <mvt:foreach iterator="part" array="split_results">
      <mvt:if expr="indexof( '%', l.settings:part, 1 ) OR l.settings:part EQ 'DEN_PRODFIELDS'">
        <mvt:foreachcontinue />
      </mvt:if>
      <mvt:assign name="l.settings:wildcard" value="l.settings:part" />

      <mvt:item name="customfields" param="Read_Product_Code( l.settings:product:code, l.settings:wildcard, l.settings:wildcardvalue )" />

      <mvt:assign name="l.settings:replace" value="'%module|DEN_PRODFIELDS|' $ l.settings:wildcard $ '|%'" />

      <mvt:assign name="l.settings:attribute:raw_prompt" value="glosub( l.settings:attribute:raw_prompt, l.settings:replace, l.settings:wildcardvalue )" />
    </mvt:foreach>

  </mvt:if>
  <mvt:if expr="'OUI_Products' cin l.settings:attribute:raw_prompt">
    <mvt:comment>
    | Check for all %VAR(OUI_Products2.d.*wildcard*)%
    | Replace with customfield value (needed to use customfields, as some codes have dashes)
    | Splits raw_prompt with %
    | Checks for '%VAR(OUI_Products2.d.', then removes: '%VAR(OUI_Products2.d.', ')
    | Calls customfield (e.g. image2, image3, and image4)
    | Replaces with customfield value.
    </mvt:comment>

    <mvt:do file="g.module_library_utilities" name="l.settings:result" value="SplitStringAndTrim(l.settings:attribute:raw_prompt, '%', l.settings:oui_split_results)" />
    <mvt:assign name="l.settings:wildcard" value="''" />

    <mvt:foreach iterator="part" array="oui_split_results">
      <mvt:if expr="'VAR(OUI_Products2.d.' cin l.settings:part">

        <mvt:assign name="l.settings:wildcard" value="l.settings:part" />
        <mvt:assign name="l.settings:wildcard" value="glosub( l.settings:wildcard, 'VAR(OUI_Products2.d.', '' )" />
        <mvt:assign name="l.settings:wildcard" value="glosub( l.settings:wildcard, ')', '' )" />

        <mvt:item name="customfields" param="Read_Product_Code( l.settings:product:code, l.settings:wildcard, l.settings:wildcardvalue )" />

        <mvt:assign name="l.settings:replace" value="'%VAR(OUI_Products2.d.' $ l.settings:wildcard $ ')%'" />

        <mvt:assign name="l.settings:attribute:raw_prompt" value="glosub( l.settings:attribute:raw_prompt, l.settings:replace, l.settings:wildcardvalue )" />
      </mvt:if>
    </mvt:foreach>
  </mvt:if>
  <!-- After: &mvt:attribute:raw_prompt; -->