Your IP : 216.73.216.247


Current Path : /home/nicholsonsmith/public_html/media/com_admintools/js/
Upload File :
Current File : /home/nicholsonsmith/public_html/media/com_admintools/js/jqplot.dateAxisRenderer.min.js

/* jqPlot 1.0.8r1250 | (c) 2009-2013 Chris Leonello | jplot.com
 jsDate | (c) 2010-2013 Chris Leonello
 */
(function (h)
{
	h.jqplot.DateAxisRenderer = function ()
	{
		h.jqplot.LinearAxisRenderer.call(this);
		this.date = new h.jsDate()
	};
	var c = 1000;
	var e = 60 * c;
	var f = 60 * e;
	var l = 24 * f;
	var b = 7 * l;
	var j = 30.4368499 * l;
	var k = 365.242199 * l;
	var g = [31, 28, 31, 30, 31, 30, 31, 30, 31, 30, 31, 30];
	var i = [
		"%M:%S.%#N", "%M:%S.%#N", "%M:%S.%#N", "%M:%S", "%M:%S", "%M:%S", "%M:%S", "%H:%M:%S", "%H:%M:%S", "%H:%M",
		"%H:%M", "%H:%M", "%H:%M", "%H:%M", "%H:%M", "%a %H:%M", "%a %H:%M", "%b %e %H:%M", "%b %e %H:%M",
		"%b %e %H:%M", "%b %e %H:%M", "%v", "%v", "%v", "%v", "%v", "%v", "%v"
	];
	var m = [
		0.1 * c, 0.2 * c, 0.5 * c, c, 2 * c, 5 * c, 10 * c, 15 * c, 30 * c, e, 2 * e, 5 * e, 10 * e, 15 * e, 30 * e, f,
		2 * f, 4 * f, 6 * f, 8 * f, 12 * f, l, 2 * l, 3 * l, 4 * l, 5 * l, b, 2 * b
	];
	var d = [];

	function a(p, s, t)
	{
		var o = Number.MAX_VALUE;
		var u, r, v;
		for (var q = 0, n = m.length; q < n; q++)
		{
			u = Math.abs(t - m[q]);
			if (u < o)
			{
				o = u;
				r = m[q];
				v = i[q]
			}
		}
		return[r, v]
	}

	h.jqplot.DateAxisRenderer.prototype = new h.jqplot.LinearAxisRenderer();
	h.jqplot.DateAxisRenderer.prototype.constructor = h.jqplot.DateAxisRenderer;
	h.jqplot.DateTickFormatter = function (n, o)
	{
		if (!n)
		{
			n = "%Y/%m/%d"
		}
		return h.jsDate.strftime(o, n)
	};
	h.jqplot.DateAxisRenderer.prototype.init = function (E)
	{
		this.tickOptions.formatter = h.jqplot.DateTickFormatter;
		this.tickInset = 0;
		this.drawBaseline = true;
		this.baselineWidth = null;
		this.baselineColor = null;
		this.daTickInterval = null;
		this._daTickInterval = null;
		h.extend(true, this, E);
		var C = this._dataBounds, u, x, D, y, A, z, o;
		for (var t = 0; t < this._series.length; t++)
		{
			u = {intervals: [], frequencies: {}, sortedIntervals: [], min: null, max: null, mean: null};
			x = 0;
			D = this._series[t];
			y = D.data;
			A = D._plotData;
			z = D._stackData;
			o = 0;
			for (var r = 0; r < y.length; r++)
			{
				if (this.name == "xaxis" || this.name == "x2axis")
				{
					y[r][0] = new h.jsDate(y[r][0]).getTime();
					A[r][0] = new h.jsDate(y[r][0]).getTime();
					z[r][0] = new h.jsDate(y[r][0]).getTime();
					if ((y[r][0] != null && y[r][0] < C.min) || C.min == null)
					{
						C.min = y[r][0]
					}
					if ((y[r][0] != null && y[r][0] > C.max) || C.max == null)
					{
						C.max = y[r][0]
					}
					if (r > 0)
					{
						o = Math.abs(y[r][0] - y[r - 1][0]);
						u.intervals.push(o);
						if (u.frequencies.hasOwnProperty(o))
						{
							u.frequencies[o] += 1
						}
						else
						{
							u.frequencies[o] = 1
						}
					}
					x += o
				}
				else
				{
					y[r][1] = new h.jsDate(y[r][1]).getTime();
					A[r][1] = new h.jsDate(y[r][1]).getTime();
					z[r][1] = new h.jsDate(y[r][1]).getTime();
					if ((y[r][1] != null && y[r][1] < C.min) || C.min == null)
					{
						C.min = y[r][1]
					}
					if ((y[r][1] != null && y[r][1] > C.max) || C.max == null)
					{
						C.max = y[r][1]
					}
					if (r > 0)
					{
						o = Math.abs(y[r][1] - y[r - 1][1]);
						u.intervals.push(o);
						if (u.frequencies.hasOwnProperty(o))
						{
							u.frequencies[o] += 1
						}
						else
						{
							u.frequencies[o] = 1
						}
					}
				}
				x += o
			}
			if (D.renderer.bands)
			{
				if (D.renderer.bands.hiData.length)
				{
					var w = D.renderer.bands.hiData;
					for (var r = 0, q = w.length; r < q; r++)
					{
						if (this.name === "xaxis" || this.name === "x2axis")
						{
							w[r][0] = new h.jsDate(w[r][0]).getTime();
							if ((w[r][0] != null && w[r][0] > C.max) || C.max == null)
							{
								C.max = w[r][0]
							}
						}
						else
						{
							w[r][1] = new h.jsDate(w[r][1]).getTime();
							if ((w[r][1] != null && w[r][1] > C.max) || C.max == null)
							{
								C.max = w[r][1]
							}
						}
					}
				}
				if (D.renderer.bands.lowData.length)
				{
					var w = D.renderer.bands.lowData;
					for (var r = 0, q = w.length; r < q; r++)
					{
						if (this.name === "xaxis" || this.name === "x2axis")
						{
							w[r][0] = new h.jsDate(w[r][0]).getTime();
							if ((w[r][0] != null && w[r][0] < C.min) || C.min == null)
							{
								C.min = w[r][0]
							}
						}
						else
						{
							w[r][1] = new h.jsDate(w[r][1]).getTime();
							if ((w[r][1] != null && w[r][1] < C.min) || C.min == null)
							{
								C.min = w[r][1]
							}
						}
					}
				}
			}
			var B = 0, v = 0;
			for (var p in u.frequencies)
			{
				u.sortedIntervals.push({interval: p, frequency: u.frequencies[p]})
			}
			u.sortedIntervals.sort(function (s, n)
			{
				return n.frequency - s.frequency
			});
			u.min = h.jqplot.arrayMin(u.intervals);
			u.max = h.jqplot.arrayMax(u.intervals);
			u.mean = x / y.length;
			this._intervalStats.push(u);
			u = x = D = y = A = z = null
		}
		C = null
	};
	h.jqplot.DateAxisRenderer.prototype.reset = function ()
	{
		this.min = this._options.min;
		this.max = this._options.max;
		this.tickInterval = this._options.tickInterval;
		this.numberTicks = this._options.numberTicks;
		this._autoFormatString = "";
		if (this._overrideFormatString && this.tickOptions && this.tickOptions.formatString)
		{
			this.tickOptions.formatString = ""
		}
		this.daTickInterval = this._daTickInterval
	};
	h.jqplot.DateAxisRenderer.prototype.createTicks = function (p)
	{
		var X = this._ticks;
		var L = this.ticks;
		var F = this.name;
		var H = this._dataBounds;
		var M = this._intervalStats;
		var n = (this.name.charAt(0) === "x") ? this._plotDimensions.width : this._plotDimensions.height;
		var w;
		var ae, J;
		var y, x;
		var ad, aa;
		var s = 30;
		var O = 1;
		var U = null;
		if (this.tickInterval != null)
		{
			if (Number(this.tickInterval))
			{
				U = [Number(this.tickInterval), "seconds"]
			}
			else
			{
				if (typeof this.tickInterval == "string")
				{
					var ac = this.tickInterval.split(" ");
					if (ac.length == 1)
					{
						U = [1, ac[0]]
					}
					else
					{
						if (ac.length == 2)
						{
							U = [ac[0], ac[1]]
						}
					}
				}
			}
		}
		var v = this.tickInterval;
		ae = new h.jsDate((this.min != null) ? this.min : H.min).getTime();
		J = new h.jsDate((this.max != null) ? this.max : H.max).getTime();
		var A = p.plugins.cursor;
		if (A && A._zoom && A._zoom.zooming)
		{
			this.min = null;
			this.max = null
		}
		var B = J - ae;
		if (this.tickOptions == null || !this.tickOptions.formatString)
		{
			this._overrideFormatString = true
		}
		if (L.length)
		{
			for (aa = 0; aa < L.length; aa++)
			{
				var P = L[aa];
				var Y = new this.tickRenderer(this.tickOptions);
				if (P.constructor == Array)
				{
					Y.value = new h.jsDate(P[0]).getTime();
					Y.label = P[1];
					if (!this.showTicks)
					{
						Y.showLabel = false;
						Y.showMark = false
					}
					else
					{
						if (!this.showTickMarks)
						{
							Y.showMark = false
						}
					}
					Y.setTick(Y.value, this.name);
					this._ticks.push(Y)
				}
				else
				{
					Y.value = new h.jsDate(P).getTime();
					if (!this.showTicks)
					{
						Y.showLabel = false;
						Y.showMark = false
					}
					else
					{
						if (!this.showTickMarks)
						{
							Y.showMark = false
						}
					}
					Y.setTick(Y.value, this.name);
					this._ticks.push(Y)
				}
			}
			this.numberTicks = L.length;
			this.min = this._ticks[0].value;
			this.max = this._ticks[this.numberTicks - 1].value;
			this.daTickInterval = [(this.max - this.min) / (this.numberTicks - 1) / 1000, "seconds"]
		}
		else
		{
			if (this.min == null && this.max == null && H.min == H.max)
			{
				var E = h.extend(true, {}, this.tickOptions, {name: this.name, value: null});
				var T = 300000;
				this.min = H.min - T;
				this.max = H.max + T;
				this.numberTicks = 3;
				for (var aa = this.min; aa <= this.max; aa += T)
				{
					E.value = aa;
					var Y = new this.tickRenderer(E);
					if (this._overrideFormatString && this._autoFormatString != "")
					{
						Y.formatString = this._autoFormatString
					}
					Y.showLabel = false;
					Y.showMark = false;
					this._ticks.push(Y)
				}
				if (this.showTicks)
				{
					this._ticks[1].showLabel = true
				}
				if (this.showTickMarks)
				{
					this._ticks[1].showTickMarks = true
				}
			}
			else
			{
				if (this.min == null && this.max == null)
				{
					var N = h.extend(true, {}, this.tickOptions, {name: this.name, value: null});
					var ab, I;
					if (!this.tickInterval && !this.numberTicks)
					{
						var R = Math.max(n, s + 1);
						var Z = 115;
						if (this.tickRenderer === h.jqplot.CanvasAxisTickRenderer && this.tickOptions.angle)
						{
							Z = 115 - 40 * Math.abs(Math.sin(this.tickOptions.angle / 180 * Math.PI))
						}
						ab = Math.ceil((R - s) / Z + 1);
						I = (J - ae) / (ab - 1)
					}
					else
					{
						if (this.tickInterval)
						{
							I = new h.jsDate(0).add(U[0], U[1]).getTime()
						}
						else
						{
							if (this.numberTicks)
							{
								ab = this.numberTicks;
								I = (J - ae) / (ab - 1)
							}
						}
					}
					if (I <= 19 * l)
					{
						var Q = a(ae, J, I);
						var r = Q[0];
						this._autoFormatString = Q[1];
						ae = new h.jsDate(ae);
						ae = Math.floor((ae.getTime() - ae.getUtcOffset()) / r) * r + ae.getUtcOffset();
						ab = Math.ceil((J - ae) / r) + 1;
						this.min = ae;
						this.max = ae + (ab - 1) * r;
						if (this.max < J)
						{
							this.max += r;
							ab += 1
						}
						this.tickInterval = r;
						this.numberTicks = ab;
						for (var aa = 0; aa < ab; aa++)
						{
							N.value = this.min + aa * r;
							Y = new this.tickRenderer(N);
							if (this._overrideFormatString && this._autoFormatString != "")
							{
								Y.formatString = this._autoFormatString
							}
							if (!this.showTicks)
							{
								Y.showLabel = false;
								Y.showMark = false
							}
							else
							{
								if (!this.showTickMarks)
								{
									Y.showMark = false
								}
							}
							this._ticks.push(Y)
						}
						O = this.tickInterval
					}
					else
					{
						if (I <= 9 * j)
						{
							this._autoFormatString = "%v";
							var D = Math.round(I / j);
							if (D < 1)
							{
								D = 1
							}
							else
							{
								if (D > 6)
								{
									D = 6
								}
							}
							var V = new h.jsDate(ae).setDate(1).setHours(0, 0, 0, 0);
							var q = new h.jsDate(J);
							var z = new h.jsDate(J).setDate(1).setHours(0, 0, 0, 0);
							if (q.getTime() !== z.getTime())
							{
								z = z.add(1, "month")
							}
							var S = z.diff(V, "month");
							ab = Math.ceil(S / D) + 1;
							this.min = V.getTime();
							this.max = V.clone().add((ab - 1) * D, "month").getTime();
							this.numberTicks = ab;
							for (var aa = 0; aa < ab; aa++)
							{
								if (aa === 0)
								{
									N.value = V.getTime()
								}
								else
								{
									N.value = V.add(D, "month").getTime()
								}
								Y = new this.tickRenderer(N);
								if (this._overrideFormatString && this._autoFormatString != "")
								{
									Y.formatString = this._autoFormatString
								}
								if (!this.showTicks)
								{
									Y.showLabel = false;
									Y.showMark = false
								}
								else
								{
									if (!this.showTickMarks)
									{
										Y.showMark = false
									}
								}
								this._ticks.push(Y)
							}
							O = D * j
						}
						else
						{
							this._autoFormatString = "%v";
							var D = Math.round(I / k);
							if (D < 1)
							{
								D = 1
							}
							var V = new h.jsDate(ae).setMonth(0, 1).setHours(0, 0, 0, 0);
							var z = new h.jsDate(J).add(1, "year").setMonth(0, 1).setHours(0, 0, 0, 0);
							var K = z.diff(V, "year");
							ab = Math.ceil(K / D) + 1;
							this.min = V.getTime();
							this.max = V.clone().add((ab - 1) * D, "year").getTime();
							this.numberTicks = ab;
							for (var aa = 0; aa < ab; aa++)
							{
								if (aa === 0)
								{
									N.value = V.getTime()
								}
								else
								{
									N.value = V.add(D, "year").getTime()
								}
								Y = new this.tickRenderer(N);
								if (this._overrideFormatString && this._autoFormatString != "")
								{
									Y.formatString = this._autoFormatString
								}
								if (!this.showTicks)
								{
									Y.showLabel = false;
									Y.showMark = false
								}
								else
								{
									if (!this.showTickMarks)
									{
										Y.showMark = false
									}
								}
								this._ticks.push(Y)
							}
							O = D * k
						}
					}
				}
				else
				{
					if (F == "xaxis" || F == "x2axis")
					{
						n = this._plotDimensions.width
					}
					else
					{
						n = this._plotDimensions.height
					}
					if (this.min != null && this.max != null && this.numberTicks != null)
					{
						this.tickInterval = null
					}
					if (this.tickInterval != null && U != null)
					{
						this.daTickInterval = U
					}
					if (ae == J)
					{
						var o = 24 * 60 * 60 * 500;
						ae -= o;
						J += o
					}
					B = J - ae;
					var G = 2 + parseInt(Math.max(0, n - 100) / 100, 10);
					var W, C;
					W = (this.min != null) ? new h.jsDate(this.min).getTime() : ae - B / 2 * (this.padMin - 1);
					C = (this.max != null) ? new h.jsDate(this.max).getTime() : J + B / 2 * (this.padMax - 1);
					this.min = W;
					this.max = C;
					B = this.max - this.min;
					if (this.numberTicks == null)
					{
						if (this.daTickInterval != null)
						{
							var u = new h.jsDate(this.max).diff(this.min, this.daTickInterval[1], true);
							this.numberTicks = Math.ceil(u / this.daTickInterval[0]) + 1;
							this.max = new h.jsDate(this.min).add((this.numberTicks - 1) * this.daTickInterval[0], this.daTickInterval[1]).getTime()
						}
						else
						{
							if (n > 200)
							{
								this.numberTicks = parseInt(3 + (n - 200) / 100, 10)
							}
							else
							{
								this.numberTicks = 2
							}
						}
					}
					O = B / (this.numberTicks - 1) / 1000;
					if (this.daTickInterval == null)
					{
						this.daTickInterval = [O, "seconds"]
					}
					for (var aa = 0; aa < this.numberTicks; aa++)
					{
						var ae = new h.jsDate(this.min);
						ad = ae.add(aa * this.daTickInterval[0], this.daTickInterval[1]).getTime();
						var Y = new this.tickRenderer(this.tickOptions);
						if (!this.showTicks)
						{
							Y.showLabel = false;
							Y.showMark = false
						}
						else
						{
							if (!this.showTickMarks)
							{
								Y.showMark = false
							}
						}
						Y.setTick(ad, this.name);
						this._ticks.push(Y)
					}
				}
			}
		}
		if (this.tickInset)
		{
			this.min = this.min - this.tickInset * O;
			this.max = this.max + this.tickInset * O
		}
		if (this._daTickInterval == null)
		{
			this._daTickInterval = this.daTickInterval
		}
		X = null
	}
})(akeeba.jQuery);