code: function() {
          this.beforeRenderEvent.fire();
  
          // Find starting day of the current month
          var workingDate = DateMath.findMonthStart(this.cfg.getProperty(DEF_CFG.PAGEDATE.key));
  
          this.resetRenderers();
          this.cellDates.length = 0;
  
          Event.purgeElement(this.oDomContainer, true);
  
          var html = [];
  
          html[html.length] = '<table cellSpacing="0" class="' + this.Style.CSS_CALENDAR + ' y' + (workingDate.getFullYear() + this.Locale.YEAR_OFFSET) +'" id="' + this.id + '">';
          html = this.renderHeader(html);
          html = this.renderBody(workingDate, html);
          html = this.renderFooter(html);
          html[html.length] = '</table>';
  
          this.oDomContainer.innerHTML = html.join("\n");
  
          this.applyListeners();
          this.cells = Dom.getElementsByClassName(this.Style.CSS_CELL, "td", this.id);
      
          this.cfg.refireEvent(DEF_CFG.TITLE.key);
          this.cfg.refireEvent(DEF_CFG.CLOSE.key);
          this.cfg.refireEvent(DEF_CFG.IFRAME.key);
  
          this.renderEvent.fire();
      }
docs: Renders the calendar after it has been configured. The render() method has a specific call chain that will execute
  when the method is called: renderHeader, renderBody, renderFooter.
  Refer to the documentation for those methods for information on
  individual render tasks.
  @method render