// This make sure that every console.log call executes even w/o firebug or ie8
if (typeof console === 'undefined') {
    var console =  { log: function(){} };
}
var iOkun = {
	isNumber: function (val) {
		return (isNaN(parseFloat(val))) ? false : true;
	},
	
	// Gets position of an element
	// @param HtmlElement el
	// return Object {int x, int y}
	getElementPos: function(el) {
		var offset = $(el).offset();

		var parent = el;
		var x = offset.left;
		var y = offset.top;
		while (parent && typeof parent.style !=='undefined') {
			var tmpX = parseInt(parent.style.left);
			if (!isNaN(tmpX))
				x -= tmpX;
			
			var tmpY = parseInt(parent.style.top);
			if (!isNaN(tmpY))
				y -= tmpY;
			
			parent = parent.parentNode;
		}
		
		return {x:x, y:y};
	},

    createCookie: function (name,value,days) {
        if (days) {
            var date = new Date();
            date.setTime(date.getTime()+(days*24*60*60*1000));
            var expires = "; expires="+date.toGMTString();
        }
        else var expires = "";
        document.cookie = name+"="+value+expires+"; path=/";
    },

    readCookie: function(name) {
        var nameEQ = name + "=";
        var ca = document.cookie.split(';');
        for(var i=0;i < ca.length;i++) {
            var c = ca[i];
            while (c.charAt(0)==' ') c = c.substring(1,c.length);
            if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
        }
        return null;
    },

    eraseCookie: function(name) {
        createCookie(name,"",-1);
    },


	initializeMaxLengthValidation : function() {
		
		var items = $('textarea');
		items.each( function() {
		
			var obj = $(this);
			var toValidate = obj.attr('className').match(/maxLength_([0-9]*)/i);
			if (toValidate !== null) {
				var maxLength = toValidate[1];
				
			}
			
		});
		
	}
};


jQuery.create = function(tagName, elementName) {
	if (typeof elementName !== 'undefined')
		if ($.browser.msie)
			return $(document.createElement('<'+tagName+' name="'+elementName+'">'));
		else
			return $(document.createElement(tagName)).attr('name', elementName);
	else
		return $(document.createElement(tagName));
}

jQuery.createTextNode = function(text) {
	return $(document.createTextNode(text));	
}

String.prototype.addCommas = function() {
	nStr = this;
	nStr += '';
	x = nStr.split('.');
	x1 = x[0];
	x2 = x.length > 1 ? '.' + x[1] : '';
	var rgx = /(\d+)(\d{3})/;
	while (rgx.test(x1)) {
		x1 = x1.replace(rgx, '$1' + ',' + '$2');
	}
	return x1 + x2;
}

Number.prototype.addCommas = function() {
	nStr = this + '';
	return nStr.addCommas();
}

//$( iOkun.initalizeMaxLengthValidation );