Releases: oroinc/platform-application
Release Notes
List of improvements and fixed bugs
- Improved IMAP error handling
- Fixed API performance issues in Outlook integration
- Fixed integration loads all statuses in memory
- Fixed search is getting out of memory
- Fixed localization settings saving
- Fixed invalid escape of enums
- Fixed notice after doctrine cache bundle upgrade
Release Notes
List of improvements and fixed bugs
- Improved IMAP error handling
- Disabled connection to socket server on login page
- Fixed break of differed process potentially affects other process
- Fixed search is getting out of memory
- Fixed localization settings saving
- Fixed invalid escape of enums
- Fixed notice after doctrine cache bundle upgrade
- Fixed API performance issues in Outlook integration
- Fixed integrations loads all statuses in memory
- Fixed search is getting out of memory
- Fixed localization settings saving
- Fixed invalid escape of enums
- Fixed notice after doctrine cache bundle upgrade
Release Notes
New features – Platform.
Comments to activities.
With this feature, the users will be able to add comments to various record activities, such as calls, notes, calendar events, tasks, and so on, making it possible to leave permanent remarks to particular activities they find important, and even engage in conversations that might come in handy later.
Comments are added to every activity record separately, in a linear thread. In addition to text they might contain a file attachment (1 file/image per comment). Comments may be enabled or disabled for any activity in Entity Management. The ability to add, edit, delete, and view others’ comments is subject to user’s ACL configuration.
WYSIWYG rich text editor for emails and notes.
This feature allows users to create rich text emails and notes with the built-in WYSIWYG text editor. It allows to mark text as bold, italic, and underlined; change text color and background; create bullet and numbered lists; insert hyperlinks and chunks of source code.
Rich text editor may be turned off in System configuration—in this case, editor will no longer be available and all previously created rich text pieces will be stripped of any formatting to plain text.
Release Notes
New features – Platform.
Invitations to calendar events.
It is now possible to invite other Oro users to events, send them email notifications about this invitation and receive feedback about their responses or lack thereof.
To invite a user to your event, simply open its edit form and choose guests in a respectively named selector control. After you save the event with invitees, they will receive email notifications about the invitation with a link to their copy of the event in OroCRM. On the view page of that event they will be able to respond to an invitation with three options: Attend, Tentatively attend, and Not attend. Response status (including no response yet) will be displayed on the event tile in the calendar view, and next to the guest's name in the event view. An invitee will be able to change his response after the initial choice, i.e. choose to not attend a previously agreed event. For every response to an invitation, or a change in plans, you (i.e. the organizer of the event) will receive an email notification.
System calendars.
This feature allows developers to add so-called System calendars to Oro Platform. Use cases for such calendars include company-wide holiday calendar; organization-wide calendar of conferences and conventions, and so on. (Note that organization calendars will only be available in Enterprise Edition 1.7.0).
These calendars and their events will be automatically added to Calendar views of all users in the entire system. Events of these calendars can be managed on their view forms that are available under System > System Calendars. The permission to add or modify events might be assigned to as many people as needed—e.g. the HR and the office manager.
Task calendar.
Task calendar is a special kind of system calendar that displays tasks assigned to the user on the calendar view in addition to calendar events. For now, there is no way to add tasks via the calendar view, but it is possible to edit or delete existing tasks. It is not possible to view other users' task calendars either—only the personal task calendar is available.
The calendar view also features a button that leads to the grid of all tasks, similarly to the existing Events button.
Color coding for calendars and calendar events.
The user now may change the color of the calendar from the default one in the calendar actions popup menu. Similarly, the user can change the color of the individual event in its Edit dialogue. A palette of standard colors is offered in both cases, with the option to select a custom color with the color wheel.
Standard palettes for calendars and events may be configured in the system configuration under Display settings > Calendar settings.
Other minor changes to calendar view.
It is now possible to turn calendars on and off without removing them from the list by clicking on the colored square or via the popup menu.
Click on the event tile opens its View Event form, not Edit.
Calls, Tasks, and Calendar events as entity activities.
This is an expansion to the entity activity feature that was first released with 1.3.0 where we introduced the concept of entity activity to the platform and converted emailing to the activity mechanism. Now we are adding three more ubiquitous user actions to this list: logging calls, creating tasks, and scheduling calendar events.
In order to better accommodate the expanding lot of activities we also have customized the UI for them. Previously, every action/activity had its own button regardless of the number of activities available, so if the admin has enabled a lot of activities, users could easily get confused with a long row of buttons, especially on a low resolution screen. Now all activities and non-activity based actions other than Edit and Delete are conveniently grouped into a single More Actions dropdown button.
Record Activities Widget.
The Record Activities Widget replaces the Record Activity block, where activities were listed by their type in separate tabs. Instead of tabs, the widget puts all record activities—emails, calls, tasks, calendar events, etc—in a single paginated list.
The user is able to filter the list by activity type and by date of activity. It is possible to configure the the list to be sorted either by creation date or by last update date.
Custom fields without schema update.
It is now possible to add custom fields to entities and immediately use them without schema update. This ability comes with drawbacks: these "serialized" fields can only store textual or numeric data—they cannot be option sets, relations, or files/images; nor they are available in reports or segments. But these fields will be displayed on entity view/add forms, and may be added to grid and export/import profile if necessary.
To create such fields, click Create field button on the entity view page in Entity management, and then choose "Serialized field" in Storage type selector. To create regular field, choose "Table column."
Entity records pagination.
This feature allows the user to "remember" a set of entity records that existed on the grid (i.e. with filters applied) when he moves to the view page of any record, and then quickly navigate through these records with a new pagination control that appears in top right corner of the page.
Pagination only works when the user comes to a view page from the main entity grid; in any other case (e.g. search, direct link, grid on another page, segment) the pagination control will not be displayed. Pagination is preserved on a pinned page in both control and in breadcrumbs.
Release Notes
List of improvements and fixed bugs
- Implemented form type guessers for custom fields of existing entities
- Added support of cascade option for association in Extend Extension
- Fixed insecure content from websockets when HTTPS used
- Fixed IMAP Sync with date parsing exception
- Magento Integration: Fixed sensitive data in API request logs
- Magento Integration: Fixed memory issue on errors
- Magento Integration: fixed duplicated jobs on two way Magento sync
Release Notes
List of improvements and fixed bugs
- Refactor extended entity to prevent class name collisions
- Implement form type guessers for custom fields of existing entities
- Use route from config in email address link to avoid potential errors
- Fixed duplicates of entities during magento import
- Fixed Error in "oro_multiple_entity" if it's used without "default_element" option
- Fixed lost organization name after upgrade
Release Notes
The re-introduction of Channels.
We started the implementation of a new vision for the Channels in 1.3 version and now we bring Channels back, although under a new definition.
The general idea behind channels may be explained as follows: a channel in OroCRM represents an outside source customer and sales data, where "customer" and "sales" must be understood in the broadest sense possible. Depending on the nature of the outside source, the channel may or may not require a data integration.
This new definition leads to multiple noticeable changes across the system.
Integration management.
Albeit the Integrations grid still displays all integrations that exist in the system, you now may create only "non-customer" standalone integrations, such as Zendesk integration. The "customer" integrations, such as Magento integration, may be created only in scope of a channel and cannot exist without it.
Marketing lists.
Marketing lists serve as the basis for marketing activities, such as email campaigns (see below). They represent a target auditory of the activity—that is, people, who will be contacted when the activity takes place. Marketing lists have little value by themselves; they exist in scope of some marketing campaign and its activities.
Essentially, marketing list is a segment of entities that contain some contact information, such as email or phone number or physical address. Lists are build based on some rules using Oro filtering tool. Similarly to segments, marketing lists can be static or dynamic; the rules are the same. The user can build marketing lists of contacts, Magento customers, leads, etc.
In addition to filtering rules, the user can manually tweak contents of the marketing list by removing items ("subscribers") from it. Removed subscribers will no longer appear in the list even if they fit the conditions. It is possible to move them back in the list, too.
Every subscriber can also unsubscribe from the list. In this case, he will remain in the list, but will no longer receive email campaigns that are sent to this list. Note that subscription status is managed on per-list basis; the same contact might be subscribed to one list and unsubscribed from another.
Email campaigns.
Email campaign is a first example of marketing activity implemented in OroCRM. The big picture is following: Every marketing campaign might contain multiple marketing activities, e.g. an email newsletter, a context ad campaign, a targeted phone advertisement. All these activities serve the common goal of the "big" marketing campaign.
In its current implementation, email campaign is a one-time dispatch of an email to a list of subscribers. Hence, the campaign consists of three basic parts:
Recipients—represented by a Marketing list.
Email itself—the user may choose a template, or create a campaign email from scratch.
Sending rules—for now, only one-time dispatch is available.
Email campaign might be tied to a marketing campaign, but it might exist on its own as well.
Improved Email templates.
Previously, email templates were used only for email notifications. Now their role is expanded: it is now possible to use templates in email activities to create a new email from the template, and for email campaigns.
Support for variables in templates was extended: in addition to "contextual" variables that were related to attributes of the template entity, templates may include "system-wide" variables like current user's first name, or current time, or name of the organization. It is also possible to create a "generic" template that is not related to any entity; in this case it may contain only system variables.
New templates are subject to ACL and have owner of user type.
Other improvements
- Multiple improvements to Web API
- A new implementation of option sets
- Improved grids
Community requests.
Here is the list of Community requests that were addressed in this version.
Features & improvements
- #50 Add the way to filter on empty fields
- #116 Add custom templates to workflow transitions
- #118 Extending countries
- #136 Console command for CSV import/export
- #149 New "link" type for datagrid column format
Bugs fixed
- #47 Problems with scrolling in iOS 7
- #62 Problems with the Recent Emails widget
- #139 Error 500 after removing unique key of entity
- #158 Update doctrine version to 2.4.4
Release Notes
The re-introduction of Channels.
We started the implementation of a new vision for the Channels in 1.3 version and now we bring Channels back, although under a new definition.
The general idea behind channels may be explained as follows: a channel in OroCRM represents an outside source customer and sales data, where "customer" and "sales" must be understood in the broadest sense possible. Depending on the nature of the outside source, the channel may or may not require a data integration.
This new definition leads to multiple noticeable changes across the system.
Integration management.
Albeit the Integrations grid still displays all integrations that exist in the system, you now may create only "non-customer" standalone integrations, such as Zendesk integration. The "customer" integrations, such as Magento integration, may be created only in scope of a channel and cannot exist without it.
Marketing lists.
Marketing lists serve as the basis for marketing activities, such as email campaigns (see below). They represent a target auditory of the activity—that is, people, who will be contacted when the activity takes place. Marketing lists have little value by themselves; they exist in scope of some marketing campaign and its activities.
Essentially, marketing list is a segment of entities that contain some contact information, such as email or phone number or physical address. Lists are build based on some rules using Oro filtering tool. Similarly to segments, marketing lists can be static or dynamic; the rules are the same. The user can build marketing lists of contacts, Magento customers, leads, etc.
In addition to filtering rules, the user can manually tweak contents of the marketing list by removing items ("subscribers") from it. Removed subscribers will no longer appear in the list even if they fit the conditions. It is possible to move them back in the list, too.
Every subscriber can also unsubscribe from the list. In this case, he will remain in the list, but will no longer receive email campaigns that are sent to this list. Note that subscription status is managed on per-list basis; the same contact might be subscribed to one list and unsubscribed from another.
Email campaigns.
Email campaign is a first example of marketing activity implemented in OroCRM. The big picture is following: Every marketing campaign might contain multiple marketing activities, e.g. an email newsletter, a context ad campaign, a targeted phone advertisement. All these activities serve the common goal of the "big" marketing campaign.
In its current implementation, email campaign is a one-time dispatch of an email to a list of subscribers. Hence, the campaign consists of three basic parts:
Recipients—represented by a Marketing list.
Email itself—the user may choose a template, or create a campaign email from scratch.
Sending rules—for now, only one-time dispatch is available.
Email campaign might be tied to a marketing campaign, but it might exist on its own as well.
Improved Email templates.
Previously, email templates were used only for email notifications. Now their role is expanded: it is now possible to use templates in email activities to create a new email from the template, and for email campaigns.
Support for variables in templates was extended: in addition to "contextual" variables that were related to attributes of the template entity, templates may include "system-wide" variables like current user's first name, or current time, or name of the organization. It is also possible to create a "generic" template that is not related to any entity; in this case it may contain only system variables.
New templates are subject to ACL and have owner of user type.
Other improvements
- Multiple improvements to Web API
- A new implementation of option sets
- Improved grids
Community requests.
Here is the list of Community requests that were addressed in this version.
Features & improvements
- #50 Add the way to filter on empty fields
- #116 Add custom templates to workflow transitions
- #118 Extending countries
- #136 Console command for CSV import/export
- #149 New "link" type for datagrid column format
Bugs fixed
- #47 Problems with scrolling in iOS 7
- #62 Problems with the Recent Emails widget
- #139 Error 500 after removing unique key of entity
- #158 Update doctrine version to 2.4.4
Release Notes
Stored XSS Vulnerability fixes
* added "|json_encode|raw" for values outputted in JS objects
* removed "|raw" from outputs of path in url attributes
* added "e('html_attr')|raw" when outputting html attributes
* removed mentions of "flexible entity" and unused code
* added validator for css field of embedded form, now if user will enter html tags in this field he will get an error message
* added stiptags filter for css of embedded forms
* changed translation message oro.entity_config.records_count.label to contain placeholder of records count and use UI.link macros in template instead of slicing str
* changed method of validation of emails on the client, old validation was working very slowly with some values like '">< img src=d onerror=confirm(/provensec/);>', n
* removed "trans|raw" where it's not required
* minor changes in templates to improve readability
* added Email validator for Lead
* fixed XSS vulnerability in Leads, Case Comments, Notes, Embedded forms, Emails, Business Units, Breadcrumbs
* fixed escaping of page title
Release Notes
The 1.3.1 release is mostly bug-fixing. Below is a list of the most important fixes.
Fixed issues:
- Update Schema button remains visible after schema update.
- JS action controls do not work on the Attribute tab of Edit Transition form.
- System listeners are disabled by ResponseHistoryListener.
- Error on Schema update.