var text = '';

var banner = new Image();
banner.src = 'images/allinkl2.gif';

function setSmilie( nr ) {
	var insText = ':sm' + nr + ':';
	var input = document.forms['Eintrag'].elements['Text'];
	input.focus();

	if( typeof document.selection != 'undefined' ) {
		input.caretPos = document.selection.createRange();
		if( input.createTextRange && input.caretPos ) {
			var caretPos = input.caretPos;
			caretPos.text = insText;
		} else input.value  += insText;
	} else if( typeof input.selectionStart != 'undefined' ) {
		var pos = input.selectionStart;
		input.value = input.value.substring( 0, input.selectionStart ) + insText + input.value.substring( input.selectionEnd, input.value.length);
		input.selectionStart = pos + insText.length;
		input.selectionEnd = input.selectionStart;
	} else input.value  += text;
	input.focus();
}

function popup(url,breite,hoehe,bars) {
	var links = ( screen.availWidth - breite / 2 ) / 5;
	if( links < 0 ) links = 0;
	var oben = ( screen.availHeight - hoehe / 2 ) / 8;
	if( oben < 0 ) oben = 0;
	var params = "width="+breite+",height="+hoehe+",left="+links+",top="+oben+",resizable";
	if( bars ) params += ",scrollbars"
	var ok = open( url, "popup", params );
	if( ok ) return false;
	else return true;
}

function verse(nr,hh) {
	var ok = open( "buero.php?vnr=" + nr, "bb" + nr, "width=620,height=" + hh + ",left=50,top=30,resizable,scrollbars" );
	if( ok ) return false;
	else return true;
}

function muellsmilies(nr) {
	document.muellform.m_smilie.value = nr;
}

function muellfarben() {
	open( "farben.php", "farben", "width=600,height=180,left=100,top=30" );
}

function pw_gen() {
	open( "pwgen.php", "generator", "width=360,height=220,left=150,top=100" );
}

function highscore( id ) {
	var ok = open( "highscore.php?id=" + id, "score", "width=540,height=440,left=100,top=30,resizable,scrollbars" );
	if( ok ) return false;
	else return true;
}

function ma_liste() {
	var ok = open( "ma_liste.php", "mastermiez", "width=440,height=400,left=100,top=30,resizable,scrollbars" );
	if( ok ) return false;
	else return true;
}

function aufnehmen( farbe ) {
	document.forms['maForm'].elements['akt'].value = farbe;
}

function stecken( feld ) {
	switch( feld ) {
		case 1: steck = document.feld1; break;
		case 2: steck = document.feld2; break;
		case 3: steck = document.feld3; break;
		case 4: steck = document.feld4; break;
	}
	steck.src = "mastermiez/f" + document.forms['maForm'].elements['akt'].value + ".gif";
	document.forms['maForm'].elements['feld'+feld].value = document.forms['maForm'].elements['akt'].value;
	document.forms['maForm'].elements['akt'].value = "0";
}

var i = 0;
var z = 0;
var zeile = new Array();
zeile[0] = "JETZT NEU! Krümels kostenloser INFO-SERVICE ";
zeile[1] = "Neue Spiele, neue Rätsel, Tipps & Tricks ";
zeile[2] = "Live-Berichte aus Knuddelhausen ";
zeile[3] = "oder gar ein neuer Dosi-Test ... ";
zeile[4] = "Immer auf dem Laufenden sein ";
zeile[5] = "Nie wieder was verpassen ";
zeile[6] = "Gleich mal hinpilgern ----------> ";

function start() {
	if( document.getElementById || document.all ) setTimeout( "schreib()", 1000 );
}

function schreib() {
	stext = zeile[z].substring( 0, i );
	stext = stext.replace( /&/, "&amp;" );
	stext = stext.replace( /ä/, "&auml;" );
	stext = stext.replace( /ö/, "&ouml;" );
	stext = stext.replace( /ü/, "&uuml;" );
	stext = stext.replace( /ß/, "&szlig;" );
	stext = stext.replace( />/, "&gt;" );
	stext += "_&nbsp;";
	if( document.getElementById ) document.getElementById("text").innerHTML = stext;
	else document.all.text.innerHTML = stext;
	i++;
	if( i < zeile[z].length ) {
		window.setTimeout( "schreib()", 100 );
	} else {
		i = 0;
		z++;
		window.setTimeout( "blink(stext)", 250 );
	}
}

function blink(x) {
	btext = x;
	if( i % 2 ) btext += "_&nbsp;";
	else btext = btext.replace( /_&nbsp;/, "" );
	if( document.getElementById ) document.getElementById("text").innerHTML = btext;
	else document.all.text.innerHTML = btext;
	if( z < zeile.length && i == 7 ) {
		i = 0;
		window.setTimeout( "schreib()", 250 );
	}
	else if( z == zeile.length && i == 15 ) {
		z = 0;
		i = 0;
		window.setTimeout( "schreib()", 250 );
	}
	else {
		i++;
		window.setTimeout( "blink(btext)", 250 );
	}
}

function diashow(nr) {
	ok = open( "diashow/?nr="+nr, "diashow", "width=614,height=460,left=100,top=30" );
	if (ok) return false;
	else return true;
}

function chkComment( zeichen ) {
	var inhalt = document.Eintrag.Text.value
	var anzahl = inhalt.length;
	if( anzahl >= zeichen ) {
		document.Eintrag.Text.value = inhalt.substr( 0, zeichen );
		ausgabe = '(Limit erreicht!)';
	} else ausgabe = '(noch ' + ( zeichen - anzahl ) + ' Zeichen)';
	document.getElementById('Check').innerHTML = ausgabe;
}

function setComment( zeichen ) {
	document.getElementById('Check').innerHTML = '(max. ' + zeichen + ' Zeichen)';
}

var cursor = 0;
var colType = 'hex';
var base = 16;
var ends = new Array(new Color,new Color);
var step = new Array(3);
var palette = new Array( new Color, new Color, new Color, new Color, new Color, new Color, new Color, new Color, new Color, new Color, new Color, new Color );

function GetElementsWithClassName( elementName, className ) {
	var allElements = document.getElementsByTagName( elementName );
	var elemColl = new Array();
	for( i = 0; i < allElements.length; i++ ) if( allElements[i].className == className ) elemColl[elemColl.length] = allElements[i];
	return elemColl;
}

function Color( r, g, b ) {
	this.r = r;
	this.g = g;
	this.b = b;
	this.coll = new Array( r, g, b );
	this.valid = cVerify( this.coll );
	this.text = cText( this.coll );
	this.bg = cText( this.coll );
}

function cVerify( c ) {
	var valid = 'n';
	if(( !isNaN( c[0] )) && ( !isNaN( c[1] )) && ( !isNaN( c[2] ))) valid = 'y';
	return valid;
}

function cText( c ) {
	var result = '';
	var d = 1;
	if( colType == 'rgbp' ) d = 2.55;
	for( k = 0; k < 3; k++ ) {
		val = Math.round( c[k] / d );
		piece = val.toString( base );
		if( colType == 'hex' && piece.length < 2 ) piece = '0' + piece;
		if( colType == 'rgbp' ) piece = piece + '%';
		if( colType != 'hex' && k < 2 ) piece = piece + ',';
		result = result + piece;
	}
	if( colType == 'hex' ) result = '#' + result.toUpperCase();
	else result = 'rgb(' + result + ')';
	return result;
}

function colorParse( c, t ) {
	var m = 1;
	c = c.toUpperCase();
	col = c.replace( /[\#rgb\(]*/, '' );
	if( t == 'hex' ) {
		if( col.length == 3 ) {
			a = col.substr( 0, 1 );
			b = col.substr( 1, 1 );
			c = col.substr( 2, 1 );
			col = a + a + b + b + c + c;
		}
		var num = new Array( col.substr( 0, 2 ), col.substr( 2, 2 ), col.substr( 4, 2 ));
		var base = 16;
	} else {
		var num = col.split( ',' );
		var base = 10;
	}
	if( t == 'rgbp' ) m = 2.55;
	var ret = new Array( parseInt( num[0], base ) * m, parseInt( num[1], base ) * m, parseInt( num[2], base ) * m );
	return( ret );
}

function colorPour( pt, n ) {
	var textObj = document.getElementById( pt + n.toString());
	var colObj = document.getElementById( pt.substring(0,1) + n.toString());
	if( pt == 'col' ) temp = ends[n];
	else temp = palette[n];
	if( temp.valid == 'y' ) {
		textObj.value = temp.text;
		colObj.style.backgroundColor = temp.bg;
	}
}

function colorStore( n ) {
	var inVal = 'col' + n.toString();
	var inCol = document.getElementById( inVal ).value;
	var c = colorParse( inCol, colType );
	ends[n] = new Color( c[0], c[1], c[2] );
	if( ends[n].valid == 'y' ) colorPour( 'col', n );
}

function stepCalc() {
	var steps = parseInt( document.getElementById( 'steps' ).value ) + 1;
	step[0] = ( ends[1].r - ends[0].r ) / steps;
	step[1] = ( ends[1].g - ends[0].g ) / steps;
	step[2] = ( ends[1].b - ends[0].b ) / steps;
}

function mixPalette() {
	var steps = parseInt( document.getElementById( 'steps' ).value );
	var count = steps + 1;
	palette[0] = new Color( ends[0].r, ends[0].g, ends[0].b );
	palette[count] = new Color( ends[1].r, ends[1].g, ends[1].b );
	for( i = 1; i < count; i++ ) {
		var r = ( ends[0].r + (step[0] * i ));
		var g = ( ends[0].g + (step[1] * i ));
		var b = ( ends[0].b + (step[2] * i ));
			palette[i] = new Color( r, g, b );
	}
	for( j = count + 1; j < 12; j++ ) {
		palette[j].text = '';
		palette[j].bg = 'white';
	}
}

function drawPalette() {
	stepCalc();
	mixPalette();
	for( i = 0; i < 12; i++ ) {
		colorPour( 'pal', i );
	}		
}

function setCursor( n ) {
	if( n >= 0 && n <= 1 ) {
		var obj1 = document.getElementById( 'col0' );
		var obj2 = document.getElementById( 'col1' );
		obj1.style.backgroundColor = '';
		obj2.style.backgroundColor = '';
		document.getElementById( 'col' + n ).style.backgroundColor = '#FF9';
		cursor = n;
	}
}

function colorIns( c ) {
	var obj = document.getElementById( 'col' + cursor );
	var result = colorParse( c, 'hex' );
	ends[cursor] = new Color( result[0], result[1], result[2] );
	obj.value = ends[cursor].text;
	if( ends[cursor].valid == 'y' ) colorPour( 'col', cursor );
	setCursor( cursor == 1 ? 0 : 1 );
}

function setType( inp ) {
	colType = inp;
	base = inp == 'hex' ? 16 : 10;
	for( i = 0; i < 2; i++ ) {
		var obj = document.getElementById( 'col' + i );
		if( ends[i].valid == 'y' ) {
			ends[i] = new Color( ends[i].r, ends[i].g, ends[i].b );
			obj.value = ends[i].text;
		}
	}
	drawPalette();	
}

function cb_start( inp ) {
	if( !inp ) inp = document.forms['cblender'].elements['typ'].options[document.forms['cblender'].elements['typ'].selectedIndex].value;

	for( i = 0; i < 2; i++ ) {
		ends[i] = new Color;
		document.getElementById( 'col' + i ).value = '';
		document.getElementById( 'c' + i ).style.backgroundColor = 'transparent';
	}
	for( j = 0; j < 12; j++ ) {
		palette[j] = new Color;
		document.getElementById( 'pal' + j ).value = '';
		document.getElementById( 'p' + j ).style.backgroundColor = 'transparent';
	}
	document.getElementById('steps').value = '0';
	document.getElementById('col0').focus();
}

function swText( sform, stext ) {
  document.getElementById('swx1').style.display = stext == 2 ? 'none' : 'block';
  document.getElementById('swx2').style.display = stext == 2 ? 'block' : 'none';
  document.forms[sform].elements['swx'].value = stext;
}