//alert(1);
var alt_inner=document.body.innerHTML;
var marker;
var anfang=new Array;
var body_inner="";

function placeSpan(position)
{
}

function strip_tags(s)
{
var p=0;
var i=0;
var o="";
tag=0;
for (i=0;i<s.length;i++)
{
if (s.charAt(i)=="<") tag=1;
if (s.charAt(i)=="&") tag=2;

if(tag==0 && ((s.charAt(i)>= "a" && s.charAt(i)<="z") || (s.charAt(i)>= "A" && s.charAt(i)<="Z") || (s.charAt(i)>= "0" && s.charAt(i)<="9")    )){
o=o+s.charAt(i);
}
if (tag==2 && s.charAt(i)==" ")tag=0;
if (tag==2 && s.charAt(i)==";")tag=0;
if (s.charAt(i)==">") tag=0;

}
//alert(o);
return o;
}

function span_stuff(s)
{
var p=0;
var i=0;
var o="";
tag=0;
for (i=0;i<s.length;i++)
{
if (s.charAt(i)=="<") tag=1;
if (s.charAt(i)=="&") tag=2;

if(tag==1){
o=o+s.charAt(i);
} else
{
o=o+"<span style=background-color:yellow>"+s.charAt(i)+"</span>";
}
if (s.charAt(i)==">") tag=0;
if (tag==2 && s.charAt(i)==" ")tag=0;
if (tag==2 && s.charAt(i)==";")tag=0;

}
return o;
}



function strip_tagsbody(s)

{
var p=0;
var i=0;
var o="";
tag=0;
for (i=0;i<s.length;i++)
{
if (s.charAt(i)=="<") tag=1;
if (s.charAt(i)=="&") tag=2;


if(tag==0 && ((s.charAt(i)>= "a" && s.charAt(i)<="z") || (s.charAt(i)>= "A" && s.charAt(i)<="Z") || (s.charAt(i)>= "0" && s.charAt(i)<="9")    )){

o=o+s.charAt(i);
anfang[p]=i;
p++;

}
if (s.charAt(i)==">") tag=0;
if (tag==2 && s.charAt(i)==" ")tag=0;
if (tag==2 && s.charAt(i)==";")tag=0;


}
return o;
}


function ShowSelection() {
alt_inner=document.body.innerHTML;
var stripped =strip_tagsbody(alt_inner);
a = document.selection.createRange();
b = a.text;
//	alert(b);
if (b!="")	markhappens(b);

}

var vorhappens="";
var innerhappens="";
var nachhappens="";
var aktiv ;
var althappens="";
function markhappens(happens) {
if (happens==althappens)return;
happens=strip_tags(happens);
if (alt_inner!="")document.body.innerHTML!=alt_inner;
alt_inner=document.body.innerHTML;
var stripped =strip_tagsbody(alt_inner);
var b = happens;
//alert (strip_tags(b));
if (stripped.lastIndexOf(strip_tags(b))==-1)return;

vorhappens=document.body.innerHTML.slice(0,anfang[stripped.lastIndexOf(strip_tags(b))])
innerhappens=document.body.innerHTML.slice(anfang[stripped.lastIndexOf(strip_tags(b))],anfang[strip_tags(b).length+stripped.lastIndexOf(strip_tags(b))])
//alert ("innerhappens:"+innerhappens);
nachhappens=document.body.innerHTML.slice(anfang[strip_tags(b).length+stripped.lastIndexOf(strip_tags(b))]);

Farbe();
}

var flickermode=0;
function UnMark()
{
window.clearInterval(aktiv);
aktiv="";
document.body.innerHTML=alt_inner;
}


function Farbe()
{
var e=document.getElementById("happens1");
document.body.innerHTML=vorhappens+"<span><img id=blinkpfeil name=blinkpfeil src=http://195.158.157.62/pmc/pfeil_green_blink.gif>"+span_stuff(innerhappens)+nachhappens;
}

function createCookie(name,value,exp) {
	document.cookie = name+"="+value+exp;
}

function readCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function eraseCookie(name) {
}
spzzchn=  "*+-./_@";
function ersetze(text,find,repl){
  var found = text.indexOf(find);
  var retVal= ""; var start = 0;
  while(found != -1){
    retVal +=text.substring(start,found) +repl;
    start = found+find.length;
    found =text.indexOf(find,start);
  }
  retVal +=text.substring(start,text.length);
  return retVal;
}
var lastmark="";
function WertAusgeben() {
var b=""+self.name;
b=ersetze(b,"_","%");
for(var i=0;i<spzzchn.length;i++)
b=ersetze(b,"%X"+i,spzzchn.charAt(i));
b=unescape(b);
return b;
}
function markit ()
{
var txt=WertAusgeben();
//alert (txt);
if (txt.substr(0,4)!="pmc:")
{
//	alert ("nomark "+txt);
return;
}
if (txt==lastmark)return;
//	lastmark="";
	self.name="";
try  {
	markhappens(txt.substr(4,9999));
} catch (e) { }
	/*
	var Elem="blinkpfeil";
	if(document.getElementById) {	
		var elem = document.getElementById(Elem);
	} else if (document.all) {
		var elem = document.all[Elem];
	}
	yPos = elem.offsetTop;
	tempEl = elem.offsetParent;
	while (tempEl != null) {
		yPos += tempEl.offsetTop;
		tempEl = tempEl.offsetParent;
  	}
	window.scrollTo(0,ypos-100);*/
	

}
setTimeout('markit()',1000);
