Blog Post

Release Notes
5 MIN READ

Lithium Community 18.7 Release Notes

JohnD's avatar
JohnD
Khoros Alumni (Retired)
7 years ago

New Features

Announcement: New Lithium Customer Blog

Last week, we launched a new, customer blog where we plan to share details about what we’re working on and what’s on the horizon. In case you missed them, here are the first 3 posts:

We recommend checking them out and subscribing to the Lithium Custom Blog for future announcements and product previews.

Authoring experience enhancements

As part of our ongoing effort to improve the overall authoring experience on Lithium Communities, we have add these improvements:

  • Auto-save for Blog, Idea, and TKB comments
  • Enhanced image hyperlinking behavior for Media Experience

Auto-save for Blog, Idea, and TKB comments

Prior to this release, auto-save was supported only for topic messages and replies in Forums and Groups and topic messages in Q&A. Now, the auto-saving of posts and comments is supported for all discussion styles, including Blogs, Ideas, and TKBs.

To enable autosave for all discussion styles and set the autosave time interval, you use the existing admin settings you used for Forums and Groups under Admin > Posts & Topics > Settings:

When enabled, comments are saved automatically, and users are prompted in-line, if there is an autosaved comment that can be recovered and used:

Note: If you have styled the message auto-save component (Autosaved Drafts), the auto-save component for comments and replies apply the same styling.

Image hyperlink changes for Media Experience

We’ve released a new version of the Media Experience (version 5.1). In Media 5.1, clicking images in posts now behaves differently depending on whether the image includes an embedded hyperlink or not. Specifically:

  • Images without hyperlinks open up on the lightbox experience when clicked
  • Images with embedded hyperlinks open the linked page when clicked

In previous versions of Media Experience, linked images presented two actions on the image when the user hovered over it--one to visit the site for the embedded link and the other to view the image in the lightbox.

If you opened the image in the lightbox, you had to exit the lightbox, hover over the image again, and click the URL to open the linked URL. To opt for the new image linking behavior, you can enable Media version 5.1.

To enable Media version 5.1:

  1. Sign in to your community as an Admin.
  2. Go to Studio > Features.
  3. Scroll down to Media and set value to 5.1.

  4. Click Save.

Learn more about the differences between different versions of Media Experience.

Studio Publish Enhancements

We have made internal improvements to how we load plugins. We believe these improvements will prevent or greatly reduce the “Server Too Busy” status messages experienced by some customers upon publishing to production with Studio Publish. Customers with a large number of complex skins in Studio might notice a slightly longer wait time during Preview Accept, Go Live, and Rollback Studio Publish actions. We recommend removing unnecessary or unused skins from Studio.

As a result of this enhancement, you will see a new alert message in a yellow banner in Studio Publish that says, "Studio Publish is temporarily disabled while a publishing action runs. Refresh the page in a few minutes to see if the action completed." The alert is designed to let you know that an action is in process. Simply wait a few minutes and then refresh the page. When the alert no longer appears, the publishing process has finished. 

 

You can export unused skins to the SDK plugin using this command:

li export-studio-plugin --points "skin" --force

Salesforce Connector updates

As part of the 18.7 Release, we are upgrading our Lithium-side usage of Salesforce APIs from version 7 and 32 to version 42. Lithium uses these APIs to power multiple integration use cases through our Salesforce Connector. There is no change on the Salesforce side of installed packages.

  • Why: Salesforce regularly upgrades and retires platform APIs used by our connector. To avoid deprecation related issues and impact to our customers, we must stay up to date.
  • Impact: These updates only impact the LIA backend; we don’t expect any impact to existing installations.
  • Recommendation: We have tested the core use cases our product supports. Even though we don’t expect any impact to customer installations, any customizations you might have made to your Salesforce Connection might not work after the upgrade. To mitigate any potential problems, we recommend testing out the upgrade in your stage environment first.

AngularJS library upgrade coming in 18.8

For the next Community release (18.8), we will be upgrading the AngularJS libraries from 1.4.8 to 1.7.3. As part of the upgrade, we will test all customer Angular integrations and solve any issues with the upgrade that we find.

Improved access to Product Catalog import tool

You no longer need to have Ratings and Reviews enabled for your community in order to integrate your Product Catalog using the Product Catalog import tool.

API changes

LiQL Updates

We now support MATCHES with the title and description fields on the Boards and Categories collections. This change has also been backported to 18.6.

Examples:

SELECT id FROM boards WHERE title MATCHES 'Developer'
SELECT id FROM boards WHERE description MATCHES 'REST APIs'
SELECT id FROM categories WHERE title MATCHES 'Support Center'
SELECT id FROM categories where description matches 'Find solutions and support support for Lithium products here'

You Found It. We Fixed It.

  • Lithium Community’s Value Analytics enable you to customize the text in the response options for some survey questions. However, the customized text was not being reflected in LSI reports or CSV exports. We have fixed both of these issues and now customized survey text displays in LSI Value Analytics reports and exports.
  • We have fixed the issue where a community user’s Value Analytics survey submission resulted in an error message stating that the survey could not be submitted.
  • Previously, on non-responsive community sites users received an error when uploading videos for a contest entry. This issue has been fixed and now videos upload fine.
  • We have fixed the issue where some member accounts were not being completely deleted when using the Admin Close Account feature when GDPR was enabled. This issue has been fixed, and now the accounts are completely removed and no longer accessible via the profile page.
  • We have fixed the issue where the second question in the Value Analytics survey did not display properly when using a right-to-left language (like Arabic) in the Chrome browser. Now, the question displays properly.
  • Previously, posting a message containing an image was not keyboard accessible. This accessibility issue has been fixed.
  • We have fixed the issue where the Value Analytics CSV export displayed random characters in the username column instead of the proper username.
  • We have fixed the issue that was preventing the timely delivery of some email notifications and/or notifications being displayed in the notifications feed.
Updated 5 months ago
Version 9.0
  • SuzieH's avatar
    SuzieH
    Khoros Alumni (Retired)

    luk

    It is a forum topic and I created that subscription in order to test this, so I created it within the last 15 minutes.  

    Update: I did send a note pointing to your question to the Engineering team who implemented this. Hopefully, they can come back with some suggestions. 

     

     

  • SuzieH JohnD It wasn't explicitly mentioned here, but the docs say is_subscribed field was added to the API v2 user_context object in 18.7, that's why I ask here: I have the issue that this value is always false, no matter if I'm subscribed to a topic or not, could you double check that for me on one of your instances, do I need to do something "special" to make this work or could this be a bug?

    Query to check:

    SELECT subject, user_context FROM messages ORDER BY post_time DESC LIMIT 50

    and if we're on it: another useful addition to the user_context collection (IMHO) would be a can_edit property =)!

    A much bigger improvement to the user_context object could be made by providing links/urls for actions related to the information already present, e.g.  can_kudo would be accompanied by a kudo_action (which of course should change to the 'remove-kudo' version if the user has already kudoed the message!), the can_delete property would have a delete_action accompanying it, above (new) can_edit property an edit_action, the can_reply property a reply_action and the is_subscribed property a subscribe_action (changing to the unsubscribe-version if subscribed) and maybe even the read property could even have a read_action providing a link to mark the message read or unread depending on its current value.

     

    something unrelated I noticed as well (which could be improved, e.g. forwarded to the product team): If we specify the board field in the query above, we get back the following:

          "board" : {
            "type" : "board",
            "id" : "<board.id>",
            "href" : "/boards/<board.id>",
            "view_href" : "<url>"
          }

    which is mildly unhelpful as (at least for us) in most cases AT LEAST the title (mostly short_title, as it inherits the title if empty) is required information used in customizations (to generate a link to the board), I figured out that if you specify board.short_title (have to add the other required fields as well, explicitly!) that I can get this information without making a separate query to the boards collection, so there is a workaround, but wouldn't it make sense to add that field to the default response object of the field board?

  • SuzieH's avatar
    SuzieH
    Khoros Alumni (Retired)

    luk Could you try user_context.is_subscribed in your SELECT statement and tell me if that gives you the correct result?

  • SuzieH sure, just tried, same result, does that work for you?

    EDIT: Oh wait, you want me to query the user_context collection directly? one sec...

  • SuzieH Nah, I guess you wanted me to just specify the field... the user_context collection can't be queried at all separately:

    {
      "status" : "error",
      "message" : "undefined collection: user_context",
      "data" : {
        "type" : "error_data",
        "code" : 602,
        "developer_message" : "",
        "more_info" : ""
      },
      "metadata" : { }
    }

    plus it would also not provide constraints to use on it, which makes it kinda useless =)... so the initial answer stays valid, same result with specified user_context.is_subscribed field!

  • SuzieH's avatar
    SuzieH
    Khoros Alumni (Retired)

    luk I just tried this query

    select select id, author.login, user_context.is_subscribed from messages where id = '915'


    and got this response

    {
      "status" : "success",
      "message" : "",
      "http_code" : 200,
      "data" : {
        "type" : "messages",
        "list_item_type" : "message",
        "size" : 1,
        "items" : [ {
          "type" : "message",
          "id" : "915",
          "author" : {
            "type" : "user",
            "login" : "ProductPerson"
          },
          "user_context" : {
            "type" : "user_context",
            "is_subscribed" : true
          }
        } ]
      },
      "metadata" : { }
    }


    I also was able to get "is_subscribed" : true when I only used user_context in the select statement (without the .is_subscribed field specified) and without filtering for a specific message as well. I was able to see messages where is_subscribed = true.  

    I'm not sure why this isn't working for you.

  • SuzieH Thanks for looking into it, that's interesting... did you or that user recently subscribe to this topic or was that already the case? What is the type of board (e.g. forum, tkb etc.) of the topic? Thinking that it might be a) an API caching issue of some sort, have seen those once in a while or b) an issue with the type of the board where it could work for some but not for others (my scenario is in a regular forum board)...

  • SuzieH just tried on two other instances, same behaviour, just subscribed to a forum topic but

    SELECT id, author.login, user_context FROM messages WHERE id = '<root.message.id.of.topic.just.subscribed>'

    still returns false for is_subscribed... so it does not seem to be an isolated issue on one instance, two instances are on 18.9, one on 18.10, the version of the community also does not have an influence here... strange

  • SuzieH so identical context for both of us with different results, now I'm kinda out of ideas ^^ =), what version is the community on where you are trying that?