- Edit appointments (including appointment macros & appointment loop): From now on, appointments can not only be displayed and created via a form, but also edited or updated in a targeted manner – e.g. subject, note, status or times. This is particularly useful in combination with the onOffice appointment macros and the new recursive appointment loop:
_bCalendarRek_(...) … _eCalendarRek_appointments can be listed dynamically and then processed further via form logic (e.g. book slot, deactivate slot, change text/status). In addition,_pfGetCalendarUUIDan encrypted calendar UUID is available to securely access appointments via link/parameter without revealing internal IDs. Video tutorial: here, filter creation for the recursive loop: here - Search criteria can now be edited: explanatory video
- Overview of all macros available in propform.io alongside the standard onOffice macros: https://propform.io/blog/sonstiges/makroliste
- New macro _pfButton(): With the new macro
_pfButton(), fully styled form buttons can be created in description or text fields that visually match the standard Propform buttons. The macro supports the optional parameters Label, URL, Style (rounded, rounded-0 or rounded-pill) and Target (_parent or _blank). If parameters are not specified, the macro uses automatic default values such as “No label specified”,#as the URL,roundedas the button style and_parentas the link target.
Example:_pfButton("Weiter zum Formular", "https://example.com", "rounded-pill", "_blank") - New macro _pfLink(): The macro
_pfLink()is used to output simple hyperlinks within a text field. Here too, the URL, label and target can be set optionally. If no label is defined, the macro automatically uses the URL as the link text. By default, the link opens in the same window (_parent). Both macros thus enable flexible and clean integration of buttons and links directly within the form description.
Example:_pfLink("https://example.com", "Hier klicken", "_blank") - Recursive loop macro for search criteria: Propform now supports recursive loops for search criteria – similar to the familiar agent book loops in onOffice. With the new macro pair _bScRek_(… ) and _eScRek_, all search criteria for an address can be automatically iterated through, and the desired macros can be output for each individual search criterion. In addition, filters can be defined, for example bScRek_("status: 1"), so that only active search criteria are taken into account. This allows search profiles for a prospective client to be presented in a structured and repeatable manner in activities, tasks or emails.
Example of a recursive loop using `
_bScRek_` and `_eScRek_`: - Output of individual search criterion values via macro: In addition to the previous comprehensive output via _pfGetSearchCriteriaInformation, it is now also possible to output individual values selectively. With _pfGetSearchCriteriaField(field name), any search criterion fields can be retrieved individually, for example object type, living area, ID or internal address ID. In addition, the new macro _pfGetSearchCriteriaUUID is available, which returns an encrypted UUID for the search criterion. This allows search criteria to be used very flexibly, precisely and contextually in text modules, forms, activities and emails.
Example of outputting individual search criteria using `
_pfGetSearchCriteriaField()`: - Latest ChatGPT models added (5.1, 4.1, 4.1-mini): If a form performs ChatGPT operations, the new OpenAI models can now also be selected in the form settings under "Generate text (ChatGPT)" -> "Fine-tuning".
- Search criteria fields that have a ‘From’ and a ‘To’ value can now be populated separately via URL parameters: Example usage as follows: ?searchcriteria[living_area__from]=50&searchcriteria[living_area__to]=80 (double underscore!)
- Search function added for single-select fields: For single-select fields with a large number of option values, e.g. user fields, a search function was requested that suggests suitable options based on a search term entered by the user. This setting can be enabled for single-select fields in Field Settings -> Display Settings -> "Single-select field: Allow typing when clicking in the field to search for values."
- Decimal fields (FLOAT) with up to 4 decimal places: Decimal fields can now be set to up to 4 decimal places. To do this, enter 0.0001 in the ‘Interval’ field in the field settings. Note: In onOffice, the field must also be set to "Decimal with 4 decimal places" in the administration settings; otherwise, it will be truncated to 2 decimal places when saved.
- File download based on a string in the document attribute: For download fields, the selection criterion "All files containing the following string in the document attribute..." has been added.
- Filling in forms via AI/voice input: It is now possible to fill in forms via voice input or AI. The function can be enabled for a form in the form settings under "Further settings" -> "Enable AI voice input". The feature is only enabled if an OpenAI Platform API key is stored in the account. When the feature is activated, a button appears at the bottom right of the screen in the form, which can be used to start voice input. Example video here.
- Conditions & Rules: The feature of the same name is now available in the form settings under the "Conditions & Rules" tab. Conditions can be used, for example, to show or hide fields depending on the values of other fields. Short explanatory video: here.
- GTM push events have been expanded to include form_start_input and form_abort: This means that, with Google Tag Manager enabled, form abandonment and the start of an entry can now be tracked.
- Multi-select field dropdown behaviour: In the field settings -> Display settings, you can now choose whether the dropdown menu should appear only when typing or as soon as the field is clicked or focused. You can also choose whether the dropdown menu should close or remain open after a value has been selected.
- All multi-select fields are now displayed with a hierarchy. Previously, all selection options were displayed on a single level, regardless of whether they were parent or child elements. This hierarchy is now displayed within the field, and child elements are automatically selected or deselected when a parent element is selected.
- Special case: "Regional Supplement" multi-select field as a search criteria field: In the field settings -> display settings for the "Regional Supplement" field, the "Alternative" option can now also be selected. This means that child elements are not directly ticked in the form, but are simply hidden when a parent element is ticked. The child values are automatically written to the backend after the form is submitted. This adjustment was necessary because the tree structure of the "Regional Supplement" can be very extensive and the form responded correspondingly slowly in "normal" multi-select mode.
- iFrames can now be embedded in web forms from any source via the description field. E.g. embed code for Timum:
<iframe
src="https://www.timum.de/[providerID]/_Id@[providerID]@onofficeEstate/embedded_map"
width="100%"
height="400px"
frameborder="0"
style="border:1px solid #ccc;">
</iframe> - Using the function "Form Settings" -> "Further Settings" -> "Write Values", you can now write values and macros into fields in the address and property sections. A special feature is that macros can also be used here. This means data can be transferred from the property to address fields – or vice versa. Furthermore, the new Propform macros _pfGetSearchCriteriaInformation, _pfGetAgentslogInformation or _pfGetSellingPriceOffer can, of course, also be written into an address field so that they can be accessed later, for example, in a PDF template within onOffice. Explanation here in the video.
- The _pfGetSearchCriteriaInformation macro now allows the search criteria created using the form to be displayed in activities, tasks and emails created/sent via propform.io.
- For numeric fields, units or currencies can now be displayed next to entered values in the form field, e.g. m² or €. The unit displayed can be freely defined in the “Additional field settings” for the respective field under “Display unit/currency in field”.
- Number fields now include a full stop (".") as the thousands separator. On mobile devices, the numeric keypad is also displayed when the field is selected, instead of the letter keyboard.
- Fields can now be moved within the form using drag and drop. The old method of clicking the "Up arrow" and "Down arrow" buttons to move fields up and down has been replaced by this new functionality.
- The _pfGetAgentslogInformation macro can be used to output the details of the activity written via propform.io in tabular form (action type, action category, comment, etc.). The macro only works in propform.io – in forms, activities, tasks and emails (macro resolution = "alternative") written via propform.io.
- The _pfGetSellingPriceOffer macro can now be used to display a prospective buyer’s offer price for a property. The macro only works in propform.io – in forms, activities, tasks and emails (macro resolution = "alternative") created via propform.io.
- In addition to rounded and square designs, the "Pill" design style can now also be selected, which makes all form elements fully rounded.
- In the ‘Regional Supplement’ field, all child values are now automatically selected or deselected when the parent element is selected or deselected; for example, selecting ‘Aachen (City)’ automatically selects all Aachen districts with a single click.
- In the case of the "Duplicate check on object_no_external", you can now select that only existing object numbers are permitted. This means that no more "ghost properties" are created if you accidentally enter an incorrect object number.
- The selection options for property types now also adapt in search criteria fields depending on the category selected in the property type field. Previously, this dependency only applied to property fields.
- Fields are now updated in the background (if a new field is created in onOffice) only when the form overview page is accessed and once a day at around 8 am. Previously, accessing the form and field properties also triggered the field update.
- Custom user fields created in the address or property can now also be selected as the activity supervisor and as the person responsible and the processor for a task.
- Email recipient logic adjusted: Previously, when recipient email addresses were defined in the form settings, the system used the standard onOffice duplicate check to identify existing address records. This also found records where the email was stored only as a secondary or tertiary address (not as the primary address). As the onOffice API expects an address ID as the recipient, emails were sometimes sent to the primary (“default”) address of the found record – and thus not to the address actually intended. The logic now first checks whether the desired email address actually exists as a primary address. If not, a new address record containing this email address is automatically created.
- Custom user fields created in the address or property can now also be selected as email recipients: For example, if you create an additional user field in the property, such as “Team Leader” or “Internal Responsibility”, you can now select the property’s team leader as the email recipient in the form settings.
- Deep link macros _getAddressLink and _getEstateLink added: In propform.io, two macros can now be used to create a deep link that links directly to the address or property record in onOffice enterprise. The links only work if you are logged in to onOffice.
- Submitted field values and IP addresses from form submissions and page views can now be completely disabled: In the "Account settings" under the "Statistics" tab, you can now disable the storage of submitted form data in encrypted form in the propform.io database for statistical purposes. For data protection reasons, this may be relevant for some customers. If these two functions are disabled, views and submissions are still counted, but you can no longer see which data was sent with which submission. With these two functions disabled, no form data is stored in propform.io and all data is simply "routed through" to onOffice.
- Baskerville and Inter fonts added
- New URL parameter "key=" can be used as the required form key or password needed to access a form: For example, the new URL parameter, in combination with macros, can also be used to ensure that a user can only submit a form once. Explanation in the video here.
- IP whitelist for forms: In the form settings, you can now specify that only certain IP addresses are permitted to access forms.
- Macro resolution enabled for email recipients, CC and BCC: This allows email recipients to be defined even more dynamically, e.g. _Others1 or with a fallback email address: _ifEmpty(_Others1;"fallback-email-adresse@test.com";"_Others1")
- Etracker added: In addition to Google Tag Manager, the Etracker code can now also be added to forms (Form settings->Further settings)
- Different labels in single and multi-select fields or the single and multi-select key values: In the field settings, the labels of the selectable values in single and multi-select fields can now be changed or defined differently from the actual onOffice label. For example, if you need forms in other languages and ‘ja’ needs to become ‘yes’ and ‘nein’ needs to become ‘no’.
- Download fields and function added: Download fields can now be added to forms in a fully dynamic manner, including download tracking etc. This means, for example, that digital data/download rooms for customers can also be set up via the form. Explanation in the video here.
- Create activity on form call: Previously, you could only define one activity for form submission. Now you can also have an activity created when a form is called, e.g. to track who accessed a form and when.
- File upload functionality significantly expanded: All functions offered by the onOffice API are now available in propfrom.io. This includes dynamic renaming of files before upload. In addition, you can specify the file type, document attribute and whether the file should be stored in the ‘External’ or ‘Internal’ tab. Furthermore, multiple files uploaded via a single field can be combined into a ZIP or PDF file before being uploaded to onOffice – useful, for example, when uploading photos from the building authority. An explanation of everything is available here in the video.
- Macro resolution added to thank-you page URL: Forms can also be linked using a form’s thank-you page URL by storing the form URL of the second form as the thank-you page for the first form. With macro resolution now enabled for the thank-you page URL, you can dynamically decide which page to redirect to based on field values in the address or property, e.g.: _ifEmpty(_Sonstige1;"www.dankeseite1-url.de";"www.dankeseite2-url.de") or dynamically based on the selected single-select value _calculate(IF([ind_2418_Feld_adressen51]="ind_Schl_4605";"https://link-1.de";"https://link-2.de"))
- Browser auto-complete function added for fields: Configurable in the field settings
- Group copy function added: Groups can now be defined in the account settings. In the form settings, a form can be added to a group. This allows a copy link to be created for the entire form group, enabling multiple forms to be copied and exchanged between different propform.io accounts.
- Speed upgrade: The onOffice field configuration is now retrieved in the background, making the use of the builder and the loading of forms significantly faster.