MCPcopy Create free account
hub / github.com/DHTMLX/scheduler / _renderCalendarHeader

Method _renderCalendarHeader

codebase/sources/dhtmlxscheduler.es.js:9041–9066  ·  view source on GitHub ↗
(container)

Source from the content-addressed store, hash-verified

9039 this.setState({ currentModeIndex: newIndex });
9040 }
9041 _renderCalendarHeader(container) {
9042 const { mode, date } = this.getState();
9043 const header = document.createElement("div");
9044 header.classList.add("dhx_cal_datepicker_header");
9045 const backwardArrow = document.createElement("button");
9046 backwardArrow.classList.add("dhx_cal_datepicker_arrow", "scheduler_icon", "arrow_left");
9047 header.appendChild(backwardArrow);
9048 const monthLabel = document.createElement("div");
9049 monthLabel.classList.add("dhx_cal_datepicker_title");
9050 if (mode === "days") {
9051 monthLabel.innerText = date.toLocaleString("default", { month: "long" }) + " " + date.getFullYear();
9052 } else if (mode === "months") {
9053 monthLabel.innerText = date.getFullYear();
9054 } else {
9055 const startYear = Math.floor(date.getFullYear() / 10) * 10;
9056 monthLabel.innerText = `${startYear} - ${startYear + 9}`;
9057 }
9058 this._domEvents.attach(monthLabel, "click", this._toggleMode.bind(this));
9059 header.appendChild(monthLabel);
9060 const forwardArrow = document.createElement("button");
9061 forwardArrow.classList.add("dhx_cal_datepicker_arrow", "scheduler_icon", "arrow_right");
9062 header.appendChild(forwardArrow);
9063 container.appendChild(header);
9064 this._domEvents.attach(backwardArrow, "click", this._adjustDate.bind(this, -1));
9065 this._domEvents.attach(forwardArrow, "click", this._adjustDate.bind(this, 1));
9066 }
9067 render(container) {
9068 this._domEvents.detachAll();
9069 this.container = container || this.container;

Callers 1

renderMethod · 0.95

Calls 4

getStateMethod · 0.95
addMethod · 0.65
bindMethod · 0.65
attachMethod · 0.45

Tested by

no test coverage detected