1.28 - Dashboards and calendars

1.28 – Work it Dashboards, Make it Calendars

Dear Kanka users, behind the humorous title, this update once again brings improvements to dashboards. Calendars also get some love, and a lot of interfaces are now better. Let’s go over all the big changes.


Winner of our May community vote, dashboards received some love. The random widget now has an option to include filters if the entity type is specified.

dashboards random widget filter

The calendar widget on your dashboards now shows the weather of the current day. Also, I’ve reworked the query calculating what reminders to show to be more correct when the campaign has many recurring events. Reminders recurring on moon phases are still excluded from this interface, as they are too resource intensive to calculate.

dashboards calendar weather

Due to the new logic for more accurate reminders, rendering of the widget happens after pageload. This means that your dashboard loads faster on the initial page load, with calendar detail loading later.

dashboards calendar widget loading

Calendar default layouts and other improvements

Calendars, the runner up from the community vote, also get some updates. Firstly, a calendar can now default to the yearly layout. This new option called “default layout” is available under the “Calendar” tab when editing a calendar.

calendar change default layout

We’ve also improved the calendar UI. The header buttons now follow a more unified interface, with new options to make quick yearly jumps.

calendar yearly jumps

The button to set the day’s weather displays “update weather” if a weather effect already exists.

Moon cycles now use a correct icon for the quarters, and uses the correct nomenclature to refer to what moon phase display. Goodbye waning and waxing moons, say hello to first and last quarter.

calendar moon phases

Deletion confirmations

We’ve improved the various deletion confirmation alerts. If an element is recoverable with the entity recovery feature of boosted campaigns, an alert displays.

deletion confirmation modal

And if the deletion is final, a clearer message displays.

delete confirm permanent

Campaign modules new interface

The campaign modules interface has been redone. Clicking on a module with directly enable or disable it, without having to click save and reload the page. This way, disabling the calendar feature is even faster!

campaign module new UI

Campaign applications

We’ve also redone the campaign application interface. It now shows various messages depending on the status of applications. Changing the application status is also now only available in this interface, and no longer in the campaign edit main form.

campaign applications change setting

Quick Creator

The quick creator UI was updated to a more modern look.

quick creator selection

On larger screens, the various forms now use two columns.

quick creator form

Other improvements to Kanka

Advanced mentions can now include parameters. For example, you can do [calendar:321|params:year=2019&month=12] for the mention to go to the year and month. You can also do [family:400|params:all=1] to automatically show all members when the family is shown.

Submitting an entry to a worldbuilding prompt will now also check that the public role has access to the given entity, given the high number of invalid submissions we have received.

Pinned attributes that have no value get a new pinned-attribute-empty class.

The campaign recovery interface can now order the list based on the columns shown.

And lastly, quick links can finally target the default campaign dashboard.

Spring cleanup 2022 – phase 3

Continuing on our tradition of cleaning up the source code, this update cleans up some databases which still had old fields. A lot of interfaces in the campaign administration were also updated and cleaned up.

CSS changes

The body’s .skin-black and .sidebar-mini classes were removed. The root element’s font-size was changed from 10px to 16px, meaning your custom CSS classes using rem sizes will need updating.


Navigating to the second page of an organisation’s members works again.

Fixed a bug with non-admins not being able to edit or delete relations on an entity they can edit.

Printing conversations no longer crashes the servers.

Registering with a social media account now correctly creates the first campaign.

Ordering a journal’s subjournals interface by journal name now works.

In some cases, private attributes were showing up to people who shouldn’t see them.

Fixed various og:description tags in Kanka.

If you are subscribed to Kanka, you can no longer delete your account without first cancelling your subscription.

That’s it for 1.28! If you missed 1.27, you can head over to the release notes.

As always, thank you to our amazing subscribers who make these frequent updates possible. Come join us and our community on our Discord server!

2 Replies to “1.28 – Work it Dashboards, Make it Calendars”

  1. Ahora, tener activado el plugin “Calligraphic Headings” hace que las letras de las entidades se vean muy grandes. Hay que desactivarlo para que se pueda ver la web con el tamaño de letra normal. Espero que se pueda arreglar, pues ese plugin me gusta bastante. ¡Gracias!

    Now, having the “Calligraphic Headings” plugin activated makes the entity letters look very large. You have to deactivate it so that you can see the web with the normal font size. I hope it can be fixed, because I like that plugin a lot. Thank you!

  2. Hello. I have to report a small Problem that is occuring since the change to the calendar widget.

    For my Campaign, if i use the calendar widget on the dashboard, the previous Events are not displayed correctly. It only shows reocurring ones and if i hover those dates, they are in the future and all over the place. So for example, one that is shown, is in 5 days (in the future)

    I also remember, before a certain update, that the calendar was working correctly. Maybe im just doing something wrong.

    Thank you for your help and sorry for the bad english

Leave a Reply

Your email address will not be published. Required fields are marked *