MMM-CalendarExt icon indicating copy to clipboard operation
MMM-CalendarExt copied to clipboard

problem since update

Open vxgsiturbo opened this issue 4 years ago • 7 comments

every since i updated magic mirror my calendar no longer displays. the upcoming event display only all day events and only 1 but the main caledar doesnt display at all

vxgsiturbo avatar Apr 02 '20 22:04 vxgsiturbo

Show me your configuration.

eouia avatar Apr 03 '20 07:04 eouia

calendar links removed privacy on post

/* Magic Mirror Config Sample *

  • By Michael Teeuw http://michaelteeuw.nl
  • MIT Licensed.
  • For more information how you can configurate this file
  • See https://github.com/MichMich/MagicMirror#configuration

*/

var config = { address: "localhost", // Address to listen on, can be: // - "localhost", "127.0.0.1", "::1" to listen on loopback interface // - another specific IPv4/6 to listen on a specific interface // - "", "0.0.0.0", "::" to listen on any interface // Default, when address config is left out, is "localhost" port: 8080, ipWhitelist: ["127.0.0.1", "::ffff:127.0.0.1", "::1","::ffff:192.168.1.212"], // Set [] to allow all IP addresses // or add a specific IPv4 of 192.168.1.5 : // ["127.0.0.1", "::ffff:127.0.0.1", "::1", "::ffff:192.168.1.5"], // or IPv4 range of 192.168.3.0 --> 192.168.3.15 use CIDR format : // ["127.0.0.1", "::ffff:127.0.0.1", "::1", "::ffff:192.168.3.0/28"],

language: "en",
timeFormat: 24,
units: "metric",
// serverOnly:  true/false/"local" ,
		     // local for armv6l processors, default 
		     //   starts serveronly and then starts chrome browser
		     // false, default for all  NON-armv6l devices
		     // true, force serveronly mode, because you want to.. no UI on this device

modules: [
	{
		module: "alert",
	},
	{
		module: "updatenotification",
		position: "top_bar"
	},
	{
		module: "clock",
		position: "top_left"
	},
	{
		module: "calendar",
		header: "Calendar",
		position: "top_left",
		config: {
			calendars: [
				{
					symbol: "calendar-check",
					url: ""					}
			]
		}
	},
	

{ //disabled:true, module: 'MMM-CalendarExt', position: "top_center", config: { system: { show: ["daily", "upcoming"], locale: 'en', redrawInterval:60000, }, views: { daily: { position:'upper_third', counts:7, }, upcoming: { position:'top_left', limit:5 }, }, defaultCalendar: { maxEntries:50, maxDays:180, interval: 1000601, }, calendars :[ { name: "Calendar", symbol: "calendar-o", url: "" }, { name: "Work", styleName:"style5", symbol: "calendar-o", url: "" },

    ],
  }
},

{ module: "compliments", position: "bottom_bar" }, { module: "compliments 2", position: "bottom_bar" }, { module: "currentweather", position: "top_right", config: { location: "Slough", locationID: "3333194", //ID from http://bulk.openweathermap.org/sample/city.list.json.gz; unzip the gz file and find your city appid: "64481ac9ba9a3a11641abc1723af0b9b" } }, { module: "weatherforecast", position: "top_right", header: "Weather Forecast", config: { location: "Slough", locationID: "3333194", //ID from http://bulk.openweathermap.org/sample/city.list.json.gz; unzip the gz file and find your city appid: "64481ac9ba9a3a11641abc1723af0b9b" } }, { module: "newsfeed", position: "", config: { feeds: [ { title: "", url: "" } ], showSourceTitle: true, showPublishDate: true, broadcastNewsFeeds: true, broadcastNewsUpdates: true } }, { module: 'MMM-ImageSlideshow', position: 'top_center', config: { imagePaths: ['modules/MMM-ImageSlideshow/exampleImages'] } },

]

};

/*************** DO NOT EDIT THE LINE BELOW ***************/ if (typeof module !== "undefined") {module.exports = config;}

vxgsiturbo avatar Apr 03 '20 21:04 vxgsiturbo

var DEFAULT_CONFIG = { system: { useProfileConfig: 0, startProfile: "", showEmptyView: 1, show: ["daily"], fullDayEventLocalize: 1, redrawInterval: 1601000, //minimum 60000 locale: null, }, views: { daily: { direction: "row", counts: 5, titleFormat: "D", overTitleFormat: "MMM D", subtitleFormat: "ddd", }, weekly: { direction: "row", counts: 4, titleFormat: "wo", overTitleFormat: "gggg wo", subtitleFormat: "MMM Do", }, monthly: { direction: "row", counts: 3, titleFormat: "MMMM", overTitleFormat: "YYYY MMM", subtitleFormat: "YYYY", }, upcoming: { title: "Upcoming", useRelative: 1 }, current: { title: "Current", useRelative: 1 }, month: { titleFormat : "D", overTitleFormat : "MMM D", monthTitleFormat: "MMMM", weekdayFormat: "ddd", showWeeks: 1, weeksTitle: "weeks", weeksFormat: "wo", }, weeks: { showWeeks: 1, weeksTitle: "weeks", weeksFormat: "wo", weekdayFormat: "ddd", titleFormat: "MMM D", overTitleFormat: "MMM D", counts: 4, }, }, calendars: [], defaultView: { position: "bottom_bar", positionOrder: -1, overflowRolling: 0, overflowHeight: 0, overflowDuration: 2, onlyStartingTime: 0, timeFormat: "HH:mm", dateFormat: "MMM Do", fullDayEventDateFormat: "MMM Do", ellipsis: 0, limit:0, oneLineEvent:0, replaceTitle: [], classPattern: [], classPatternWhere: ["title"], symbolPattern: [], symbolPatternWhere: ["title"], }, defaultCalendar: { name: null, profiles: [], views: [], styleName: "", replaceTitle: [], classPattern: [], classPatternWhere: ["title"], symbolPattern: [], symbolPatternWhere: ["title"], ellipsis: 0, symbol: "", maxEntries:50, maxDays:180, interval: 151000, url: null, auth: { user:"", pass:"", method:"" } } }

function Configs( systemConfig={}, viewsConfig={}, calendarsConfig={}, profileConfigs={}, defaultViewConfig={}, defaultCalendarConfig={} ) { this.system = systemConfig this.views = viewsConfig this.calendars = calendarsConfig this.profileConfigs = profileConfigs this.defaultView = defaultViewConfig this.defaultCalendar = defaultCalendarConfig

return this;

}

Configs.prototype.mix = function(tmpl, ncfg, includeCalendars=1) { var cfg = {}

//system

var tcfg = (typeof ncfg.system !== "undefined") ? ncfg.system : {}
cfg.system = this.assignment({}, tmpl.system, tcfg)
if(!cfg.system.locale) {
	cfg.system.locale = moment.locale()
}

//views
if(ncfg.views !== "undefined") {
	cfg.views = this.assignment({}, tmpl.views, ncfg.views)
}

//defaultView
if(ncfg.defaultView !== "undefined") {
	cfg.defaultView = this.assignment({}, tmpl.defaultView, ncfg.defaultView)
}
//defaultCalendar
if(ncfg.defaultCalendar !== "undefined") {
	cfg.defaultCalendar = this.assignment(
		{},
		tmpl.defaultCalendar,
		ncfg.defaultCalendar
	)
}

//profileConfig
if (ncfg.profileConfigs !== "undefined") {
	cfg.profileConfigs = this.assignment({}, ncfg.profileConfigs)
}
//calendars
if (!includeCalendars || typeof ncfg.calendars == "undefined") {
	cfg.calendars = this.assignment({}, tmpl.calendars)
} else {
	cfg.calendars = this.assignment({}, ncfg.calendars)
}
return cfg

}

Configs.prototype.getCalConfig = function(idx) { return this.assignment( {}, DEFAULT_CONFIG.defaultCalendar, this.defaultCalendar, this.calendars[idx] ) }

Configs.prototype.getViewConfig = function (idx) { var ret = this.assignment( {}, DEFAULT_CONFIG.defaultView, this.defaultView, this.views[idx] ) if (idx == "upcoming" || idx == "current" || idx == "month") { ret.counts = 1 } if (typeof ret.locale == "undefined") { ret.locale = this.system.locale } else { if (ret.locale == "") { ret.locale = this.system.locale } } ret.mode = idx return ret }

Configs.prototype.make = function(newCfg) { var ret = this.mix(DEFAULT_CONFIG, newCfg) return new Configs( ret.system, ret.views, ret.calendars, ret.profileConfigs, ret.defaultView, ret.defaultCalendar ) } Configs.prototype.modify = function(newCfg) { var ret = this.mix(this, newCfg) this.system = ret.system this.views = ret.views this.calendars = ret.calendars this.defaultView = ret.defaultView this.defaultCalendar = ret.defaultCalendar this.profileConfigs = ret.profileConfigs return this; } Configs.prototype.assignment = function (result) { var stack = Array.prototype.slice.call(arguments, 1); var item; var key; while (stack.length) { item = stack.shift(); for (key in item) { if (item.hasOwnProperty(key)) { if ( typeof result[key] === "object" && result[key] && Object.prototype.toString.call(result[key]) !== "[object Array]" ) { if (typeof item[key] === "object" && item[key] !== null) { result[key] = this.assignment({}, result[key], item[key]); } else { result[key] = item[key]; } } else { result[key] = item[key]; } } } } return result; }

vxgsiturbo avatar Apr 03 '20 21:04 vxgsiturbo

??? I can't understand your configuration. Why these prototypes be needed?

eouia avatar Apr 06 '20 09:04 eouia

sorry i dont understand, my knowledge is very very limited in this please explain in simple terms

thanks

vxgsiturbo avatar Apr 06 '20 10:04 vxgsiturbo

On my MagicMirror I have problems, too, since the last update to MagicMirror. After restarting the mm process it sometimes works again. In the output log file I don't see any output of the updates of calenders, which I had before. To me it looks like a problem in those background jobs. Did something change in the API with the last update?

Example output when it works: [2020-04-05 22:29:39.046] [LOG] [CALEXT] https://www.schulferien.org/media/ical/deutschland/feiertage_sachsen_2020.ics?k=Ry6UW8HGraCu0ulagznHunz8KNUVEvfjPUZ7KPMdzUA9efW6W3Ykm-hkfQKtbRlXsQ1uLrztRBCBuCYwSrtoz3fPr4xx3fa7bmESkJeOqYA >> [2020-04-05 22:29:39.048] [LOG] { state: 'fetched but no change', lastFetchedTime: '20-04-05 22:29:39', lastFetchedEvents: 5, lastFetchedOldEvents: 0, lastServedEvents: 5, error: null }

But now it only says: [2020-04-06 08:18:09.517] [LOG] Module helper loaded: MMM-CalendarExt [2020-04-06 08:18:11.546] [LOG] Connecting socket for: MMM-CalendarExt

My configuration: { module: 'MMM-CalendarExt', position: "top_left", //anywhere. It is not related to real position of view config: { // Read below system:{ show: ["upcoming"], }, defaultView: { ellipsis: 40, dateFormat: "ddd DD.MM.", fullDayEventDateFormat: "ddd DD.MM.", oneLineEvent: 1 }, views: { upcoming: { title: "Nächste Termine", position: "top_left", limit: 5, useRelative: 0, }, }, calendars: [ { name: "Family", styleName:"style19", symbol:"couple_with_heart@em", oneLineEvent: 1, url: "https://calendar.google.com/calendar/ical/-----/basic.ics" }, { name: "Me", styleName:"style17", symbol:"older_adult@em", oneLineEvent: 1, url: "https://calendar.google.com/calendar/ical/-----/basic.ics" }, { name: "Wife", styleName:"style15", symbol:"blond-haired-woman@em", oneLineEvent: 1, url: "https://calendar.google.com/calendar/ical/-----/basic.ics" }, { name: "Feiertage 2020", styleName:"style2", symbol:"de@em", url: "https://www.schulferien.org/media/ical/deutschland/feiertage_sachsen_2020.ics?k=Ry6UW8HGraCu0ulagznHunz8KNUVEvfjPUZ7KPMdzUA9efW6W3Ykm-hkfQKtbRlXsQ1uLrztRBCBuCYwSrtoz3fPr4xx3fa7bmESkJe OqYA" }, { name: "Feiertage 2021", styleName:"style2", symbol:"de@em", url: "https://www.schulferien.org/media/ical/deutschland/feiertage_sachsen_2021.ics?k=fHE22S6VV5mXQC8v4c8K0BfJ8WRzZWajiUN7QInKlqzdqSjSEhok4e9Ijwc3X_wV0gg-hdBSgZ_M4A7sv3OlheXOKTzSszB1OZxT6SqHnQc" }, ], }, },

burberius avatar Apr 06 '20 11:04 burberius

@burberius please, post your own issue. this might be not related with original issue. if you think there be some relation, just link. Anyway, I think your network connection might be not stable. (including calendar server.) Nothing to do except just waiting to pooling starts.

Or you can try other modules like CalendarExt2.

eouia avatar Apr 06 '20 13:04 eouia