Page tree

This is the documentation for ConfiForms Server/Data Center app

However, this might also work for ConfiForms cloud and in most cases it does. But please see this page to understand the differences between server and cloud versions of the ConfiForms app.


You cannot downgrade from version 2.x to version 1.x automatically (without manually re-importing datasets with recovery APIs)

Upgrading from 1.x to 2.x is done for you automatically, with data migration. See release notes for the version 2.0.1

We advise you to take extra care with upgrading to version 2.x+ from 1.x branch and test your form configurations in your test environments first, before upgrading your live environments.

If you have any questions about upgrading to ConfiForms version 2.x or have any issues, please contact us via Support Request Form

See also Known issues

Development versions could be found here: http://vertuna.com/builds/

Known issues

If you are planning to update to latest LTS or latest 8.2.x/8.3.x version of Confluence and have ConfiForms forms with a number fields that exceed 256 then please vote for this issue to be fixed https://jira.atlassian.com/browse/CONFSERVER-88259 and the workaround suggested

If you are using Confluence 8.4.1 and later then please see this bug https://jira.atlassian.com/browse/CONFSERVER-92486  and the workaround suggested

Basically to make ConfiForms work as you use to on Confluence 8.x you will need to have at least the following properties adjusted/added into confluence.cfg.xml 

<property name="struts.multipart.maxStringLength">100000</property>
<property name="struts.multipart.maxFiles">1000</property>

These allow the forms to have 1000 fields and the field value accepted could be more than 100000 bytes

You may adjust those to your needs, see https://jira.atlassian.com/browse/CONFSERVER-88259 and https://jira.atlassian.com/browse/CONFSERVER-92486 for the details


Published versions and changes

Since ConfiForms app version 2.x and version 3.x we publish release notes here 

Version 3.10.1

  • Fixed issue with IFTTT macro logs not rendered properly (How to troubleshoot and debug ConfiForms IFTTT rules execution)
  • Fallback connection for Jira now supports both on-premise and cloud instances of Jira
  • ConfiForms Edit Controls support dynamic labels for buttons (a label can be taken from a field value)
  • Rules processing times are now logged to help with debugging and figuring out the possible bottlenecks
  • Now the debug information is also shown (when enabled) for forms that fail to process completely (broken logic in IFTTTs, for example)
  • Fixing issue with emails not being sent when the IFTTT is invoked through the REST API call
  • Fixed issue with TableViewMerger not properly loading the _sourceForm and _sourcePage metadata fields on certain configurations, making it impossible to access these fields values

Version 3.10.0

  • Fixed issues with ConfiForms configuration (update/create) not working properly on Confluence 8.8.x
  • Possibility to configure a fallback connection to Jira using the service account for the authentication to be used automatically for users who cannot use the "Create Jira" IFTTT (which expects users to be authenticated through the application link)
  • Fixed behaviour of Smart multi-row when it is set to use the form located on a restricted page (also taking into account the flag that can be set on the ConfiForms Form Definition to "allowReads", which overrides the page permissions and allows users to access data from the restricted form)
  • Fixed issue with smart multi-row field when it is set to be edited inline (individually), but also is configured to have a lookup functionality
  • Improved lifecycle for the "create record" functionality to handle smart multi-rows better on forms that fail validation
  • Improved rendering of comment fields in emails
  • Fixed issue with setting rules in Insight dropdown field (change events were not correctly propagated)
  • Removed configuration parameter that required Confluence administrators to enable UI logging for forms. This now can be set individually per form
  • Introducing DataLoader (which is available in ${dataLoaded} variable in Velocity context which allows to query other forms right from Velocity templates)
  • Fixed issue with duplicate handlers set on fields under certain conditions (using ConfiForms Field Definition Rules)
  • Reverse rule to hide the EntryViewer is now supported
  • Support for referencing CSS classes in ConfiForms CSS Rules for Fields macros
  • Fixed UI issue with WYSIWYG that allows to set the field to render in legacy mode (old WYSIWYG editor)
  • Now it is possible to debug UI rules, using the same "debug mode" parameter on the form (definition)
  • Move attachment IFTTT now renames an attachment automatically if the one to move conflicts (by file name) with some existing attachment on the target page

Version 3.9.8

  • Compatibility with Confluence 8.8.x
  • Added support for Confluence server installations with user tiers up to 100 users to continue to use the ConfiForms app for free after the 15th of Feb 2024

Version 3.9.7

  • Fixed issue with Copy Page not taking the "Do not evaluate page body" parameter into account when one page is copied 
  • Fixed issue with pagination used on views that are filtered by ConfiForms Filter Control and have date range fields
  • Improved Create Page IFTTT logic to clean up the generated contents when templates with a page layouts are used

Version 3.9.6

  • Experimental support for deleting records in ConfiForms database table

  • Fixed issue with the WYSIWYG field's new editor not accepting or rewriting the contents taken from a buffer (broken copy&paste functionality)
  • Fixed issue with the WYSIWYG field not showing correctly the setting when OWASP policy is enabled
  • Fixed issue with "comments delete" functionality
  • Fixed compatibility issue with Dynamic dropdown field when it is set to serve the contents from dropdown or other choice based fields (to provide labels, not IDs)
  • Fixed regression issue with auto conversion of XML contents to JSON (when used through lookup and set WS rules)

Version 3.9.5

  • Making new WYSIWYG field more robust: added clean up routine for pasted contents (to remove offensive HTML tags and MS Word produced garbage)
  • Fixed issue with Set Value rule not working on WYSIWYG in legacy mode
  • Fixed issue with CalendarView not correctly showing datetime interval field values when the field is configured to have "no time" selection (interval is 0 minutes)
  • Fixed issue with comment removal on views using the inline individual edits
  • Comment field has a better discoverability for the form height when using non legacy mode
  • Fixed issue with inline edit used on views with Edit Controls having restrictions
  • Improved parsing in filtering engine for expressions that use queryCount and queryAndSet functions
  • Trying to fix the issue introduced by Confluence 8.5.5 with sorting (header) for tables that are set to use the inline edit mode

Version 3.9.4

  • Fixed issues with Show/Hide rules applied on a WYSIWYG field
  • Added support for legacy mode in the WYSIWYG field
  • Added support for the legacy mode in the Comments field (simple plaintext input can be now enabled if necessary)
  • Support for Formula fields expressions in the CalendarView for grouping, you can now provide a timestamp value or a startTimestamp-endTimestamp form of a value for date time interval

Version 3.9.3

  • more robust processing of user macros (while processing form configuration), handling possible infinite loops in a correct way (when user macro have cross references or are linked to themselves)
  • fixed issue with "stack overflow" on pages that use ConfiForms views together with pageProperties function (and having user macros in these page properties)
  • Fixed regression issue with web-service connection incorrectly adding a domain twice when creating a request URL when application link is used as an authentication and integration method
  • Fixed issue (logical conflict) with ConfiForms IFTTTs to manage permissions (was impossible to set view permissions to current user and at the same time removing edit permissions for current user)
  • In Virtual functions the asUserProfileLink has been enhanced to work on multi-user fields or on values given as a comma separated list of usernames
  • Fixed issue with an email sent via ConfiForms that contained some invisible technical characters (which were visible as part of the email contents and presented in the email preview)

Version 3.9.2

  • Fixed regression issue with a field value not set on form load (using "Set Value" or "Lookup and Set Value" rules)

Version 3.9.1

  • Fixed issue with incorrect escaping of a value when used through the "Set Value" rule
  • UI glitch fix for web-service multi-select and multi-label fields and use if "Reset Value" rule

Version 3.9.0

  • Compatibility with Confluence 8.5.5
  • Still using Java 1.8 to build the plugin to support customers running Confluence on this version of Java
  • New WYSIWYG editor with tables support
  • Improved error handling on database and web-service mapping service (to help with troubleshooting when necessary)
  • Improved error handling and logging in experimental services for building fields that use excel/CSV as a source Using Excel files as sources for ConfiForms fields
  • Comments field now supports a WYSIWYG field
  • WYSIWYG field could be set to enforce policy for the contents and store only safe values (protecting from XSS attacks)
  • Fixed issue with _previousState not initialized for unsaved records

Version 3.8.2

  • Fixed issue with ConfiForms Filtering Control and with a view with an enabled instant search, when the internally prepared filtering expression was exposed to users after applying it on the view
  • Support for relative #links in redirects
  • Improved support for the asFilteredBy function when applied on smart multi-row fields
  • Fixed issue with restrictions set through the multi-select fields dynamically on other fields
  • Small changes in UI for the views when the view has a pager or/and the instant search (view is more compressed and uses the same row to render the pager and the instant search)

Version 3.8.1

  • Recompiled to be compatible with Confluence running Java 1.8. We will drop support for Java 1.8 in ConfiForms version 3.10.0 

Version 3.8.0

  • Compatibility with Confluence version 8.7.x
  • Fixed issue with ConfiForms Filter macro that is set to match with wildcards and the pagination in the view

Version 3.7.7

  • Fixed issue with Edit/View restrictions on fields when it has more than 2 options (usernames, security groups)
  • Fixed issue with regular expression validation on date fields

Version 3.7.6

  • Fixed a regression with a preset default values in ConfiForms Registrations Control / FormView macro
  • Fixed issue with page permissions check on Confluence 8.5.x+ discovered through the CQL (dynamic sources / usage from a template)
  • Copying of records now copies attachments correctly (creating a new version) if any is defined in the original record
  • Fixed issue with a dynamically evaluated edit restrictions on fields
  • Fixed issue with regular expressions check not working on date/date time field
  • updateFieldValue REST API from ConfiForms Server REST API version 1 supports "query" as parameter (to specify the filtering expression)
  • Fixed issue with incorrect rendering of fields that are restricted with dynamically evaluated expressions in TableViews/CardViews using a default layout (all fields / empty macro body)

Version 3.7.5

  • Fixed issue with "Copy record" functionality to copy files/attachments as well

Version 3.7.4

Version 3.7.3

  • Fixed issue with migration from Confluence 8.x to cloud (migration service and migration pre-check report)

Version 3.7.2

  • Hotfix to address a regression with Database fields

Version 3.7.1

  • Fixed issue with duplicate buttons rendered for each edit/view controls in TableViewMerger when both macros are used
  • Fixed NPE with applying filter on field when the rule is misconfigured
  • Fixed NPE in inline edits when the view is misconfigured to use a non-existent fields
  • Fixed issue with a ConfiForms Dynamic Filter macro rendering of unknown fields as "event fields"
  • Fixed issue with accessing new properties of a DateTimeInterval field (periodInSeconds, periodInMinutes, periodInHours, periodInDays, periodInWorkDays)
  • Fixed issue with using new parameters like cf_view and cf_filterId for Creating links to filter views from request parameters - url
  • Fixed issue with a stack overflow exception in filtering engine for certain filtering expressions
  • Fixed issue with incorrect handling of "confirmation messages" (incomplete message content escaping on certain configurations)
  • Fixed regression with incorrect validation of a datetime interval field
  • Confluence read-only mode now carefully checked in quick actions as well (voting, quick actions, entrols)
  • Fixed issue with ConfiForms Filter macro using the mode OR for multi-selects and a view with an additional filtering expression defined
  • Fixed issue with Velocity context not correctly filled in for IFTTTs when fields have view restrictions
  • Fixed NPE with Confluence 8 and uploading a 0 size file
  • Fixed issue with action not correctly initialized for user macros processing causing ConfiForms to report false warnings in the logs
  • cfSetValueWithEventPropagation from JavaScript functions is fixed to use the eventType and correctly propagate the event

  • ConfiForms IFMatches macro now can render the contents in an expandable block

Version 3.7.0

  • Important! Downgrading from 3.7.0 will not be possible for ConfiForms installations which have web-service and db connections configurations. As the configurations are now encrypted and stored in an encrypted way (which is not supported by earlier versions of the plugin)

  • Minimum Java 11 is required
  • Fixed "lock form" feature to apply on action buttons, voting and every other field in a form and truly disable centrally any updates to form's data
  • Fixed issue with Smart multi-row fields updates when used in inline edits mode
  • Fixed flattening of rows for dynamic multi-label and Confluence multi-label fields in TableViewMerger macro
  • Fixed issue with incorrect reporting of license user tier mismatch
  • Introducing a new parameter to scope the filters from an URL to specific view via cf_filterId parameter (value should match the filter ID you have set in the view) that you can add to your URLs
  • Fixed issue in admin UI to render columns properly when fields have dynamically set view/edit restrictions
  • form dimensions reworked to calculate more precisely when fields have dynamically set edit restrictions
  • Improved rendering in MatrixView for tags when a smart field is used as a grouping field
  • Fixed issue with regular expressions validation on date/date time fields
  • Fixed issue with check for empty value on the restricted pages that are referenced through a "Page/Blogpost" field in ConfiForms
  • Voting is now correctly closed on the locked forms
  • WebServices and DBConnections configurations are now completely encrypted when stored in the database
  • Fixed issues with Virtual functions workDaysTo and daysTo incorrectly returning 0 days when used with timestamps
  • Supporting CLOB fields in the DB backed fields
  • Fixed issue with incorrectly filtered rows when a form's data with an ption to "show only own records to non-admin users" is enabled and used through the smart fields
  • Improved debugging and error reporting in a PlainView when used with "Velocity templating" option enabled

Version 3.6.2

  • Compatibility with Confluence 8.6.x
  • Fixed issue with importing from Excel when excel files have blank values in cells
  • Fixed UI issue with "auto-enrol" functionality, see more Creating auto-enroll links to submit forms via links in Confluence, when a submission results in an error.
  • Introduced a new parameter for auto-enrol functionality to "merge" values from existing record and values given in auto-enrol. New "_merge" parameter, _merge=true
  • Enhanced functionality explained here Creating links to filter views from request parameters - url, to support setting the scoping parameter to apply the filter on a specific view type via an additional request parameter "cf_view"

Version 3.6.1

  • New feature to define an obligatory footer for emails sent via ConfiForms
  • Fixed issue to render smart multi-row values when referenced through another smart field
  • Fixed issue with restricted view check for action buttons
  • ConfiForms IFTTTs to move and copy pages now support multiple pages as arguments (in comma separated list of page ids)
  • Improved lookup for pages when titles are given with : in their titles
  • Fixed NPE issue with ConfiForms FormView Registrations Control macro that is confifured without specifying a form name and have a ConfiForms view macro inside
  • ConfiForms IfMatches macro can be used as a container macro with a specified ID, which allows users to use Show/Hide Container rules easily - ConfiForms Field Definition Rules

Version 3.6.0

  • ConfiForms spaces field is now configurable in the app configuration (limits can be adjusted according to needs)
  • Field (definition) restrictions (Edit/View) now can be configured to use "context variables
  • Improved security in REST API versions 0 and 1 to ensure the user has (also) view permissions (please note that for form's non admin users a form should enable exports for REST APIs to work)
  • Fixed CSS styles in ConfiForms Edit Controls, when specified as CSS style attributes
  • Improved rendering of MatrixView macro's contents to render any type of ConfiForms view inside - allows you to set up more complex nested views for the grouped item to render
  • Fixed configuration issue of a Numeric field to switch between rendering modes: text vs number

Version 3.5.10

  • Fixed regression issue with web-services connection caching

Version 3.5.9

  • Fixed issue with validation rules applied on files (validating for unique file names and deleting incorrect versions of a file on certain conditions)
  • Fixed issue with choice based fields having own filtering conditions and used on pages having multiple views and for views (conflicts in cached values)
  • Enhanced "asPage" function from Virtual functions to attempt to discover the page by given space key and title (or just the title, taking "current" space as a space key to look into). This is in addition to the previous functionality - looking up the page object by page id
  • ConfiForms views now have functionality to export all or filtered data right from the view

Version 3.5.8

  • ConfiForms Field default filters now support context variables
  • Fixed issue with attachments removal (together with a secure page) when used with secure storage option enabled
  • Emails with attachments fixed in Confluence 8.x (sent through ConfiForms)

Version 3.5.7

  • Virtual functions remove function now supports removing items by IDs (UUIDs) from smart fields (no need to transform)
  • Numeric field now has 2 options to render: as a text and as a number (to support numbers given in a format of XX,YY ← having a comma as a decimal separator)
  • Fix for infinite loop and stack overflow issue in TableViewMerger when the counting expression is incorrectly configured

Version 3.5.6

  • Critical security issue fixed which allowed access to page contents of a restricted page
  • Implemented sorting of smart multi-rod field records
  • Fixed issues with error messages not shown for inline edits on certain configurations

Version 3.5.5

  • Fixed issues with errors and validations not shown for quick actions (voting, inline edits, enrols)
  • Support for "ignore case" option in REST API search methods
  • Support for Jira 9 in Jira mapping helper (automatic mapping of fields)
  • Fixed issue with web-services/db usage statistics reset on node restart in clustered environments

Version 3.5.4

  • Fixed a regression with custom validation rules not properly handled
  • Fixed issue with use of ${iftttResult_} being escaped incorrectly
  • An option to auto-align field labels in custom layouts has been introduced to ConfiForms Edit Controls

Version 3.5.3

  • Fixed UI glitch with database query configuration on "DB fields" when a connection allows an arbitrary query to be set
  • CONCAT function in Supported math operators, formulas and functions now supports "any" number of parameters to concat
  • Fixed issue with REST APIs to update the field to correctly apply and verify custom validation rules (affects both server/dc versions - version 0 and version 1)
  • Fixed issue with form's admin UI conflicting with other views on the same page having a custom layouts for the ConfiForms Edit Controls
  • Fixed bug with redirect url not opening in a new tab on certain conditions

Version 3.5.2

  • Fixed regression issue with macro definitions / configurations discovery on certain form configurations
  • Fixed issue with ConfiForms Filter Control not being able to find a correct view other than a TableView
  • Fixed issue with a missing statistics information for the database connection (last used since server restart) 

Version 3.5.1

  • Revisited server to cloud migration section with a fix for pages discovery logic that needed to be migrated (affects Confluence version 7.4.x and up to 7.19.x)
  • Fixed support for timezones parameter in the convertDate/formatDate functions Virtual functions
  • Improved performance when used with Smart Templates plugin
  • Fixed issue with a name conflict when used with individual inline edit
  • Web-services and database connections statistics to see last used details
  • Improved ConfiForms filtering engine to support queryCount function in expression 

Version 3.5.0

  • Improved performance in field definitions initialization - lazy loading is used for fields that require data load from external sources (views that use only subset of form fields will load faster, as well as views that have formula fields)
  • ConfiForms Server REST API version 1 has extension parameters to troubleshoot the performance and get statistics on save/update and form definition endpoints
  • Fixed issues with missing error messages when inline edits were used
  • Versioning has been fixed for custom layouts and for inline edits (versioning is not supported for individual edits)
  • Fixed issue finding the right contents when Comala Document plugin is installed and ConfiForms is used to have Edit/Viewer macros with custom layouts in views
  • Fixed required validation for fields that are updated/created using individual edits
  • Database classifier field now supports accessing other properties via Velocity templating, allowing you to check the value for the particular field in a classifier, not only the classifier itself
  • Numeric fields now take an advantage and use the "numeric" field type in HTML
  • Fixed issue with filter matching against the users voted using the Voting control field
  • new virtual function to access field's metadata - fieldMetadata (it's type, name, required and description parameters)
  • tel protocols are now supported in HTML links when rendered through ConfiForms
  • Fixed (code) incompatibility with Confluence 7.4.x and lower
  • Fixed issue with Jira Helper in ConfiForms IFTTT not taking the correct application link on IE when an attempt to generate an issue mapping is done
  • Fixed issue with custom CSS not being set correctly on advanced dropdowns
  • Fixed issue with export to Excel on Confluence 7.4.x and lower

Version 3.4.5

Version 3.4.4

  • ConfiForms Edit Controls macro now follows the ordering given in the TableViewMerger when rendering fields and controls
  • Added capability to define headers for exports in views
  • Fixed issue with initialization of fields that have defined custom CSS + fix for a possible XSS issue when applying the defined CSS
  • Fixed compatibility issue with Comala Documents plugin and ConfiForms when using custom layouts for Edit Controls / EntryViewer macros in ConfiForms views
  • Fixed issue with asFilteredBy virtual function not returning empty result when applied on smart fields and therefore breaking the EMPTY function check ([] was returned instead, which was not accepted as empty value)

Version 3.4.3

  • Fixed issue with Configuring ConfiForms IFTTT actions and rules#CopyConfiFormsData not returning "last copied" object's data 
  • Tuned parameters for async renderer to render more rows/entries per thread
  • Improved context logging when ConfiForms is set to log in DEBUG for troubleshooting
  • Fixed issue with incorrect IFTTT indexes calculation for results that involve IFTTTs that update or create entries (create sequence, update by filter, copy data and create entry IFTTT rules). Please dont rely on internal IFTTT results indexes, and consider setting own names for IFTTT results for easier access

Version 3.4.2

  • Fixed issue with inline edits not properly refresh the view after the update
  • Cloud migration process is more robust and verbose, addressing issues more clearly and with new fallback and recovery options (to successfully complete the process)
  • Optimized initialization of forms to reduce the size of a JavaScript generated and executed

Version 3.4.1

  • Improved support for values with parameters in the qrCode virtual function 
  • Enhanced support for new field types in Jira Helper (cascading lists, priority, user picker and JSM "people" field)
  • Jira multi-select field is now more robust on terms of data it has and have more fallback options to enable loading of the data
  • Async loader, filter and renderer now have own thread pools with adjusted sizes.
  • PageProperties Virtual functions now supports an optional parameter to set the page properties object ID to look into for the property (helps when the page has multiple page properties objects sharing the same keys)
  • "parallelLoading" feature is now disabled by default and should be enabled explicitly by the administrators if required
  • Fixed issue with unrestricted web-service connection accessed by an anonymous user (DB connections cannot be used by the anonymous users, even if they are unrestricted. Web-service connections could be used by anonymous users if they are unrestricted)

Version 3.4.0

  • New Jira Helper - easy way to create a JSON mapping between ConfiForms and Jira to create Jira issues.

  • Smart multi-row now supports DateTime Interval fields
  • Fixed issue with Dropdowns not following the sorting order when used in the ConfiForms Filter macro with enabled "show only relevant options" (fix also affects the Radio Group field  that uses horizontal layouts)
  • Fixed issue with whitelisting https://confluence.atlassian.com/conf59/configuring-the-whitelist-792499785.html
  • Trying to workaround a bug in Confluence 8.x - https://jira.atlassian.com/browse/CONFSERVER-82785 by reducing the size of the output, and not relying on Velocity engine to put the contents together (but doing it on the fly solely in ConfiForms app). Please note that this still requires a fix on the Confluence side - please vote on the linked public issue on Atlassian Jira
  • Indent and outdent support in WYSIWYG field

Version 3.3.9

  • Fixed issue with IFTTT debug log not showing up on certain configurations (How to troubleshoot and debug ConfiForms IFTTT rules execution)
    • Showing individual invocation times for IFTTTs and a total invocation time
  • Fixed regression issue with redirects on auto-enrol enabled forms
  • Fixed issue with info-panel and section fields when setting values on this fields after "lookup and set" function which results in multiple matches (nicely creates a concatenated string and not trying to set the "array of values")
  • Improved rendering of wiki markup / markdown from within ConfiForms to generate HTML headers that are compatible with Atlassian TOC macro (Table of Contents)
  • Auto-link type fields now have access to context variables such as _page and _storagePage Accessing field values and properties#Additionalvaluesavailableinthecontext

Version 3.3.8

  • Fixed regression with audit forms not showing _event and _ref fields
  • Fixed NPE in renderWikiMarkup Virtual functions
  • Fixed regression with inline edits

Version 3.3.7

  • Web services connection configurations now support edit and view restrictions. Meaning that the connection can be made visible for users with certain permissions only for configuring in the forms. Please note that it does not make the usage of the connection itself secure, as this is configured using "restrictions" parameter

Version 3.3.6

  • Fixed session bound warnings clean up
  • Improved detection of circular references in configurations that may cause issues while rendering
  • Fixed small regression with a missing : separator in the field rendering between label and value on default configurations

Version 3.3.5

  • Fixed issue with session attributes rendered when the contents is refreshed after the inline/quick action
  • TableViewMerger macro in aggregation mode now follows the same ordering of fields as in configuration
  • Detection of self referencing stack overflow causing configurations that involve ConfiForms Entry Viewer macros used within the FormViews with parameters set to use "Registrations Control layouts"
  • Removed strict dependency on table sorter library

Version 3.3.4

  • Fixed a regression with disabled action buttons

Version 3.3.3

  • Repackaged to support Confluence 7.x versions

Version 3.3.2

  • Fixed ConfiForms EntryViewer to work correctly when view mode is set to "Editable"
  • Action buttons with disabled edit restrictions are now rendered as disabled. Please note that you will still need to check the action that is triggered by these buttons is valid and allowed to a given user (for example, could check the user belongs to certain user group - see Virtual functions)
  • Improved lookup for context values when using dynamic dropdown fields (database and web-service) when used in proxy mode
  • Optimised initialisation of date pickers fields in form views (less code → quicker render)

Version 3.3.1

  • Fixed memory leak in functions asJiraIssue and asInsightObject

Version 3.3.0

  • Fixed issue with ConfiForms Entry Viewer macro, when used to load specific entry on page load (techniques demonstrated here Creating links to specific entry with ConfiForms Entry Viewer)
  • Fixed issue with Masked Text field not working with decimal patterns
  • Fixed issue with DB and WS restrictions not working when spaces are used separating values (groups loading failed, as Confluence REST requires the group to match precisely)
  • Support for complete filters in asFilteredBy function Virtual functions
  • Fixed issue with captcha field is not properly working on forms with custom validation rules
  • Fixed leaking file descriptors
  • Fixed attachment picker and file field to react on "change" event properly (for ConfiForms Field Definition Rules set on such fields)
  • Improved rendering of the "rich" fields that are requested through the smart fields (Jira multi-select, Page multi-select and others)
  • Fixed issue with web-services fields not loading contents when [entry.field_name] notations are used
  • NPE fix when rendered through Jira newsfeed
  • NPE fix for smart multi-row when rendered in the preview
  • Fixed issue with "cf_force" parameter breaking smart multi-row fields filters
  • Export to Excel/CSV does not include fields that are relevant only for audit log forms or views constructed by TableViewMerger

Version 3.2.3

  • Hotfix to address editing of complex queries in ConfiForms DB fields

Version 3.2.2

  • Support for setting restrictions on configuration of DB connections and restricting access (view) of database connections using separate users/user groups. Please note that restricting the access to configure a connection does not restrict access to the data
  • Support for configuring multiple (preset) queries per database connection - making it easier for administrators to control the use of connections and queries used
  • ConfiForms Filter control now renders textarea/storage format fields as text fields and supports wildcard search on these fields (when this option is enabled in the macro parameters)
  • Improved handling of incorrect data in attachment references (no transaction rollback on invalid references - could have happened on Confluence spaces that were recovered from the backups or imported into other instances)
  • Support for horizontal layouts in page properties discovery
  • Fixed issue with TableViewMerger incorrectly calculating values for amounts aggregated by number on certain conditions
  • Optimizations in requests sent by ConfiForms Filter macro to make it perform faster

Version 3.2.1

  • Fixed regression with ConfiForms REST API version 0 not recognizing form name parameter
  • DB and WS mappings cannot be accessed by anonymous user even if there are permissions to do so on the page on connections objects
  • Values for choice-based fields now are parsed faster and allow | in the values
  • Detailed search for pages using ConfiForms pages in administration UI
  • Copying of records holding smart multi-row field values is now doing the cloning of these records, not just copying references
  • Reworked processing logic of datetime interval fields (better handling of error cases and allowing to set the parameter for validation message that overrides al the system error messages)
  • Fast response times on reports on forms that use db/ws ref objects and other db/ws field types (no unnecessary loading and initialization)
  • Fixed issue with asJSON function followed by property lookups with calls to next chained virtual functions
  • Enhancing page properties parsing to skip the <ac:placeholder> contents

Version 3.2.0

  • Repackaged to support both Confluence 7 and Confluence 8
  • Important security fix for checking and applying restrictions on database and web-service connections (if set)
  • Fixed issue with datetime field to allow setting the AM/PM formatting option
  • File preview is disabled when shown inside the dialog (after setting the field to be readonly or when ConfiForms EntryViewer macro is used) - file downloads on click

Version 3.1.2

  • This is a ConfiForms plugin build for Confluence 8, to avoid any issues with missing classes that arise from building the app for Confluence 7 and using in Confluence 8 (which should work, according to Atlassian, but it does not). We aim to find workaround for this in the future and continue to build one version of a plugin for both major version of Confluence. This special build is to unblock those who have migrated to Confluence 8 already and require an "immediate" version of the ConfiForms plugin, being a critical core part of their systems

Version 3.1.1

  • Compatibility with Refined Theme for Confluence (fixed broken advanced dropdowns)

Version 3.1.0

  • Built-in audit has been removed completely from the plugin (it's been deprecated 2 years ago - Audit log has been deprecated - what to do)
  • Improvements in form rules initialization - form becomes visible when all the rules were processed and applied (no unnecessary blinking or form refresh/realign)
  • Fixed regression issue with "apply filter on field" (affects also "apply filter based on criteria" and "set field readonly" rules) rule when applied on the field that has more "on change" rules set up in the form

Version 3.0.8

  • Fixed issue with performance degradation on Confluence 7.x
  • Fixed issue with class not found on Confluence 8.x when a view uses a filtering expressiopn

Version 3.0.7

  • Improved performance of parallel (async) rendering/loading and filtering (using dedicated cached thread pools with appropriate TTL and sizes)

Version 3.0.6

  • Performance optimizations in rendering of edit/view restricted fields
  • Fixed possible NPE of file uploads in Confluence 8
  • Large forms (200+ fields) field initilizing improved and optimized and made compatible with Atlassian bug https://jira.atlassian.com/browse/CONFSERVER-66518

Version 3.0.5

  • Less resource aggressive settings for parallel renderers, loaders and filters (less threads and common thread pools to keep needed resources bounded and under control)

Version 3.0.4

  • Fixed regression issue with stack overflow related to submitting the form data that has validation errors

Version 3.0.3

Version 3.0.2

  • Fixed class loading issues when plugin is updated (not started as a system plugin with server restart)

Version 3.0.1

  • Fixed compatibility issue with Confluence 7.0.x and 7.1.x (initialization exception with a missing parser)
  • Fixed compatibility issue with search in Confluence 7 and Confluence 8
  • Fixed issue with database dynamic dropdown to store an ID, if that is given (and allow accessing other fields if necessary and if they are loaded with SQL query)
  • Fixed issue with NPE in setting the action to current context
  • Fixed issue with macro preview rendering

Version 3.0.0

  • Fixed bug with sorting of dates (especially datetime fields)
  • Support for File/Attachment field to show all the file types as links (default behaviour is to show images as inline (embedded) pictures)
  • Improved parallel rendering to use own independent pool of renderers to improve performance and reduce dependency on other threads to complete their renderings
  • Xstream library upgrade to 1.4.20 to address known CVEs
  • Fixed regression issue with a "Page/BlogPost" field not hiding the space key when configured to do so
  • The function asFilteredBy from Virtual functions now accepts a true filtering expression (ConfiForms Filters) when applied on a smart field
  • Compatibility with Confluence 8 (except 8.0.0 and 8.0.1)

You need to use a minimum Confluence version 8.0.2 (8.0.0 and 8.0.1 have critical bug https://jira.atlassian.com/browse/CONFSERVER-81454)

Available for manual install and downloadable from here. Compatibility range 7.0.0-8.0.2 (except Confluence versions 8.0.0 and 8.0.1 as per above)

Final 3.0.0 version of ConfiForms has been published on Atlassian marketplace and could be installed from there or from within Confluence UPM itself - https://marketplace.atlassian.com/apps/1211860/confiforms-data-forms-workflows?tab=overview&hosting=datacenter

  File Modified
File confiforms-3.0.0-RC1.obr Dec 28, 2022 by Alex Medved
File confiforms-3.0.0-RC2.obr Jan 04, 2023 by Alex Medved
File confiforms-3.0.0-RC3.obr Jan 16, 2023 by Alex Medved


Version 2.28.4

  • Hotfixing the filed initialization caused by incorrect initialization of a WYSIWYG field that may affect other fields as well on certain form configurations

Version 2.28.3

  • Fixed regression with exports from TableViews being exported as flattened rows (if the form contained multi-value fields)
  • Support for sorting tags/labels in ConfiForms MatrixView for configurations that dont use the option to "show only relevant choices"

Version 2.28.2

  • Web-service lookup and set is fixed to return empty values for fields that have empty values, and not to return the id of the looked up value
  • Fixed regression issue with exports to Excel file
  • User and Page fields now also support customizations via CSS
  • Fixed issue with "auto-align" option on ConfiForms Registrations Control (FormView) macro when used with advanced dropdowns, wysiwyg and smart multi-row fields
  • Fixed width for Edit Controls when used in TableView and is rendered in compact or single action mode (either delete only or edit only)
  • Fixed flattening of for multi-select fields in export
  • ConfiForms ValueView macro now supports flattening multi-select fields
  • New function in Virtual functions to remove characters by given regular expression -  removeByRegExp
  • Support for variable in form name and page id in functions: queryAndRender, queryCount and queryAndSet

Version 2.28.1

  • Improved logic in "web-service lookup and set" rules. Supports ".urlencode" function to be given with field name to ensure teh argument passed to web-service call is properly encoded when needed
  • Fixed triggering of events in dynamic dropdown field backed by a web-service (correctly reacts on value selection and triggers appropriate events when value is changed)
  • Fixed issue with editing of smart multi-row fields for linked rows more than 1 and having fields that require initialization (all non text fields)
  • Fixed issue with dynamic dropdowns not saving "an arbitrary value" on edits

Version 2.28.0

  • Fixed issue with CalendarView with "inline add" feature enabled and when CalendarView is set on DateTime Interval field
  • Fixed bug with custom CSS parameter on fields that attempts to set the custom CSS class with "class:" prefix (this might affect your configurations if you were using lots of custom CSS or references to CSS classes in ConfiForms fields)
  • Fixed form initialization when the form has ConfiForms Field Definition Rules#Setfieldreadonly rule 
  • Introduced few new virtual functions to get the working and days between the 2 timestamps - see workDaysTo and daysTo     
  • Fixed regression issue when Edit Controls macro was not getting default width when rendered inside TableView/CardView macros
  • New function to "fix your HTML" to be xHTML - Virtual functions, see the fixHtml function

Version 2.27.30

  • Improved algorithm for Configuring ConfiForms IFTTT actions and rules#GenerateNextNumber covering use cases when data rows involved in the sequence number generation were removed
  • Fixed form view height if rendered for the administrator but has option to hide the metadata fields enabled
  • Voting field can now be set to hide the number of votes already collected in the view
  • Removed "extraContext" debugging parameter from ConfiForms field macro that accidentally went into the 2.27.29 version

Version 2.27.29

  • Made ConfiForms Field Definition Rules#Setvalue rule to work on "section" field (type)
  • Fixed issue with "Hide if matches" parameter on ConfiForms Field macro when used with CalendarView
  • New function to query number of records matching the filter - queryCount (Virtual functions
  • ConfiForms spaces field type can only be used on instances with less than 1000 spaces
  • Fixed issue with rendering of a "Dropdown (advanced)" field value inline (same row) (affects smart and DB advanced dropdown fields)
  • Fixed issue with fixed style TableViews and setting the field lengths via CSS rules on the ConfiForms Field macros How to create a table with fixed width columns in Confluence with ConfiForms
  • Improved troubleshooting for DB/WS mappings. Errors reported directly with details and the context
  • Improved support for setting values n multi-select fields via ConfiForms Field Definition Rules#Setvalue (empty values are safely ignored and only valid values are processed and set)
  • Section panel field is not rendered when default view is used on TableView/CardView (similarly to "info panel" field)
  • Fixed issue with NPE on ConfiForms field rendering when "hide if matches" paramter set and the field is used in the CalendarView
  • Custom email server can be set (by name) in the Configuring ConfiForms IFTTT actions and rules#SendEmail

Version 2.27.28

  • Improved support for passing multiple user groups and users in IFTTTs that manage permissions, send emails and notifications
  • Fixed issue with values rendering of a multi-select security group field (in views)

Version 2.27.27

  • Upgraded Apache POI libraries to mitigate security issues reported in the library's previous version used by the app
  • Fixed and optimized parsing of CSV data in Using Excel files as sources for ConfiForms fields
  • Optimized search and lookup (matching) in the APIs used in Using Excel files as sources for ConfiForms fields
  • Horizontal layout support for web-service/db/smart checkbox groups and radio group fields
  • Fixed CSS styling on Edit/Viewer controls when used inside a Table/Card views
  • hasValue function improved to work on Web-service backed fields (Virtual functions)
  • Fixed issue with advanced dropdowns not working with show/hide field definition rules

Version 2.27.26

  • Fixed CSS issue (regression) with icons used by ConfiForms (web-service dropdown, user fields)
  • New feature: secrets and variables - your administrators can define variables and secrets that you can then reference from within your forms (and also in web-service connection configurations, hiding the tokens in headers, for example). Secrets are stored in an encrypted way, while variables are plain-text and are accessible through variables virtual function (see below). Secrets can be accessed in ConfiForms web-service configuration in "headers" parameters
  • New function to access ConfiForms variables: variables
  • Fixed issue with customizations of exports of audit (_log) forms (Using new Audit IFTTT action)
  • Accessibility issues fix in ConfiForms admin UI (app configuration)

Version 2.27.25

  • Fixed issue with enabled "parallelFilteringEnabled" feature flag on configurations that use validation rules involving recently created/changed external objects (such as pages, uploaded files). Workaround is to disable this feature flag (if updating the ConfiForms plugin is not possible at the moment)
  • CalendarView, when used to render a "dialog on click" can auto-set the "date" field value on the form (picking it automatically from a calendar)
  • Password field was mistakenly rendering stored password as "title" attribute when rendered inside the view
  • Improved error reporting to normal users when the form is switched into debug mode
  • Added isValidCaptcha virtual function
  • Fixed issue with "append( )" function, when empty value is about to be added to the value and that was unnecessary trimmed
  • Added export data feature to CalendarView
  • Improved smart classifier field to auto-set the values when enough selections being made (does not render empty choices, if it finds that the value could be seat from the selections being made)

Version 2.27.24

  • Improved search in Using Excel files as sources for ConfiForms fields service
  • New option in Lookup and Set (+webservice and database) to not to set the empty values if no matches in the lookup found (default behaviour is to reset the fields if no matches found)
  • Improved Import API to be easier embeddable in the tailor made solutions and configurations (embeddable by taking the "importTableContents" element from the import table)
  • Support in Import API for skipping the rows and providing additional context (values)
  • Improved inline edit mode when the form uses show/hide fields - no more blinking and form view refresh after initial load
  • Support for own value in web-service and db-backed dynamic dropdown fields (useful especially when the field is set to be used in a "proxy mode", suggesting options for users as they type)
  • New Virtual functions isValidPassword - to verify user's password on form submit
  • Fixed issue with incorrect parsing of fields to export (see Data Export tricks and hints) which may contain virtual functions and expressions with commas

Version 2.27.23

  • Fixed encoding issue in REST APIs output for multi-value fields that contain non-latin letters (values are wrongly encoded as XML entities / codes)
  • Fixed "class cast" exception with inline edit mode enabled on views which have inner (sub) views of ListView type configured
  • One more improvement in lookup by value extension to Using Excel files as sources for ConfiForms fields to do the lookup match by specific field
  • Fixed NPE in ConfiForms Filter Control macro when the field is set to be used as interval (datet/datetime)
  • Fixed issue with Masked Text field value incorrectly omitting zeros for non numeric field types

Version 2.27.22

Version 2.27.21

  • Extending Using Excel files as sources for ConfiForms fields to have a lookup functionality and be supported with fields that work with "proxy mode" enabled (Using use proxy setting in dynamic dropdowns). See lookupValue parameter that you can now supply
  • Fixed issue with field definition rules not triggered correctly on fields that have "proxy mode" enabled
  • TableViewMerger macro can be set to ignore the sources that the user has no access to (not showing the permissions error, but silently skipping) - see "Ignore sources if user has no access" parameter
  • Fixed issue with duplicate "class" attribute generated by Checkbox Group field

Version 2.27.20

  • Fixed regression issue with inline instant search option for TableView/CardView
  • Improved import API to support "gaps" in cells in excel files
  • Improved expressions parser to handle complicated expression inlined via evaluateFormula virtual function
  • Support for limiting the fields to "flatten on" - for ConfiForms IFTTT macros, Configuring ConfiForms IFTTT actions and rules#CopyConfiFormsData
  • Same support for reducing the "flatten on" fields in ConfiForms TableViewMerger macro (by default (when the parameter is left empty), all the multi-value fields are taken)

Version 2.27.19

  • Fixed issue with rendering of an inner view (inline) that has an instant search enabled
  • Fixed issue with misplacement of error/success messages when inline edit view cannot be successfully submitted and requires user's attention or on successful submit the messages were misplaced on certain configurations

Version 2.27.18

  • Improved support for ListViews (Calendar and CleanView included) rendering in inline edit mode that have inner views to other forms with Edit/Register controls
  • Improved ConfiForms filtering engine to support inner expressions inside the conditions that use "queryAndSet" function with own complex condition set

Version 2.27.17

  • Fixed issue with "Controlled vocabulary" option in multi-select fields
  • Support for ESC key as a "hot key" to quickly close the inline (individual) edit UI
  • Fixed minor issue with discovery service not working with application links that contain illegal names
  • CSV2JSON experimental service - Using Excel files as sources for ConfiForms fields  (https://your_confluence_server/ajax/confiforms/rest/csv-2json.action)
  • Improved support for metadata fields (id/recordId) when used with ConfiForms Filter Control macro
  • Improved support for using results of a web service call for JSON documents that contain "." (dots) in property names
  • More robust "discovery attachments" routine to handle better poor configurations for IFTTTs to move/copy attachments

Version 2.27.16

  • Improved support for inline edits on configurations having multiple views of the same type to the same form
  • Backward compatibility issue with system-like field names (not following the casing) for own field names and inline individual edits. Only will work when "strictValidation" for forms is disabled
  • Fixed issue with duplicate processing of custom JS and action messages duplicated when multiple ConfiForms macros are used on the page 
  • Improved support for dates/timestamps when IFTTT to copy/update data to database (DB) is used

Version 2.27.15

  • Fixed issue with field definition rules not triggering when bound on security group / security group multi-select fields
  • Status field rendering improved - does not render empty default value when value is empty
  • Fixed support for marking the fields as failed validation on forms with custom layout
  • Backward compatibility with forms that use system-like field names (not following the casing) for own fields and want to set them via preset values in ConfiForms Registrations Control (FormView) (strictValidation must be disabled in ConfiForms app settings)
  • Fixed issue with server timezone incorrectly taken when showing the value of a date/datetime field
  • (regression) Free text search now finds records by UUID

Version 2.27.14

  • Added strict validation of form's configurations in (cloud) pre-migration report (field names)
  • Fixed (conflicting) issue with rules that have validation rules bound on fields and also other rules that need to be executed on field change
  • Fixed issue with required asterisk being placed incorrectly on smart multi-row fields
  • Fixed issue with incorrect handling of user timezones in date/datetime and datetime interval fields
  • New virtual function "securityGroupUsers" to list users from a security group 

Version 2.27.13

  • Support for "atlassian.indexing.attachment.maxsize" system property in ConfiForms search indexer
  • Inline individual edits are now supported with ConfiForms Edit Controls

Version 2.27.12

Version 2.27.11

  • Random NPEs occurring while rendering contents on older versions of Confluence when ConfiForms is set to use parallel loading and filtering
  • New feature to enable strict validation of values a field can accept. Enabled via ConfiForms Field Definition macro for each particular field individually. Useful when you want to ensure the values entered by users gets strictly verified against the "controlled vocabulary" (registered options in choice-based fields, valid users). Some fields, such as text-based could accept any values. But you can have custom validations for value lengths, pattern matching, etc

Version 2.27.10

  • Compatibility with Confluence 7.18.x
  • Fixed memory leak with ConfiForms content extractor caching contents for indefinite time (in a thread local)
  • Fixed issue with show/hide rules when used with a form having an "auto-align" option enabled
  • Fixed issue with storage size calculation for form's non admin users

Version 2.27.9

  • Fixed compatibility with Confluence 7.17.x and ConfiForms ListView (rendering issue related to "Caused by: java.lang.ClassCastException: class java.util.ArrayList cannot be cast to class java.util.Set (java.util.ArrayList and java.util.Set are in module java.base of loader 'bootstrap')")

Version 2.27.8

  • Fixed possible NPE with active redirects 
  • Improved robustness of loading ConfiForms records in enabled "parallelLoading" mode

Version 2.27.7

  • Enhanced time field to work in user's timezone
  • Fixed: ConfiForms Filter macro's reset button does not correctly reset the filter results with certain form's field types 
  • Fixed issue with missing classes reported when IFTTT actions get executed (affects certain older versions of Confluence only)

Version 2.27.6

  • Fixed regression issue with RAW file export (affects cloud migrations and recover APIs)
  • Improved ConfiForms Filter macro to work with options that have parenthesis in their values

Version 2.27.5

  • Improved support for parallel filtering of records that may have smart fields or fields that use lazy loading

Version 2.27.4

  • Fixed ORA exception with ConfiForms storage when used with Oracle database

Version 2.27.3

  • Feature flags (configurable through ConfiForms app configuration) to enable/disable parallel (multi-threaded) data loading and filtering. Might be useful to disable these features when Confluence runs on a low end machines with restricted resources (CPU, open threads, memory)

  • Optimization in data loading for the admin UI view - paged to 500 records by default, with enabled search and filter. OOM fix for data storage size calculation on low memory instances
  • Fixed issue with not checking the value for the field when "required" parameter in Smart Multi-Row is enabled
  • Field Definition rules bound to text fields (not choice based fields) now triggered on "input" event - which helps to reduce the number of useless requests sent by the app
  • Fixed issue with duplicate request being issued when the view has inline search enabled and the view uses "paging"
  • Improved data sorting performance (avg 30% faster)

Version 2.27.2

  • Fixed support for timezones and rendering dates in user's timezone (including CalendarView that now can be set to be rendered in user's timezone)
  • Improved loading and de-serialization of data for large datasets by using parallel processing
  • Improved filtering (especially on free text searches) to use parallel processing for almost all filtering expressions (excluding the ones that use _count)
  • Admin UI now is using paging (1000 records per page is rendered) to improve performance and has an inline search
  • Fixed regression with inline/dialog file delete operation (with forms using file/attachment fields)

Version 2.27.1

  • Fixed issue with IFTTT to "Copy ConfiForms Data" not triggering events (when data is copied to target form)
  • Fixed issue with page discovery algorithm when given without a space key (on large installations it may cause thread stuck and other performance related issues)
  • Fixed bug with asUserLink and asUserLinkMacro Virtual functions
  • Dependencies upgrade based on snyk report on vulnerabilities (no critical/major vulnerabilities)
  • Fixed UI for Dynamic dropdown field configuration (misleading parameter texts removed)
  • Fixed issue with configurations that have attachment uploads and IFTTTs to update the same record

Version 2.27

  • Support for multipart/form-data requests in ConfiForms Server REST API version 1 when yo need to create/update/validate a record that has files/attachments
  • Reworked support for timezones and user timezones. Now functions report correctly times and dates when fields are set to show data in user timezones (for input and output)
  • Support for setting and resetting "comment" field value via IFTTT update
  • Support for evaluating as Velocity template all the page related parameters in IFTTTs
  • Enhanced support for file/attachment fields to be used from within smart multi-row fields
  • Optimized spaces loading query in "Spaces" field type to load user accessible spaces in one go. Significantly optimizing loading performance for instances with large (current) Confluence spaces count 
  • Fixed memory leak in Content extractor (Confluence search) and CachedEntry (thread local bound cache)
  • Fixed issue with encoding on certain server configurations when using Recovery API to recover data that has non-latin characters (accents, umlauts, etc)
  • Fixed issue with IFTTT to redirect to another URL when set to run onDeleted event (subsequent runs were not triggering actual redirect)

Version 2.26.6

  • Fixed issue with resetting radio group field value (reseted value were not saved on update when the field has previous value - ConfiForms Field Definition Rules#Resetvalue)
  • Improving loading performance of smart classifier referenced data
  • Fixed issue with virtual functions applied on web-service backed fields that use the same service url (but show different things and have different mapping)

Version 2.26.5

  • Move/Copy attachments will be still possible on pages that have ConfiForms forms and want to move/copy attachments from the same page even when the user does not have view permissions on the ConfiForms page (when the form is set to "allow reads" parameter, overriding explicitly Confluence page permissions model) 

Version 2.26.4

  • Rendering: Fixed issue with accessing properties of the field when it is referenced through the smart field
  • Rollback of "move attachment" IFTTT change due to incomplete implementation of possible user scenarious. Making it look broken when an attachment that is moved remains referenced in some field of a ConfiForms form

Version 2.26.3

  • Fixed regression in filtering of masked field type values when the field is set to use "numeric" or "date" field type
  • Fixed issue with double <br/> happening on comment fields when rendered
  • Improved support for web-services backed fields that have ID as row identifier (that was incorrectly interpreted as a missing id for the ConfiForms record, as "id" is expected (in small letters))
  • Improved ConfiForms Filter Control macro to work with "metadata" fields, like "created", "ownedBy", etc (on custom layouts) - Documentation
  • Fixed issue with ConfiForms Filter Control and JavaScript that can be set to be executed on filter refresh
  • Fixed performance issue with pages having Smart ConfiTemplates plugin used together with ConfiForms
  • Fallback routine implemented to move an attachment via ConfiForms IFTTT to use saveAttachment/deleteAttachment methods to workaround issues cause with attachment reconciliation process (which happens with enabled collaborative edit) Unable to locate Jira server for this macro. It may be due to Application Link configuration. Important to note that this will only work on certain cases, when source page (where the form is) does not have other attachments or attachments with the same name (multiple versions of the attachment)
  • Fixed security issue with copyAttachment/moveAttachment (proper access rights checks now implemented)
  • Support for scientific notations in numbers - to be used with Supported math operators, formulas and functions
  • Improved Persian calendar field to work correctly with time settings

Version 2.26.2

  • Fix for rendering of attachment picker/file field values

Version 2.26.1

  • Quickfix to address issues with incorrect rendering of multi-value fields when used through smart fields
  • Regression issue fix related to handling of multi-user fields (including voting control)

Version 2.26

  • Added support for rendering QR codes and barcodes directly in ConfiForms! See barcode and qrcode functions in Virtual functions
  • Improved rendering and filtering performance of multi-value fields (we see a 10x times better performance improvements on certain (most) configurations, especially in filters)
  • Implemented an earlier check for app level configuration that disables content indexing of ConfiForms forms (option in ConfiForms app configuration). 
  • Improved support for retrieving _previousState values via ConfiForms Field macros for ALL field types
  • Improved ConfiForms Filter Control to work on Persian dates (and interval fields) + fixed filtering by these field types

Version 2.25.7

  • Added pagination to search API - REST API on server/dc, both versions support startAt and limit parameters
  • Fixed encoding of REST APIs (server/dc) to retrieve ConfiForms data when servers are not running UTF-8 by default
  • Fixed issues with form view rendering when the form has wysiwyg or smart multi-row fields (and dialog/link rendering mode is selected)
  • Fixed issue with auto-align option when used on dialog forms
  • Improving handling of "delete attachment" routines to perform in a separate, non blocking thread
  • Improving handling of dates/datetimes when the format is given in a way that it results in a numeric value
  • Fixed bug with "Apply filter on field" not working on Insight multi-select fields
  • Improved support for ConfiForms FormView macro to be used in Confluence welcome template

Version 2.25.6

  • Hotfix version to address regression issue with field length validation

Version 2.25.5

  • Disabling strict validating (option introduced in 2.25.3) for form's configurations allows you to continue to use field names that differ with system fields by case (although, it is highly recommended to have field names that are different to internal field names each ConfiForms record has Documentation)

Version 2.25.4

  • Fixed issue with inline edits of smart multi-row fields
  • Field Definition Rules now work on a from rendered via Entry Viewer as well (same as with FormView)
  • Fixed issue with incorrect event being sent when a record is changed through Smart multi-row field
  • ConfiForms Registrations Control (FormView) macro's restrictions parameter supports variables and [entry.field_name] notations now
  • ConfiForms EntryViewer's field name parameter supports complex expressions and [entry.field_name] notations as parameter
  • ConfiForms file field now allows to clean up "broken file references". When the file was uploaded using ConfiForms, but has been deleted (directly) using Confluence.
  • Templates can be looked up by space key as well, in addition to [template.TEMPLATE_NAME] you can use [template.SPACEKEY::TEMPLATE_NAME]
  • Workaround for forms that have validation rules around fields that upload image files - Confluence has a bug that prevents ConfiForms from deleting the image file due to a DB constraint. We attempt to workaround this, but this will not work for scenarios when another version of a image file is uploaded (attachment with the same name) - in this case we skip deleting of this file to successfully complete ConfiForms process (as otherwise Confluence raises a transaction rollback)

Version 2.25.3

  • Addressing issue that has been introduced by strict validation of the form configuration (in 2.25.2). Field max length is upped to 60 symbols max. And the rule could be disabled via plugin configuration (but we encourage you to enable this setting if you plan to migrate your ConfiForms data to cloud at some point).

Version 2.25.2

  • Fixed missing header in Smart multi-row field when set to render as TableView
  • Fixed issue with default fields in ConfiForms Filter Control macro (rendering system fields by default as well, which it should not)
  • Experimental support in Import API to allow users to specify "field or fields as unique key" to identify a record to update (in addition to "entryId" column mapping)
  • Added support for importing of smart multi-row field values via Import API
  • Lookup and Set rule (ConfiForms Field Definition Rules#Lookupandsetvalue and others from "Lookup and Set" rules family) has been improved to work correctly with values that have CRLF (new lines) - looked up from TextArea/Markdown field
  • queryAndSet function now to support expressions on the field it is queried on - Virtual functions. Wrapping the field or expression in parenthesis will tell ConfiForms to try to calculate the field, and for numeric/currency fields that will attempt to sum up the values that were found
  • Attempting to improve ConfiForms attachment handling as per advises given by Atlassian in Unable to locate Jira server for this macro. It may be due to Application Link configuration. (to avoid conflicts with Collaborative editing)
  • Fixing issues with incorrect time rendering when "use user timezone" option is selected for date/datetime and datetime interval fields
  • Convenient option to disable ConfiForms indexer globally via ConfiForms app configuration

Version 2.25.1

  • Fixed issues with migrating (to cloud) forms data that have non-latin names
  • Fixed issue with labels auto-align option set in ConfiForms Registrations Control (FormView) macros
  • Fixed issue with double rendering of the template in ConfiForms emails (IFTTT to send emails)
  • _previousState is now accessible directly through ConfiForms Field macros (not only through [entry._previousState]) - if it exists in the context for the current record, see where it exists Virtual functions
  • Virtual function to remove items is enhanced to work better on arguments given as CSV (asList). An example below that removes options from "choice1" field that already being selected and stored in choice1 and choice2 fields

    id.getOptions(choice1).remove([entry.choice1.transform(id).asList]).remove([entry.choice2.transform(id).asList]).asList

    similar approach to create a filter dynamically (filters OUT choices from choice1 that are already used in fields choice2 and choice3). In these examples our choice1,choice2,choice3 fields are of the same structure and type

    choice1:[entry.id.getOptions(choice1).remove([entry.choice3.transform(id).asList]).remove([entry.choice2.transform(id).asList]).join( OR choice1:)]

Version 2.25

  • Improved use of  "_previousState" through ConfiForms Field macro
  • Improved support for custom dialog modes in CalendarView when multiple views using the same form are set up on the page
  • Fixed performance issue with form page lookup when page history is used to render old version of a page that has ConfiForms views (referencing a form on a different page)
  • Fixed issue with incorrect escaping of an "&" in the email's subject
  • Fixed issue with target form not being dynamic (could not set via [entry.field_name]) in ConfiForms IFTTT to update ConfiForms entries
  • New Virtual functions to retrieve pageWatchers and pageContributors (must be used on a page object)
  • CalendarView now supports setting the "week numbers"

Version 2.24.7

  • Fixed an issue with custom layout for the CalendarView's Edit Controls when the view is set to render as "Dialog" in "body placement" parameter
  • Fixed issue with incorrect headers in TableView/CardView when rendered for Action buttons
  • Improvements in inline edits (includes content refresh after action button's action execution)
  • base64 function from Virtual functions accepts a true/false parameter to construct either base64 URL safe output or normal bas64 hash (when parameter is given as false)
  • Fixed issues with initialization of smart multi-row fields that use complex fields in the configuration
  • Fixed edit mode for smart multi-row fields when they used in "FormView" rendering mode

Version 2.24.6

  • Fixed issue with multi-value fields not resetting on form submit (record update)
  • Fixed issue with data export when the filter is using current page [entry._page]. Current workaround (before 2.24.4) is to construct OWN custom export links - Data Export tricks and hints
  • Experimental support in Smart multi-row for new custom way of rendering - using form's defined default layout (when you have own layout for the form designed via ConfiForms Registrations Control)
  • Fixed initialization of action buttons after updates done via inline edits
  • ConfiForms IFTTT to "Send Notification" has been improved and is capable of self-fixing the semi-broken notification templates (for example, when ConfiForms Field macros are put without "views" macros)

Version 2.24.3

  • Fixed issue with ConfiForms ValueView macros used as values for page properties and rendering of a page properties report
  • Fixed issue with formulas inside the field name expressions evaluating big decimals as text values
  • Fixed ConfiForms Field Definition Rules#ApplyFilterbasedonmatchingcriteria when used with "retain values" parameter set and custom filter on the dataset

Version 2.24.2

  • Fixing possible ORA-01795 when Recovery API used to reset forms that have 1000+ records stored
  • Improved support for HTML arguments inside the formulas Supported math operators, formulas and functions
  • Fixed ConfiForms CSS Rules when set to apply on the whole record (table row, for example)
  • New option in ConfiForms Field Definition macro to hide the form's admin UI - (see related Why do I see an extra button with + sign on my form and ownedBy field)
  • Improved support for parsing numeric values (currency values, non english locale values)
  • Fixed regression for required checkbox group fields (not being properly checked)
  • Extended support for function "userInSecurityGroup" to work on multi user fields 

Version 2.24.1

  • Hotfix to address issues with CalendarView events grouping
  • Virtual functions convertToStorage enhanced to accept storage format as a parameter with evaluating [entry.field_name] references if any
  • Added required attribute for required fields in ConfiForms (aiming at screen readers and improving accessibility of forms)

Version 2.24

  • Updated "jsoup" library to 1.14.3 (security fixes) based on snyk (snyk.io) report
  • Performance optimizations in how formula fields are calculated and re-calculated
  • Performance optimizations of rendering forms that have custom layout
  • Performance optimizations of Edit View (dialog) rendering
  • Fixed issue with pageProperties Virtual functions to correctly render the page property value when it contains multiple Confluence macros (as value)
  • Fixed bug with "Time" field type not firing the change event and therefore field rules (set on this rule) were not executed
  • Adding "aria-required" attributes for required fields to be readable by screen readers (better usability and accessibility for users using screen readers)
  • CalendarView supports drag&drop of "events" for configurations using simple field (not an expression) as calendar items grouping
  • Reworked support for numeric values using comma as decimal separator (instead of a dot)

Version 2.23.1

  • Quickfix to address issue with "id" rendering as label in the columns that contain ConfiForms edit Controls macros (TableView/CardView)

Version 2.23

  • Complete rework of how smart multi-row fields and parameters they produce are handled
  • Fixed regression issue with checkbox group not resetting the value after edit (when all options are unset)
  • Bug with multi-row field having a checkbox group field
  • Fixed bug with loosing record ID in multi-row fields on updates
  • Upgraded XStream library to 1.4.18 - https://x-stream.github.io/news.html
  • Cleaned up and removed dependencies that were not used. Plugin is repackaged and is smaller in size now
  • Upgraded dependencies as per report by snyk, see https://developer.atlassian.com/platform/marketplace/dc-apps-security-scanner/ to mitigate and workaround possible (known) vulnerabilities
  • Fixed issues with Persian date field not triggering change events

Version 2.22

  • Fixed issues with possible broken page layout when rendering multi-row fields or using queryAndRender function (Virtual functions)
  • Fixed issues with custom layouts not found (viewers/edit controls) on Confluence versions 7.13+
  • Improved multi-row fields to initialize correctly fields that need initialization
  • Fixed issue with checkbox field in multi-row fields not saving "checked" state
  • Fixed initialization of date/date time fields when used through multi-row field
  • Fixed issues with saving data from multiple multi-rows at once
  • Fixed issue with ConfiForms IFTTT that update record which has multi-row field(s) defined
  • CalendarView uses own CSS styles (old css styles, but prefixed with cf to avoid possible conflicts with other plugins using full calendar)

Version 2.21.6

  • Fixed issue with incorrect migration service url used for Migration from server to cloud
  • Workaround for Unable to locate Jira server for this macro. It may be due to Application Link configuration.  
  • Support for @self and @parent in all parameters in IFTTTs that work on pages / expect page as a parameter
  • Support for helper JavaScript functions (feel free to share yours, so we can bundle them into ConfiForms!)
    JavaScript functions
    Available since versionFunction DescriptionDemo

    2.21.5

    function cfAddFieldRequired(formId, fieldName)

    Adds required field mark / asterisk. This does not make the field required - you need to have an additional validation in place to validate the field's value

    2.21.5

    function cfRemoveFieldRequired(formId, fieldName)Removes required field mark / asterisk from a field. Important to know that if the field is set as required in ConfiForms Field Definition then it still remains as required and users must provide a value before they can submit the form. This function only changes the visual appearance of a field label

    2.21.5

    function cfAddTabStop(formId, fieldName)Adds "tab stop", meaning that the field will be excluded from form's set of fields when moving around using the "tab" key 



    2.21.5

    function cfRemoveTabStop(formId, fieldName)Removes the "tab stop" marker from a field

    2.23

    function cfSetValue(formId, fieldName, fieldValue, isAdvanced = false)Set's value on a field. Set "isAdvanced = true" if you want to set the value on "advanced" fields (such as dropdown fields with lookup, etc)

    3.8

    function cfSetValueWithEventPropagation(formId, fieldName, fieldValue, eventType, isAdvanced = false)

    Same as "cfSetValue" function but  triggers an eventType event

    eventType can be of the following type:

    • change
    • input
    • blur
    • keyup

    This depends on the field you want to trigger this for. Text fields expect 'input', dropdowns and other choice based fields - "change"; Jira, user and page lookup fields expect a "blur"


    2.23

    function cfResetValue(formId, fieldName, isAdvanced = false)Resets value on a field (sets it to empty state).

    2.23

    function cfSetValueByIndex(formId, fieldName, index, isAdvanced = false)Selects value by index in a dropdown (radio) field. Options start with 0 index (so, the first option will be with index = 0)

    3.8

    function cfToggleReadOnly(formId, fieldName, isReadOnly, isAdvanced = false) Toggles readonly attribute (either adds it or removes it, depending on a isReadOnly parameter value)

    3.8

    function cfToggleDisabled(formId, fieldName, isDisabled, isAdvanced = false) Toggles disabled attribute (either adds it or removes it, depending on a isDisabled parameter value)

Version 2.21.5

  • Fixed issue with IFTTTs to update ConfiForms records that has a required field of file/attachment type
  • Fixed issue with ConfiForms IFTTT to update ConfiForms records in bulk that use cascading mode on (also triggering IFTTTs that react onModified and attempt to update other records)
  • Fixed NPE in ConfiForms user settings for web-services when a web-service is restricted to users/not user groups
  • Voting control field could be used in ConfiForms Dynamic Filter macro (rendered as multi-select user field)
  • ConfiForms configuration could be split into different pages and included via Confluence standard Include page macro (in addition to ConfiTemplates, Live templates from Adaptavist or Confluence user macros)

Version 2.21.4

  • Fixed issue with Smart multi-row field type when it is set on fields that require additional initialization (user fields, multi-selects, etc)
  • Fixed issue with JQL field type to export "counts" instead of configured JQL
  • Added missing parameter to set rendering mode in TableViewMerger macro (parallel rendering is preferred, but sequential could be also used)
  • Fixed issue with applying rules on compulsory fields conditionally, where condition involves checking for files/attachments to be empty/non empty

Version 2.21.3

  • Fixed bug with individual edit on file fields (using inline "save" button will (wrongly) de-associate currently linked attachments)
  • Confluence administrators could allow users to define and configure own connections to web-services to be used by ConfiForms (will be accessible if the below parameter is enabled via "user profile → settings → ConfiForms settings")

  • Improved server-to-cloud migration status reporting 
  • Experimental support to allow importing of attachment IDs via Import API for file/attachment type fields
  • Fixed issue with checkbox (as checkbox group) field validation when it was made as required
  • Fixed issue with attachments versioning and deletion of the attachments (via ConfiForms)
  • XSS issue fix in numeric field when set via "Set Value" action
  • Support for using Sorting in ConfiForms in queryAndSet Virtual functions
  • Improved reading of page properties (through pageProperties Virtual functions) when they are given as user macro values
  • Enhanced data export functionality to allow you to define * as a parameter for fields to export (which enables you to quickly override the default behaviour of exporting only the fields you see)

Version 2.21.2

  • Improving support in experimental API for reading excel files with blank data in cells - Using Excel files as sources for ConfiForms fields
  • Ensuring that Smart multi-row fields configurations are valid. No nesting of smart multi-row fields is currently supported
  • Fixed issues with rendering of (ConfiForms) ListViews having certain configurations

Version 2.21.1

  • Added support for smart fields used in Smart multi-row field - ConfiForms Smart Multi-row - what it offers and how to use it
  • Fixed issue with incorrect (success) message shown when multiple registrations control macros are on the page
  • Fixed issue with class loading conflict (affects sending emails with attachments from ConfiForms)
loader constraint violation: when resolving method 'void javax.mail.internet.MimeBodyPart.setDataHandler(javax.activation.DataHandler)' the class loader
  • Fixed issue with conflicting CSS styles for width of form view when ConfiForms Filter macro is also used on the page

Version 2.21.0

  • Introducing Spaces field type. New field type to list Confluence spaces. Although something like is already possible with (limitless) WebService dropdown field, we have decided to make an easier to configure and setup version of the field
  • Introducing new field type to help building master-details forms much easier - Smart multi-row. Field is in BETA version (please do not use in mission critical forms as of now) and your feedback is very appreciated. 
  • Fixed issue with finding correct EntryViewer/Edit Controls custom layout on pages with multiple views over the same form. As well as with configurations having EntryViewer set in "Edit" mode
  • Support for Include Page macros inside ListView with contents evaluation (evaluating [entry.field_name] placeholders found in the included page) + support for referencing Confluence templates from inside the ListView via [template.TEMPLATE_NAME]
  • Improved Virtual functions pageProperties function to support rendering of local (<ac:link>) links (when used within page properties) 
  • Fixed issue with importing values into Dynamic dropdown fields (including the ones backed up by web-service and database query)
  • Redesigned compatibility between WYSIWYG field in ConfiForms and Confluence shortcuts
  • Fixed "Render a striped table" functionality (to work in both: parallel and sequential rendering modes) 
  • Fix for possible NPE when attachment has been removed from a page but is still referenced in ConfiForms record
  • Fixed issue with ConfiForms Field Definition Rules not firing when set up to track changes on a file/attachment fields
  • Fixed issue with rendering attachment field in CardView/TableView when sent via email (current workaround is to use "sequential" rendering mode for the view macro). With 2.21 version sequential mode is always used automatically when used for email / notification
  • Improved pageProperties Virtual functions to render local links and tasks when referenced through this function and used in page properties on a page

Version 2.20.5

  • Fixed issue with Web service connection configurations (missing admin security token)

Version 2.20.4

  • Fixed issue with "base url" when configured to other than root context (submitting forms from custom layouts)

Version 2.20.3

  • Fixed issue with incorrectly removing complete attachment instead of attachment version when attachment is uploaded via ConfiForms form and then deleted (either via record edit or as whole record)
  • Improved "Lookup and set" rule to set the expressions (on requested fields) even when the lookup operation results in an empty value 

Version 2.20.2

  • Improved parallel rendering to be more compatible with 3rd party macros rendered inside ConfiForms
  • New "round" Virtual functions to help with number rounding

Version 2.20.1

  • Quick fix to address compatibility issues with Confluence versions prior to 7.0.1 and ConfiForms
  • Fixed regression issue with CardView rendering (missing headers)

Version 2.20

  • Support for server/data center to cloud migration - Migration from server to cloud (make sure you read about limitations and blockers current process has, and also read about Differences between ConfiForms server/data center and ConfiForms cloud)
  • Parallel rendering to improve performance of large datasets. You can select view rendering mode in each macro.
    • ListView/CleanView and CalendarView use (old) sequential mode of rendering, as it is compatible with larger range if 3rd party apps (try switching to parallel (as it is much faster), but if you dont see expected results switch back to parallel)
    • TableView/CardView/PlainView and TableViewMerger use parallel rendering mode as a default option (as these views very rarely depend/use other 3rd macros to render their output and this mode is a lot faster than old sequential rendering mode)
  • Fixed issue with "Lookup and set value" - ConfiForms Field Definition Rules#Lookupandsetvalue when static parameters are configured to be set on lookup (incorrectly always setting the value, no matter of a lookup result)
  • Fixed regression issue with CheckboxGroup field check for empty value in filters (condition to check fo empty field was not working)
  • When whitelist is enforced in ConfiForms settings, all the redirects are also checked against the Confluence whitelist
  • HTML stored in ConfiForms fields (HTML/Hidden HTML) are now cleaned up and escaped (no scripts allowed, used OWASP policy)
  • All ConfiForms configuration and administrative operations are now following the recommendations found on https://developer.atlassian.com/server/confluence/form-token-handling/

Version 2.19.5

  • Repackaged to avoid direct dependency on Atlassian Cloud Migration Assistant. Starting from version 2.20 ConfiForms will require you to have Atlassian cloud migration assistant installed and updated to latest version https://support.atlassian.com/migration/docs/confluence-cloud-migration-assistant/

    org.springframework.context.ApplicationContextException: Application context initialization for 'com.vertuna.confluence.plugins.confiforms' has timed out waiting for (objectClass=com.atlassian.migration.app.AppCloudMigrationGateway)

Version 2.19.4

  • Hotfix to address issues with incorrect handling of checkbox fields when inline edit mode is enabled

Version 2.19.3

  • Support for enabling auto-delete on form's data when the Confluence page holding the form configuration is (completely) deleted

  • CalendarView now does not collapse/expand events, but show them all in an expandable container. In other words, there is no "+n more events" expandable labels shown
  • Fixed issue with _skipIfParamIsEmpty flag in REST API to update ConfiForms entry (affects both API versions)
  • Fixed possible NPE when space key is incorrectly configured for Configuring ConfiForms IFTTT actions and rules#CreateBlogPost action
  • Optimized performance for issues lookup when using through ConfiForms Jira Issue field

Version 2.19.2

  • Quick fix to address regression issue with edit of "checkbox" type fields

Version 2.19.1

  • Fixed "Redirect to URL" IFTTT (Configuring ConfiForms IFTTT actions and rules#RedirecttoURL) action to work correctly onDelete
  • Fixed Import API to work correctly on "empty cells" in Excel files
  • Improved support for importing "date formatted" values from Excel files (now ConfiForms attempts to convert these values to timestamps to import)
  • Fixed regression issue with "broken" export links
  • Improved "sort" function in Virtual functions to work correctly on ConfiForms entries as well

Version 2.19

  • Improved rendering performance for views using Edit Controls macro (when rendered for form's non administrators)
  • Fixed issue with supporting 0, and 0. values in formulas
  • Fixed ConfiForms Field Definition Rule to set the value on "Jira" field
  • Support for sort and limit parameters in export - Data Export tricks and hints
  • Fixed issue with multiple change handlers set on the form's fields which resulted in multiple rules check invocations
  • Fixed issue on inline edits (whole record) when a view has complex fields and expressions that use the same field (like fields that expose referenced records, when we talk about smart fields or fields with functions and transformations (applied on the same field in one view))
  • Improved rendering of restricted fields. Overall improvements in rendering performance (our tests show 15% quicker results on the same datasets)

Version 2.18.16

Version 2.18.15

  • Exports reworked and new service endpoint (fixed issues with incorrect Content-type served on certain cases) has been introduced

    /plugins/servlet/confiform/export  See updated Data Export tricks and hints

  • Improved support for Web-service backed fields when the choices are given as JSON array (of strings/numbers). Fixed "Apply filter on field" rule and retrieving field values through [entry.field_name] notations from the fields of these types and structures (no mappings for ID field)
  • Formulas are now correctly recalculated on any "quick action" - updates issues via action buttons, adding/removing comments, voting and "quick enrolling actions"
  • Permissions are now correctly verified on anonymized forms that involve interactions with pages/blogposts and attachments
  • Fixed issue with broken support for managing view/edit permissions on blogposts via Remove Page Edit Restrictions, Remove Page View Restrictions, Restrict Page Edit and Restrict Page View
  • Fixed issue with incorrectly added prefix to Confluence server in the contents generated via ConfiForms (emails, pages) that has links which contain mailto:

Version 2.18.14 

  • Improvements in formula calculations (Supported math operators, formulas and functions) to allow numeric values separated both, by comma and by dot
  • Improvements in memory/resources clean up after processing ConfiForms rendering operations
  • ConfiForms Field Definition Rules#ApplyFilteronafield works correctly on web-service fields backed by "array of values"
  • Fixed issue when ConfiForms was looking for the form's configuration page by it's title and was wrongly taking the blog post (when the blogpost had the same title)
  • Support for tooltips in fields (values) - new parameter on ConfiForms Field to enable field descriptions to be rendered as tooltips
  • ConfiForms contents indexer is improved to avoid initiation of transaction rollback on minor cases
  • Fixed bugs with loading and caching of loaded Jira issues
  • Add/Remove page watcher (IFTTT - Configuring ConfiForms IFTTT actions and rules#AddPageWatcher) can work also on pages that have ConfiForms that "allow reads" for users without proper view permissions on the page
  • Fixed issue with DateTimeInterval field when used is sorting, without specifying property (startDate/endDate) to sort on

Version 2.18.13

  • Using new Audit IFTTT action has been fixed to correctly set the "creator" of the audit log entry to be the user who made the auditable change
  • Support for arrays of values in Web-service backed fields (not required to have JSON object as a mappable option, but supports "strings" as well)
  • Fixed bug with filtering by file name when file name contains a comma (,)
  • Fixed bug with ConfiForms Filer Control macro with option set to use date ranges and when a date/datetime field uses custom formatting pattern in the form
  • Bugfix to preserve the "required" attribute on field label when the ConfiForms Field Definition Rules#Setfieldlabel rule is used on required fields
  • Support for [entry.field_name] parameters when contents in referenced through ConfiTemplates https://wiki.vertuna.com/display/ST

Version 2.18.12

  • Fixed ConfiForms CSS Rules macro when applied on the TableViewMerger which is used in "aggregation mode"
  • Improved Import API to support "updates". Select "entryId" as a mapping for your column containing ConfiForms's record internal ID to perform an update on record
  • Making sure the plain view is returned when using "evaluateFormula" formula from Virtual functions
  • Improving rendering performance of page properties - using lazy loading and optimizations for non rich-text values to render quicker

Version 2.18.11

  • Fixed issue with extracting ConfiForms contents via Confluence search extractor when Smart templates and LiveTemplates are used with ConfiForms for contents reuse
  • Fixed double escaping of options in Dynamic dropdown fields (+DB/WS) - when & was escaped and shown and &amp; and so on
  • Fixed issue with updating of radio/checkbox fields that are set read-only via ConfiForms Field Definition Rules

Version 2.18.10

  • Fixed issue: An internal label for EntryViewer was rendered in the TableView/CardView/TableViewMerger macros
  • Fixed issue with custom layouts for EntryViewers
  • Fixed issue with read-only fields (set via Field Definition Rules) and record updates

Version 2.18.9

  • Fixed issue re-saving data in forms having a file field (looses reference to file on re-save)
  • Improved support for Confluence search extractor when Smart templates and LiveTemplates are used with ConfiForms for contents reuse
  • TableViewMerger macro now has a mechanism to safely merge the forms with different structures sharing the same key and when certain fields are of formula field type are used in the result

Version 2.18.8

  • Hotfix to address an issue with individual updates (for fields)

Version 2.18.7

  • Fixed issue with Virtual functions trim/trimLeft/trimRight
  • Fixed issue with rendering an empty option for radio/checkbox group fields backed by the web-service call
  • New option in Formula field to disable formula recalculation on "view" (formula will be recalculated ONLY on record update)
  • Improving caching of WebService field values to improve rendering performance
  • Fixed issues with using Virtual functions on Attachment picker field
  • We have extended ConfiForms Server REST API version 1 to include an endpoint to export RAW datasets
  • Fixed issue with update REST API call in ConfiForms Server REST API version 1 not taking correctly the ID of the entry (+ added support to specify "id" parameter in the JSON payload as "id" (as alias), and not necessarily as "entryId")
  • Performance optimizations in TableViewMerger rendering (specifically when expressions are used and the data is aggregated)
  • Improved support for TableViewMerger macros used inside the ListViews with sources given using dynamically filtered TableViews

Version 2.18.6 

  • Added new feature to "disable page evaluation" against the current record values when using Configuring ConfiForms IFTTT actions and rules#CopyPage
  • New option for ConfiForms Registrations Control (FormView) for "hideIfMatches" parameter to force using the form's dataset with this parameter (even when the macro is used within the other container "view" macro, such as ListView, CleanView, CalendarView)
  • Fixed issue with "Inline add" feature in TableView/CardView when a form has ConfiForms Field Definition Rules
  • Fixed issue with "hideIfMatches" parameter in ConfiForms Registrations Control (FormView) to take correct "record" for matching when used in nested macros (other ConfiForms views). Also improved performance to verify this parameter earlier which results in a better rendering performance
  • Fixed issue with [watchers] keyword that can be used to get form's page watchers and send them email or notification. Also fixed issue with loading "space watchers" into the list of recipients - now space watchers will receive a notification as well when referenced through [watchers] in the ConfiForms IFTTT macro configuration

Version 2.18.5

  • Fixed regression issue with ConfiForms field of "file" type when "fancy input" parameter is selected - now selected file/files are correctly rendered / shown
  • Optimized rendering and loading of Attachment picker field values when used on the view that uses free text search

Version 2.18.4

Version 2.18.3

Version 2.18.1

  • Fixed issue with "hiding the Insight key" parameter not working when used on multi-select Insight field
  • Comment field with "inline comments" mode enabled now respects correctly the "edit restrictions" parameter
  • ConfiForms IFTTT to send emails now support an option to automatically include Confluence CSS styles into the email template
  • Fixed issue with "Copy Page" IFTTT where not a copied page was added to the IFTTT result
  • Fixed issue with applying virtual functions on formula fields (values), on recordId property and on certain cases on hidden fields
  • Performance optimizations for "pageProperties" Virtual functions (especially when multiple page properties are requested from the same page)

Version 2.18

  • Fixed compatibility issues with Confluence 7.4 and lower (Now ConfiForms is again compatible with Confluence version as old as 6.3)
  • Support for PAT tokens in ConfiForms REST API. New version of ConfiForms REST API
  • Fixed CSS styling for CalendarView in Confluence 7.11
  • Fixed use of [unique] as validation parameter in ConfiForms Field Definition macro for formula/calculated field type
  • Experimental support for Import API to perform a lookup by label, when the label is given instead of an ID for key-value fields (dropdowns, checkbox groups, radio group fields, etc)
  • Fixed form definition rules processing error (404) when used within the ListView on a different page (not the same page where the form is defined)

Version 2.17.1

  • Fixed copy the record functionality when the form (with files) is set to use secure storage
  • Confluence 7.10 and 7.11 have introduced incompatibilities with ConfiForms CalendarView which we are trying to solve...
  • Fixed issue with classes conflicts in proxies (affects Jira issue lookups and other)

Version 2.17

  • Fixed issue with setting view permissions via ConfiForms IFTTT to correctly set the inherited permissions on child pages
  • ConfiForms IFTTTs to Update ConfiForms Entry and Update ConfiForms Entries by filter now correctly handle attachments, copying them (creating new versions)
  • New Virtual functions to evaluate formulas and calculating expressions - evaluateFormula
  • queryAndSet function now supports aggregations and expressions
  • Copy entry functionality to copy correctly the fields with attachments (new versions of attachments created now)
  • Fixed issue with configuration of Dynamic multi label fields
  • Fixed issue with Dynamic multi label fields used in ConfiForms Filter macro and when multiple labels were selected to filter
  • Delete attachment IFTTT now respects the settings you can set on ConfiForms Form Definition macro to bypass a requirement for page edit permission when used to upload files (and can delete the attached file, even when is invoked by the user who has no permissions to do so)
  • Compatibility with Confluence 7.11
  • Fixed regression issue with Smart Classifier / DB Smart Classifier not firing "change" event when the selection is made by the user which breaks field definition rules that bound to this field's change events 

Version 2.16.10

  • Fixed issue with extracting properties of file/attachment fields (affected also the filters)
  • Added support for setting placeholders on fields

Version 2.16.9

  • Improved experimental Import API to avoid data double parsing, fixed issues with XLS/XLSX parsing and, as a result, improved performance when importing XLS/XLSX files
  • New virtual function to help with value lookups on ConfiForms IFTTT macros - queryAndSet (Virtual functions)
  • New: support for removing the comments (ConfiForms comment field). And owner of the comment or form's admin now can remove the comment if necessary
  • Fixed issue with WYSIWYG field not firing correctly "change" events that prevented users from setting up ConfiForms Field Definition Rules macros on the field of this type
  • Fixed possible XSS issue when IFTTT executions are set to report in debug mode
  • Improved compatibility with ToC macro and ConfiForms form headers
  • Fixed issue with DB connections configuration exposing database password to admin users unencrypted

Version 2.16.8

Version 2.16.7

  • Fixed issue with setting up the ConfiForms Field Definition Rules macro  to react on the change on the Jira field (+ Jira multi-select, Insight field and Insight multi-select fields) 
  • Fixed issue with incorrect rendering of the contents when action button having a "success message" set is used within the ConfiForms ListView (affects CleanView and CalendarView as well)

Version 2.16.6

  • Fixed NPE with xsrf token generation
  • New feature: you can enable labels "auto align" when form uses custom layout. Same thing described here is done for you automatically

Version 2.16.5

  • Fixed issue with incorrect rendering of Jira fields when used with expressions
  • Fixed issue with rendering of smart fields that reference rich fields via expressions

Version 2.16.2

  • Fixed "Hide if matches" (and "reverse" option) on the ConfiForms Field macro when used in ConfiForms ListView/CalendarView/CleanView. As current workaround for this issue users may use ConfiForms IfMatches macro to have the same rendering result
  • Attachment picker now supports @parent and @self in it's configuration for the page with attachments 
  • Fixed issue with ConfiForms CSS Rules macro when used in ConfiForms ListView/CalendarView/CleanView macro 
  • Hotfix to address an issue with Smart classifier field values rendering

Version 2.16.1

  • Fixed issue when ConfiForms Field Definition Rules use [entry._page] in the filters / lookups and that points at the form's storage page, not at the page where the "form view" macro is located
  • Fixed issue with incorrect rendering of non-latin symbols in user multi field
  • Fixed rendering issue with TableView/CardView where certain fields have dynamically applied view restrictions and views were rendering with gaps
  • Support for Scaffolding Live Templates as a possible source for ConfiForms macros (can load contents from the configured via LiveTemplates target page/template)
  • Improved support for rendering rich contents fields when they are referenced through the smart fields. For example: that means we can render correctly a multi-page field that is referenced through the multi-select smart field (or any other type of smart field) as a nicely looking links to pages referenced

Version 2.16

  • We are starting to implement protection mechanisms agains the XSRF attacks where possible and appropriate (https://developer.atlassian.com/server/confluence/form-token-handling/)
  • Support for variables (via [entry.field_name] notations) in trunc/trim, truncLeft/truncRight and trimLeft/trimRight Virtual functions. Fixed trim*/trunc* functions to work and cut the value correctly
  • Fixed issue with incorrect message encoding when record was updated from "inline edit"
  • Improved support for field definition rules when used in inline modes (including a fix for field's re-initialization after "apply filter" rule was applied)
  • ConfiForms IFTTT to delete entry (and update entries by filter) now supports dynamic parameters for form name and form's page location parameter
  • Fixed issue with transformation of DB- and WS-backed dynamic multi-label fields
  • Fixed issue with complicated expressions involving dynamic parameters referencing other field's value also dynamically. Something like: 
[entry.date.startDate.timestamp.add([entry.periodicy.multiply(86400000)])]-[entry.date.endDate.timestamp.add([entry.periodicy.multiply(86400000)])]
  • Extracting page properties now supports when page property names are given as table headers (not only as 1st table column within TD element, but also could be given as a header, via TH element)
  • Fixed issue with calculation of averages in TableViewMerger
  • Fixed UI glitch when "use as proxy" parameter was not correctly rendered in macro browser in "Webservice Object Referencing Field"

Version 2.15.8

  • Fixed issue with incorrect encoding and escaping of cyrillic/umlauts in validation messages (affects custom validation rules, field definition validation rules/messages)
  • Now explicitly using UTF-8 encoding when serving pages lookups in the results provided by connected web-services (when used via ConfiForms proxy, affects fields that have "proxy" mode)

Version 2.15.7

  • Fixed issue with incorrect rendering of Cyrillic and/or umlauts in form's titles
  • Improved CalendarView to support custom layouts for the dialogs when used to show a "dialog" as "body placement" option (via CalendarView's macro body)
  • Fixed "index out of bounds" issue when form:pageId location is given without "pageId"

Version 2.15.6

  • Now it is possible to override web-service connections timeouts (ConfiForms app general settings)
  • Fixed regression issue in ConfiForms Field labels rendering when used to render field's value with a label i Cyrillic or with umlauts
  • split function from ConfiForms Virtual functions now correctly takes splitting parameter as a parameter and not as a regular expression

Version 2.15.5

  • Fixed issue with use of LIMIT functionality on the view and the restrictions set by Confluence administrators on the max number of records rendered in a view (when the limit is lower than the configured maximum ConfiForms should not report the error)
  • Improved Web-service and database query backed field types to support "proxy" modes and perform dynamic requests to underlying services when necessary
  • Improved support for "Apply Filter on field" action when it is applied on a smart field which references a "choice-based" field, but is set not to have "reference to records" (smile)
  • Fixed double-escaping for field labels (affects field labels having &, umlauts and other non-latin symbols in their values) 
  • Fixed issue with rendering of an auto-number field value when configured to render through a smart field. Now renders correctly the number with configured pattern, not an internal value
  • Improved support of Velocity templates in ConfiForms IFTTT actions to send email/notification and the handling of an inner macros, such as PlainView (with enabled Velocity rendering). 
  • Fixed issue with CSS not applied correctly when defined in ConfiForms Field macro and used via TableView/CardView macro
  • Enhanced support for @parent in parameters that reference form's page

Version 2.15.4

  • Fixed issue with "Lookup and set" action in ConfiForms Field Definition Rules macro that uses "[entry._count]" in parameters
  • Fixed regression issue with Velocity templating evaluation and the field values available context in particular (for empty single-value holding fields (choice based like dropdown))
  • Fixing possible XSS issues in form confirmation and success messages, in field descriptions
  • Improved our internal parser/templating engine when you reference field values via [entry.field_name] notations and when you use functions that involve [ or ] in the parameters

Version 2.15.3

  • Fixed compatibility with Confluence ToC (Table of Contents) macro when used on the page with a ConfiForms FormView (in embedded mode) and H2 is used as a header that constructs the ToC
  • New filed type: Dynamic multi-label backed by a webservice call - allows you to have value lookups against your backend systems and store multiple matching results (supports "as proxy" mode, allowing you to query your backend service dynamically)
  • Unlimited number of pages can be used for TableViewMerger macro sources (when discovered dynamically via CQL)
  • New configuration panel to help you to overview the number of pages having ConfiForms Form macros (form configurations)

  • Fixed context filling logic when PlainView is used to evaluate own macro body as a Velocity template
  • Enhanced support for ConfiForms Field macro's "filter" parameter to work in inline mode (inline edit and inline individual edit)
  • Fixed security issue with Markdown field when rendering a markup that contains links (now sanitising links that are considered harmful (executing JavaScript, for example)) 
  • Improved export functionality to support custom "headers" in exported CSV/Excel files - see more on Data Export tricks and hints ("headers" parameter) 
  • Fixed issue with rendering of certain ConfiForms views (MatrixView at the moment) that dont support "paging", and the paging limit was set by the administrator (and records number per view exceeds the limit)
  • Added support for paging in PlainView and in CleanView macros
  • Improved support for [entry.fieldname] notations that use functions that have [ or ] as parameters (For example: [entry.f1.replaceWith([,”).replaceWith(],”)])

Version 2.15.2

  • Fixed inline search for ListView
  • Implemented a workaround for the issue with ConfiForms content extractor on Confluence 7.x. The issue seems to be with Confluence itself, as when ConfiForms extractor is enabled the text files stop being indexed and searchable. 
  • Fixed issue with ConfiForms IFTTT to create new entry and transfer record "ownership" to new owners
  • Fixed issue with auto-focusing on the 1st form's field when ConfiForms FormView (in embedded mode) is used no matter if the option to set "auto-focus" is used or not
  • Fixed JS issue with initialization of "Copy record" function when Edit Controls are used in compact mode and with dialog mode
  • Fixed issue with ValueView when it is set to aggregate values with defined custom field label and "show with label" parameter is enabled 
  • New "view" macro for ConfiForms - MatrixView. Convenient way to show grouped and filterable data to your users.
  • Fixed issue with file preview when attempted to open from the ConfiForms dialog window. Now the file is downloaded instead (as Confluence file preview functionality seems to be not working correctly for consecutive openings, and fails to open a file for preview on second and further attempt)
  • ConfiForms IFTTTs to add/remove the watcher, add/remove restrictions and "page reindex", now correctly take the "form's content page" when no page is set in parameters
  • Fixed NPE in TableViewMerger macro when flatting is used on smart fields that reference deleted records
  • Fixed styling of a "required" attribute on fields when used in custom layouts

Version 2.15.1

  • Quick fix to address the issue of rendering <div> wrapped field values to be rendered as inline <span>, so it works nicely with customer templates using ConfiForms data
  • Fixed issue with inline edit when the result of the edit should run a custom user JavaScript (defined via ConfiForms IFTTT handler). This is now supported

Version 2.15

  • New IFTTT action to "Copy Page" and that includes the whole hierarchy if necessary! Created pages can be dynamically named and processed through the "record" they were created from. That allows you to create a truly dynamic copy of pages from a given page tree or single page
  • Parameter "_skipIfParamIsEmpty" in ConfiForms REST API now works this way that if the field is not supplied as parameter it takes the default (or existing value for the field, in case of update)... but if it is present then it takes the value given in the parameter for this field
  • Fixed inline edit for WYSIWYG field when it contains certain "HTML" tags. This required us to change the values output from wrapping it in "<span>" into wrapping it in "<div>". So, you have some very custom scripts that were relying on something like span[id^='i_holdingrow_']  you will be required to update those to be something like div[id^='i_holdingrow_'] . This only affects you if you have a lot of custom scripting and customizations around the output generated by ConfiForms
  • Fixed issue with "comments" field incorrect value escaping
  • Fixed avatar CSS styling when user/multi-user field value is shown in ConfiForms views
  • Fixed issue with TableViewMerger counting incorrectly on configurations where "count_" is used and fields used as parameters for calculation expressions
  • Improved support for Jira/Jira (multi-select) in ConfiForms Filter macro
  • Improved rule "Apply filter based on criteria" to support matching against multi-value fields
  • Fixed issue with web-service backed fields which use JSON which has field names with underscores (like "sys_id", "account_id", etc). This has resulted in incorrect value lookup for "empty" fields via [entry.field_name]
  • Fixed export to Excel to truncate field values that are larger than 32K (string cell in Excel can store the value of 32767 characters max)

Version 2.14.4

Version 2.14.3

  • Inline edit for fields improvements, including the fix for the inline editor rendering for edit restricted fields + fixed rendering of the fields with labels with enabled individual edits
  • Fixed issue with "comments" field not updating UI after the comment has been added by the user
  • Fixed security issue exposing passwords to hidden HTML element in plugin administration UI when configuring connections to external systems and databases
  • Improved support for printing the forms when custom layout is used for the form and a user has multiple views over the same form using custom layouts for "edits"
  • Fixed issue with detailed panel rendering in a CalendarView when used [entry.field_name] notations
  • Fixed ConfiForms IFTTT to add/remove page watchers to support "silent mode" and not to report and error when the option is set and the error occurs (most often a user permission error occurs)
  • Now the parameter "Reply-To" in ConfiForms IFTTT with action set to "Send email" supports dynamic variables (via [entry.field_name] notations)
  • ConfiForms IFTTT macro with an action set to "Update entries by filter" now supports and option to "not to trigger" update events on the updated entries/records
  • Improved "hasChanged" function to work correctly on new records. Now a property that has other than null/empty value is reported as a changed value for new records

Version 2.14.2

  • Improved Formula re-calculation on "view" when it uses reference to [entry._now], [now] or [entry._today]
  • ConfiForms IFTTT to remove labels now accepts a wildcard to support removing all page labels at once
  • ConfiForms IFTTT to copy attachments now supports associating the field with it and associating copied attachments with this field (supports file/attachment picker fields as storage)
  • Fixed issue with AUI tabs rendering in ConfiForms configuration screens in Confluence 7+, https://confluence.atlassian.com/confkb/aui-tabs-do-not-render-properly-on-confluence-pages-1021236940.html
  • Fixed issue with ConfiForms TableViewMerger and pure "count" operations. When [count] or [total] is used solely, without any other field reference / formula 
  • Fixed issue with rendering the empty value for the attachments field
  • New: support for "pre-setting values" when "inline add" for the view is enabled. This allows to add new records to the "inner view" inline with a preset references for fields connecting it to outer view 
  • ConfiForms IFTTT to send emails now supports setting "Reply-To" header

Version 2.14.1

  • Fixed export for "audit" forms (Using new Audit IFTTT action)
  • Fixed issue with "double dashes" in the responses or templates (when Velocity templating is enabled)
  • Improved virtual functions: "replaceWith" and "asFilteredBy" to support dynamically looked up parameters (via [entry.field_name])
  • Fixed issue with attachment deletion when ConfiForms dataset has incomplete reference to the Confluence attachment or attachment was removed earlier (by user, using Confluence built-in functionality)
  • Fixed issue when showing a smart multi-select field is used to reference another multi-value holding (such as "File/Attachment")
  • Function to "replaceWith" supports now dynamic parameters (given via [entry.field_name])
  • Function to "asFilteredBy" supports now dynamic parameters (given via [entry.field_name])
  • ConfiForms Registrations Control (FormView) macro could be set to hide the "metadata fields section" by default (Why do I see an extra button with + sign on my form and ownedBy field), via macro parameter
  • Improved support for rendering PlainView macro contents as Velocity template in the area of the available context variables
  • Improved calculations of totals and formulas involving "[count]" when used in TableViewMerger

Version 2.14

  • New function to help with customization of the output for multi-value holding fields - iterateAndPrint . See more on Virtual functions
  • Added configuration option to hide the key when showing options for Insight objects
  • Added global setting to "disable" the option to "Allow data reads even if a user does not have read access on the page". This allows you to ensure that the forms follow Confluence permissions model very strictly, with no exceptions
  • Comments field now reports errors in a more user friendly way (if any)
  • Fixed content type to JSON when REST API to save/update entry is used REST API#Createentry
  • Fixed bug with "Reset value" rule when applied on Datetime interval field
  • Added virtual function to support formatting with regular expressions: formatToPattern . Useful for formatting numeric values as phone numbers: Virtual functions
  • Fixed issue with _count variable when used in IFTTT/Field Definition Rule in a condition (was incorrectly set to 1, instead of actual records count in the filter)
  • Fixed issue with double quotes in values when used in ConfiForms Filter macro or in dynamic dropdown field
  • New virtual function to help with content rendering (when the value is actually a storage format) - storageToHtml

Version 2.13.9

  • Fixed issue with dynamic dropdown field lookups (this includes text fields when used in a ConfiForms Filter Control macro)
  • Fixed issue with multi-select fields that return IDs when used through the smart fields or have been updated through the "asList" functions (IFTTT updates)
  • Fixed small UI bug with setting up the "date" field type in user's timezone (an option remained unchecked when edited again)
  • Improved Import API support for CSV files having the quotes around values having commas
  • Support for Velocity templating in PlainView macro (if is enabled by your Confluence administrators)

Version 2.13.8

  • Fixed issue with a missing conversion of a date/date time value when used through the timezoneAware* function with formatting pattern
  • Fixed issue with applying filter on a web-service backed dropdown (or other choice enabled) field when the field definition sets something else that "id" column as a mapping for the "id" field
  • Fixed issue with setting multi-select fields from another multi-select fields value (using transform.asList and functions alike)
  • Improved support for CSV files import when data in CSV has quotes
  • Added option to bypass the page restrictions when a form attempts to upload files on secure pages by the user who has no permissions
  • Fixed issue with configurations of the options for choice-based fields where the options were incorrectly sorted alphabetically each time you are editing them
  • You can now configure the app to bypass page restrictions and allow attachments (including IFTTT to "create attachments") to work for users who have no edit permissions on the page. This is a global setting. You can always leave defaults as is and set the same option on the form directly.

Version 2.13.7

  • Fixed issue with IFTTT to move/copy attachments when attachments to copy/move has been given as an expression using transform(id).asList
  • Default character in Import API for "quote char" is now ", to make imports from CSV easier (and work with defaults)
  • timezoneAware* functions now accept formatting patterns Virtual functions

Version 2.13.6

  • Fixed "Update specific field" REST API (REST API#Updatespecificfield) to correctly handle dynamically set restrictions (when a restriction is set based on the value of other field) 
  • New ConfiForms IFTTT rule to set revision tag on a page. Sometimes it is necessary to update the page's storage format when the data in ConfiForms changes in order to trigger other processes that might be bound to the page change/update events
  • Improved support for _count in the filters (now dynamically recalculated each time the condition is applied to the dataset being filtered)
  • Fixed issue with processing of collections operations (asArrayMultiSelect, asArrayMultiUserPicker and others)
  • Fixed issue with incorrect escaping of the values (HTML escape)
  • Fixed issue with "Apply filter on field" action to correctly process values with &
  • Possible to change the number of IFTTT actions executed per request (ConfiForms app configuration)
  • Fixed minor issue with incorrectly outputting the mapping for the WS service
  • ConfiForms Form Definition macro now supports the setting to bypass a requirement for page edit permission when used to upload files (you can set the page to have view permissions only + the users should be allowed to add attachments (in general))
  • Improved Import API to better handle numeric values when imported from Excel
  • ConfiForms fields for date/datetime, datetime interval and timestamp now support entering the value in user's timezone (with auto-conversion to server time)

Version 2.13.5

  • Fixed issue with comment field with enabled inline adding mode reporting a permissions error when used by form's non admin users
  • Fixed issue with "apply filter on field" action when used on smart fields and on database fields
  • Better discoverability of the forms when used in Confluence templates (editing in Confluence editor)
  • Strong verification of user permissions when a file is to be attached - a user must have permissions to attach files and must have view permissions on the page where the form is defined
  • ConfiForms now publishes internal ConfiFormsDataChangeEvent that can be "listened" by other plugins to receive information about data changes in the forms
  • Adding special styles to hide the contents when it should be hidden when sent via email and opened in Microsoft Outlook
  • Improved rendering performance of fields that are using complex expressions / transformations (short time caching)
  • Improved rendering performance of field values in read-only mode (in views, especially CardView and TableView)
  • Fixed issue with ConfiForms Edit Controls used in Card/TableView by non admins but with enabled "copy entry" mode
  • Improved Jira issues lookup to search by project and by key (any Jira issue key is supported, not only the standard)
  • Fixed silent mode support for delete/copy/move attachment IFTTT actions
  • New virtual function to help with datetime conversion between timezones - see Virtual functions and convertDate function
  • Fixed issue with IFTTT that send emails and the view having a field of "comment" type with enabled inline comments (no extra buttons are rendered)
  • Grouping key parameter support for ValueView macro (same usage as in TableViewMerger where you define keys and expressions, to group and to calculate)
  • Fixed issue with ConfiForms Filter macro not resetting selection from radio/checkbox group fields

Version 2.13.4

  • Fixed issue with filtering of multi-select fields for pages, Jira issues and Insight objects
  • Fixed issue with "Apply Filter on Field" action when it is applied on a web-service backed field which has custom mapping for ID field
  • Fixed issue to render HTML correctly when used through the smart fields as a labels to choices (checkbox / radio group fields)

Version 2.13.3

  • Fixed issue when ConfiForms Field Definition Rules macro with action to "apply filter on field" was incorrectly filtering options that reference a smart field but with an option to "reference to records" left unchecked (when referencing values)
  • Fixed issue with showing HTML rendering fields through smart fields in views (incorrect escaping)
  • Fixed inline edit for ConfiForms Jira fields
  • Improved rendering of Jira, Insight and multi-select fields (easier to style with unified CSS now)
  • Loading Insight objects can now be set to load in up to 5000 objects per request
  • Fixed regression issue with functions applied on multi-select fields
  • Fixed issue with incorrect sorting of fields to load in Smart Classifier field editor

Version 2.13.2

  • Fixed issue with virtual functions transforming values as user objects
  • Fixed issue with rendering complex expression on a non-text fields
  • Support for evaluating email subject as Velocity template (in IFTTT macro that send email), if velocity templating is enabled in global configuration for ConfiForms app
  • Fixed support for presenting the date/datetime values in a specific timezone (Virtual functions for formatDate / jiraDatetime)
  • Adde "timezoneOffset" virtual function to determine the offset between user's time and server time
  • Added "htmlToWiki" virtual function to convert HTML into an Atlassian wiki markup
  • Fixed possible security issue with using #evaluate with Velocity templates (if velocity templating is enabled in global configuration for ConfiForms app)

Version 2.13.1

  • Fixed issue with "Move Page" IFTTT when moved from "under a restricted parent page"
  • Fixed issue with incorrectly escaping non-latin symbols in checkbox/radio group labels
  • Improved support for HTML producing Virtual functions (to avoid escaping and double escaping)

Version 2.13

  • Support for timezones in formatDate and jiraDate/jiraDateTime functions. See more Virtual functions
  • Fixed issue with calculations of currency fields
  • Fixed regression issue with file name validation (regular expression)
  • Fixed possible XSS issue with value transformed with a non-html producing function(s)
  • User key is now available as user object property Accessing field values and properties
  • Support for setting up default sender for ConfiForms IFTTT that sends emails (in app configuration for all emails sent via ConfiForms)
  • You can now restrict the sender in ConfiForms IFTTT emails to be only the current user (unless this is overidden by default sender, see above)
  • You can setup ConfiForms (app configuration) to ensure the values are always escaped (after transformation) to prevent possible XSS issues
  • Fixed issue with setting datetime interval field values in IFTTTs that copy/create records
  • Improved WebService request IFTTT action to handle better POST/PUT and PATCH methods that have no body
  • Improved support for setting up field definition rules for datetime interval fields
  • Support for "limitFields" parameter in REST API when searching for ConfiForms records
  • Fixed issue with inline edit / quick action when the modified row was by a mistake rendered in a wrong place (inside the success message)

Version 2.12.4

  • Fixed regression issue with attachments storing when use secure storage
  • Improved support for conversions between user's timezone and server timezone - using new Virtual functions called "asUserTimezone"

Version 2.12.3

  • More fixes for ConfiForms rendering when forms are rendered through/by Comala plugin
  • Fixed regression issue with value auto-transformation to JSON (when the value was detected as JSON).

Version 2.12.2

  • Workaround for incorrect rendering of ConfiForms forms by Comala plugin, when rendered via "public/" url
  • Improved support for merging action buttons in views (table/card)
  • Auto renaming of uploaded files (new option for File field type)
  • Fixed issue with ConfiForms Entry Viewer macro when used stand alone (without ConfiForms Edit Controls macro) on TableViewMerger

Version 2.12.1

  • Fixed regression issue with dynamic filter macro not properly finding the appropriate view on certain conditions

Version 2.12

  • Experimental service for Jira issue fields discovery to help you with ConfiForms to Jira mappings to create Jira issues

For discovery service documentation

/ajax/confiforms/rest/jira-issue-mapping.action

Examples:

For web service connection

/ajax/confiforms/rest/jira-issue-mapping.action?webServiceId=a4c253e1cc9d7534f136279e03de444d&projectKey=JTEST&issueType=Story

For applink

/ajax/confiforms/rest/jira-issue-mapping.action?applinkName=MyJira&projectKey=JTEST&issueType=Task
  • Extending ConfiForms REST API to create/update the record to accept field values as a JSON payload
"fields": {
   "field1":"field value",
   "field2": "2020-04-25"
}
  • Fixed issue with comment field tracking the user when the form is set to capture input in anonymous mode
  • Support for "code" macro in IFTTT that create/update Jira issue or make web service requests or requests through the applink service (in addition to "no format" macro you can have your JSON/XML payload in "code" macro)
  • Support for "sort" Virtual functions to sort the collections if necessary
  • Support for "add" function in collections (when applied on values of a multi-value field)
  • Fixed issue with paged view in TableViewMerger when data is also aggregated (the feature was working only when the data was aggregated, not merged)
  • Integration with Riada Insight is redesigned and has an optimized performance. Support fro lookups in Insight multi-select field
  • Issues and insight objects are now loaded in batches and you can control the size of a batch (request) in ConfiForms app configuration
  • Reduced caching time in content extractor for ConfiForms data used by Confluence search to build a search index 

Version 2.11.2

  • Improved performance of ConfiForms content extractor even further to skip faster pages that dont have ConfiForms data to index
  • Improved logging to reduce false "error" level logging when a log entry is supposed to be a "warning" or even a "debug"
  • Fixed concurrent modification error in content extractor (Confluence search for ConfiForms)

Version 2.11.1

  • Fixed security issue with Velocity templates evaluation when using a specifically crafted instruction you were able to get to JVM runtime object
  • Fixed security issue with IfMatches macro, when a filter set as velocity expression was not verified as it should be and could be made harmful
  • Support for [iftttResult_] expressions to access the result of an IFTTT action (meaning that ${iftttResult_0.id} can be safely replaced with [iftttResult_0.id]). This also works when Velocity templating is completely disabled in the plugin settings

Version 2.11

  • More fixes on Mindville Insight integration and compatibility with latest Insight version. Now objects by object type are correctly and successfully loaded
  • Fixed minor issue with Import API when importing from Excel files (quoting char parameter shall be ignored, as this makes no sense when importing from Excel files and is only for CSV)
  • When a secure storage is used in a ConfiForms Form then on record delete we now attempt to remove the associated "secure storage" page
  • Fixed issue when evaluation message was also shown for properly licenses app with demonstration/open source license
  • Fixed issue with import from Excel 2007+ (incorrectly reading input file on certain cases)
  • Fixed issue with Add/Remove page label and setting up the result into "IFTTT result", as per documentation Configuring ConfiForms IFTTT actions and rules
  • Fixed IFTTT to move page to another space when the page has the same title as existing page the destination space
  • Improved performance for ConfiForms search indexer (allowing ConfiForms contents to be searchable via Confluence API)

Version 2.10.15 

  • Compatibility with Mindville Insight version 8.4 for the REST APIs they have silently removed (even though it is versioned...)
  • Case insensitive option support for filtering for "Validate uniqueness" rule
  • Autonumber fields are removed from audit forms as they show a totally incorrect information - not related to the actual form's field (see more on audit forms Using new Audit IFTTT action)
  • Fixed issue with form's admin view when Confluence administrator has set limit on views
  • Improved free text search on multi-select user fields to include search by full name when a parameter to enhance free text search is set on views macros

Version 2.10.14

  • Quickfix to address issues with JavaScript disabling the submit button on forms with rules

Version 2.10.13

  • Fixed issue with incorrect logic applied on pager when an administrator has set limits on the views in ConfiForms configuration

Version 2.10.12

  • Fixed NPE when a notification is to be sent for the page with a form created via another another ConfiForms form (smile)
  • Fixed issue with multi-user field not correctly working in notifications for accounts having an email as a user name
  • Improved reliability of this experimental service Using Excel files as sources for ConfiForms fields
  • Fixed "autofocus" on forms having "on load" rules

Version 2.10.11

  • Fixed issue with ConfiForms Registrations Control macro's confirmation message braking the script flow when it has some unescaped characters

Version 2.10.10

  • Fixed issue with ValueView macro showing internal data into the output

Version 2.10.9

  • Regression issue with "Apply filter on field" rules when complex filters are used (rich text fields involved)

Version 2.10.8

  • Possibility (for administrators) to enforce limits on views created by users

  • New flag to bypass the read-only setting in Confluence and force ConfiForms to work

  • You can now turn off the limits on "records flattening".  We strongly advise you not to turn this off, as this may impact your server performance drastically. 

  • All macros are now streamable and designed to buffer as less as possible - reducing memory footprint when rendering
  • Experimental API to help with creation of mockup views for the forms with lots of fields. You can create the following views automatically (all field definitions will be added as fields into the created view)
    • ListView
    • CardView
    • TableView
    • PlainView
    • CleanView
    • FormView (Registrations Control)
http://YOUR-CONFLUENCE-SERVER/ajax/confiforms/rest/create-page-with-view.action?pageId=<PAGE_ID>&formName=<FORM_NAME>&viewType=form-view

pageId - where the form is located
formName - name of the form
viewType - type of view to create (list-view, card-view, table-view, form-view, plain-view, clean-view)

Optional parameter:
withLabel - true or false, to tell the service to render the field with a label
parentPageId - custom page to use as parent page (by default the page is created under the page were the ConfiForms form is)
  • Fixed issue with form printing when "print editable fields" option is enabled on the form. 

Version 2.10.7

  • Enhanced support for "grouping field" in the CalendarView - much more flexible and does not require to be "date/datetime/timestamp". Enough is to have a field value that can be "translated" into a timestamp
  • Support for accessing "Page Properties" through "pageProperties" virtual function Virtual functions
  • Enhanced configuration for checkbox fields behaviour in ConfiForms Dynamic Filter (allowing you to set the filter to work only on "inclusion" when checkbox is set)
  • parseDate now can be set to work with default format (configured in your Confluence instance)
  • [watchers] now take also space watchers into account (not only page watchers)
  • Fixed issue with ConfiForms Field Definition Rules with parameter "on user action only" set was applied incorrectly on form load

Version 2.10.6

  • Fixed issue with incorrect result set into IFTTT when the IFTTT to create an entry is used
  • Fixed import of multi-value fields in import API for multi-select field
  • Fixed issue with sorting of a smart field choices after the rule with action "apply filter" has been used

Version 2.10.5

  • Filtering of SimpleDate fields fixed
  • Ensuring support for "whitelisting" - https://developer.atlassian.com/server/confluence/secure-your-macro/ (you have to enable whitelisting enforcement in the ConfiForms app settings)
  • Fixed regression issue with a pager in views when a view has default filter set
  • Experimental support for stored procedures in ConfiForms IFTTT / Copy to DB action

    {call procedurename([entry.field1], [entry.field2])}

    Note that stored procedures in PostgreSQL shall be called via CALL, and without wrapping into {}. As input parameters we support only string types (CHAR, VARCHAR) at this point

Version 2.10.4

  • Fixed issue with inline edits and forms having the default / preset values configured
  • Fixed issue with ConfiForms Edit Controls ignoring the "reverse" criteria when used in TableView/CardView macros
  • Improved form UI initialization when show/hide container rules are present in form's configuration
  • Improved UI and performance in Import API

Version 2.10.3

  • Fixed regression issue with missing "_previousState" in "ConfiForms Rules for Field Definition" processing
  • Fixed issues with IFTTTs involving work with user accounts which match the emails
  • API level compatibility fixed to support Confluence 6.0.x/6.1.x
  • Fixed issue with ConfiForms PlainView rendering "escaped" opening and closing tags (when set)
  • Quickfix to address regression issue with inline edits

Version 2.10.2

  • Added new field type - "Database Dynamic Multilabel". Also supports proxy mode to allow online lookups as the user types. See related Using use proxy setting in dynamic dropdowns (but consider having an SQL query that returns only unique labels, as only this (label value) will be stored in ConfiForms)
  • Fixed bug with ConfiForms IFTTT macro that creates new records and the form has defaults set for "new records" (which were interfering with "create entry" action)
  • Fixed issue with incorrect reporting of IFTTTs execution order  with IFTTTs that create/update other forms and those in order do some other IFTTT actions. Now the execution order shall be correctly reported. Please note that incorrect was only the reporting, not the actual actions execution order
  • Fixed issue with "Action buttons" and CSS Rules macro (was not able to style this field type with the mentioned macro)
  • Now form views dont steal the focus when used in embedded mode (this is configurable now with "autofocus" parameter in ConfiForms Registrations Control / FormView macro)
  • Fixed issue with comments rendering in the email (to not to render "+" button when the field has inline comments enabled)

Version 2.10.1

  • Rendering performance improvements for restricted fields
  • Removed "flattened" export due to the risks of producing OOM errors on the forms that have multiple multi-value fields and many records
  • Improvements in export data functionality to use streaming and less buffering
  • Improved rendering performance of ConfiForms Edit Controls when used with parameter "hide if matches"

Version 2.10

  • Fixed bug with ConfiForms Rules for Field Definition macro when "Apply filter based on criteria" action is used
  • Fixed issue with ConfiForms Filter macro applied on a view having a default/initial filter set (and filter does a search with an empty filter)
  • Add/Remove watcher IFTTT is now more robust and handles correctly misconfigurations (missing pages / incomplete parameters)
  • New Virtual functions to help you with rendering of a contents from another form inside the view of your form. The function to do that is called queryAndRender

Version 2.9.6

  • Fixed permissions checking for the IFTTTs that work with attachments
  • Improved support for parameters in database statements when executed through IFTTT (correctly handling empty/null values, fixed issue with incorrect types)
  • Fixed issue with versioning in IFTTT to copy attachments
  • ConfiForms FormView can be rendered as link now (in addition to "Button" and "Embedded" modes)
  • Fixed NPE when ConfiForms Forms macros are used on Confluence templates (in preview)

Version 2.9.5

  • Fixed issue with ordering of items when used through the smart field and "reference to records" is unchecked (and no sorting is selected)
  • Fixed issue with incorrect rendering of the comment's content when it has new lines
  • Fixed issue with ConfiForms EntryViewer when rendered as link to avoid "jumping" to page's top on click 
  • New Virtual functions to help with SQL parameters escaping if you ever need that - escapeSQL. And 2 functions to help with showing the choices registered in the options-based field, such as dropdown, radio/checkbox groups and other single and multi-select fields: getOptions and getUnselectedOptions
  • Improved support for parameters in Copy to database IFTTT rules, see CRUD - Simple demo to show how to setup ConfiForms to save data to database table (alternative storage)
  • Fixed regression issue with _count variable when checking in IFTTT conditions
  • Fixed security issue with IFTTT actions to remove/add page permission not checking current user's own permissions for the operation 

Version 2.9.4

Version 2.9.3

  • Compatibility issue with file preview when used to point at a file in a secure storage (in recent version of Confluence only (7.x))
  • Improved support for datetime interval fields in Import API (now accepting dates given in the format that contains "-", and " - " shall be used as separator for such values)
  • Fixed regression issue with content indexing of ConfiForms data

Version 2.9.2

  • Flatten records in TableViewMerger macro will work now for all the fields, not only when given in a simple form
  • Improving expression evaluations to work correctly with inputs given with "0" prefixes (not to take these as numbers for any function supported loosing the leading zeros)
  • Usability improvements in how the resources requiring oAuth authorization from the user are handled
  • Improvements in filtering to support complicated expressions and transformations on the "left side" of the filter expression
  • Support for [contributors] expression to get the list of page contributors to send emails / notifications with ConfiForms IFTTT
  • Fixed issue with attachment(s) copy when used through ConfiForms IFTTT action to copy ConfiForms entries
  • Improved support for ws/db backed dynamic dropdowns using proxy mode and ConfiForms Field Definition Rules with action to "set value"

Version 2.9.1

  • Transposed view for TableViewMerger macro
  • Fixed issue with "Hide if matches" parameter when used on a ConfiForms Field inside the TableViewMerger macro
  • Fixed regression issue with ConfiForms Filter macro rendering

Version 2.9.0

  • Fixed performance issue with Confluence indexing when forms using web-service and/or database based fields
  • Rendering performance and memory consumption improvements. Less buffering while rendering, results are now streamed to clients a lot faster and earlier
  • Fixed issues with import API used with XLS/XLSX files
  • Improved export to Excel to export non-numeric data stored in "numeric" fields as text values
  • Fixed issue with inline edits when the view macro is set to reference a form on a parent page via @parent 
  • ConfiForms EntryView now support a parameter to allow JavaScript function to be called on "view" for deeper integrations 
  • Improved extensibility of ConfiForms to customize printed form's UI


function onCFBeforePrint(content) {
}


You can override it for example like this

onCFBeforePrint = function(content) {
   alert('The form is about to be printed with the following contents: ' + content.html());
}


Version 2.8.3

  • Fixed issue with incorrect focus on the form when form has rules
  • New service to help with data migration (part of Migration Assistant). Helps to analyze what is stored under page/multi-page/attachment picker and file field types in ConfiForms

Helps you to see what version of the attachment is used by ConfiForms record, what page is referenced and it's internal IDs and attributes

/ajax/confiforms/rest/storage-details.action?pageId=819201&formName=f&fieldName=mypage

- pageId: where the form is defined
- formName: name of the form
- fieldName: (optional) to limit the output to analyze only the specific field and it's data

  • Improved support for form's having their names in non-latin characters (not recommended, please try naming your forms using latin characters with (or without) numbers)
  • Introducing "Migration Assistant" - experimental feature to help you with data migration between different servers, and fixing the "broken" references to external resources (pages/blogposts) and files

Option needs to be enabled in the app's general settings first and then can be accessed from any form's Admin UI



Version 2.8.2

Version 2.8.1

  • Performance optimizations to render "link", "attachment" and autonumber fields quicker
  • More strict validations of IFTTT configurations (not allowing certain IFTTTs to have inner IFTTTs, as it is simply incorrect)
  • An option to disable ConfiForms IFTTT macro body parsing as Velocity template (ConfiForms plugin configuration)

Version 2.8.0

  • Fixed issue with missing auto-number field value when exported to CSV
  • Improved export to non to include "action button" field into the output
  • ConfiForms IFTTT Integration Rules macro with action to "Delete ConfiForms entry" (by filter) now supports the parameter to bypass record ownership and permissions and still delete the record
  • Improved free text search for autonumber fields
  • Fixed issue with showing "view restricted" fields of certain types under certain configurations
  • Fixed issue with not working "inline add" enabled for CardView
  • Improved inline edit for the views when incorrect (non existing) field names are configured in the views
  • Fixed issue with ConfiForms IFTTT rule to remove View/Edit permissions on the page
  • Fixed issue with TableViewMerger and inline search, when TableViewMerger has own filter initially set
  • Fixed NPE in wiki-markup version of ConfiForms Registrations Control (FormView) when used with evaluation license

Version 2.7.5

  • Backported support for ConfiForms version 1.x syntax when setting field's values to support spaces around & (like field1=value1 & field2=value2) ← strongly not recommended to use, but is supported for backward compatibility

Version 2.7.4

  • Enhanced ConfiForms free text search to include "rich properties" into the index. This needs to be enabled in the corresponding "view" via the following parameter

  • Fixed issue with "inline add" for form's non-admin users
  • Fixed issue with links to images inside IFTTT macro body when link is given to embedded image

Version 2.7.3

  • Hotfix to address issues with Confluence 7 changes in content indexing

Version 2.7.2

  • Improved indexing of ConfiForms contents, specifically "rich properties" fields (searchable via Confluence search)

Remember that you need to allow export and search on your ConfiForms Form (Definition) and you form shall not be set to shown only own records to non-admin users. Also you shall have ConfiForms views built over your form. As Confluence search index is disconnected from ConfiForms data then you need to make sure you inform Confluence about the need to reindex the contents - This can be done with the help of ConfiForms IFTTT Integration Rules macro with action set to "Force page to reindex". Please be aware that this action only suggests Confluence indexer to index the page, and actual indexing might take a while to start and complete

Version 2.7.1 

  • Fixed issue with Edit Controls macro inside the ConfiForms CalendarView when placed on a separate page
  • Improved TableViewMerger "flatten records" to correctly transform multi-value fields, such as Jira multi-select, User multi-select, Insight object multi-select to single value fields of the respected types
  • Improved support in ConfiForms Rules for Field Definition macro with "Validate" action configured for multiple fields at once
  • Fixed regression issue with user lookup (in ConfiForms user fields) 

Version 2.7.0

  • New feature to support proxying the requests in Dynamic dropdown (database and web-service) - this feature dramatically improves the performance (no need to preload the data) and helps you to integrate external services that provide "lookup functionality".  See tutorial on Using use proxy setting in dynamic dropdowns

Version 2.6.1

  • Improved support for parsing form's configurations from user macros 
  • New Field Definition Rule to help with setting custom label on a field, conditionally
  • New IFTTT action to generate new sequence number based on the rules/filters you set - please note that this is an experimental feature and is not yet suitable for use in highly concurrent environments (could generate duplicates)! Configuring ConfiForms IFTTT actions and rules#Generatenextnumber
  • Improved validation rules support in quick actions, quick enrol and quick vote
  • Usability improvements in quick voting control (field type)
  • Improved date/date time fields robustness when incorrect formatting pattern is set

Version 2.6.0

  • Fixed issue with attachment links generated by ConfiForms file type when attachments are stored not on the same page as form definition
  • Fixed issue with edit/view controls macros when used with TableViewMerger macro
  • QuickEnrol (enrol button) and QuickAction (action button) now support field definition rules (previously form definition rules were bypassed by these fields during action processing)
  • Better usability in "comment" field - comment input box is closed after comment has been added
  • New "obscure" function to help you with masking the contents of a field when viewed on the page
  • ConfiForms CardView supports "transpose" view (experimental) 

Version 2.5.2

  • Improved automatic audit logging via IFTTT "Audit" action to include _event field, see Using new Audit IFTTT action
  • Fixed issue with quick enrol and "Enrol button" field type to update correctly the corresponding element

Version 2.5.1

  • New field type to accept and render storage format (as input)
  • Improved handling and reporting of broken field definition rules
  • Improved record locking to lock for a shorter time to improve performance
  • Improved support for complex configuration having different Registrations Control (FormView) macros referencing the same form on the same page
  • Fixed issue with inline row edit and JavaScript error on "enter" to save the record
  • Support for "remove" function (Virtual functions) to accept dynamic parameters (via [entry.field_name])
  • Fixed issue with "replaceWith" function (and general expressions parsing) when used to replace ( and/or ) as parameters
  • CleanView now supports additional parameter to help you to wrap the rendered contents into a wrapper (html, div) - similarly to PlainView

Version 2.5.0

  • Fixed issues with filter expressions using filtering by field together with free text filters (like field:some value AND active*)
  • Fixed issue with attachment links generated by ConfiForms field of type "file"
  • Improved ConfiForms CSS Rules macro to support expressions in conditions to match against the data in current record
  • Fixed issue with "reset" button behaviour in ConfiForms Filter macro having additional criteria set and applied on a view with pre-set filter expression
  • Improved logic for handling concurrent requests on form data inserts

Version 2.4.1

  • Hotfix to address issues with use of Confluence search API to discover form sources dynamically (via CQL)
  • Fixed issue with ConfiForms Field Definition Rules not setting/resetting the value for the "comment" field
  • Fixed issue with ConfiForms Field set to disable inline edit when a ListView/CleanView (already supported by TableView/CardView) is set to enable individual edits (the parameter has been ignored and it was not possible to override the view's setting per form's field - now it is possible)

Version 2.4.0

  • Compatibility with Confluence version 7.0
  • Fixed issue with filtering of multi-user fields (including voting control)
  • Fixed issue with field definition rules (set/reset) applied on field of type "Simple Date"
  • Fixed issue with form's data indexing (when export is enabled for the ConfiForms Forms which should result in the form's data being available for search via Confluence search)
  • Support for ConfiForms IFTTT action to set restrictions now supports restrictions for the user initiating these actions (previously, the user initiating restrictions has been always added as a user having the access)
  • Added support for TableView/TableView Merger macros when used inside the ListViews/CleanViews - inner macro parameters are correctly skipped on out view evaluations

Version 2.3.2

  • Fixed issue with "Reset" button on filter macro to reset the view into original, filtered state and not to show all the records
  • Fixed issue with date/time interval field and incorrect parameter for custom formatting
  • Now custom formats are properly supported by date, date/time and date/time interval fields in ConfiForms
  • "append" and "prepend" now accept dynamically looked up parameters, you can have [entry.field_name] expressions inside the function arguments

Version 2.3.1

  • Fixed regression issue with parenthesis not properly parsed in filters in certain configurations
  • Implemented support for setting up the filter, sorting and limits on sources that are dynamically discovered by TableViewMerger macro
  • Improved "Apply filter based on criteria" when used on non-smart fields - now you can easily implement the logic to reduce the choices in the "selectable fields, such as dropdowns" based on records stored

Version 2.3.0

  • Fixed issue with logging the db/webservice connection credentials in the Confluence log file
  • Added support for own date/datetime format (field can use global formatting pattern by default but users are now allowed to override it with own patterns)
  • Fixed issue with radio/checkbox group fields values that might conflict with other fields, when certain naming convention is used (set value and show/hide field rules were affected)
  • Fixed issue with accessing internal "recordId" value (sequence number that every record in ConfiForms has and that is per form, starts with 1). Record IDs cannot be reused
  • Fixed issue with filters applied on multi-user field referenced through a smart field
  • Fixed issue with filters applied on the fields where values to filter on contain AND and/or OR (case sensitive)

Version 2.2.3

  • Added configuration option to restrict emails to be sent only to the user configured in your Confluence server (Through ConfiForms app settings in plugins list - http://<YOUR_SERVER>/admin/vertuna/confiforms/config.action)

  • Fixed issue with fixing onError event when IFTTT (or form submission) fails and there is an error handling rule is configured

Version 2.2.2

  • Fixed regression issue with logger (too verbose with Confluence default level of logging)

Version 2.2.1

  • Support for date range filters in ConfiForms Filter Control macro, so date and datetime fields can be filtered by range
  • Optimized performance for Jira multi-value fields to fetch issues in a batch
  • Fixed issue with incorrect default logging level (warning was used instead of error, and this is the default level for root logger on Confluence which has resulted in extensive logging of a parsing issues by ConfiForms - current workaround is to set logging level for ConfiForms, com.vertuna package to ERROR )
  • Fixed performance issues when "Validate uniqueness" rule is used with Jira fields

Version 2.2.0

  • Performance optimizations for formula calculations
  • Fixed issue with Jira multi-value field where referenced issues data was unnecessarily loaded
  • Fixed logging level issues (too verbose and warnings were incorrectly logged as errors)
  • Import data API now supports Microsoft Excel formats (97/2007)
  • New Field Definition Rule to set field read-only
  • Fixed issue with IFTTT reporting "null" as form name when in debug mode for cascading IFTTT rules
  • Link field can be set to open links in a new tab / window
  • New ConfiForms IFTTT action to "Create page comment"
  • New context variable _formName is available - Accessing field values and properties#Additionalvaluesavailableinthecontext

Version 2.1.2

  • License check logic has been fixed
  • Fixed issue with not showing the field's values that are restricted for edit, but shall be visible in the view, in the ConfiForms Entry Viewer macro

Version 2.1.1

  • Improved logging of IFTTT rules to include the affected form (useful when you have rules that update fields in the same form or another that can trigger cascading of other rules)
  • New ConfiForms IFTTT actions to remove view/edit restrictions on Confluence pages
  • Support for @self in form:page references, Form example: myform:this is equally valid as myform:@self, and point at the "myform" page located on the current page
  • Improved reporting of license errors - more details, easier to understand the issue

Version 2.1.0

  • ConfiForms IFTTT rule(s) can be set to execute onError. This is especially useful when your workflow results in an error and you want to get informed about the broken flow or want to setup some automation to do instead (when normal flow execution has failed)
  • Search and filtering by string values is not case-sensitive by default (Rolled back a bold change we have introduced in 2.0.38)
  • Fixed CalendarItem to account for context variables
  • Fixed issue with content type "image/jpg" unrecognised as image resource
  • ConfiForms Field can be set to not show if the record matches defined criteria, this is especially useful for action buttons
  • CSS Rules set on fields now properly understand !important flag
  • New IFTTT rule to help with setting up the "Audit" - Data is stored automatically in the form with postfix _log and could be accessed with any ConfiForms View macros (Structure is the same as the original form with additional field added called "_ref", which is a smart field referencing the actual record that this audit record belongs to) See more on Using new Audit IFTTT action page
  • New functions to help with data cleanup: removeCRLFs and removeSpaces
  • Fixed support/conflict for proxies setup and ConfiForms web-service enabled fields
  • Fixed issue with wysiwyg field type removing "size" word from the contents
  • Fixed mouse scroll issue in date/datetime fields
  • TableView and CardView now have an option to group action buttons into one cell/row
  • ConfiForms PlainView macro now can be set to output the wrapping tag around the output - useful when you render table rows and what to ensure the table tag gets added and correct document gets rendered. Supports table, div and "data", to render xml-like output

Version 2.0.38

  • Hotfix to address issue with ConfiForms Filter macro rendering

Version 2.0.37

  • Fixed issue with restricted fields shown when a view is used with a filter macro
  • ConfiForms now exposes a component class (com.vertuna.confluence.plugins.confiforms.api.ConfiFormsStorageComponent) for plugin-to-plugin integrations with the following API
@ExportAsService({ConfiFormsStorageComponent.class})
@Named("confiFormsStorageComponent")
public interface ConfiFormsStorageComponent {

  String findFieldValueById(ContentEntityObject contentEntityObject, String formName, String id, String fieldName);

  RegEntry findById(ContentEntityObject contentEntityObject, String formName, String id);

  List<RegEntry> findByAll(ContentEntityObject contentEntityObject, String formName);

  List<RegEntry> findRecordsByCurrentUser(ContentEntityObject contentEntityObject, String formName);

  List<RegEntry> findRecordsByUser(ContentEntityObject contentEntityObject, String formName, String username);

  void updateField(ContentEntityObject contentEntityObject, String formName, String query, String field, String value) throws Exception;
}
  • Fixed issue with showing pages (multi-page field) when referenced through a smart field
  • Fixed issue with "web service request" IFTTT action not respecting the "silent" parameter
  • asLink function now supports setting up the parameter via entry field's reference, [entry.field_name]
  • Fixed issue with "web service request" IFTTT action when 204 is returned (NPE when reading response stream, which is totally incorrect in case of NoContent response)
  • String matching is now case sensitive in filters!

Version 2.0.36

  • Hotfix to address issue with formula value rendering when recalculation is not needed

Version 2.0.35

  • We have lowered the number of IFTTTs that could be executed during record update/created to 200, to catch the possible infinite loops better and report these cases in a more detailed way
  • Fixed issue with calendar item rendering when a calendar (CalendarView) has own filter set
  • Fixed issue with silent rollback and "impossibility" to delete a record when it references a file field / attachment to an already deleted attachment
  • Formula field which references context variables or other fields from the record is now correctly recalculated in the ListView and in the ValueView
  • Improved handling of expressions containing '.' dots
  • Improved extraction logic of array values from JSON documents

Version 2.0.34

  • Web services backed fields now support connections via application links
  • Better debugging options for IFTTT templates when used as Velocity templates - now the error is reported into the template rendering result if the form is set to debug mode (via ConfiForms Form Definition parameter) and the user using the form is form administrator
  • Fixed issue with filtering of checkbox groups fields when used with ConfiForms Filter macro
  • Improved support for edit restricted fields - now, even if the field is set to be required, but is restricted for current use, it will not be validated as required, but skipped. Also, edit restricted fields are not rendered on the form if the user has no permissions to edit such fields (previously the fields were rendered as read only)
  • Fixed issue with "unique by user" check when forms are used by anonymous users
  • Improved support for current page in smart fields - useful when you setup forms with such fields in the templates (you can reference current page via [entry._page] or [entry._page.id] or via @self. Important! This can be done only by modifying the storage format and is not supported via UI)


Version 2.0.33

  • Fixed issue with CSV export when used with default settings
  • Added new parameter to TableView/CardView to override the default behaviour of fields for "hide if empty" flag when views are used with default set of fields
  • Implemented a way to receive notifications from ConfiForms Form submission routine (by overriding the following JavaScript functions)

    function onCFSubmitStarted(formName){
    
    }
    
    function onCFSubmitFinished(formName){
    
    }
    
    function onCFSubmitError(formName){
    
    }

    You can override it for example like this

    onCFSubmitStarted = function(formName) {
       alert('The form is about to be submitted');
    }

Version 2.0.32 

  • Fixed content rendering issue with markup/markdown field when it is set to use Atlassian markup
  • Fixed issue with requesting "local resources" with "local request forward" via ConfiForms IFTTT actions (web connection request)
  • Fixed error reporting on web-service backed fields (when resource configured cannot be accessed or loaded)
  • Fixed issue in ConfiForms Filter Control with umlauts (non latin characters) used as IDs in multi-select fields
  • Fixed issue with ConfiForms dynamic filter macro when used with checkbox/radio group fields (also fixed the reset button bug with the same type of fields)
  • Fixed issue with using decimal numbers in filtering (for comparison, exact match)

Version 2.0.31

  • Fixed issue with CSV export (not correctly exporting the empty values in custom views)
  • Changes in ConfiForms Filter macro - now single-value dropdowns are NOT rendered as multi-value fields in the filter by default (by default these fields are rendered as single-value fields, as defined in the form). This behaviour needs to be enabled explicitly.
  • Fixed issue with reset value action rule (also affected filter reset) when applied on multi-value fields

Version 2.0.30

  • Fixed issue with "quick action" showing empty message when used together with ConfiForms IFTTT Redirect to URL action
  • Fixed issue with Velocity template evaluation in emails (ConfiForms IFTTT to send email)
  • Support for proxies in web-service connections

Version 2.0.29

  • Added experimental support for NTLM 2
  • Fixed issue with filters having an expression with free text search
  • Fixed issue when ConfiForms ListView has been used within the FormView and fields were shown in the edit mode instead of a read-only
  • Added support for TableViewMerger to show the footer with a label/count for number of records shown

Version 2.0.28

  • Improvements to parameters parsing + bugxing edge cases with parameter names clashing + validation for duplicate parameters to report as errors
  • Improvements to filters to support wildcard filters when used with texts containing AND/OR and () in the names to be filtered correctly
  • Fixed issue with "Copy" button in ConfiForms Edit Controls not showing up for form's non admin users

Version 2.0.27

  • Quickfix to address issue with parameters parsing in fields pre-sets (default values), field definition rules to set field values and ConfiForms IFTTT rules to update/create records

Version 2.0.26

  • Fixed issue with ConfiForms Filter macro using  non-latin symbols used in dropdowns
  • Fixed issue with incorrect parsing of wysiwyg fields resulting in rendering errors and missing contents on a page
  • Added parameter to ConfiForms Form macro to support setting custom messages for the forms that allow only one registration per user
  • Fixed issue with REST API call to create a records with multiple values for multi-select user field
  • Improved parsing of a date/datetime fields for user locales (different to server locale)
  • Improved parameters parsing to support setting HTML in parameters, including "a href" links

Version 2.0.25

  • Fixed issue with complex parameters parsing (when parameter value was an url or something similarly complex)
  • Added new virtual function to "truncWithExpand" - helps you to truncate the value of the field and have an "..." interactive block to make the value expandable on demand 

Version 2.0.24

  • Added auto-mapping feature for Import API, to preset the field mapping selections on CSV file import
  • Field Definition Rule to "Apply filter based on criteria" now can automatically remove the rows from the filterable field what do exist in the current form (retaining only unique rows). See demo: Using filter based on criteria rule
  • Improved setting of parameters routine and added support from & in the middle of the parameter
  • Link field now recognises emails and renders the value with mailto: prefix
  • WYSIWYG field now adds header id's to bring compatibility with Confluence "Table of Contents" macro
  • WebServices Request action in IFTTT macro now can be set not to encode the parameters
  • ConfiForms Dynamic Filter macro now has an option to "auto filter" views (without a need to click on "filter" button)
  • Support for multiple choices when using ConfiForms Dynamic Filter macro and filtering by dropdown fields (and other single option fields)
  • Improvements in Import API (now not an experimental API anymore)

Version 2.0.23 

  • Fixed issue with setting up values for checkbox/radio group fields through the lookup from another form
  • Improved performance of database backed fields up to 10x times in views
  • Fixed issue with high load caused when "view" macros are used in preview mode
  • Improvements in filters to correctly work with numeric decimal values in conditions and in values
  • New virtual function to help to render datetime interval field values in a more compact way when event is within one day (compactDateTimeInterval)
  • Fixed issue when ConfiForms EntryViewer macro was not shown for users who are not owners of the record

Version 2.0.22

  • Fixed issue with missing ownedBy field value
  • IFTTT to delete entries could be set to work with anonymous users (deleting is possible only for anonymous records!)
  • Now by restriction edit permissions on the page you can also override admin permissions for Confluence administrator users (super users)
  • Fixed issue with events not correctly firing on certain definition rules when set one rule is set on multiple fields (in CSV format)
  • Fixed issue with filtering with "apply filter" filed definition rules of smart classifier and database classifier fields 
  • Fixed issue with default view for TableView/CardView when auto-number field was not shown by default

Version 2.0.21

  • Addressing issue with forms set to use "secure storage" for attachments and custom field definition rules - when the custom rule(s) was/were failing, the page to store attachments securely was still created.
  • Addressing issue when deleting an attachment of "image" type was resulting in an error on certain Confluence versions
  • Improved filters to correctly support date/datetime fields when referenced through smart fields
  • Fixed issue related to "view refresh after filter reset" in ConfiForms Dynamic filter

Version 2.0.20

  • Fixed issue with possible deadlocks on configurations involving multiple IFTTT rules updating the same ConfiForms entry or entries inside the same form

Version 2.0.19

  • Fixed issue with IFTTTs max count check when entries are updated via REST API update field method
  • Improved support for multiple fields when setting up the ConfiForms Field Definition rule (now fully supports both, regular expressions, as well as list of fields, separated by comma)
  • Now using relative paths in File field type in ConfiForms
  • Now you can disable edits for specific fields when individual edits for the view are enabled
  • Fixed encoding issue with web-services data (returned content-type was not respected)
  • Enhanced support for complex expressions to fields in CalendarView's grouping field (now you can reference fields connected to your current form through the smart fields and etc)
  • Added reverse rule possibility for "hide if matches" parameter in FormView (Registrations Controls) and Edit Controls macros


Version 2.0.18

  • Fixed issue with view restrictions set on the Edit Controls / Entry Viewer macros (when configured dynamically through the reference to ConfiForms fields - [entry.field_name])
  • Fixed "Validate across the dataset" rule when used with _count, to validate for max submissions matching the criteria
  • Implemented guarding method to limit the number of IFTTT rules executions to 100 per user request to avoid infinite loops the users can create with configurations updating same form and having incorrect conditions defined
  • Now IFTTT to copy ConfiForms data supports setting ownedBy field to empty value
  • Section field supports defining the description property to be shown in addition to section title
  • Fixed issue with Simple date field, when the month names were shown incorrectly on certain dates
  • fixed hasChanged() method - was incorrectly giving "true" value when there was no actual change made to the form data
  • Fixed support for accessing _previousState for the ConfiForms record when used to send email/ in-app notification.

    Example: In a form we have 2 fields: "a" and "b". And want to notify about the change, together with previous values

     <ac:structured-macro ac:macro-id="be9a1667-0b16-470c-8511-951bf66dd733" ac:name="confiform-ifttt" ac:schema-version="1">
          <ac:parameter ac:name="condition">hasChanged():true</ac:parameter>
          <ac:parameter ac:name="action">Send Notification</ac:parameter>
          <ac:parameter ac:name="event">onModified</ac:parameter>
          <ac:parameter ac:name="title">testing hasChanged</ac:parameter>
          <ac:parameter ac:name="who">admin</ac:parameter>
          <ac:rich-text-body>
            <p>
              <ac:structured-macro ac:macro-id="c4def14c-d432-4bb9-86a7-912288fedf71" ac:name="confiform-field" ac:schema-version="1">
                <ac:parameter ac:name="fieldName">_previousState.a</ac:parameter>
              </ac:structured-macro> → <ac:structured-macro ac:macro-id="76a0b38f-4cfc-40a9-9746-993585a122d2" ac:name="confiform-field" ac:schema-version="1">
                <ac:parameter ac:name="fieldName">a</ac:parameter>
              </ac:structured-macro>
            </p>
            <p>
              <ac:structured-macro ac:macro-id="81d4aa93-f85f-48fc-a853-37bcb8375557" ac:name="confiform-field" ac:schema-version="1">
                <ac:parameter ac:name="fieldName">_previousState.b</ac:parameter>
              </ac:structured-macro> → <ac:structured-macro ac:macro-id="840e6523-60d5-4b47-b724-476e6a753ec0" ac:name="confiform-field" ac:schema-version="1">
                <ac:parameter ac:name="fieldName">b</ac:parameter>
              </ac:structured-macro>
            </p>
          </ac:rich-text-body>
        </ac:structured-macro>
  • Introducing new virtual function to help you to format the number in the given locale: formatNumberWithLocale. See more details in Virtual functions

  • Added support for showing number of records under the "view", with configurable label
  • Fixed default label text value for "locked" form

Version 2.0.17

  • Enhanced field definition rule to "validate if exists in another form" to be able to check the reverse condition easily (when record matching the criteria given does not exist in another form)
  • Improved discovery logic between TableViewMerger and Filter macro (on some configurations the filter was applied on the first TableView found, and not on the whole TableViewMerger)
  • Improved IFTTT to create/update the ConfiForms entry to support setting the ownedBy field to empty on update/insert
  • Fixed NPE with license check routine on complex configurations involving ConfiForms IFTTT macros when ConfiForms is used with evaluation license

Version 2.0.16

  • Fixed issue with setting values for checkbox group fields when this field's values are only numeric (was calculating the sum, instead of actually setting the values from the rule)
  • Fixed NPE with ConfiForms Edit Controls macro on certain form configurations
  • File field now supports referencing "always latest" version of the attachment. Good for cases when an attachment associated with ConfiForms field gets updated and you need ConfiForms record to track that change and point at latest version of this attachment
  • Support for equality check between record's field values in filters

    Example: 
    A form with 2 fields a1 and a2 and we want to show in a table ONLY the records where the value of field a1 is equals to a2
<ac:structured-macro ac:macro-id="d860f6a8-91e0-4b60-ac8b-f9d77f53aa33" ac:name="confiform-table" ac:schema-version="1">
  <ac:parameter ac:name="formName">f</ac:parameter>
  <ac:rich-text-body>
    <p>
      <br/>
    </p>
  </ac:rich-text-body>
</ac:structured-macro>
<p>only equals</p>
<ac:structured-macro ac:macro-id="bcc29516-fa5c-46db-8a0a-4ff1248285e0" ac:name="confiform-table" ac:schema-version="1">
  <ac:parameter ac:name="filter">a1:[entry._func.asEntryRef(entry.a2)]</ac:parameter>
  <ac:parameter ac:name="formName">f</ac:parameter>
  <ac:rich-text-body>
    <p>
      <br/>
    </p>
  </ac:rich-text-body>
</ac:structured-macro>

  • Support for password fields in filters (ONLY exact matches)

Version 2.0.15

  • Added support for using ConfiForms Field macros inside the ConfiForms IFTTT when sending emails/notifications on "delete" event
  • Improved support for ConfiForms Field Definition Rules when used with Datetime Interval field
  • Fixed issues with data migration routine from version 1.x to 2.x (issues with possible duplicate auto-number values)
  • Improved "fix-storage" service (see below for parameters) to handle duplicate record ids (and fix them)

    [YOUR_CONFLUENCE_SERVER_URL]/ajax/confiforms/rest/fix-storage.action?formName=<FORM_NAME>&pageId=<PAGE_ID>
  • Added support for custom form dialog initialising scripts when using edit record and form's main layout is used
  • Fixed issue in sorting of date/datetime fields when custom virtual functions are applied in sort expressions
  • Fixed IFTTT parameters to use current page when page is not specified (as per documentation)


Version 2.0.14

  • Fixed bug with field definition rules not firing when configured on the "Simple Date" field
  • Properly escaping scripts from "InfoPanel" field type default value
  • Added "simple" type for "InfoPanel" to render the field value as simple, read-only view (without any styling)
  • Fixed strong dependency on the Workbox plugin - now ConfiForms works even if this plugin is disabled (ConfiForms FAQ#Icouldnotenabletheplugin(Pluginsaredisabledduringstartupduetounsatisfieddependencieserrors))
  • Fixed issue with Add/Remove page label (attachment label) when current context was not properly propagated and _page parameter was not available in the context when used in these IFTTT actions

Version 2.0.13

  • Fixed regression issue with smart fields not showing values correctly in views
  • Optimized filtering by ownedBy and other user/multi-user holding fields to perform 4-5 times faster
  • Fixed issue with REST API representation of multi-value fields, especially comments and file/attachment holding fields
  • General initiative to remove XSS and sanitise input and output where possible and appropriate

Version 2.0.12

  • Officially approved by Atlassian version for Data Center!
  • Optimized logic for retrieving field's properties. Our tests show the rendering performance has been improved 50-75%, in some cases 100%. Affects all the "views" macros, as well as filters and sorting
  • As per request from Atlassian we now set the default limits on the number of records rendered by ConfiForms views. The default is 500 records, you can change it in macro properties parameters or set to "NO LIMIT". 
  • Fixed issue with import API for importing users list into user's multi-select field
  • Fixed issue with escaping the HTML input while generating the email message with IFTTT, which has caused problems with later parsing and including attachments properly
  • Support for wildcards (*) in navigation instructions when applying it on a JSON input. A wildcard means the first property in JSON will be taken 

    Why? Consider this JSON example. Property values can easily change here, but the structure itself is preserved

    {
      "return": [
        {
          "somehostname01": {
            "file_|-/etc/ssh/sshd_config_|-/etc/ssh/sshd_config_|-managed": {
              "comment": "File /etc/ssh/sshd_config is in the correct state",
              "pchanges": {
                
              },
              "name": "/etc/ssh/sshd_config",
              "start_time": "11:01:54.394381",
              "result": true,
              "duration": 21.685,
              "__run_num__": 0,
              "__sls__": "abb.sshd",
              "changes": {
                
              },
              "__id__": "/etc/ssh/sshd_config"
            }
          }
        }
      ]
    }

    Here is how you can take the "comment" field value

    j.asJSON.return.*.*.comment

    which reads to, take the value of a "j" field, transform it to JSON, then get the first property value, then get the first property of a returned value and then lookup for the "comment" property value


  • Support for "cf_force" parameter in URLs while creating filtered views. See more: Creating links to filter views from request parameters - url
  • Fixed issue with emails generated by IFTTT where file holding fields were used to show the other properties of the file (were not visible on rendered email, which is now fixed)
  • Fixed issue with incorrect escaping of the data while importing with Import API

Version 2.0.11

  • Fixed issue with removing attachments when a record with file/attachment field get's deleted
  • Fixed issue with storage auto-migration from ConfiForms version 1 to version 2 when content is re-indexed (which has caused issues due to read-only transactions used by the indexer)
  • Fixed issue with null pointer exception thrown when IFTTT was processing onDeleted events and IFTTT actions were using ConfiForms Field macros (sending email on when a record gets deleted, etc)
  • Implemented support for READ-ONLY mode in Confluence. ConfiForms becomes READ-ONLY as well.

Version 2.0.10

  • Implemented support for | in link field type, to allow setting the labels to links
  • Rules for text fields are now applied on keypress (keyup), and not on blur - this allows us to have a more responsive user experience
  • User field profile is always loaded
  • Support for user names having a spaces for multi-select user fields in ConfiForms
  • Fixed minor issue with cache initialization for data loaded from JIRA (Issues and Insight objects)
  • Introduced "remove" virtual function to support the removal of a substring or element (in case of multi-value field) from the values
  • Connection timeout for web-services connections is set to max 20 seconds
  • Fixed issue with ConfiForms Filter macro incorrectly transforming all the fields to dynamic dropdowns
  • Additional service to help with autonumbers in forms after migration (if migrated from ConfiForms version 1.x to ConfiForms version 2.0.8 or lower)

    [YOUR_CONFLUENCE_SERVER_URL]/ajax/confiforms/rest/fix-storage.action?formName=<FORM_NAME>&pageId=<PAGE_ID>

    The service makes sure there are no gaps in the records and all the missing / deleted "records" get also migrated carefully. 

  • Fixed Persian Date field bug not showing correctly the date stored (when in edit mode)

  • Fixed issue with incorrect attachment version in presentation when used with "file" field when an attachment has multiple versions
  • Fixed issue with showing file field's value when an attachment referenced has been deleted
  • Added support to ConfiForms IFTTT to send emails with field value changes. The following constructions (inside ConfiForms IFTTT macro body) show how to check for changes in fields "t1" and "t2". And only in case the value has been changed it will be printed (in this example together with it's previous value)

    #if(("[entry.t1]" != "[entry._previousState.t1]"))
    [entry.t1] [entry._previousState.t1]
    #end
    
    
    #if(("[entry.t2]" != "[entry._previousState.t2]"))
    [entry.t2] [entry._previousState.t2]
    #end
  • New feature to help with setting up customer JavaScript functions when form is loaded (dialog shown) in ConfiForms Registrations (FormView) Control macro
  • New feature to support setting up custom JavaScript functions for ConfiForms Filter macro to execute on filter form load and on filter applied
  • Fixed performance affecting issue with "infinite loop" when specifying broken/incomplete expressions in Formula/Calculated fields

Version 2.0.9

  • Improvements in data migration for forms using auto-number fields and have missing rows (deleted rows)
  • Fixed issue with User fields not showing profile pictures
  • Fixed issue with conditionally shown Edit Controls in TableViews
  • Better reporting of license incompatibility when used on environments not matching the license type
  • Compatibility with upcoming Confluence 6.13
  • Fixed issue with TableViewMerger macro form/file naming for exports

Version 2.0.8

  • TableViewMerger macro dynamic sources discovery now supports forms defined in blogposts 
  • ConfiForms views placed on external pages/blogposts now support forms defined in blogposts
  • Fixed issue with user's data caching on Confluence version 5.7.x
  • Fixed configuration issue with ConfiForms Field Definition Rule when rule to "Look up and set the value from WebService" has been used
  • Optimized filters by page and user fields, when simple expressions are give (to match agains page id or username)
  • New virtual function "randomInt(minVal)" - Virtual functions

Version 2.0.7

  • Fixed regression issue with [empty] filters applied on user fields
  • Fixed issue with rules applied on the same fields, when ConfiForms started to calculate the sums (when numbers only were given as values), instead of applying values separately
  • Support for CSS and message to show when results are empty for TableViewMerger macro
  • Edit controls and viewer controls rendering optimizations when no dynamic parameters were given
  • Optimizations in how user fields are fetched
  • Fixed backward compatibility issue with Confluence 5.5

Version 2.0.6

  • Fixed regression issue with page creation via IFTTT when scripts were not correctly loaded on a pages created with automatic ConfiForms ListView
  • Support for multi-line field values in field definition rules, when setting the values. Use \\n to form a new line in parameters to set (for values)
  • Fixed regression issue with Datetime interval fields not rendered on a CalendarView
  • Performance optimisations in filters when used on user fields
  • Performance optimisations in ConfiForms Filter macro when used with a setting to show only relevant choices
  • Fixed issue with showing/hiding fields in views when it has no value and field was given with virtual function
  • Experimental service to export ConfiForms data as RSS feed

    https://<YOUR_SERVER>/ajax/confiforms/rest/export-to-rss.action?
       pageId=<PAGE_ID>
       &f=<FORM_NAME>
       &feedTitle=<FEED NAME>
       &feedDescription=<FEED DESCRIPTION>
       &feedLink=<FEED URL>
       &entryTitleField=<FORM FIELD TO USE AS TITLE>
       &entryDescriptionField=<FORM FIELD TO USE AS DESCRIPTION>
       &entryLinkField=<FORM FIELD TO USE AS URL>
    
    
    entryTitleField, entryDescriptionField, entryLinkField - could use virtual functions and access any field property your form's field may have
    
    
    Optional parameter: feedType
    Possible values: rss_2.0, rss_0.92, rss_0.94, rss_0.93, rss_1.0, atom_1.0, atom_0.3

Version 2.0.5

  • Re-packaged for data center compatibility (metadata). Version is waiting an approval from Atlassian (https://ecosystem.atlassian.net/browse/DCHELP-387). ConfiForms is already fully compatible with Confluence Data Center, but is awaiting official approval from Atlassian.

Version 2.0.4

  • Recovery API now physically deletes existing records and replaces the dataset contents with what's given (this also resets autonumber sequences in a form). You can also clean up the form completely by uploading empty dataset in a format

    {"data":"<list></list>"}
  • Fixed issue with show/hide container on forms in dialog mode (and when ID is used as CSS selector)
  • Field Definition Rules macro, when used with "Lookup and set value" action tries to "aggregate" the values it receives, and if all are numbers then sums it up. Use of formulas (expressions) in values to set parameters is supported
  • Enhanced service to check forms storage integrity (reporting non-compliant fieldnames)

    [YOUR_CONFLUENCE_SERVER_URL]/ajax/confiforms/rest/storage-integrity.action?formName=<FORM_NAME>&pageId=<PAGE_ID>
  • Fixed issue with Currency field type not validating it's type by default and accepting non numeric values
  • Fields of a text type and similar are now rendered as lookups when used in ConfiForms Filter macro
  • Smart fields now support referencing field values (in addition to referencing records)
  • Introducing "_func" bridge function to enable access to virtual functions through the entry (without using any field). This is sometimes necessary when you want to create complex dynamic filters such as:

    field1:[entry._func.asEntryRef(entry.field2.transform(id).join( OR field1:))]

    This filter, for example, tells to find records where "field1" values match values from "field2". And both fields are multi-value fields

  • timezoneAwareDate and timezoneAwareDateTime virtual functions to format date/datetime as timezone aware dates
  • Cleaner output of emails when rendered and sent though IFTTT macros
  • Attachments picker field enhancement to support showing of all attachments versions
  • Fixed issue with creating pages using ConfiForms when a 3rd party app called "InPlace editor" is installed
  • Added support for "Apply filter" field definition rule to work on attachments picker

    Assuming the field name for "Attachment picker" is "mypicker" and is set to show attachments from children pages, but you want to show only current page attachments (when you put FormView on a child page)
    
    
    mypicker.asAttachment.content.id:[entry._page.id]
  • Fixed regression issue with excessively strict field name validation


Version 2.0.3

  • Quick fix to address too strong check for field names in ConfiForms field names. Non-latin characters in ConfiForms field names are still supported but strongly NOT RECOMMENDED

Version 2.0.2

  • Optimisations in data serialization and deserialization, resulted in reducing the data storage format size up to 30% (depends on the data you store)
  • Data loading speed improved up to 15% compared to previous version (depends on the dataset / form configuration)
  • Field definition rules are processed 30% faster, especially on the configurations with many rules (30+)
  • Fixed issue with the uploading of multiple attachments of the same file
  • Entry metadata is back as a tooltip in CardView/TableView row
  • Fixed issue with IFTTT to send emails containing files having a comma in their names
  • Fixed issue with service URL mapping in web services backed fields when current context variable values, such as [entry._user] and [entry._now] were not correctly applied on the parameter
  • New field definition rules to hide (or show) any arbitrary element on the page by CSS selector based on the condition ("Show/Hide container" action type)
  • Fixed helper tools with providing mapping of database and web-service backed fields
  • Fixed issue with form printing when comments added with a Comment field with "inline comments" enabled were not printed
  • Fixed issue with auto-link generation when a reference to uploaded file is used in the pattern
  • Changed JSON export format for multi-value fields to contain "JSON" value string for the values, instead of "XML"
  • Improved and secured content search indexing for forms - now you need to enable form export  to enable the contents of a form to be searchable. Also, setting the form to "show only own records" to non-admin users disables indexing the contents of a form
  • Fixed permissions issue with Recovery API (accessible now by space admin users)

Version 2.0.1

  • ConfiForms now has a new storage layer, with much faster edit and delete operations. And with faster and less memory consuming search / filtering operations. 
    There are no limits on the dataset size per form. And the size of the record is limited by the number of characters your database can hold in a CLOB type field (ConfiForms limits are 2,147,483,647 bytes)
  • Data migration is done for your automatically when you access the form for the first time. This could take some time for the first load, depending your your dataset size

    There are methods to help you to understand how you data looks like and force the migration via migration APIs if you want to do so (accessible only to Confluence system administrators)

    Storage analysis

    [YOUR_CONFLUENCE_SERVER_URL]/ajax/confiforms/rest/storage-analysis.action?spaceKey=<SPACE_KEY>

    Auto-migration

    [YOUR_CONFLUENCE_SERVER_URL]/ajax/confiforms/rest/auto-migration.action?spaceKey=<SPACE_KEY>

    Storage integrity check

    [YOUR_CONFLUENCE_SERVER_URL]/ajax/confiforms/rest/storage-integrity.action?formName=<FORM_NAME>&pageId=<PAGE_ID>

    (Force)Migrate form's storage via service

    [YOUR_CONFLUENCE_SERVER_URL]/ajax/confiforms/rest/migrate-to-storage-v3.action?formName=<FORM_NAME>&pageId=<PAGE_ID>
  • We advise you to take extra care with upgrading to version 2.x+ from 1.x branch and test your form configurations in your test environments first, before upgrading your live environments.

  • Your tables, rendered with CardView and TableView macros, will look different and use the cleaner styles as provided by AUI - https://docs.atlassian.com/aui/7.8.0/docs/tables.html

  • Your forms look cleaner as well, and also follow the guidelines and styles from AUI

  • ConfiForms is DC ready (approval is in progress)
  • Optimizations in rendering: reducing HTML markup size → faster rendering
  • All the features and changes included in 1.54.x releases, up to the latest 1.54.6, https://marketplace.atlassian.com/apps/1211860/confiforms-data-forms-workflows/version-history#b105004060
  • Data is stored in the database table "AO_CEFA84_CONFI_FORMS_ENTITY", using record per row method.
  • Rows are not physically deleted from the database when you delete a ConfiForms entry, but marked as deleted. Record contents is removed, but the ID and removal date for the entry are stayed. This allows us to "fix" the logic with auto-number re-use when last ConfiForms entry has been deleted (in ConfiForms version 1.x the last number will be reused, which is not the case anymore with ConfiForms version 2.x)
  • Backup and restore DOES NOT back up the values from ConfiForms storage. Use RAW export and recovery APIs to get the data imported