function characterCounter(observed,viewing,upper_boundary) {
	this.observed = document.getElementById(observed);
	this.viewing = document.getElementById(viewing);

	this.upper_boundary = upper_boundary;
	if(this.observed.maxLength > 0) {
		this.upper_boundary = this.observed.maxLength;
	}
	
	this.update = characterCounter_update;
	
	this.viewing.value = this.upper_boundary;
	this.update();
}

function characterCounter_update()
{
	length = this.observed.value.length;
	char_available = this.upper_boundary-length;
	this.viewing.value = char_available;
	
	if(char_available <= 0) {
		this.viewing.style.color = "red";
	}
	else {
		if(char_available <= this.upper_boundary * 0.3) {
			this.viewing.style.color = "orange";
		}
		else {
			this.viewing.style.color = "green";
		}
	}
}

function Karteikasten(reiter,start) {
    this.Reiter = new Array();
    
    var i = 0;
    while(id = reiter[i]) {
        this.Reiter[this.Reiter.length] = id;
        if(id != start) document.getElementById(id).style.display = 'none';
        i++;
    }
    
    this.showReiter = KarteikastenshowReiter;
}

function KarteikastenshowReiter(reiterid) {
    var i = 0;
    while(id = this.Reiter[i]) {
        document.getElementById(id).style.display = 'none';
        document.getElementById(id.replace(/Sheet/, "Tab")).className = 'tabs';
        i++;
    }
    document.getElementById(reiterid).style.display = 'block';
    document.getElementById(reiterid.replace(/Sheet/, "Tab")).className = 'tabs active';
}
