//Specify affected tags. Add or remove from list:
//var tgs = new Array( 'p','div','td','tr');
var tgs = new Array( 'p', 'div');
//var tgs = new Array( 'p', 'h3', 'div');

//Specify spectrum of different font sizes:
//var szs = new Array( 'xx-small','x-small','small','medium','large','x-large','xx-large' );
var szs = new Array( '8px','9px','10px','11px','12px','13px','14px' );
//var szs = new Array( '94%','96%','98%','100%','102%','104%','106%' );
var startSz = 3;

var cookieVerfallszeit = 1000 * 60 * 60 * 24 * 365;//1 Jahr

function ts( trgt,inc ) {
	if (!document.getElementById) return
	var d = document,cEl = null,sz = startSz,i,j,cTags;

	if ( inc == 11 ) {
		sz = -8;//reset to default
	}

	sz += inc;
	if ( sz < 1 ) sz = 1;//null kann nicht verwendet werden da damit das cookie gelöscht wird
	if ( sz > 6 ) sz = 6;

	cookieSetzen ("Textsize", sz, cookieVerfallszeit);//in cookie speichern

	startSz = sz;

	if ( !( cEl = d.getElementById( trgt ) ) ) cEl = d.getElementsByTagName( trgt )[ 0 ];

	cEl.style.fontSize = szs[ sz ];

	for ( i = 0 ; i < tgs.length ; i++ ) {
		cTags = cEl.getElementsByTagName( tgs[ i ] );
		for ( j = 0 ; j < cTags.length ; j++ ) cTags[ j ].style.fontSize = szs[ sz ];
	}
}

function cookieSetzen (Bezeichner, Wert, Verfall) {
  var jetzt = new Date();
  var Auszeit = new Date(jetzt.getTime() + Verfall);
  document.cookie = Bezeichner + "=" + Wert + "; expires=" + Auszeit.toGMTString() + ";";
}

function tsFromCookie( trgt,cookiesz ) {
	if (!document.getElementById) return
	var d = document,cEl = null,sz = startSz,i,j,cTags;

	sz = cookiesz;

	startSz = sz;

	if ( !( cEl = d.getElementById( trgt ) ) ) cEl = d.getElementsByTagName( trgt )[ 0 ];

	cEl.style.fontSize = szs[ sz ];

	for ( i = 0 ; i < tgs.length ; i++ ) {
		cTags = cEl.getElementsByTagName( tgs[ i ] );
		for ( j = 0 ; j < cTags.length ; j++ ) cTags[ j ].style.fontSize = szs[ sz ];
	}
}

