Release 3.2.6

The newest point release of ArkCase, version 3.2, was released on March 16th, 2018.  This point version is v3.2.6.  For more information, please review the release notes below.

 

Title Summary Resolution
Add ‘protected’ flag to lookup entry The ‘protected’ flag should prevent deletion and changes to an entry key used in the application logic. We can also add ‘protected’ flag to the whole lookup and prevent adding of new entries.

Just to further explain the lookups structure and different keys. A lookup has zero or more entries. Each entry has a key and a value (some lookups have additional ‘inverseKey’ and ‘inverseValue’, or a whole ‘subLookup’). The important property is the key for the application logic. The value is not used in the application logic, thus can be changed freely. The value can be an ordinary word (will not be translated) or a label key, when the user wants it to be translated in the UI in the user language. Notice the difference between the entry key and label key. The label key isn’t used in any application logic and functions as a translatable value.

Fixed
New approval routing functionality to be implemented for Complaints Steps:
1: Login as user that have permissions to Complaints module.
2: Click on Complaints from left side menu.
3: Click on Approvers sublink.
Expected result: Same functionality should be applied as for Cases, just with empty “Future Approvers” list.
Actual result: New approval functionality is not applied at all.
Fixed
Cannot create case from cloned user Create new user by cloning already existing user.
Logins as newly created user
Try to create New Case
Result: Case is not created. No notification for the user (no error thrown in console)
Fixed
User can insert not valid url Steps:
1: Login as user that have permissions to People module.
2: Click on People from left side menu.
3: Click on URLs sublink under some person.
4: Click on “+” icon.
5: Insert not valid url and select type, then submit the form
Expected result: validation message is displayed informing user that url is not valid.
Actual result: Not valid url is saved.
Fixed
Notification events are displayed for all days, not depending the value entered in audit history in admin Steps:
1: Login as user that have permissions to Admin module
2: Click on Admin from left side menu
3: Click on Admin/Application/Audit History
4: Enter number of days (for example 1) and click Apply button.
5: Click on Notifications from left side menu,
Expected results:Only notification events from today – 1 should be displayed.
Actual results:All notification events are displayed. Please see attachments
Fixed
When only “Documents can be emailed” option is selected, email is sent just with title object id Steps:
1: Login as user that have permissions to Admin module.
2: Click on Admin from left side menu.
3: Click on Security/Document Delivery Policy
4: Select only “Documents can be emailed” and click “Save” button.
Expected result: Validation message is displayed informing that user have to select one of other options. (“Documents can be attached to emails” or “Documents can be sent as hyperlinks”).
Actual result: User successfully saves configuration and if user sent email empty email will be sent with no link and no attachment just title = object id.
Fixed
When user click on workflow version history exception occurs in console log and workflow version history is not opened Steps:
1: Login as user that have permissions to Admin module.
2: Click on Admin from left side menu.
3: Click on Workflow Configuration
4: Click on Version History link
Expected Result: Grid is displayed with version history of workflow.
Actual Result: Exception occurs in console log, workflow version history is not displayed.
Fixed
Missing label configurations for adding participants in complaints history Steps:
1: Login as user that have permissions to Cases.
2: Click on Cases from left side menu.
3: Click on Participants sublink.
4: Add new patricipant.
5: Click on People sublink
6: Click on edit button and change initiator data.
7: Click on History sublink.
Expected Result: All history events are displayed with appropriate name configured in admin/label configuration.
Actual Result: Event names are not configured in admin/label configuration and instead of value is displayed id.
Fixed
Even though object is restricted user can update it Steps:
1: Login as user that have permissions to Cases.
2: Click on Complaints from left side menu.
3: Click on “Restrict” check box.
4: Try to update complaint title
Expected result: User can’t update title because object is restricted.
Actual result: Title is successfully updated.
Fixed
LDAP User Management > Clone User LDAP User Management > Clone User

On cloning a user, the new user did not get a confirmation email with account details and temporary password.

Fixed
403 error occurs when user try to declare record in tasks attachments Steps:
1: Login as user that have permissions to tasks.
2: Click on New/Task
3: Insert all required fields and submit it.
4: Click on Attachments sublink.
5: Add document, right click on it and click “Declare as record”.
Expected result: Status is changed into RECORD.
Actual result: Status remains ACTIVE, 403 error occurs even though task is assigned to logged in user.
Fixed
User can enable calendar without inserting password Steps:
1: Login as user that have permissions to Admin module
2: Click on Admin from left side menu.
3: Click on Security/Calendar Configuration
4: Select “Enable Calendar Configuration” leave password field empty and click Save button.
Expected Result: Appropriate validation message is displayed informing the user that can’t save the configuration without inserted password.
Actual Result: Action is successful even though password is emptyAnd then when I open closed case I see exception for not correct credentials.
Fixed
Exception in console log for not unique id of elements in Calendar Configuration Steps:
1: Login as user that have permissions to Admin module
2: Click on Admin module from left side menu.
3: Click on Security/Calendar Configuration
4: Open dev tools.
Expected Result: no errors in console
Actual Result: Error occurs for not unique ids on page.
Fixed
Restrict Case/Complaint should restrict documents level access Steps:
1: Login as user that have permissions to Cases/Complaints
2: Click on Cases from left side menu.
3: Click on “Restrict” check box.
4: Click on Documents sublink.
5: Try to do some action – delete, update, download, change participants, declare as record, rename, replace etc.
Expected Result: Because case is restricted all actions on documents are restricted also.
Actual Result: Action on documents are not restricted, user can delete documents, download, update etc.
Fixed
Searching for groups in new task shows “No Results” Steps:
1. New Task
2. Click on the field “Assign To”
3. Upon searching a group and there are results “No Result” is still displayed.
Fixed
Advanced Search – Implement Phrase search Phrase search should be implemented everywhere in the application where current Search functionality is used. That means that when searching with some “phrase” (any text that is between quotes (“…”) ), should return only results that include actual phrase (whole text between the quotes).
For example, searching with “ArkCase application” should return any object, file, document…that contains exactly the string “ArkCase application”…not only “ArkCase”, or only “application”
Fixed
Admin – Calendar Configuration – Task node In Admin/Calendar configuration, Tasks section should be completely removed, since we do not have calendar integration for Task objects Fixed
User Picker for choosing Assignee in Document Repository When creating New Document Repository, part for choosing Assignee should be changed to be same as in New Task module. Assignee field should open User Picker with 2 panels, meaning after choosing user, second panel to be opened for choosing Owning Group. Fixed
User/Group picker should allow multiple selection Search modal for adding users/members to the group should offer multi select
There should be one more panel below the search box for listing all selected users. After selecting all members needed, they will be added all together in the process (added to the group)
Fixed
Add person modal box is not displayed for adding Initiator in new Case and complaint Steps to reproduce:
1. Go to New case page.
2. Click on Initiator fieldActual Result:
When user click on Initiator filed , Add person modal box is not displayed.

Expected Result:
When user click on Initiator filed , Add person modal box is displayed and person can be added for initiator of that object

Fixed
When user cancels deleting of member of ad hoc group action error occurs Steps:
1: Login as user that have permissions to Admin module.
2: Click on Security/Organizational Hierarchy
3: Expand some ad hoc group
4: Click on delete icon next to some member
5: Click on “Cancel” button.
Expected Result: Dialog is closed, member is not deleted.
Actual Result: Action Error occurs.
Fixed
audit and history running slow and count with getPageResults have different queries in AuditDao
methods: countAll and findPagedResults
have different query but the query should be the same.Also by testing on core, by adding index on cm_parent_object_id queries are much faster
from > ~5 sec, they are executed in 0.01 sec.
We need to create index on acm_audit_log for cm_parent_object_id.
Fixed
Search is not working – returns more results in grid than expected 1: Login as user that have permissions to Complaint and Search module.
2: Click on Complaints from left side menu.
3: Copy the complaint Id from right top corner.
4: Click on Search from left side menu.
5: Insert copied complaint id and click Search button.
Expected result: all objects related to complaint with id searched are listed.
Actual result: a lot of objects are listed in grid that are not connected to searched complaint id.
Fixed
Search functionality in Organizational Hierarchy module Search functionality to be implemented for Organizational Hierarchy.
Search functionality from the doc-tree component can be used
Multiple groups can be selected after the search results and same action can be done for all of them together
Fixed
Functional Access Control Implement Search/Filter functionality on Functional Access Control 3-panel view Fixed
Document level ACL can’t be added on root folder Steps:
1: Login as user that have permissions to Cases/Complaint
2: Click on Cases from left side menu.
3: Click on Documents sublink.
4: Right click on root folder and click on Participants.
Expected Result: Participants exists and can be clicked.
Actual result: Participants is missing.
According to document attached to this ticket https://project.armedia.com/jira/browse/AFDP-4158,
there should be possibility to add document level ACL to root folder and currently is not possible.
Please see screenshot from document !screenshot-1.png|thumbnail!
Fixed
Code refactor Code refactor for the LDAP user management – 3-view panel.
The communication between the controllers and directives should be through sending functions instead events.
Fixed
After approving automatic generated task, statuses are changed slowly and “Approve Document” button is not removed Steps:
1: Login as user that have permissions to Complaints module
2: Click on Complaints from left side menu
3: Open some complaint and click “Close Complaint”
4: Choose “No further Action” for complaint disposition and, insert all required fields and submit form
5: Click on Tasks sub link and click on “Close Complaint” task
6: Click “Approve Document” button,
Expected result: “Approve Document” button is not visible, task status is changed to Closed, complaint status is changed to Closed.
Actual result: “Approve Document” button remains visible, statuses of complaint and task remain same, if user refresh page {Error}} folder appears in fancy tree.Please note that user can click on “Approve Document” button again and that will cause exception. If user refresh the page, error will occur.
Fixed
When user id contains a dot, then that user’s profile cannot be edited (not the fields, not the profile picture) Steps:
1. Login as a user whose ID includes a dot, e.g. matt.maines, david.miller (or create a new user)
2. Open the user profile
3. Make any change (upload profile picture, set any of the profile fields)
4. Refresh the profile page.
– upload of the profile picture shows an error
– updating the fields seems to work, but on page refresh, the updates are lost
Fixed
Admin – Email Templates Need to be able to Edit the text of the email template or at least have access to download the template locally and then re-upload a new version. Right now I don’t have access to download and modify the current template. I only have the ability upload a new template. See attached SS. Fixed
Report of investigation can not be added in Cases Steps:
1: Log into the application.
2: Click on Case Files in left navigation menu.
3: Scroll down to the Documents header, click on the black arrow down button.
4: Right click on the folder.
5: Select New Document and select Report of Investigation from the menu.
6: Insert all required data: Report title, Approver and click Submit button.Actual Result:

Report of investigation documents is not uploaded and no error are displayed in the console.

Expected Result :

Documents is successfully uploaded.

Fixed
Correspondence document can’t be added in Cases Steps to reproduce:
1. Go to cases page.
2. Select case and go to Documents section.
3. Right click on the root folder and and select New correspondence
4. Add new correspondence (bug)Actual Result:
When user tries to add correspondence document [500, Internal Server Error]Database query returned no results is displayed in the console and the document is not added.

Expected Result:
New correspondence document is successfully added .

Fixed
Empty Authorized group list after adding user to an adhoc group Steps:
1. Clone existing user (Admin/Security/LDAP User Management):
2. Add that new user to an adhoc group (Admin/Security/Organizational Hierarchy):
3. Confirm user is a member of the adhoc group (Admin/Security/Organizational Hierarchy):
4. Go back to Admin/Security/LDAP User Management, *Authorized* group list is empty (note that both network requests to populate both *Not Authorized* and *Authorized* group lists are completing successfully):
Fixed
Hours’ widget on the Timesheet overview page to show as a table We need to update the ‘Hours’ widget on the timesheet overview page to show as a table instead of a bar chart.
Columns in the ‘Hours’ Widget Table should follow this order:
– Date,
– Object Title,
– Object Number,
– Hours
Note:There will be a separate row in the widget table for each date.
Fixed
When user does not select document and click “Send Email” link by default all documents should be added in attachments 1: Login as user that have permissions to Cases/Complaints/Documents modules
2: Click on Cases/Complaints/Documents from left side menu.
3: Click on Documents sublink under specific object.
4: Click on “Send Email” link (without selecting file).
5: Insert external or internal email and click “Send Email” button
Expected result: By default all files are selected and sent.
Actual result: Nothing is sent, exception occurs in console log.
Fixed
Admin – Security – Re-order Functionality Admin – Security – Re-order Security Functionality in a more logical order. Fixed
Case file of the created case Steps to reproduce:
1. Go to new case page
2. Create new case with all fields populated.
3. Open the pdf case file of the created caseIn the opened document the description field is empty and notification for the combination of owner and no access is displayed although that combination was not used
Fixed
Assignee is not updating when object has reference Steps to reproduce:
1. Create new case with assignee
2. Go to Reference table of the created case and add reference(e.g case,complaint,task,file)
3. Go to participant section of the created case
4. Edit the assignee (bug)Actual Result:

When user tries to edit the current assignee, error occurs in console (vendors.min.js:311 service call error:[500, Internal Server Error]Could not commit JPA transaction; nested exception is javax.persistence.RollbackException: Exception [EclipseLink-4002] (Eclipse Persistence Services – 2.6.0.v20150309-bf26070): org.eclipse.persistence.exceptions.DatabaseException)

Expected Result: Assignee is successfully updated.

Fixed
Assignee name is not displayed in the Approvers table when process is withdrawn or ended with non-concur Steps:
1. Log into the application with ann-acm@armedia.com user.
2. Create new case
3. Go to approval routing page of the created case.
4. Initiate the process
5. Click non-concur button.Actual Result :

When approval routing process is ended , approval Ann name is not displayed in the Approvers table.

Expected Result:

When approval routing process is ended , approval Ann name should be displayed in the Approvers table.

Fixed
When user is “deleted” from ArkCase, user’s account in LDAP should be disabled (locked) versus deleted Deleting user functionality is already in ArkCase. The user entity is marked as “INVALID” in database and the user account is completely removed from LDAP. The user membership to any group is already handled (user is removed from groups where it has membership).

Improve this implementation to disable/lock the user’s account versus remove it from LDAP. This way during ldap partial synchronization we should be able to detect user accounts which are disabled and mark them as invalid in ArkCase. This would include changing the ldap search query to search for all users versus only active accounts as we do now. Then (if possible) determine if the users accounts are active or not and updated database properly. Or separate search for active and disabled accounts.

Fixed
Retrieving a new user created on LDAP fails (missing language) Steps:
1. create/clone a user in ArkCase
2. trigger LDAP sync on other ArkCase instance
3. sync fails, complaining that the new user is missing language: {{null value in column “cm_lang” violates not-null constraint}}From my analysis, setting default language in {{LdapUser.toAcmUser()}} would suffice, but maybe there is a better place to set it.
Fixed
Audit History Steps:
1. Go to Admin – Audit History page
2. In the Keep Audit and Notification events (in days) field enter number of days (e.g 2)
3. Apply the changesActual Result :

Events for the objects that are created 2 days ago are removed from object history table but they are still displayed in the Notification module table.

Expected Result :

Events for the objects that are created 2 days ago are removed from object history table and not displayed in the Notification module table.

Fixed
After signing appropriate message to be displayed for successful or not successful signing Steps:
1: Login as user that have permissions to Tasks module
2: Click on Tasks from left side menu
3: Open some task assigned to user You have logged in
4: Click on Sign button.
5: Insert valid password and submit it
Expected result: Validation message is displayed informing that task was successfully signed.
Actual result: Nothing is displayed. Exception occurs in dev console : service call error:[0, Validation error]Validation error. See attachment.
6. Insert not valid password and submit it
Expected result: Validation message is displayed informing that password is not correct and task is not successfully signed.
Actual result: Nothing is displayed. Exception occurs in dev console :
service call error:[400, Bad Request]Could not sign TASK with ID = 33128.
Server encountered exception: Could not authenticate with the password provided
Exception type was: ‘com.armedia.acm.core.exceptions.AcmUserActionFailedException’.
Fixed
3-Panel view component – CSS issue and empty field at the top In 3-panel view component for LDAP User Management, some improvements needed:
– CSS – alignment of the Search filed with the box above
– Empty field at the top of each component should be removed
Fixed
Code refactor – LDAP User Management 3-panel view Code refactor for the LDAP user management – 3-view panel(search/filter and pagination functionality).
The communication between the controllers and directives should be through sending functions instead of events.
Fixed