function inputArea(iIdent) {
	var self = this;

	this.inheritsFrom = input;
	this.inheritsFrom();

	this.ident 	   = iIdent;
	this.handles   = ""; // prikaz ktery se bude volat
	this.container = document.getElementById(this.ident);

	this.textDiv    = this.container.childNodes[0];
	this.textBox    = this.container.childNodes[1].childNodes[0];
	this.buttCancel = this.container.childNodes[1].childNodes[1];
	this.buttOk		= this.container.childNodes[1].childNodes[2];

	this.disabled = false;

	this.textDiv.onmouseover = function() {
        if (!self.disabled)
    		self.textDiv.style.backgroundColor = "#FFFDC8";
	}

	this.textDiv.onmouseout = function() {
        if (!self.disabled)
		  self.textDiv.style.backgroundColor = "";
	}

	this.textDiv.onclick = function() {
        if (!self.disabled)
		  self.activate();
	}

	this.buttOk.onclick = function() { self.input_call(); }
	this.buttCancel.onclick = function() { self.input_cancel(); }

	this.activate = function() {
		this.textDiv.style.display = "none";
		this.textBox.parentNode.style.display = "block";
	}

	this.deactivate = function() {
		this.textBox.parentNode.style.display = "none";
		this.textDiv.style.display = "block";
	}

    this.textDiv_baseColor = this.textDiv.style.color;

    this.refreshBox = function(iValue) {
        if (iValue == "") {
            this.textDiv.innerHTML = this.disabled ? "" : "Kliknutím zde, vložíte nový popisek.";
            this.textDiv.style.display = this.disabled ? "none" : "block";
            this.textDiv.style.color = "#828282";
            this.container.style.display = this.disabled ? "none" : "block";
        } else {
            this.textDiv.innerHTML = iValue;
            this.textDiv.style.display = "block";
            this.textDiv.style.color = this.textDiv_baseColor == "" ? "black" : this.textDiv_baseColor;
            this.container.style.display = "block";
        }
        this.deactivate();
    }

	this.setParams = function(iValue, iHandles, disabled) {
		this.disabled = disabled;
        this.refreshBox(iValue);
		this.textBox.value = iValue;
		this.handles = iHandles;
	}

	// ----- override ------
	this.input_call = function() {
        var limit = (this.textBox.tagName.toLowerCase() == "textarea") ? 1000 : 100;

        this.textBox.value = fixStr(this.textBox.value, limit);
        if (this.textBox.value.length <= limit) {
            if (!this.disabled) {
        		if (exec == null) alert("Chyba!");
        		else {
        			var cmd = this.handles + "\"" + this.textBox.value + "\")";
        			exec.make(cmd, this);
                    this.refreshBox(this.textBox.value);
        		}

        		if (this.input_callEvent != null) this.input_callEvent();
    		}
		} else alert("Obsah textového pole přesáhnul povolenou velikost!\r\nMaximální délka je " + limit + " znaků (Váš text je dlouhý " + this.textBox.value.length + " znaků)");
	}

	this.input_cancel = function() {
        if (!this.disabled) {
    		this.deactivate();
    		if (this.input_cancelEvent != null) this.input_cancelEvent();
	    }
	}

	this.input_refresh = function() {
        if (!this.disabled) {
            this.refreshBox(this.textBox.value);
    		this.deactivate();
    		if (this.input_refreshEvent != null) this.input_refreshEvent();
		}
	}
}
