Our powerful JS Calendar component


Post by accounts@projul.com »

Hi, We have integrated the bryntum calendar control in our app. Resources are the projects & events are the tasks against those projects. What we want is based on resource (project) start & end dates we additionally want to draw a startDate block with line connecting to the endDate block. Previously we were using fullcalendar library and achieved the similar functionality there. I need to achieve the same in bryntum calendar month view only as well. I have attached a screenshot what we want to achieve.

Attachments
project_lines.png
project_lines.png (42.18 KiB) Viewed 332 times

Post by accounts@projul.com »

Here is the screenshot with multiple projects

Attachments
project_lines2.png
project_lines2.png (65.44 KiB) Viewed 329 times

Post by Animal »

That looks like a long-duration event on which the first and last occupied cells get a special rendition, and then all cells between get their own special rendition.

This cannot be done now. This would be quite a complex feature. A certain type of event would have to trigger some extra processing of the cellMap to separate the long-duration event into three: Its first day, intervening days, its last day.

These generated event data blocks would be flagged with identifying flags specifying what they are (first, intervening and last), and then a special eventRenderer would create the desired DOM structure in response to these flags.

I have created a Feature Request ticket, so that we have a record of this: https://github.com/bryntum/support/issues/4962

This is quite a unique requirement, and I cannot give a commitment to creating it. But I can give pointers for you to do this.

The key is the createCellMap function (It's private). You will need a MonthView subclass which will implement that, call result = super.createCellMap(...arguments) and then iterate the Map and process the entries.

If you would like to sponsor creation of a Feature which is able to do this you can contact our sales department for details.


Post by Animal »

Another issue there is that you have different eventHeight values. It appears you have normal events using a large eventHeight, but these long lived events seem like they are the default 20px. The calculation of eventsPerCell does not handle this now.


Post Reply