Skip to Content Skip to Menu

Since CB Conditional 5.0.0 has officially released it's that time again to change tasks! There has been a lot of pressure to support on-site notifications. It's finally happening! Check out the details below.

CB Activity introduced the first phase of the notifications API, but it didn't really work out how I expected. The notifications currently are basically sharing the same API and database as normal activity. The problem with this is first normal activity has to exclude notifications so that means a wildcard NOT LIKE 'notification.%' being added to the query slowing it down. Second there could be 100,000 notifications stored and that would negatively impact all activity streams performance for no reasons.

What all this means is a new separate API and database table are being implemented specifically for handling notifications. All existing "notification.%" activity entries will safely migrate over so you've nothing to worry about if you've some stored already. With this change will also of course be improvements to CB Auto Actions to handle storage of notifications. I will be reviewing implementing system actions for notifications regarding various things that you can freely enable. A few other changes are also coming as noted on our forge below.

https://forge.joomlapolis.com/projects/cb-activity/issues?query_id=111


krileon replied the topic:
6 years 11 months ago
Another big improvement almost done. Basically it's activity grouping within the same stream. If there's activity comment, tag, of like on the same stream it will try to group them together as long as they are within 10 days of each other. Below is an example of this in action.



For example if you've 6 friends who commented on an activity entry it creates 6 comment activity (if this system action is enabled). Currently you'd just have all 6 displayed. With the above implementation it'll try to group all of these together within a 10 day limit (this is all a part of the core activity template file so you'll be able to change it as desired).

It still has some work to go (the more link will be a modal popup and show the most recent 30ish users), but this should certainly improve the UX of comment, tagged, and liked, activity.
krileon replied the topic:
6 years 11 months ago
Just another update. Still progressing here. Notifications are doing well and numerous improvements to other streams API has also been implemented. Activity streams due to the separate notifications API are approximately 30-40% faster.

You'll also be able to display Likes, Follows, and Notifications as streams instead of just buttons. So you can have a Likes stream as a module for example showing the people who liked the module in addition to the button.

There are now layout modes for Activity and Comments streams. The default layout is of course Stream, but you can also select Button and Toggle. Button layout will display the stream in a popup modal window after clicking the button. Toggle will replace the button with the stream after clicking as an inline ajax replace usage.

You can now create menu items to Comments, Likes, and Following streams. Not 100% sure why you'd want to, but you can lol.

There's not a lot left to go so we're almost there! I've been doing significant amount of retesting to ensure your streams will continue to function fine.

forge.joomlapolis.com/projects/cb-activity/issues

After the remaining above tickets are completed I will be working on new build releases of CB GroupJive, CB Gallery, and CB Auto Actions to make use of the new notifications API. Especially CB Auto Actions as the Activity action certainly will need improvements.

I'm hoping for a late release next week, but it depends on what issues I run into along the way so no promises! Sorry!
krileon replied the topic:
6 years 11 months ago
Time for an update! I've the new notification API implemented and functioning well. Backend management of notifications is also implemented. The usage of notifications is system generated only (you can not create a notification outside of API). Global notifications are also implemented by creating an asset of global, which will display to every user (but they can't delete it; only the person who owns it or a moderator can).

A lot of other improvements are coming like display improvements with comment, tagged, etc.. activity. New override parameters have also been implemented for activity. What these overrides do for example is let you force off commenting for a specific activity entry or override the asset for the commenting of an activity entry. That may not seam too exciting, but it's a huge help if you're generating custom activity, but don't want to process its display.

Another great new feature is messageless meaningful posts. This means when posting on a stream you can bypass needing to supply a message if you add a link, location, or action to it. This also works if you're uploading using CB Gallery integration. In short you can upload a photo and not have to include a message; just upload and post.

A lot more is still on the way. Check out progress below!

forge.joomlapolis.com/projects/cb-activity/issues?query_id=111