var W3CDOM = (document.createElement && document.getElementsByTagName);

function initFileUploads() {
	if (!W3CDOM) return;
	var fakeFileUpload = document.createElement('div');
    fakeFileUpload.className = 'fakefile';

    var innerDiv1 = document.createElement('div');
    innerDiv1.className = 'input-text';
    innerDiv1.appendChild(document.createElement('div'));
    innerDiv1.firstChild.appendChild(document.createElement('div'));
    innerDiv1.firstChild.firstChild.appendChild(document.createElement('input'));

    fakeFileUpload.appendChild(innerDiv1);

    var fakeFileBrowse = document.createElement('div');
    fakeFileBrowse.className = 'fakefile-browse';

	var image = document.createElement('img');
	image.src='img/forms/btn_select.gif';
	image.alt = 'обзор';
    fakeFileBrowse.appendChild(image);

  	fakeFileUpload.appendChild(fakeFileBrowse);
//    fakeFileUpload.appendChild(document.createElement('input'));
  //  fakeFileUpload.appendChild(image);
	var x = document.getElementsByTagName('input');
	for (var i=0;i<x.length;i++) {
		if (x[i].type != 'file') continue;
		if (x[i].parentNode.className != 'input-file') continue;
		x[i].className = 'file hidden';
		var clone = fakeFileUpload.cloneNode(true);
		x[i].parentNode.appendChild(clone);
		x[i].relatedElement = clone.getElementsByTagName('input')[0];
		x[i].onchange = x[i].onmouseout = function () {
			this.relatedElement.value = this.value;
		}
	}
}


/**
* Обработка поля ввода
*/

function inputController()
{

}

inputController.object = null;
inputController.button = null;
inputController.classActive = '';
inputController.classInactive = '';
inputController.defaultValue = '';
inputController.isSubmitable = ''; 

inputController.prototype.init = function(inputId, buttonId, defaultSrt)
{
    // настройки
    this.classInactive = 'inputFieldInactive';
    this.classActive = 'inputFieldActive';
    this.defaultValue = defaultSrt;
    this.isSubmitable = false;

    this.object = document.getElementById(inputId);
    this.button = document.getElementById(buttonId);
    
    this.object.className = this.classInactive;
    this.object.value = defaultSrt;
    
    
    
}

inputController.prototype.clear = function()
{
    if ( this.object.value == this.defaultValue) {
        this.object.value = '';
    }
    this.object.className = this.classActive;
}

inputController.prototype.lostFocus = function()
{
    if (this.object.value == '' ||  this.object.value == this.defaultValue) {
        this.object.value = this.defaultValue;
        this.object.className = this.classInactive;
    }
}

inputController.prototype.keyPressed = function()
{
    if (this.object.value != '') {
        this.isSubmitable = true;
    } else {
        this.isSubmitable = false;
    }
}

inputController.prototype.submit = function()
{
    if (this.isSubmitable) {
        return true;
    } 
    else return false;
}

/**
* Something about Chechbox 
*/

var state = 0;
function setCheckbox(obj, defaultImage, checkedImage)
{
	if (state == 0) {
		obj.src = checkedImage;
		state = 1;
	} else {
		obj.src = defaultImage;
		state = 0;
	}
	
}

/** Типа радио */

function radioController() {}

radioController.prototype.init = function()
{
	this.img = 'img/forms/checkbox_empty.gif';
	this.imgChecked = 'img/forms/checkbox_checked.gif';
	this.obj = new Array();	
}



radioController.prototype.add = function(id)
{
	var dataId = this.obj.length;
	this.obj[dataId] = new Array();
	this.obj[dataId][0] = document.getElementById(id);
	this.obj[dataId][1] = id;
}

radioController.prototype.click = function(id)
{
//	alert(this.obj.lenght);
	for (var i = 0; i < this.obj.length; i++) {
		if (this.obj[i][1] == id) {
			this.obj[i][0].src = this.imgChecked;	
		} else {
			this.obj[i][0].src = this.img;	
		}
	}
}

/**
* Stars
*/

function stars() {}

stars.prototype.init = function(starsArray, current)
{
	this.img = 'img/star_inactive.gif';
	this.imgActive = 'img/star_active.gif';
	this.imgLight = 'img/star_active.gif';
	this.imgHalf = 'img/star_half.gif';
	this.data = new Array();
	this.current = current;
	for (var i = 0; i < starsArray.length; i++) {
		this.data[i] = document.getElementById(starsArray[i]);		
		this.data[i].onmouseout = function() { s.restore(); };
	}
	this.restore();
//	alert(this.data);
}

stars.prototype.show = function(c)
{
	for (var i = 0; i < this.data.length; i++) {		
		if (i <= c) {
			this.data[i].src = this.imgLight;
		} else {
			this.data[i].src = this.img;
		}
	}
}

stars.prototype.clear = function()
{
//	this.restore();
	for (var i = 0; i < this.data.length; i++) {		
		this.data[i].src = this.img;
	}	
}

stars.prototype.restore = function()
{
	for (var i = 0; i < this.data.length; i++) {
		if (i+1 <= this.current) {
			this.data[i].src = this.imgActive;
		} else {
			if (i+1 == this.current || this.current <= i) {
				this.data[i].src = this.img;
			} else {
				this.data[i].src = this.imgHalf;
			}
		}
	}
}

// Для копирования в буфер

function textCopyIEiprEx(elt) {
    elt.focus();
    var toCopy = elt.value;
        if (window.clipboardData) {
	    window.clipboardData.setData('Text', toCopy);
            alert('Код скопирован в буфер обмена Windows.');
	} else {
	    alert('Ваш браузер не поддерживает операции с буфером обмена. Пожалуйста, скопируйте адрес игры вручную.');
	}
}




