1.8 Alpha 3 Layout Description Fails to Show

Updated a few layouts descriptions via the API, the layouts page does not seem to show the new descriptions. If I edit the layout again, I do see the description there. If I reload the layouts page, they still do not show. All previous layout descriptions show up.

The descriptions do not show up in the API either.

Looking at the layouts table in the xibo database, I do not see the new descriptions recorded there either.

Log (Looks like the sql command did not contain the description):

511	c613571	2016-05-12 16:40	WEB	PUT	DEBUG		/layout/:id	SET @session_id='dqon2fij78iq7d2i8dg2ajenv0'; SET @session_data='init|s:1:"1";csrfToken|s:40:"5f1709c749d2e86808e359d831ffb951ff59e066";slim.flash|a:0:{}displayGroupIds|a:1:{i:0;i:3;}userid|i:1;timeLineView|s:0:"";'; SET @session_data2='init|s:1:"1";csrfToken|s:40:"5f1709c749d2e86808e359d831ffb951ff59e066";slim.flash|a:0:{}displayGroupIds|a:1:{i:0;i:3;}userid|i:1;timeLineView|s:0:"";'; SET @session_expiration='1463098211'; SET @session_expiration2='1463098211'; SET @lastAccessed='2016-05-12 16:40:11'; SET @lastAccessed2='2016-05-12 16:40:11'; SET @userId='1'; SET @userId2='1'; SET @expired='0'; SET @expired2='0'; SET @useragent='Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.94 Safari/537.36'; SET @remoteaddr='127.0.0.1'; 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
510	c613571	2016-05-12 16:40	WEB	PUT	INFO		/layout/:id	PDO stats: {"connections":4,"selects":15,"inserts":0,"updates":3}.
509	c613571	2016-05-12 16:40	WEB	PUT	DEBUG		/layout/:id	SET @userId='1'; SET @newUserWizard='1'; SET @time='2016-05-12 16:40:11'; UPDATE `user` SET lastAccessed = @time, loggedIn = 1, newUserWizard = @newUserWizard WHERE userId = @userId
508	c613571	2016-05-12 16:40	WEB	PUT	DEBUG		/layout/:id	Audit Trail message recorded for Layout with id 8. Message: Saved
507	c613571	2016-05-12 16:40	WEB	PUT	DEBUG		/layout/:id	Save finished for Layout Menu Board All Day - 1920 x 1080. Regions = 0, Tags = 1. layoutId = 8. Status = 3
506	c613571	2016-05-12 16:40	WEB	PUT	DEBUG		/layout/:id	Saving Tag: Menu Board All Day, 10
505	c613571	2016-05-12 16:40	WEB	PUT	DEBUG		/layout/:id	Unlinking 0 media from Tag Menu Board All Day
504	c613571	2016-05-12 16:40	WEB	PUT	DEBUG		/layout/:id	Unlinking 0 layouts from Tag Menu Board All Day
503	c613571	2016-05-12 16:40	WEB	PUT	DEBUG		/layout/:id	Linking 0 media to Tag Menu Board All Day
502	c613571	2016-05-12 16:40	WEB	PUT	DEBUG		/layout/:id	Linking 0 layouts to Tag Menu Board All Day
501	c613571	2016-05-12 16:40	WEB	PUT	DEBUG		/layout/:id	SET @tagId='10'; SELECT mediaId FROM `lktagmedia` WHERE tagId = @tagId
500	c613571	2016-05-12 16:40	WEB	PUT	DEBUG		/layout/:id	SET @tagId='10'; SELECT layoutId FROM `lktaglayout` WHERE tagId = @tagId
499	c613571	2016-05-12 16:40	WEB	PUT	DEBUG		/layout/:id	Assigning tag Menu Board All Day
498	c613571	2016-05-12 16:40	WEB	PUT	DEBUG		/layout/:id	Saving tags on Layout Menu Board All Day - 1920 x 1080. Regions = 0, Tags = 1. layoutId = 8. Status = 3
497	c613571	2016-05-12 16:40	WEB	PUT	DEBUG		/layout/:id	SET @assignedCampaignId='11'; SELECT display.displayId, display.display, display.defaultLayoutId, layout.layout AS defaultLayout, display.license, display.licensed, display.licensed AS currentlyLicenced, display.loggedIn, display.lastAccessed, display.isAuditing, display.inc_schedule AS incSchedule, display.email_alert AS emailAlert, display.alert_timeout AS alertTimeout, display.clientAddress, display.mediaInventoryStatus, display.macAddress, display.macAddress AS currentMacAddress, display.lastChanged, display.numberOfMacAddressChanges, display.lastWakeOnLanCommandSent, display.wakeOnLan AS wakeOnLanEnabled, display.wakeOnLanTime, display.broadCastAddress, display.secureOn, display.cidr, X(display.GeoLocation) AS latitude, Y(display.GeoLocation) AS longitude, display.version_instructions AS versionInstructions, display.client_type AS clientType, display.client_version AS clientVersion, display.client_code AS clientCode, display.displayProfileId, display.currentLayoutId, currentLayout.layout AS currentLayout, display.screenShotRequested, display.storageAvailableSpace, display.storageTotalSpace, displaygroup.displayGroupId, displaygroup.description, `display`.xmrChannel, `display`.xmrPubKey, `display`.lastCommandSuccess FROM `display` INNER JOIN `lkdisplaydg` ON lkdisplaydg.displayid = display.displayId INNER JOIN `displaygroup` ON displaygroup.displaygroupid = lkdisplaydg.displaygroupid AND `displaygroup`.isDisplaySpecific = 1 LEFT OUTER JOIN layout ON layout.layoutid = display.defaultlayoutid LEFT OUTER JOIN layout currentLayout ON currentLayout.layoutId = display.currentLayoutId WHERE 1 = 1 AND display.displayId IN ( SELECT `lkdisplaydg`.displayId FROM `lkdisplaydg` INNER JOIN `lklayoutdisplaygroup` ON `lklayoutdisplaygroup`.displayGroupId = `lkdisplaydg`.displayGroupId INNER JOIN `lkcampaignlayout` ON `lkcampaignlayout`.layoutId = `lklayoutdisplaygroup`.layoutId WHERE `lkcampaignlayout`.campaignId = @assignedCampaignId ) ORDER BY display
496	c613571	2016-05-12 16:40	WEB	PUT	DEBUG		/layout/:id	Checking permissions against the logged in user: ID: 1, Name: root, UserType: 1
495	c613571	2016-05-12 16:40	WEB	PUT	DEBUG		/layout/:id	SET @fromDt='1463269211'; SET @toDt='1463092811'; SET @activeCampaignId='11'; SET @activeCampaignId2='11'; SELECT display.displayId, display.display, display.defaultLayoutId, layout.layout AS defaultLayout, display.license, display.licensed, display.licensed AS currentlyLicenced, display.loggedIn, display.lastAccessed, display.isAuditing, display.inc_schedule AS incSchedule, display.email_alert AS emailAlert, display.alert_timeout AS alertTimeout, display.clientAddress, display.mediaInventoryStatus, display.macAddress, display.macAddress AS currentMacAddress, display.lastChanged, display.numberOfMacAddressChanges, display.lastWakeOnLanCommandSent, display.wakeOnLan AS wakeOnLanEnabled, display.wakeOnLanTime, display.broadCastAddress, display.secureOn, display.cidr, X(display.GeoLocation) AS latitude, Y(display.GeoLocation) AS longitude, display.version_instructions AS versionInstructions, display.client_type AS clientType, display.client_version AS clientVersion, display.client_code AS clientCode, display.displayProfileId, display.currentLayoutId, currentLayout.layout AS currentLayout, display.screenShotRequested, display.storageAvailableSpace, display.storageTotalSpace, displaygroup.displayGroupId, displaygroup.description, `display`.xmrChannel, `display`.xmrPubKey, `display`.lastCommandSuccess FROM `display` INNER JOIN `lkdisplaydg` ON lkdisplaydg.displayid = display.displayId INNER JOIN `displaygroup` ON displaygroup.displaygroupid = lkdisplaydg.displaygroupid AND `displaygroup`.isDisplaySpecific = 1 LEFT OUTER JOIN layout ON layout.layoutid = display.defaultlayoutid LEFT OUTER JOIN layout currentLayout ON currentLayout.layoutId = display.currentLayoutId WHERE 1 = 1 AND display.displayId IN ( SELECT DISTINCT display.DisplayID FROM `schedule` INNER JOIN `schedule_detail` ON schedule_detail.eventid = schedule.eventid INNER JOIN `lkscheduledisplaygroup` ON `lkscheduledisplaygroup`.eventId = `schedule`.eventId INNER JOIN `lkdisplaydg` ON lkdisplaydg.DisplayGroupID = `lkscheduledisplaygroup`.displayGroupId INNER JOIN `display` ON lkdisplaydg.DisplayID = display.displayID WHERE `schedule`.CampaignID = @activeCampaignId AND `schedule_detail`.FromDT < @fromDt AND `schedule_detail`.ToDT > @toDt UNION SELECT DISTINCT display.DisplayID FROM `display` INNER JOIN `lkcampaignlayout` ON `lkcampaignlayout`.LayoutID = `display`.DefaultLayoutID WHERE `lkcampaignlayout`.CampaignID = @activeCampaignId2 ) ORDER BY display
494	c613571	2016-05-12 16:40	WEB	PUT	DEBUG		/layout/:id	Checking permissions against the logged in user: ID: 1, Name: root, UserType: 1
493	c613571	2016-05-12 16:40	WEB	PUT	DEBUG		/layout/:id	Checking for Displays to refresh on Campaign 11
492	c613571	2016-05-12 16:40	WEB	PUT	DEBUG		/layout/:id	SET @campaignId='11'; SET @campaign='Menu Board All Day'; SET @userId='1'; UPDATE `campaign` SET campaign = @campaign, userId = @userId WHERE CampaignID = @campaignId
491	c613571	2016-05-12 16:40	WEB	PUT	DEBUG		/layout/:id	Saving CampaignId 11, Campaign Menu Board All Day, LayoutSpecific 1
490	c613571	2016-05-12 16:40	WEB	PUT	DEBUG		/layout/:id	SET @campaignId='11'; SELECT `campaign`.campaignId, `campaign`.campaign, `campaign`.isLayoutSpecific, `campaign`.userId AS ownerId, ( SELECT COUNT(*) FROM lkcampaignlayout WHERE lkcampaignlayout.campaignId = `campaign`.campaignId ) AS numberLayouts FROM `campaign` LEFT OUTER JOIN `lkcampaignlayout` ON lkcampaignlayout.CampaignID = campaign.CampaignID LEFT OUTER JOIN `layout` ON lkcampaignlayout.LayoutID = layout.LayoutID WHERE 1 = 1 AND `campaign`.campaignId = @campaignId GROUP BY `campaign`.CampaignID, Campaign, IsLayoutSpecific, `campaign`.userId ORDER BY campaign
489	c613571	2016-05-12 16:40	WEB	PUT	DEBUG		/layout/:id	Checking permissions against the logged in user: ID: 1, Name: root, UserType: 1
488	c613571	2016-05-12 16:40	WEB	PUT	DEBUG		/layout/:id	CampaignFactory getById(11)
487	c613571	2016-05-12 16:40	WEB	PUT	DEBUG		/layout/:id	SET @layoutid='8'; SET @layout='Menu Board All Day'; SET @description=''; SET @duration='0'; SET @modifieddt='2016-05-12 16:40:11'; SET @retired='0'; SET @width='1920'; SET @height='1080'; SET @backgroundImageId=''; SET @backgroundColor='#000000'; SET @backgroundzIndex='0'; SET @status='3'; SET @userId='1'; SET @schemaVersion='3'; UPDATE layout SET layout = @layout, description = @description, duration = @duration, modifiedDT = @modifieddt, retired = @retired, width = @width, height = @height, backgroundImageId = @backgroundImageId, backgroundColor = @backgroundColor, backgroundzIndex = @backgroundzIndex, `status` = @status, `userId` = @userId, `schemaVersion` = @schemaVersion WHERE layoutID = @layoutid
486	c613571	2016-05-12 16:40	WEB	PUT	DEBUG		/layout/:id	Editing Layout Menu Board All Day. Id = 8
485	c613571	2016-05-12 16:40	WEB	PUT	DEBUG		/layout/:id	Saving Layout Menu Board All Day - 1920 x 1080. Regions = 0, Tags = 1. layoutId = 8. Status = 3 with options { "saveLayout": true, "saveRegions": false, "saveTags": true, "setBuildRequired": true, "validate": true, "notify": true, "audit": true }
484	c613571	2016-05-12 16:40	WEB	PUT	DEBUG		/layout/:id	SET @permissionEntityForGroup='Xibo\Entity\Campaign'; SET @exact='Menu Board All Day'; SET @notLayoutId='8'; SET @userId='1'; SET @retired='0'; SELECT layout.layoutID, layout.layout, layout.description, layout.duration, layout.userID, `user`.UserName AS owner, campaign.CampaignID, layout.status, layout.width, layout.height, layout.retired, layout.createdDt, layout.modifiedDt, (SELECT GROUP_CONCAT(DISTINCT tag) FROM tag INNER JOIN lktaglayout ON lktaglayout.tagId = tag.tagId WHERE lktaglayout.layoutId = layout.LayoutID GROUP BY lktaglayout.layoutId) AS tags, layout.backgroundImageId, layout.backgroundColor, layout.backgroundzIndex, layout.schemaVersion, NULL as displayOrder, (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 = @permissionEntityForGroup AND objectId = campaign.CampaignID AND view = 1 ) AS groupsWithPermissions FROM layout INNER JOIN `lkcampaignlayout` ON lkcampaignlayout.LayoutID = layout.LayoutID INNER JOIN `campaign` ON lkcampaignlayout.CampaignID = campaign.CampaignID AND campaign.IsLayoutSpecific = 1 INNER JOIN `user` ON `user`.userId = `campaign`.userId WHERE 1 = 1 AND layout.layout = @exact AND layout.layoutId <> @notLayoutId AND layout.userid = @userId AND layout.retired = @retired AND layout.layoutID NOT IN (SELECT layoutId FROM lktaglayout WHERE tagId = 1) ORDER BY layout
483	c613571	2016-05-12 16:40	WEB	PUT	DEBUG		/layout/:id	Checking permissions against the logged in user: ID: 1, Name: root, UserType: 1
482	c613571	2016-05-12 16:40	WEB	PUT	DEBUG		/layout/:id	SET @resolutionId='9'; SELECT `resolution`.resolutionId, `resolution`.resolution, `resolution`.intended_width AS width, `resolution`.intended_height AS height, `resolution`.width AS designerWidth, `resolution`.height AS designerHeight, `resolution`.version, `resolution`.enabled FROM `resolution` WHERE 1 = 1 AND resolutionId = @resolutionId ORDER BY resolution
481	c613571	2016-05-12 16:40	WEB	PUT	DEBUG		/layout/:id	Tags remaining: [{"tagId":10,"tag":"Menu Board All Day","layoutIds":[],"mediaIds":[]}]
480	c613571	2016-05-12 16:40	WEB	PUT	DEBUG		/layout/:id	Tags to be removed: []
479	c613571	2016-05-12 16:40	WEB	PUT	DEBUG		/layout/:id	SET @tagId='10'; SELECT mediaId FROM `lktagmedia` WHERE tagId = @tagId
478	c613571	2016-05-12 16:40	WEB	PUT	DEBUG		/layout/:id	SET @tagId='10'; SELECT layoutId FROM `lktaglayout` WHERE tagId = @tagId
477	c613571	2016-05-12 16:40	WEB	PUT	DEBUG		/layout/:id	SET @layoutId='8'; SELECT tag.tagId, tag.tag FROM `tag` INNER JOIN `lktaglayout` ON lktaglayout.tagId = tag.tagId WHERE lktaglayout.layoutId = @layoutId
476	c613571	2016-05-12 16:40	WEB	PUT	DEBUG		/layout/:id	SET @tag='Menu Board All Day'; SELECT tag.tagId, tag.tag FROM `tag` WHERE tag.tag = @tag
475	c613571	2016-05-12 16:40	WEB	PUT	DEBUG		/layout/:id	SET @permissionEntityForGroup='Xibo\Entity\Campaign'; SET @layoutId='8'; SELECT layout.layoutID, layout.layout, layout.description, layout.duration, layout.userID, `user`.UserName AS owner, campaign.CampaignID, layout.status, layout.width, layout.height, layout.retired, layout.createdDt, layout.modifiedDt, (SELECT GROUP_CONCAT(DISTINCT tag) FROM tag INNER JOIN lktaglayout ON lktaglayout.tagId = tag.tagId WHERE lktaglayout.layoutId = layout.LayoutID GROUP BY lktaglayout.layoutId) AS tags, layout.backgroundImageId, layout.backgroundColor, layout.backgroundzIndex, layout.schemaVersion, NULL as displayOrder, (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 = @permissionEntityForGroup AND objectId = campaign.CampaignID AND view = 1 ) AS groupsWithPermissions FROM layout INNER JOIN `lkcampaignlayout` ON lkcampaignlayout.LayoutID = layout.LayoutID INNER JOIN `campaign` ON lkcampaignlayout.CampaignID = campaign.CampaignID AND campaign.IsLayoutSpecific = 1 INNER JOIN `user` ON `user`.userId = `campaign`.userId WHERE 1 = 1 AND layout.layoutId = @layoutId ORDER BY layout
474	c613571	2016-05-12 16:40	WEB	PUT	DEBUG		/layout/:id	Checking permissions against the logged in user: ID: 1, Name: root, UserType: 1
473	c613571	2016-05-12 16:40	WEB	PUT	DEBUG		/layout/:id	New Player Action Service from DI
472	c613571	2016-05-12 16:40	WEB	PUT	DEBUG		/layout/:id	SET @userId='1'; SELECT * FROM `useroption` WHERE userId = @userId
471	c613571	2016-05-12 16:40	WEB	PUT	DEBUG		/layout/:id	SET @userId='1'; SET @isUserSpecific='0'; SET @isEveryone='0'; SELECT `group`.group, `group`.groupId, `group`.isUserSpecific, `group`.isEveryone , `group`.libraryQuota FROM `group` WHERE 1 = 1 AND `group`.groupId IN (SELECT groupId FROM `lkusergroup` WHERE userId = @userId) AND isUserSpecific = @isUserSpecific AND isEveryone = @isEveryone
470	c613571	2016-05-12 16:40	WEB	PUT	DEBUG		/layout/:id	Loading 1. All Objects = 0
469	c613571	2016-05-12 16:40	WEB	PUT	DEBUG		/layout/: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 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

Update: @dan, I reverted the vendors folder to before I ran composer and the problem went away.

I think that before you go any further you need to sort out your dependencies as mentioned in the other topic.


@Peter - does the test suite cover setting a description and reading it back out again?