Read the statement by Michael Teeuw here.
v2.22.0 | default calendar: no symbols with customEvents
-
@JDIBBY I have not looked at it more. can u say what symbols you used?
the full fontawesome name please.
-
@JDIBBY can you use the link I posted about the dev console and see what symbol class and name was used the those elements?
-
there was a change concerning symbols, see https://github.com/MichMich/MagicMirror/pull/2949/files
this should be backward compatible in normal setups but I don’t know how this is compatible with customEvents.
Did you try something like
..., symbol: 'fa-solid fa-megaphone' ...
or..., symbol: 'fas fa-fw fa-megaphone' ...
? -
@karsten13 but he should not have to use the fa- prefix on megaphone, cause its in the setting
-
@JDIBBY I changed one of my test cal setups to use custom events, copying your data but changing the trigger text
calendars: [ { url: "http://localhost:8090/modules/default/calendar/woot.ics", symbol: "calendar", color: "#efefef", name: "Rags Calendar", } ], customEvents: [ { keyword: 'Weekly', symbol: 'file-signature' }, { keyword: 'Every', symbol: 'champagne-glasses' }, ],
and see this
-
@sdetweil looks great - that’s the way I’d like to have it. :grinning_face:
So you didn’t specify a symbol class for thecustomEvents
at all? I have had no success with this so far… -
@kai no, exactly as I posted. are you sure those are the phrases in your calendar subject?
I had a problem once before, and had Two spaces between words in the calendar event, and only one in the events stucture…
-
I’ve been having the same problem. In mine the
fas fa-fw fa-
prefix was missing, so I changed my config to this:customEvents: [ {keyword: "Games", symbol: "dice fas fa-fw fa-dice"}, {keyword: "Rugby", symbol: "running fas fa-fw fa-running"}, {keyword: "Guitar", symbol: "guitar fas fa-fw fa-guitar"} ],
I duplicated the “dice” at the start so it keeps working when the bug is fixed. And the icons appear now.
-
@DaveChild hm… that is the symbolPrefix variable in 2.22
-
@sdetweil I’ve not delved far into the code but it looks to me like the
symbolsForEvent
function in calendar.js is getting the default symbol with the default class, but then overwriting that default with the symbol from customerEvents - but not applying the default class to it.This might be fixed with applying
this.getCalendarPropertyAsArray
toev.symbol
in the linesymbols[0] = ev.symbol;
.I’d do a PR myself but I have nowhere near enough experience tinkering with MagicMirror to be pushing code to a default module :). But I think that’s where the problem is, and my solution will work around that issue crudely for the moment.