1.8 Beta - Unable to add existing library media to a new layout

Hello,

I understand this is a Beta version, and as such, I’m only playing with it (docker version). When I’m creating a new layout, double-clicking on the default region, click Library under Add Media, Click the plus next to a video that is in the library, Click Save… the save cog keeps spinning until the session times out and I have to log into Xibo again. After logging back in, no changes were made.

Can you collect a Fault log please? Select the fault page in the CMS.

Its probably obvious - but that functionality does work on our test systems - so there might be something happening specific to your installation (which is odd because the Docker containers should make these things identical!)

We have a simular problem.

We have a brand new install with 1.8 Beta. (Not Using Docker) We added a new layout with just one fullscreen layer. When trying to add media to the layout, we just get the spinning cog. So far everything else seems to work.

From the error log. Hopefully enough to help, there was over 500 entries of stuff in a 30 second window of time. It looks like Xibo is still logging for anything else runnig through the web server, as we see some log entries from another software package we use.

154	1afb25e	2016-10-14 15:50	WEB	GET	DEBUG		/region/preview/:id	Load Playlist with {"playlistIncludeRegionAssignments":true,"loadPermissions":true,"loadWidgets":true,"regionIncludePlaylists":true}
153	1afb25e	2016-10-14 15:50	WEB	GET	DEBUG		/region/preview/:id	Load Region with {"regionIncludePlaylists":true}
152	1afb25e	2016-10-14 15:50	WEB	GET	DEBUG		/region/preview/:id	CMS font CSS returned from Cache.
151	1afb25e	2016-10-14 15:50	WEB	GET	DEBUG		/region/preview/:id	Install Fonts called with options: {"invalidateCache":false}
150	1afb25e	2016-10-14 15:50	WEB	GET	DEBUG		/region/preview/:id	Loading 1. All Objects = 0
149	110fd30	2016-10-14 15:50	WEB	GET	INFO		/layout/status/:id	PDO stats: {"connections":4,"selects":18,"inserts":0,"updates":1}.
148	110fd30	2016-10-14 15:50	WEB	GET	DEBUG		/layout/status/:id	Checking permissions against the logged in user: ID: 1, Name: xibo_admin, UserType: 1
147	110fd30	2016-10-14 15:50	WEB	GET	DEBUG		/layout/status/:id	Audit Trail message recorded for Layout with id 2. Message: Saved
146	0c7dbc7	2016-10-14 15:50	WEB	GET	INFO		/region/form/timeline/:id	PDO stats: {"connections":3,"selects":13,"inserts":0,"updates":1}.
145	110fd30	2016-10-14 15:50	WEB	GET	DEBUG		/layout/status/:id	Save finished for Layout TEST - 1920 x 1080. Regions = 1, Tags = 0. layoutId = 2. Status = 4, messages 0
144	110fd30	2016-10-14 15:50	WEB	GET	DEBUG		/layout/status/:id	Saving Region TEST-1 - 1920 x 1080 (0, 0). RegionId = 2, LayoutId = 2. OwnerId = 1. Duration = 0. Options = { "saveRegionOptions": false, "manageRegionAssignments": false, "validate": true, "saveLayout": true, "saveRegions": true, "saveTags": false, "setBuildRequired": false, "notify": true, "audit": true }
143	0c7dbc7	2016-10-14 15:50	WEB	GET	DEBUG		/region/form/timeline/:id	Checking permissions against the logged in user: ID: 1, Name: xibo_admin, UserType: 1
142	110fd30	2016-10-14 15:50	WEB	GET	DEBUG		/layout/status/:id	Saving Regions on Layout TEST - 1920 x 1080. Regions = 1, Tags = 0. layoutId = 2. Status = 4, messages 0
141	0c7dbc7	2016-10-14 15:50	WEB	GET	DEBUG		/region/form/timeline/:id	Load Playlist with {"playlistIncludeRegionAssignments":false,"loadPermissions":true,"loadWidgets":true,"regionIncludePlaylists":true}
140	110fd30	2016-10-14 15:50	WEB	GET	DEBUG		/layout/status/:id	Saving Layout TEST - 1920 x 1080. Regions = 1, Tags = 0. layoutId = 2. Status = 4, messages 0 with options { "saveLayout": true, "saveRegions": true, "saveTags": false, "setBuildRequired": false, "validate": true, "notify": true, "audit": true, "saveRegionOptions": false, "manageRegionAssignments": false }
139	0c7dbc7	2016-10-14 15:50	WEB	GET	DEBUG		/region/form/timeline/:id	Load Region with {"regionIncludePlaylists":true,"playlistIncludeRegionAssignments":false}
138	110fd30	2016-10-14 15:50	WEB	GET	DEBUG		/layout/status/:id	Checking permissions against the logged in user: ID: 1, Name: xibo_admin, UserType: 1
137	0c7dbc7	2016-10-14 15:50	WEB	GET	DEBUG		/region/form/timeline/:id	CMS font CSS returned from Cache.
136	110fd30	2016-10-14 15:50	WEB	GET	DEBUG		/layout/status/:id	Setting Layout Duration to 0
135	0c7dbc7	2016-10-14 15:50	WEB	GET	DEBUG		/region/form/timeline/:id	Install Fonts called with options: {"invalidateCache":false}
134	110fd30	2016-10-14 15:50	WEB	GET	DEBUG		/layout/status/:id	Region duration on layout 2 is 0. Comparing to 0.
133	0c7dbc7	2016-10-14 15:50	WEB	GET	DEBUG		/region/form/timeline/:id	Loading 1. All Objects = 0
132	110fd30	2016-10-14 15:50	WEB	GET	DEBUG		/layout/status/:id	RegionOption loop not found
131	110fd30	2016-10-14 15:50	WEB	GET	ALERT		/layout/status/:id	Layout has empty region
130	110fd30	2016-10-14 15:50	WEB	GET	DEBUG		/layout/status/:id	Loaded %s2
129	110fd30	2016-10-14 15:50	WEB	GET	DEBUG		/layout/status/:id	Checking permissions against the logged in user: ID: 1, Name: xibo_admin, UserType: 1
128	110fd30	2016-10-14 15:50	WEB	GET	DEBUG		/layout/status/:id	Checking permissions against the logged in user: ID: 1, Name: xibo_admin, UserType: 1
127	110fd30	2016-10-14 15:50	WEB	GET	DEBUG		/layout/status/:id	Load Playlist with {"playlistIncludeRegionAssignments":true,"loadPermissions":true,"loadWidgets":true,"regionIncludePlaylists":true,"loadPlaylists":true,"loadTags":true,"loadCampaigns":true}
126	8f6802a	2016-10-14 15:50	WEB	GET	INFO		/region/preview/:id	PDO stats: {"connections":3,"selects":12,"inserts":0,"updates":1}.
125	110fd30	2016-10-14 15:50	WEB	GET	DEBUG		/layout/status/:id	Load Region with {"regionIncludePlaylists":true,"loadPlaylists":true,"loadTags":true,"loadPermissions":true,"loadCampaigns":true}
124	110fd30	2016-10-14 15:50	WEB	GET	DEBUG		/layout/status/:id	Loading Layout 2 with options {"loadPlaylists":true,"loadTags":true,"loadPermissions":true,"loadCampaigns":true}
123	8f6802a	2016-10-14 15:50	WEB	GET	DEBUG		/region/preview/:id	Checking permissions against the logged in user: ID: 1, Name: xibo_admin, UserType: 1
122	110fd30	2016-10-14 15:50	WEB	GET	DEBUG		/layout/status/:id	Layout toXLF for Layout TEST, 2
121	8f6802a	2016-10-14 15:50	WEB	GET	DEBUG		/region/preview/:id	Load Playlist with {"playlistIncludeRegionAssignments":true,"loadPermissions":true,"loadWidgets":true,"regionIncludePlaylists":true}
120	110fd30	2016-10-14 15:50	WEB	GET	DEBUG		/layout/status/:id	XLF needs building for Layout 2
119	8f6802a	2016-10-14 15:50	WEB	GET	DEBUG		/region/preview/:id	Load Region with {"regionIncludePlaylists":true}
118	110fd30	2016-10-14 15:50	WEB	GET	DEBUG		/layout/status/:id	Checking permissions against the logged in user: ID: 1, Name: xibo_admin, UserType: 1
117	8f6802a	2016-10-14 15:50	WEB	GET	DEBUG		/region/preview/:id	CMS font CSS returned from Cache.
116	110fd30	2016-10-14 15:50	WEB	GET	DEBUG		/layout/status/:id	CMS font CSS returned from Cache.
115	8f6802a	2016-10-14 15:50	WEB	GET	DEBUG		/region/preview/:id	Install Fonts called with options: {"invalidateCache":false}
114	110fd30	2016-10-14 15:50	WEB	GET	DEBUG		/layout/status/:id	Install Fonts called with options: {"invalidateCache":false}
113	8f6802a	2016-10-14 15:50	WEB	GET	DEBUG		/region/preview/:id	Loading 1. All Objects = 0
112	110fd30	2016-10-14 15:50	WEB	GET	DEBUG		/layout/status/:id	Loading 1. All Objects = 0
111	026bed3	2016-10-14 15:50	WEB	GET	INFO		/library/fontcss	PDO stats: {"connections":3,"selects":5,"inserts":0,"updates":0}.
110	026bed3	2016-10-14 15:50	WEB	GET	DEBUG		/library/fontcss	CMS font CSS returned from Cache.
109	026bed3	2016-10-14 15:50	WEB	GET	DEBUG		/library/fontcss	Install Fonts called with options: {"invalidateCache":false}
108	026bed3	2016-10-14 15:50	WEB	GET	DEBUG		/library/fontcss	CMS font CSS returned from Cache.
107	026bed3	2016-10-14 15:50	WEB	GET	DEBUG		/library/fontcss	Install Fonts called with options: {"invalidateCache":false}
106	026bed3	2016-10-14 15:50	WEB	GET	DEBUG		/library/fontcss	Loading 1. All Objects = 0
105	fc1ef40	2016-10-14 15:50	WEB	GET	INFO		/layout/designer/:id	PDO stats: {"connections":3,"selects":18,"inserts":0,"updates":1}.
104	fc1ef40	2016-10-14 15:50	WEB	GET	DEBUG		/layout/designer/:id	UserOption hideControls not found
103	fc1ef40	2016-10-14 15:50	WEB	GET	DEBUG		/layout/designer/:id	UserOption lockPosition not found
102	fc1ef40	2016-10-14 15:50	WEB	GET	DEBUG		/layout/designer/:id	UserOption defaultDesignerZoom not found
101	fc1ef40	2016-10-14 15:50	WEB	GET	DEBUG		/layout/designer/:id	Checking permissions against the logged in user: ID: 1, Name: xibo_admin, UserType: 1
100	fc1ef40	2016-10-14 15:50	WEB	GET	DEBUG		/layout/designer/:id	Loaded %s2
99	fc1ef40	2016-10-14 15:50	WEB	GET	DEBUG		/layout/designer/:id	Checking permissions against the logged in user: ID: 1, Name: xibo_admin, UserType: 1
98	fc1ef40	2016-10-14 15:50	WEB	GET	DEBUG		/layout/designer/:id	Checking permissions against the logged in user: ID: 1, Name: xibo_admin, UserType: 1
97	fc1ef40	2016-10-14 15:50	WEB	GET	DEBUG		/layout/designer/:id	Load Playlist with {"playlistIncludeRegionAssignments":true,"loadPermissions":true,"loadWidgets":true,"regionIncludePlaylists":true,"loadPlaylists":true,"loadTags":true,"loadCampaigns":true}
96	fc1ef40	2016-10-14 15:50	WEB	GET	DEBUG		/layout/designer/:id	Load Region with {"regionIncludePlaylists":true,"loadPlaylists":true,"loadTags":true,"loadPermissions":true,"loadCampaigns":true}
95	fc1ef40	2016-10-14 15:50	WEB	GET	DEBUG		/layout/designer/:id	Loading Layout 2 with options {"loadPlaylists":true,"loadTags":true,"loadPermissions":true,"loadCampaigns":true}
94	fc1ef40	2016-10-14 15:50	WEB	GET	DEBUG		/layout/designer/:id	Checking permissions against the logged in user: ID: 1, Name: xibo_admin, UserType: 1
93	fc1ef40	2016-10-14 15:50	WEB	GET	DEBUG		/layout/designer/:id	CMS font CSS returned from Cache.
92	fc1ef40	2016-10-14 15:50	WEB	GET	DEBUG		/layout/designer/:id	Install Fonts called with options: {"invalidateCache":false}
91	fc1ef40	2016-10-14 15:50	WEB	GET	DEBUG		/layout/designer/:id	Loading 1. All Objects = 0

The “page” you want to filter on is /playlist/library/assign which is the end point that will be called when you submit that form.

It might be necessary to put the CMS into “Test” mode, as spinning cog errors are often fatal php errors.

It will log anything that hits its server endpoints - if you have another package running on the same web server you will need to make sure your rewrite rules don’t match and point those addresses to Xibo.

Thank you Dan.

Here is the error log; I don’t see anything yet that stands out to me.

279	61fde33	2016-10-17 11:12	WEB	POST	DEBUG		/playlist/library/assign/:id	SET @session_id='ivr98s3a3v02pvmeh3s9e21to1'; SET @session_data='init|s:1:"1";csrfToken|s:40:"{TOKEN}";slim.flash|a:0:{}userid|i:1;timeLineView|s:0:"";'; SET @session_data2='init|s:1:"1";csrfToken|s:40:"{TOKEN}";slim.flash|a:0:{}userid|i:1;timeLineView|s:0:"";'; SET @session_expiration='1476729376'; SET @session_expiration2='1476729376'; SET @lastAccessed='2016-10-17 11:12:16'; SET @lastAccessed2='2016-10-17 11:12:16'; SET @userId='1'; SET @userId2='1'; SET @expired='0'; SET @expired2='0'; SET @useragent='Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.143 Safari/537.36'; SET @remoteaddr='{IP ADDRESS}'; INSERT INTO `session` (session_id, session_data, session_expiration, lastaccessed, userid, isexpired, useragent, remoteaddr) VALUES (@session_id, @session_data, @session_expiration, @lastAccessed, @userId, @expired, @useragent, @remoteaddr) ON DUPLICATE KEY UPDATE `session_data` = @session_data2, `userId` = @userId2, `session_expiration` = @session_expiration2, `isExpired` = @expired2, `lastaccessed` = @lastAccessed2
278	61fde33	2016-10-17 11:12	WEB	POST	DEBUG		/playlist/library/assign/:id	SET @playlistId='2'; SET @modifiedDt='2016-10-17 11:12:16'; UPDATE `layout` SET `status` = 3, `modifiedDT` = @modifiedDt WHERE layoutId IN ( SELECT `region`.layoutId FROM `lkregionplaylist` INNER JOIN `region` ON region.regionId = `lkregionplaylist`.regionId WHERE `lkregionplaylist`.playlistId = @playlistId )
277	61fde33	2016-10-17 11:12	WEB	POST	DEBUG		/playlist/library/assign/:id	Notifying upstream playlist
276	61fde33	2016-10-17 11:12	WEB	POST	DEBUG		/playlist/library/assign/:id	Unlinking 0 old media from Widget 34
275	61fde33	2016-10-17 11:12	WEB	POST	DEBUG		/playlist/library/assign/:id	SET @widgetId='34'; SET @mediaId='26'; SET @mediaId2='26'; INSERT INTO `lkwidgetmedia` (widgetId, mediaId) VALUES (@widgetId, @mediaId) ON DUPLICATE KEY UPDATE mediaId = @mediaId2
274	61fde33	2016-10-17 11:12	WEB	POST	DEBUG		/playlist/library/assign/:id	Linking 1 new media to Widget 34
273	61fde33	2016-10-17 11:12	WEB	POST	DEBUG		/playlist/library/assign/:id	SET @widgetId='34'; SET @type='attrib'; SET @option='mute'; SET @value='0'; SET @value2='0'; INSERT INTO `widgetoption` (`widgetId`, `type`, `option`, `value`) VALUES (@widgetId, @type, @option, @value) ON DUPLICATE KEY UPDATE `value` = @value2
272	61fde33	2016-10-17 11:12	WEB	POST	DEBUG		/playlist/library/assign/:id	Saving attrib WidgetOption mute with value 0
271	61fde33	2016-10-17 11:12	WEB	POST	DEBUG		/playlist/library/assign/:id	SET @playlistId='2'; SET @ownerId='1'; SET @type='video'; SET @duration='0'; SET @displayOrder='2'; SET @useDuration='0'; SET @calculatedDuration='0'; INSERT INTO `widget` (`playlistId`, `ownerId`, `type`, `duration`, `displayOrder`, `useDuration`, `calculatedDuration`) VALUES (@playlistId, @ownerId, @type, @duration, @displayOrder, @useDuration, @calculatedDuration)
270	61fde33	2016-10-17 11:12	WEB	POST	DEBUG		/playlist/library/assign/:id	Adding Widget video to PlaylistId 2
269	61fde33	2016-10-17 11:12	WEB	POST	DEBUG		/playlist/library/assign/:id	Saving widgetId 0 with options. { "saveWidgetOptions": true, "saveWidgetAudio": true, "notify": true, "notifyDisplays": false }
268	61fde33	2016-10-17 11:12	WEB	POST	DEBUG		/playlist/library/assign/:id	SET @playlistId='2'; SET @modifiedDt='2016-10-17 11:12:16'; UPDATE `layout` SET `status` = 3, `modifiedDT` = @modifiedDt WHERE layoutId IN ( SELECT `region`.layoutId FROM `lkregionplaylist` INNER JOIN `region` ON region.regionId = `lkregionplaylist`.regionId WHERE `lkregionplaylist`.playlistId = @playlistId )
267	61fde33	2016-10-17 11:12	WEB	POST	DEBUG		/playlist/library/assign/:id	Notifying upstream playlist
266	61fde33	2016-10-17 11:12	WEB	POST	DEBUG		/playlist/library/assign/:id	Unlinking 0 old media from Widget 31
265	61fde33	2016-10-17 11:12	WEB	POST	DEBUG		/playlist/library/assign/:id	Linking 0 new media to Widget 31
264	61fde33	2016-10-17 11:12	WEB	POST	DEBUG		/playlist/library/assign/:id	Saving widgetId 31 with options. { "saveWidgetOptions": true, "saveWidgetAudio": true, "notify": true, "notifyDisplays": false }
263	61fde33	2016-10-17 11:12	WEB	POST	DEBUG		/playlist/library/assign/:id	SET @playlistId='2'; SELECT `region`.regionId, `region`.layoutId, `region`.ownerId, `region`.name, `region`.width, `region`.height, `region`.top, `region`.left, `region`.zIndex, `region`.duration , `lkregionplaylist`.displayOrder FROM `region` INNER JOIN `lkregionplaylist` ON `lkregionplaylist`.regionId = `region`.regionId AND `lkregionplaylist`.playlistId = @playlistId WHERE 1 = 1
262	61fde33	2016-10-17 11:12	WEB	POST	DEBUG		/playlist/library/assign/:id	SET @widgetId='31'; SELECT `mediaId`, `widgetId`, `volume`, `loop` FROM `lkwidgetaudio` WHERE widgetId = @widgetId AND mediaId <> 0
261	61fde33	2016-10-17 11:12	WEB	POST	DEBUG		/playlist/library/assign/:id	SET @widgetId='31'; SELECT mediaId FROM `lkwidgetmedia` WHERE widgetId = @widgetId AND mediaId <> 0
260	61fde33	2016-10-17 11:12	WEB	POST	DEBUG		/playlist/library/assign/:id	SET @widgetId='31'; SELECT * FROM `widgetoption` WHERE widgetId = @widgetId
259	61fde33	2016-10-17 11:12	WEB	POST	DEBUG		/playlist/library/assign/:id	SET @entity='Xibo\Entity\Widget'; SET @objectId='31'; SELECT `permissionId`, `groupId`, `view`, `edit`, `delete`, permissionentity.entityId FROM `permission` INNER JOIN `permissionentity` ON `permissionentity`.entityId = permission.entityId WHERE entity = @entity AND objectId = @objectId
258	61fde33	2016-10-17 11:12	WEB	POST	DEBUG		/playlist/library/assign/:id	SET @playlistId='2'; SELECT widget.widgetId, widget.playlistId, widget.ownerId, widget.type, widget.duration, widget.displayOrder, `widget`.useDuration, `widget`.calculatedDuration FROM `widget` WHERE 1 = 1 AND playlistId = @playlistId ORDER BY displayOrder
257	61fde33	2016-10-17 11:12	WEB	POST	DEBUG		/playlist/library/assign/:id	Checking permissions against the logged in user: ID: 1, Name: xibo_admin, UserType: 1
256	61fde33	2016-10-17 11:12	WEB	POST	DEBUG		/playlist/library/assign/:id	SET @entity='Xibo\Entity\Playlist'; SET @objectId='2'; SELECT `permissionId`, `groupId`, `view`, `edit`, `delete`, permissionentity.entityId FROM `permission` INNER JOIN `permissionentity` ON `permissionentity`.entityId = permission.entityId WHERE entity = @entity AND objectId = @objectId
255	61fde33	2016-10-17 11:12	WEB	POST	DEBUG		/playlist/library/assign/:id	Load Playlist with {"playlistIncludeRegionAssignments":true,"loadPermissions":true,"loadWidgets":true}
254	61fde33	2016-10-17 11:12	WEB	POST	DEBUG		/playlist/library/assign/:id	Default Widget Options: Setting use duration to 0
253	61fde33	2016-10-17 11:12	WEB	POST	DEBUG		/playlist/library/assign/:id	Creating video out of possible ["Xibo\\Widget\\Video"]
252	61fde33	2016-10-17 11:12	WEB	POST	DEBUG		/playlist/library/assign/:id	SET @entity='Xibo\Entity\Media'; SET @mediaId='26'; SELECT media.mediaId, media.name, media.type AS mediaType, media.duration, media.userId AS ownerId, media.fileSize, media.storedAs, media.valid, media.moduleSystemFile, media.expires, media.md5, media.retired, media.isEdited, IFNULL((SELECT parentmedia.mediaid FROM media parentmedia WHERE parentmedia.editedmediaid = media.mediaid),0) AS parentId, `media`.released, `media`.apiRef, (SELECT GROUP_CONCAT(DISTINCT tag) FROM tag INNER JOIN lktagmedia ON lktagmedia.tagId = tag.tagId WHERE lktagmedia.mediaId = media.mediaID GROUP BY lktagmedia.mediaId) AS tags, `user`.UserName AS owner, (SELECT GROUP_CONCAT(DISTINCT `group`.group) FROM `permission` INNER JOIN `permissionentity` ON `permissionentity`.entityId = permission.entityId INNER JOIN `group` ON `group`.groupId = `permission`.groupId WHERE entity = @entity AND objectId = media.mediaId AND view = 1 ) AS groupsWithPermissions, media.originalFileName AS fileName FROM media LEFT OUTER JOIN media parentmedia ON parentmedia.MediaID = media.MediaID INNER JOIN `user` ON `user`.userId = `media`.userId WHERE 1 = 1 AND media.mediaId = @mediaId ORDER BY name
251	61fde33	2016-10-17 11:12	WEB	POST	DEBUG		/playlist/library/assign/:id	Checking permissions against the logged in user: ID: 1, Name: {NAME}, UserType: 1
250	61fde33	2016-10-17 11:12	WEB	POST	DEBUG		/playlist/library/assign/:id	SET @playlistId='2'; SELECT playlist.* FROM `playlist` WHERE 1 = 1 AND playlistId = @playlistId
249	61fde33	2016-10-17 11:12	WEB	POST	DEBUG		/playlist/library/assign/:id	SET @now='1476727935'; SET @userId='1'; SELECT COUNT(*) AS Cnt FROM `lknotificationuser` INNER JOIN `notification` ON `notification`.notificationId = `lknotificationuser`.notificationId WHERE `lknotificationuser`.`userId` = @userId AND `lknotificationuser`.`read` = 0 AND `notification`.releaseDt < @now
248	61fde33	2016-10-17 11:12	WEB	POST	DEBUG		/playlist/library/assign/:id	SET @now='1476727934'; SET @userId='1'; SELECT `lknotificationuser`.lknotificationuserId, `lknotificationuser`.notificationId, `lknotificationuser`.userId, `lknotificationuser`.read, `lknotificationuser`.readDt, `lknotificationuser`.emailDt, `notification`.subject, `notification`.body, `notification`.releaseDt, `notification`.isInterrupt, `notification`.isSystem, `user`.email FROM `lknotificationuser` INNER JOIN `notification` ON `notification`.notificationId = `lknotificationuser`.notificationId LEFT OUTER JOIN `user` ON `user`.userId = `lknotificationuser`.userId WHERE `notification`.releaseDt < @now AND `lknotificationuser`.userId = @userId ORDER BY releaseDt DESC LIMIT 0, 5
247	61fde33	2016-10-17 11:12	WEB	POST	DEBUG		/playlist/library/assign/:id	CMS font CSS returned from Cache.
246	61fde33	2016-10-17 11:12	WEB	POST	DEBUG		/playlist/library/assign/:id	Install Fonts called with options: {"invalidateCache":false}
245	61fde33	2016-10-17 11:12	WEB	POST	DEBUG		/playlist/library/assign/:id	SET @userId='1'; SELECT * FROM `useroption` WHERE userId = @userId
244	61fde33	2016-10-17 11:12	WEB	POST	DEBUG		/playlist/library/assign/:id	SET @userId='1'; SET @isUserSpecific='0'; SET @isEveryone='0'; SELECT `group`.group, `group`.groupId, `group`.isUserSpecific, `group`.isEveryone , `group`.libraryQuota , `group`.isSystemNotification FROM `group` WHERE 1 = 1 AND `group`.groupId IN (SELECT groupId FROM `lkusergroup` WHERE userId = @userId) AND isUserSpecific = @isUserSpecific AND isEveryone = @isEveryone
243	61fde33	2016-10-17 11:12	WEB	POST	DEBUG		/playlist/library/assign/:id	Loading 1. All Objects = 0
242	61fde33	2016-10-17 11:12	WEB	POST	DEBUG		/playlist/library/assign/:id	SET @userId='1'; SELECT `user`.userId, userName, userTypeId, loggedIn, email, lastAccessed, newUserWizard, retired, CSPRNG, UserPassword AS password, group.groupId, group.group , `pages`.pageId AS homePageId, `pages`.title AS homePage , `user`.firstName, `user`.lastName, `user`.phone, `user`.ref1, `user`.ref2, `user`.ref3, `user`.ref4, `user`.ref5 , IFNULL(group.libraryQuota, 0) AS libraryQuota , `group`.isSystemNotification FROM `user` INNER JOIN lkusergroup ON lkusergroup.userId = user.userId INNER JOIN `group` ON `group`.groupId = lkusergroup.groupId AND isUserSpecific = 1 LEFT OUTER JOIN `pages` ON pages.pageId = `user`.homePageId WHERE 1 = 1 AND user.userId = @userId ORDER BY userName

If I add new media to the playlist, it will add. Just nothing already in the library

Thanks for the log - I don’t see anything in there either, although it is odd that it says it is linking 0 new media to the new widget.

Is this on the CMS we can get access to?

New setup I will send you a PM with access information.

Thanks to @cslaughter for the test CMS - this is a bug already fixed in the upcoming 1.8.0-rc1 release. Details and patch available here: https://github.com/xibosignage/xibo/issues/823

There are 2 commits changing /lib/Middleware/State.php which should be applied to fix the issue.