Scheduler in Ifame

Hi forum,

I made some customizations of the dhtmlxscheduler. It works absolutely perfect outside an IFrame. But inside an IFrame it does not load the Data with start date and End date.

here is the JSON with start date and end date :
{“data”:[{“bookmark”:“18;q8MAAACHEwAAAACHECc=”,“entryNo”:19,“lineNo”:10000,“isReleased”:false,“barText”:“AZ1907056|Stadt Ulm, 89077 Ulm”,“tooltipText”:“This is an HTML comment.<br>Including a line break.”,“latitude”:0.0,“longitude”:0.0,“start_date”:“2020-04-04”,“end_date”:“2020-04-05”,“color”:“red”,“serviceItem”:“K-ALL-BG KLEIN”},

without IFrame it loads data where it requires.

Any suggestions would be really helpful.

Hello @adhiraj_sharma

The event object is not enough to understnad what goes wrong. I also need to the the array with sections and the y_property value (the name of a data property that will be used to assign events to certain sections).

Please try to show your data in the Timeline view using the snippet system: https://snippet.dhtmlx.com/5/c84adac42
Just update the code and add data (at least 1 event) to show it in the snippet system, then click on Share button and send me the new link.

Hi Polina,

Thank you so much for the response. Here are the link with data
http://snippet.dhtmlx.com/5/ad1717c7e

I tried to debug the Lib ‘dhtmlxscheduler_timeline.js’ the issue which i faced is the below part and i tried to change a bit and then i got result. But i am sure this is not good solution.

Below is the snippet which i changed for the result :slight_smile:

  • List item
    I have changed evs[i] with evs.undefined[i]

// Sample Code

//var events_html = scheduler._timeline_get_events_html.call(this, evs[i]);

var events_html = scheduler._timeline_get_events_html.call(this, evs.undefined[i]));

if(this.fit_events){

var rendered_height = this._events_height[this.y_unit[i].key]||0;

stats.height = (rendered_height>stats.height)?rendered_height:stats.height;

stats.style_height = “height:”+stats.height+“px;”;

this._section_height[this.y_unit[i].key] = stats.height;

}

debugger;

// section 1

html+="<tr class=’"+stats.tr_className+"’ style=’"+stats.style_height+"’><td class=’"+stats.td_className+"’ style=’"+stats.style_width+" height:"+(stats.height-1)+“px;’ “+scheduler._waiAria.label(stats.td_content)+”>”+stats.td_content+"</td>";

if (this.render == “cell”){

for (var j=0; j < scheduler._cols.length; j++) {

if (scheduler._ignores[j])

html+="<td></td>";

else

html+="<td class=‘dhx_matrix_cell “+scheduler.templatesthis.name+"_cell_class"+”’ style=‘width:"+(scheduler._cols[j])+"px’><div style=‘width:auto’>"+scheduler.templatesthis.name+"_cell_value"+"</div></td>";

}

} else {

//section 2

html+="<td><div style=’"+stats.summ_width+" “+stats.style_height+” position:relative;’ class=‘dhx_matrix_line’>";

// adding events

html += events_html;

//section 3

html+="<table class=’"+stats.table_className+"’ cellpadding=‘0’ cellspacing=‘0’ style=’"+stats.summ_width+" “+stats.style_height+”’ >";

for (var j=0; j < scheduler._cols.length; j++){

if (scheduler._ignores[j])

html+="<td></td>";

else

//html+="<td class=‘dhx_matrix_cell “+scheduler.templatesthis.name+"_cell_class"+”’ style=‘width:"+(scheduler._cols[j])+"px’></td>"; AD Commented

html+="<td class=‘dhx_matrix_cell “+scheduler.templatesthis.name+"_cell_class"+”’ style=‘width:"+(scheduler._cols[j])+"px’></td>";

}

html+="</table>";

html+="</div></td>";

}

html+="</tr>";

render_stats.push(stats);

}

html += “</table>”;

this._matrix = evs;

//d.scrollTop = 0; //fix flickering in FF; disabled as it was impossible to create dnd event if scroll was used (window jumped to the top)

d.innerHTML = html;

@adhiraj_sharma

The data rendered in the snippet you provided correctly, but as I see it is not data from your app because the event object in your first message differs from the event object in the provided snippet and you didn’t update data and the array with sections at all. You just have updated the configurations of the Timeline scale, but it doesn’t affect events rendering.

Also, probably the issue can be related to the format that was set using the [date_format property] in your app (date_format Scheduler Docs) (the same as xml_date for old versions). Compare this format with date format in data.

I see only one call of scheduler._timeline_get_events_html function:

Unfortunately, I don’t quite understand where the code you sent is from.

If you still need help (I am not sure because you wrote that you got a result), please specify the Scheduler version you use and try to create a demo with data from your app where the issue can be reproduced. It also can be a file that I will run locally with the Scheduler package. After that I will try to investigate the issue.