IntervalType depending on zoom level- CanvasJS

IntervalType depending on zoom level

HTML

<script src="http://canvasjs.com/assets/script/canvasjs.min.js"></script>
<br/><!-- Just so that JSFiddle's Result label doesn't overlap the Chart -->
<div id="chartContainer" style="height: 360px; width: 100%;"></div>

JavaScript

var axisXOption = {      
            intervalType:"month",
            labelAngle: -50
        };
        
var chart = new CanvasJS.Chart("chartContainer",
    {
    	zoomEnabled: true,
     	rangeChanging: intervalTypeChanger,
        title: {
            text: "IntervalType  depending on zoom level"               
        },
        axisX: axisXOption,
        
      data: [{ 
        		type: "line" ,
                dataPoints : dataGenerator(new Date("2012,10,1"), 24 * 365)
          }]
});
chart.render();


function intervalTypeChanger(e) {
				var hours=1000*60*60;
        if(e.trigger === "reset") {
        		intervalType = null;
        }
        else if(e.trigger === "zoom") {
          //Hour (Comparing Hours)
          if((((e.axisX.viewportMaximum -  e.axisX.viewportMinimum)/(hours))<24)) {
            intervalType = "hour";
            alert("zooming hour")
          }
          //Day (Comparing Days)
          else if(((e.axisX.viewportMaximum -  e.axisX.viewportMinimum)/(hours*24))<7) {
            intervalType = "day";
            alert("zooming day")
          }         
          //Month (Comparing Months)
          else if(((e.axisX.viewportMaximum -  e.axisX.viewportMinimum)/(hours*24*30))<30) {
            intervalType = "month";
            alert("zooming month")
          }
          //Year (Comparing Years)
          else if(((e.axisX.viewportMaximum -  e.axisX.viewportMinimum)/(hours*24*30*30))<12) {
            intervalType = "year";
            alert("zooming year")
          }
          alert(e.trigger)
      }
  }

function dataGenerator(startX,limit) {
    var y = 0;
    var points = [];
    for (var i = 0; i < limit; i += 1) {
        y += (Math.random() * 10 - 5);
        points.push({
            x: new Date(startX.getTime() + (i* 60* 60 * 1000)),
            y: y
        });
    }
    return points;
}