function InputPlaceholder (input, value, cssFilled, cssEmpty)
{
	var thisCopy = this
	
	this.Input = input
	this.Value = value
	this.SaveOriginal = (input.value == value)
	this.CssFilled = cssFilled
	this.CssEmpty = cssEmpty

	this.setupEvent (this.Input, 'focus', function() {return thisCopy.onFocus()})
	this.setupEvent (this.Input, 'blur',  function() {return thisCopy.onBlur()})
	this.setupEvent (this.Input, 'keydown', function() {return thisCopy.onKeyDown()})

	if (input.value == '') this.onBlur();

	return this
}

InputPlaceholder.prototype.setupEvent = function (elem, eventType, handler)
{
	if (elem.attachEvent)
	{
		elem.attachEvent ('on' + eventType, handler)
	}

	if (elem.addEventListener)
	{
		elem.addEventListener (eventType, handler, false)
	}
}

InputPlaceholder.prototype.onFocus = function()
{
	if (!this.SaveOriginal &&  this.Input.value == this.Value)
	{
		this.Input.value = ''
	}
	else
	{
			this.Input.className = ''
	}
}

InputPlaceholder.prototype.onKeyDown = function()
{
	this.Input.className = ''
}

InputPlaceholder.prototype.onBlur = function()
{
	if (this.Input.value == '' || this.Input.value == this.Value)
	{
		this.Input.value = this.Value
		this.Input.className = this.CssEmpty
	}
	else
	{
		this.Input.className = this.CssFilled
	}
}

var Cookie = {
	/**
	* Установка cookie name=value сроком на days дней
	* @param {} name
	* @param {} value
	* @param {} days
	*/
	set: function( name, value, days ){
		var date = new Date();
		date.setTime( date.getTime() + days * 86400000 );
		document.cookie =
		name + '=' + value + '; ' +
		'expires=' + date.toGMTString() + '; ' +
		'path=/';
	},
	/**
	* Получение значение cookie name
	* @param {} name
	* @return {String}
	*/
	get: function( name ){
		var re = new RegExp( '\\s*' + name + '=' );
		var cookies = document.cookie.split(';');
		for( var i = 0; i < cookies.length; i++ ){
			var c = cookies[i];
			if ( re.test( c ) ){
				return c.replace( re, '' );
			}
		}
		return '';
	}
}