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

Method _renderCalendarHeader

codebase/sources/dhtmlxscheduler.js:9045–9070  ·  view source on GitHub ↗
(container)

Source from the content-addressed store, hash-verified

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