Hi Bruce,
I've produced a solution that will suffice for the time being as it works well, I've attached a partial screen shot.
I have made a few changes to DrawPlanRow in NetWeb.clw which I realise has potential issues in future updates of WebServer. The only limitation I currently have is being limited to one day because of the 'nt-relative' attribute in the class, this causes a background element on day 2 to be placed after the similar timed element in day 1, although in the correct column. I think I can solve this if required by taking a look more closely at the 'nt-relative' and 'planner-data' definitions as a none responsive version of 'planner-data' would be ideal, but that is for another day.
Thank you for your help.
NetWebServerWorkerBase.DrawPlanRow Procedure(String p_ParentId,NetPlannerDataQueueType p_Queue)
Packet StringTheory
y Long
code
packet.SetValue('data-nt-row="data" data-nt-parent="' & clip(p_ParentId) & '"')
self.DivHeader(p_ParentId,'planner-row-size nt-relative',Net:Send+Net:Crc,,packet.GetValue())
loop y = 1 to records(p_Queue)
Get(p_Queue,y)
If Lower(clip(p_Queue.Css)) = 'background'
packet.SetValue('<div ')
If p_Queue.StartDate or p_Queue.StartTime
packet.append(self.wrap('data-nt-start-date',p_Queue.StartDate))
packet.append(self.wrap('data-nt-start-time',p_Queue.StartTime))
end
If p_Queue.EndDate or p_Queue.EndTime
if p_Queue.EndTime > 8640000
p_Queue.EndDate += (p_Queue.EndTime/8640000)
p_Queue.EndTime = p_Queue.EndTime % 8640000
end
packet.append(self.wrap('data-nt-end-date',p_Queue.EndDate))
packet.append(self.wrap('data-nt-end-time',p_Queue.EndTime))
end
packet.append(self.wrap('data-nt-column',p_Queue.column))
packet.append(self.wrap('data-nt-id',p_Queue.Hash))
packet.append(self.wrap('data-nt-margin',p_Queue.Margin))
packet.append(self.CreateTip(p_Queue.Tip,p_Queue.TipHtml))
packet.append(' class="planner-data-width planner-data-height nt-relative"')
packet.append(' data-nt-row="data"')
packet.append(' data-nt-parent="' & p_ParentId & '"')
packet.append(self.wrap('style',p_Queue.Style))
packet.append('></div>' & self.CRLF)
do SendPacket
Else
packet.SetValue('<div ')
If p_Queue.StartDate or p_Queue.StartTime
packet.append(self.wrap('data-nt-start-date',p_Queue.StartDate))
packet.append(self.wrap('data-nt-start-time',p_Queue.StartTime))
end
If p_Queue.EndDate or p_Queue.EndTime
if p_Queue.EndTime > 8640000
p_Queue.EndDate += (p_Queue.EndTime/8640000)
p_Queue.EndTime = p_Queue.EndTime % 8640000
end
packet.append(self.wrap('data-nt-end-date',p_Queue.EndDate))
packet.append(self.wrap('data-nt-end-time',p_Queue.EndTime))
end
packet.append(self.wrap('data-nt-column',p_Queue.column))
packet.append(self.wrap('data-nt-id',p_Queue.Hash))
packet.append(self.wrap('data-nt-form',p_Queue.Form))
packet.append(self.wrap('data-nt-margin',p_Queue.Margin))
packet.append(self.CreateTip(p_Queue.Tip,p_Queue.TipHtml))
If p_Queue.Css
packet.append(' class="nt-hard-left planner-data-width planner-data-height planner-data ui-corner-all '&clip(p_Queue.Css)&'"')
Else
packet.append(' class="nt-hard-left planner-data-width planner-data-height planner-data ui-corner-all"')
End
packet.append(self.wrap('style',p_Queue.Style))
packet.append('><div class="planner-data-text">' & self._jsok(p_Queue.Content,p_queue.ContentHtml) & '</div></div>' & self.CRLF)
do SendPacket
End
end
self.DivFooter()
SendPacket routine
self.ParseHTML(packet,1,0,NET:NoHeader)
packet.setvalue('')