Challenge Creation Notification E-Mail template

Which IIQ version are you inquiring about?

8.4p2

Share all details about your problem, including any error messages you may have received.

I have created a certification to either approve or revoke entitlements on a user/identity and have enabled challenge.

If the certifier revokes more than one entitlement, only one is listed in the Challenge Creation Notification E-Mail to the user. often resulting in the user does not realize that there is more then one challenge work item.

Now I’ve been debugging this a bit, given that the template has these inputs:

<Inputs>
      <Argument name="certification" type="Certification">
        <Description>The Certification object containing the item being challenged.</Description>
      </Argument>
      <Argument name="certificationName" type="string">
        <Description>The name of the certification.</Description>
      </Argument>
      <Argument name="entityName" type="string">
        <Description>The name of the item being challenged.</Description>
      </Argument>
      <Argument name="challengeItem" type="string">
        <Description>A short description of the item being challenged.</Description>
      </Argument>
      <Argument name="timeRemaining" type="string">
        <Description>The time remaining in the challenge period, formatted as a string.</Description>
      </Argument>
      <Argument name="challengeId" type="string">
        <Description>The database id of the WorkItem representing the challenge.</Description>
      </Argument>
      <Argument name="certificationItem" type="CertificationItem">
        <Description>The CertificationItem being challenged.</Description>
      </Argument>
      <Argument name="workItem" type="WorkItem">
        <Description>The WorkItem for the challenge</Description>
      </Argument>
    </Inputs>

Using $certification.toXml() does reveal a sub-element called <CertificationEntity> which contains child elements for each <CertificationItem>

My question is then, How do i iterate the certification items so I can show the complete list of revoked entitlements?

Thanks
Michael

can you try below for traversing?? and let me know if it works for you.

#foreach($entity in $certification.entities)
  #if($entity.targetName == $entityName)
    #foreach($item in $entity.items)
      #if($item.action && $item.action.status.name() == "Remediated")
        #if($item.exceptionEntitlements)
          - App: $item.exceptionEntitlements.application |
            Attr: $item.exceptionEntitlements.attributeName |
            Value: $item.exceptionEntitlements.attributeValue
        #elseif($item.bundle)
          - Role: $item.bundle
        #end
      #end
    #end
  #end
#end

As suggested use Velocity scripting to iterate over it.

Try Iterating certification items list

#foreach ($item in $certItemList)
#if($item.getAction().getStatus() == “Remediated”)
#set ($entSnapshot =${item.getExceptionEntitlements()} )

&lt;tr>
#if($entSnapshot.getAttributes().get("memberOf"))
&lt;th>$entSnapshot.getAttributes().get("memberOf")&lt;/th>
#else
&lt;th>&lt;/th>


Thank you Naveen, that worked!

Are there any documentation available on which objects are available to velocity, or is it a secret :slight_smile:

@mlf11 You can check the OOTB equivalent email templates and find which ones are available in that particular template.