Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.


Quick demo on how to apply "Field Definition Rule" on Attachment picker to filter out attachments that dont end with "xls" extension


Attachment picker works on Confluence objects "Attachments" - https://docs.atlassian.com/atlassian-confluence/5.8.6/com/atlassian/confluence/pages/Attachment.html

Which means, we can access ANY property of these objects - such as fileName (as in this example) or labels, via "labelling.label" (which means we call "getLabelling" then call "getLabel" on the underlying objects), or any other "get" method


ConfiForms Form Definition
formNamemyform
trueINLINE


onlyOnly with excel filesfilter attachments and show only excel filescheckbox

apAttachmentsattachment


-- rules

only:trueaptrunc(3):apap.asAttachment.fileName:*xlsApply Filter on a fieldonly

only:falseap*Apply Filter on a fieldonly

Storage format for the demo

Code Block
<ac:structured-macro ac:macro-id="6e5b54b1-c627-4c0d-939e-562c4d7af424" ac:name="confiform" ac:schema-version="1">
  <ac:parameter ac:name="formName">myform1</ac:parameter>
  <ac:rich-text-body>
    <ac:structured-macro ac:macro-id="6758acc5-e724-4a71-91c0-8cca85895bf2" ac:name="confiform-entry-register" ac:schema-version="1">
      <ac:parameter ac:name="embedded">true</ac:parameter>
      <ac:parameter ac:name="atlassian-macro-output-type">INLINE</ac:parameter>
      <ac:rich-text-body>
        <p>
          <br/>
        </p>
      </ac:rich-text-body>
    </ac:structured-macro>
    <p>
      <ac:structured-macro ac:macro-id="2f5a2eaf-43f8-49c7-8d87-dc4b10bd0c57" ac:name="confiform-field-definition" ac:schema-version="1">
        <ac:parameter ac:name="fieldName">only</ac:parameter>
        <ac:parameter ac:name="fieldLabel">Only with excel files</ac:parameter>
        <ac:parameter ac:name="fieldDescription">filter attachments and show only excel files</ac:parameter>
        <ac:parameter ac:name="type">checkbox</ac:parameter>
      </ac:structured-macro>
    </p>
    <p>
      <ac:structured-macro ac:macro-id="63c8d4c6-34f8-4983-8152-d834319a11d1" ac:name="confiform-field-definition" ac:schema-version="1">
        <ac:parameter ac:name="fieldName">ap</ac:parameter>
        <ac:parameter ac:name="fieldLabel">Attachments</ac:parameter>
        <ac:parameter ac:name="type">attachment</ac:parameter>
      </ac:structured-macro>
    </p>
    <p>
      <br/>
    </p>
    <p>-- rules</p>
    <p>
      <ac:structured-macro ac:macro-id="14060721-e34c-4786-a78b-d64f3a5a7ef4" ac:name="confiform-field-definition-rules" ac:schema-version="1">
        <ac:parameter ac:name="condition">only:true</ac:parameter>
        <ac:parameter ac:name="fieldName">ap</ac:parameter>
        <ac:parameter ac:name="values">ap.asAttachment.fileName:*xls</ac:parameter>
        <ac:parameter ac:name="action">Apply Filter on a field</ac:parameter>
        <ac:parameter ac:name="actionFieldName">only</ac:parameter>
      </ac:structured-macro>
    </p>
    <p>
      <ac:structured-macro ac:macro-id="f341fde6-dd62-48da-8846-29739b928bd5" ac:name="confiform-field-definition-rules" ac:schema-version="1">
        <ac:parameter ac:name="condition">only:false</ac:parameter>
        <ac:parameter ac:name="fieldName">ap</ac:parameter>
        <ac:parameter ac:name="values">*</ac:parameter>
        <ac:parameter ac:name="action">Apply Filter on a field</ac:parameter>
        <ac:parameter ac:name="actionFieldName">only</ac:parameter>
      </ac:structured-macro>
    </p>
  </ac:rich-text-body>
</ac:structured-macro>