This repository has been archived by the owner on Nov 1, 2022. It is now read-only.
#753 Activity log - Make links instead of text in log message #869
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Resolves #753 Activity log - Make links instead of text in log message
Type: feature
Solution
LinkedCommentFormatter class adds the link to old activity log comment, already storing in DB.
It tries to find the comment's string pattern by system keyword, parses the comment, and changes the parameter of the comment to link.
LinkedCommentCreator class adding the link to the newly created activity log comment, which is about to insert to DB.
It uses comment's pattern, comment's parameters and activity log system keyword to create linked comment and store it to DB.
Links patterns to the entities are stored in ActivityEntityKeywordsProvider class.
Breaking changes
CustomerActivityService.InsertActivity - on each invoke the method calls LinkedCommentCreator.CreateLinkedComment.
In case CreateLinkedComment method throws an exception, it throws the exception further.
Cshtml view files are changed so that the column 'comments' are not encoded anymore - so the link is shown in the correct way. May be not safe.
Testing
Added unit tests:
LinkedCommentFormatterTests
LinkedCommentCreatorTests