/*
www.raetsel-hilfe.de
Bei dem Inhalt unserer Internetseiten handelt es sich um urheberrechtlich geschützte Werke.
Die Übernahme und Nutzung der Daten bedarf der schriftlichen Zustimmung der inhaltlich Verantwortlichen.
Das Urheberrecht umfasst alle Angaben, Daten, Quelltexte, Informationen, Texte und Fotos, so weit nicht anders vermerkt.
&& und
|| oder
*/
var jocker,namensmuster,zeigbuch,buchstaben_auswahl;
var stopworts        ="vor v a ab aber abgesehen all alle allein allem allen aller alles allezeit allg allgemein allmählich allzeit als also am an and ander andere anderem anderen anderenfalls anderer anderes aneinander annäherungsweise anstatt are as at auch auf aus aussen ausser ausserdem ausserhalb außen außer außerdem außerhalb b bald been beg behalten bei beide beiden beider beides beim beinahe beizeiten besonders bevor bietet bin bis bist bisweilen bitte bleibe bleiben bleibst bleibt bzw c circa d da dabei dadurch dafür daher dahin danach dann daran darauf daraus darf darfst darin darueber darueberhinaus darum darunter darüber darüberhinaus das dass davon davor dazu dazwischen daß dein deine deinem deinen deiner deines dem demzufolge den denen denn dennoch der derem deren derer dergleichen derselbe derselben derselbige derzeit des desgleichen deshalb desselben dessen desto dich die dies diese dieselbe diesem diesen dieser dieses dir doch dort dorther dorthin dran drauf draußen drinnen drunter drüben drüber du duerfte duerften duerftest duerftet durch durchaus durchs durchweg durchwegs durfte durften durftest durftet dürfen dürft dürfte dürften dürftest dürftet e eben ehe ein eine einem einen einer eines einfach einige einiger einiges einmal entgegen entsprechend entsprechende entsprechendem entsprechenden entsprechender entsprechendes entweder er erscheinen erst ersten erster erstes es etc etwa etwas euch euer euere euerem eueren euerer eueres eure eurem euren eurer eures eurige eventuell extra f fast fertig few for fort freilich from früher fuer für fürs g ganz ganze ganzem ganzen ganzer ganzes gar gegeben gegen gegenueber gegenüber gehabt gehalten geht gekonnt gelassen gemacht gemaess gemäß genau genug gerad gerade gering geschehen getan getrennt gewesen gewisse gewisser gewiß gewollt gleich gleichwohl gleichzeitig gruendlich gründlich gut gute h habe haben habt haeufig has hast hat hatte hatten hattest hattet have her herab heran herauf heraus herbei herein herinnen hernach herum herunter hervor herzu herüben herüber heuer heurig heute heutig heutzutage hie hiedurch hier hieran hierauf hieraufhin hieraus hierbei hierdurch hierein hierfür hiergegen hierher hierherauf hierherum hierhin hierin hierinnen hiermit hiernach hierum hierunter hiervon hiervor hierzu hierüber hiesig hiesige hin hinab hinan hinauf hinaus hindurch hinein hinfort hingegen hinlänglich hinnen hinreichend hintan hinten hintendran hinter hintere hinterem hinteren hinterer hinteres hinterher hinunter hinweg hinzu hinüber how häufig i ich ihm ihn ihnen ihr ihre ihrem ihren ihrer ihrerseits ihres ihrige ihrigen ihriges im immer immerfort immerhin imstande in indem infolge infolgedessen innerhalb innerlich ins insbesondere insgesamt inwiefern inwieweit inzwischen irgend irgendein irgendeine irgendeinem irgendeinen irgendeiner irgendeines irgendeinmal irgendetwas irgendwann irgendwas irgendwelche irgendwenn irgendwer irgendwie irgendwo irgendwoher irgendwohin ist j ja je jede jedem jeden jeder jederzeit jedes jedoch jeglich jegliche jeglichem jeglichen jeglicher jegliches jemals jemand jemandem jemanden jemandes jene jenem jenen jener jenes jetzt jung junge jungem jungen junger junges k kann kannst kaum kein keine keinem keinen keiner keines koennen koennt koennte koennten koenntest koenntet kommen kommt konnte konnten konntest konntet können könnt könnte könnten könntest könntet l lasse lassen laß laßt leicht les letzt letzte letztem letzten letzter letztes like los längs läßt m mache machen machst macht machte mal man manch manche manchem manchen mancher manches mehr mehrere mehreren mehreres mehrfach mein meine meinem meinen meiner meines meist meisten meistens mich mir mit mittels mitten mitunter moeglichst muessen muesst muss musst muß mußt möchte möchten möchtest möchtet mögen möglich möglicherweise müssen müßt n nach nachdem nacheinander nachfolgend nachher naechste nah nahe nahezu neben nebenan nebenbei nebeneinander nebenstehend nebensächlich nebst nein neu neue neuem neuen neuer neuerdings neuerlich neues nicht nichts nichtsdestotrotz nichtsdestoweniger niemals niemand niemandem niemanden niemandes nirgendwo noch not nun nur nächst nächste nächstem nächsten nächster nächstes näher o ob oben obwohl oder of oft ohne on or p paar per plötzlich pro q quasi qui r raus recht rein richtig rings runter rüber rückwärts s sage sagen sagst sagt sagte sagten sagtest sagtet samt scheinen schon schwierig sehr sei seid seien seiest seiet sein seine seinem seinen seiner seinerseits seinerzeit seinerzeitig seines seinetwegen seinige seit seitdem seither seitlich seitwärts selb selbe selbem selben selber selbes selbig selbige selbigem selbigen selbiger selbiges selbst selten sich sie sind so sobald sodaß soeben sofern sofort sogar sogleich sohin solang solange solch solche solchem solchen solcher solches soll sollen sollst sollt sollte sollten solltest solltet somit sonach sonder sonderbar sondergleichen sondern sonst sonstig sonstige sonstigem sonstigen sonstiger sonstiges sonstwie sonstwo sonstwohin sooft sosehr soviel soweit sowenig sowie sowieso sowohl sozusagen spät statt stete stetem steten steter stetes stets stop stopp sämtlich sämtliche sämtlichen sämtlicher sämtliches t tatsaechlich tatsächlich the tief to total trotz trotzdem tue tun tunlich tunlichst tust tut u ueber ueberall um umeinander umher umhin ums umso und ungefähr ungemein ungenau uns unser unsere unserem unseren unserer unsererseits unseres unsre unsrem unten unter unterhalb unterm unters unversehens usw v viel viele vielem vielen vieler vieles vielfach vielleicht vielmals vielmehr vollauf vollends vollständig vom von voneinander vonnöten vor vorab voran vorauf voraus voraussichtlich vorbei vordem vordere vorderem vorderen vorderer vorderes vorderhand vorderst vordringlich voreinander vorerst vorher vorhin vorig vorige vorigem vorigen voriger voriges vorm vorn vornan vorne vors vorueber vorweg vorwiegend vorwärts vorzeiten vorüber völlig w waehrend wann war waren warst wart warum was weder weg wegen weil weise weit weitaus weitem weiter weitere weiterem weiteren weiterer weiteres weiterhin weiters weitgehend weitgehendst welch welche welchem welchen welcher welches wem wen wenig wenige wenigen weniger weniges wenigste wenigstem wenigsten wenigstens wenigstes wenn wenngleich wennschon wer werde werden werdet wert weshalb wessen weswegen wider wie wieder wiederholt wiederum wiefern wiesehr wieso wieviel wievielte wieweit wiewohl will willen willst wir wird wirklich wirst wo woanders wobei wodurch wofuer wofür wogegen woher wohin wohingegen wohl wollen wollt wollte wolltest wolltet womit womöglich wonach woran worauf woraus worin worum worunter worüber wovon wovor wozu wuerde wuerden wuerdest wuerdet wurde wurden wurdest wurdet während würde würden würdest würdet x y you your z zeit zeitig ziemlich zirka zu zudem zueinander zuerst zufolge zugegeben zugleich zugunsten zugute zuhauf zuletzt zum zumal zumeist zumindest zunächst zur zurück zusammen zusehends zutage zutiefst zuviel zuvor zuvorderst zuwege zuwider zuzeiten zuzüglich zwar zwischen zwischenab zwischendurch zwischenzeitlich ß ä ähnlich ö öfter ü über überall überallher überallhin überdies übereinander überhand überll überm üblich übrig übrigens";
stopworts        = stopworts.toUpperCase();
var sucheArray = new Array();
var cookie_array = new Array();
var stopworts_array= stopworts.split(" ");
var hilfea        =new Array();
var hilfet        =new Array();
var texta        =" | | | | | | | | | | | | | | | | | |";
var posi        =0;
var lerne        = true;
var focussed        = false;
var ranklaenge = '0';
var prozent  = '0';
var imgweite = '0';
var zeig_my_php = 'false';
var krechtschreib = false;

hilfet[0]        ="";
hilfet[1]        ="Lösungswortsuche nach Umschreibung / Fragestellung";
hilfet[2]        ="Lösungswortsuche nach Buchstaben / Wortlänge";
hilfet[3]        =" My Rätselhilfe - Jeder Rätselfreund kann mitmachen! ";

hilfea[0]        ="";
hilfea[1]        ="Gebe einen beliebigen Teil der Umschreibung im Eingabefeld ein!<ul><li>die Suchfunktion unterstützt:<ul><li>ganze Wörter / Sätze</li><li>Wortstammsuche</li><li>Kombinationen Sätze / Wortstamm / Wörter</li></ul></li><li>Groß- Kleinschreibung wird nicht beachtet</li><li>Kombisuche mit bekannte Buchstaben vom Lösungswort</li><li>Kombisuche mit Buchstabenanzahl vom Lösungswort</li></ul>Unser Tipp: Kombiniere die 'Suche in Fragen' mit dem Filter nach Wortlänge(Anzahl Buchstaben) und/oder bekannte Buchstaben des Lösungswortes";
hilfea[2]        ="1.) Wortlänge des Lösungswortes eingeben<br>2.) bekannte Buchstaben eintragen<ul><li>ersetze Fragezeichen mit bekannte Buchstaben</li><li>Groß- Kleinschreibung wird nicht beachtet</li><li>max. 100 Einträge werden angezeigt</li>";
hilfea[3]        ="<div align=\"right\"><a href=\"javascript:void(0)\" style=\"font-size : 10px;width : 90%; font-weight : bold;text-decoration : none;\" onClick=\"zeig_hilfe_off()\" onMouseOver=\"zeig_hilfe_off()\"  >[close]</a></div><p style=\"TEXT-ALIGN: center;width : 95%;margin-left:10px;\">* Über My Rätselhilfe *<br>Jeder kann mitmachen und das Rätsellexikon weiter ausbauen<br>My-Rätselhilfe ist ein kleines Benutzertool um schnell neue Lösungen für das Lexikon vorzuschlagen. Ungelöste Rätselfragen werden per Klick zwischengespeichert und können jederzeit mit der richtigen Lösung in das Lexikon eingetragen werden. Unter [My Rätsel-Hilfe] (linke Navigation) kann das Tool aufgerufen werden. <\/p>";

function zeig_hilfe(erg)
{
   document.getElementById("hilfefeld").style.display        = "block";
   document.getElementById("helptext").innerHTML                = hilfea[erg];
   document.getElementById("helptitel").innerHTML                = hilfet[erg];
}

function zeig_hilfe_off()
{
   document.getElementById("hilfefeld").style.display        = "none";
   document.getElementById("helptext").innerHTML                = '';
   document.getElementById("helptitel").innerHTML                = '';
}

function zeig_wortlaenge()
{
   document.getElementById("wortleange").style.display        = "block";
}

function zeig_wortlaenge_off()
{
   document.getElementById("wortleange").style.display        = "none";
}

function zeig_suchfeld()
{
   document.getElementById("suchfeld").style.display        = "block";
}

function zeig_suchfeld_off()
{
   document.getElementById("suchfeld").style.display = "none";
}

function str_help(txt)
{
   return  str_replace("#","<br>",str_replace(' ',"&nbsp;",txt));
}

function str_replace(search, replace, subject)
{
   return subject.split(search).join(replace);
}

function erlaubt (code)
{
   if(!jocker)
      namensmuster        = /[\u0008A-Za-z0-9äöüßÄÖÜ ]/;
   else
      namensmuster        = /[\u0008A-Za-zäöüßÄÖÜ?]/;

   var character        = String.fromCharCode(code);

   return (namensmuster.test(character));
}



function filtern (e)
{
   var keyCode = e ? e.which : event.keyCode;

   var kcok = new Array(8, 10, 13, 46, 0);

   while (kcok.length > 0)
   {
      if (keyCode == kcok.pop())
      {
         return true;
      }
   }




   if (focussed && !erlaubt(keyCode))
   {
      zeichen();
      return false;
   }

   zeichen();
}

function zeichen()
{
   var laenge_suchfeld                        = window.document.mainform.suchenach.value.length;
   window.document.mainform.zeichen.value        =laenge_suchfeld;
}

function zeichen_test()
{
   var was        = window.document.mainform.elements["antwort[]"];
   alert(was.length);
}

function next_in(e,wohin)
{
   var nextid;
   var keyCode = e ? e.which : event.keyCode;

   if( keyCode == 39)
   {
      nextid = "in"+(wohin+1);
   }

   else if( keyCode == 37)
   {
      nextid = "in"+(wohin-1);
   }
   else
   {
      nextid = "in"+(wohin+1);
   }

   if (document.getElementById(nextid))
   {
      document.getElementById(nextid).focus();
   }
}


function rechtschreib(array)
{
   var Check, key ;
   var okrechtschreib = new Array();

   for ( key in array )
   {
      if(array_key_exists ( array[key], r ))
      {
         okrechtschreib[okrechtschreib.length++] = r[array[key]];
         krechtschreib = true;
      }
      else
      {
         okrechtschreib[okrechtschreib.length++] = array[key];
      }
   }

   if(krechtschreib == true)
   {
      Check = confirm("Die Suchphrase enthält mögliche Rechtschreibfehler\nRätsel-Hilfe Vorschlag:\n\n' "+okrechtschreib+" '\n\n übernehmen?");

      if (Check == true)
      {
         return okrechtschreib;
      }


   }

   return array;

}

function eingabe()
{
   if(in_Fragen)
   {
      zeichen();
      var suchfeld = str_to_key();
      var stringExp = new RegExp(/^[A-Za-z0-9äöüßÄÖÜ ]+$/);

      if (!stringExp.test(suchfeld))
      {
         alert("Der Suchbegriff muss aus Buchstaben bzw. Zahlen bestehen!");
         return false;
      }

      var stringExp_stop = new RegExp(/\bpussy\b|\bshit\b|\bfuck\b|\barsch\b|(?:Hobby[\-]{0,1}(?:nutten|huren)|Mistst(?:ü|ue)cke|callgirls)|(?:fick|intime.?|hardcore|willige.?|hemmungslose.?|perverse.?|verfickte.?|versaute.?|feuchte.?|geil.?|erregt.?)[a-z]{0,10}[ ]{0,1}(?:Frauen|Girls|M(?:ae|ä)dchen|Nutten|Schlampen|Huren|Gays|Teens|Teenager|Kinder|Teenies|Teenschlampen|Barbies|Jungs|Paare|Burschen|Buben|Schulm(?:ae|ä)dchen|Weib)|motherfucker|Fotze|(?:Arsch|Titten)fick|Spermageschmack|(?:Muschi|M(?:oe|ö)se)|Anal(?:dehnung|domination|penetration)|Arsch(?:saft|fotzen)|(?:Ficken|Bumsen|gefickt|gebumst|geblasen|fucked)/i);

      if (stringExp_stop.test(suchfeld))
      {
         window.document.mainform.suchenach.value ="";
         return false;
      }

      s=/(^\s+|\s+$)/g
         suchfeld                = suchfeld.replace(s,"")
                                   var suchfeld_laenge        = suchfeld.length;

      if(suchfeld_laenge < 2)
      {
         alert("[ Suchebegriff(e) ]\nist zu kurz / min. 2 Zeichen! (aktuell = "+suchfeld_laenge+")!");
         return false;
      }

      var leer                        = ' ';
      var suchwoerter                        = suchfeld.split(leer);
      suchwoerter                        = rechtschreib(suchwoerter);

      if(krechtschreib == true)
      {
         var neu_value  = suchwoerter.join(leer);
         window.document.mainform.suchenach.value = neu_value;
         suchfeld_laenge        = neu_value.length;
      }



      var stopwoertweg                = array_diff(suchwoerter, stopworts_array);
      var suchwoerter_neu                = stopwoertweg.join(leer);
      var suchwoerter_neu_laenge         = suchwoerter_neu.length ;

      if(suchwoerter_neu_laenge != suchfeld_laenge  && suchfeld_laenge > 5  && suchwoerter_neu_laenge > 4       )
      {
         Check = confirm("Die Suchphrase enthält zu allg. Wörter\nRätsel-Hilfe Vorschlag::\n\n' "+suchwoerter_neu+" '\n\n übernehmen?");

         if (Check == true)
         {
            window.document.mainform.suchenach.value = suchwoerter_neu;
         }
      }
      else
      {
         window.document.mainform.such_stop.value = suchwoerter_neu_laenge;
      }

      //return false;
      neue_suche();

   }

   if(in_Antworten)
   {
      var anzahl_ant = document.mainform.buchstaben.selectedIndex;

      if(anzahl_ant < 1)
      {
         alert("[bekannte Buchstaben / Suchwort] angeben  (aktuell = "+anzahl_ant+")!");
         return false;
      }
      else
      {
         var was = window.document.mainform.elements["antwort[]"];
         var str_1=0;
         var no = /[^?]/;

         for (var i = 0; i < was.length; i++)
         {
            if (no.test(was[i].value))
            {
               str_1= str_1+1;
            }
         }

         if(str_1 <=1)
         {
            alert("[ bekannte Buchstaben / Suchwort ]\n min. 2 Buchstaben\n (aktuell = "+str_1+")!");
            return false;
         }
      }

      neue_suche();
   }

   document.mainform.submit();
}

function is_array( mixed_var )
{

   return ( mixed_var instanceof Array );
}

function zeig_buchanz()
{
   if(document.mainform.elements['wosuche'][1].checked == false)
   {
      jocker                 =false;
      in_Fragen        =true;
      in_Antworten        =false;
      window.document.mainform.suchenach.value = "";
      document.mainform.buchstaben.selectedIndex ='';
      document.getElementById("helpantwort").innerHTML =  '';
      zeig_suchfeld();
      zeig_wortlaenge_off();
      zeichen();
   }
   else
   {
      jocker                 =true;
      in_Fragen        =false;
      in_Antworten        =true;
      zeig_suchfeld_off();
      zeig_wortlaenge();
      window.document.mainform.suchenach.value = "";
      document.mainform.buchstaben.selectedIndex ='';
      document.getElementById("helpantwort").innerHTML = '';
      document.getElementById("helpantwort").innerHTML = '<span style="color:red;"> Wortlänge [0-30] festlegen!<span>';
   }
}

function array_diff (array)
{
   var arr_diffind = [],arr_dif = [], i = 1, argc = arguments.length, argv = arguments, key, key_c, found=false;

   for ( key in array )
   {
      for (i = 1; i< argc; i++)
      {
         found = false;

         for (key_c in argv[i])
         {
            if (argv[i][key_c] == array[key])
            {
               found = true;
               break;
            }
         }

         if(!found)
         {
            arr_dif[key] = array[key];
         }
      }
   }

   return arr_dif;
}

function Go (select)
{
   var str_neu        = '';
   var td1                ='';
   var i                =1;
   var wert         = select.options[select.options.selectedIndex].value;

   if (wert == "")
   {
      document.getElementById("helpantwort").innerHTML =  '';
      zeig_wortlaenge_off();
      return;
   }
   else
   {
      for (var a = 1; a <= wert; a++)
      {
         if (i == 12)
         {
            td1 += '</tr><tr>';
            i =1;
         }

         i += 1;
         td1 += '<td class="td_input" ><span class="td_nummer">'+ a + '</span><br><input class="input_buch" id="in'+ a +'" onKeyup="next_in(event,'+ a +');"  onClick="this.value=\'\'" onblur="focussed=false;if(this.value==\'\')this.value=\'?\'" onfocus="jocker = true;focussed=true;if(this.value==\'?\') this.value=\'\'" type=Text name=antwort[] value="?" size=30 AUTOCOMPLETE="off" maxlength=1></td>';
      }

      str_neu                ='<table cellpadding="0" cellspacing="1" border="0"><tr>'+ td1 +'</tr><table>';
      zeig_wortlaenge();
      document.getElementById("helpantwort").innerHTML = '';
      document.getElementById("helpantwort").innerHTML = str_neu;
      document.getElementById("wortleange").focus();
   }
}

function compatible(elem)
{
   if(document.getElementById)
   {
      document.getElementById(''+elem+'').innerHTML=1;
   }
   else if (document.all)
   {
      document.all[''+elem+''].innerHTML=1;
   }
   else if (document.layers)
   {
      document.layers[''+elem+''].innerHTML=1;
   }
}

function reset_all()
{
   location.href = 'sucheneu.php';
}

function go_ergaenzer(wort)
{
   var str_neu                 ='';
   var ergaenzer_array        = wort.split("");
   document.getElementById("helpantwort").innerHTML ='';

   for (var i = 0; i < ergaenzer_array.length; i++)
   {
      str_neu += '<input type=hidden name=antwort[] value="'+ergaenzer_array[i]+'" maxlength=1>';
   }

   document.getElementById("helpantwort").innerHTML = str_neu;
   document.mainform.submit();
   neue_suche();
}

function go_ergaenzer_suche(buchanzahl)
{
   var str_neu ='';
   document.getElementById("helpantwort").innerHTML = '';

   for (var i = 0; i < buchanzahl; i++)
   {
      str_neu += '<input type=hidden name=antwort[] value="?"  maxlength=1>';
   }

   document.getElementById("helpantwort").innerHTML = str_neu;
   neue_suche();
   document.mainform.submit();
}

function go_alternativ(neusuche)
{
   window.document.mainform.suchenach.value = neusuche;
   window.document.mainform.alternativ.value = 'true';
   neue_suche();
   document.mainform.submit();

}

function lade()
{

   window.document.mainform.progress.value=texta.substring(0, posi);
   /* window.document.mainform.progress.value= 'lade suche'; */
   posi=posi+1;

   if (posi > texta.length)
   {
      posi=0;
   }

   setTimeout("lade()", 20);
}

function neue_suche()
{
   lade();
   document.getElementById('weg_div').style.display        ='none';
   document.getElementById('progress_div').style.display        ='';
   document.getElementById('footer').style.display                ='none';
   document.getElementById('infobox').style.visibility        ="hidden";
   document.getElementById('form').action += '?'+ str_to_key();
}

function str_to_key()
{
   var str = window.document.mainform.suchenach.value;
   str = str.replace(/<\/?[^>]+>/gi, ' ');
   str = str.replace(/\n/g, " ");
   str = str.replace(/\r/g, " ");
   str = str.replace(/\s+/g, " ");
   str = str.replace(/^\s/, "");
   str = str.replace(/\s$/, "");
   str = str.toUpperCase();
   return(str);
}

/* user cookie */

function user_merke(titleid)
{
   var wortgefunden,suche,Check;
   wortgefunden         = document.getElementById(""+titleid+"").innerHTML;
   suche                 = str_to_key();
   var stringExp = new RegExp(/^[A-Za-z0-9äöüßÄÖÜ ]+$/);

   if (!stringExp.test(suche))
   {
      alert("Die Suche nach "+suche+" kann im Memofeld nicht eingefügt werden!");
      return sucheArray;
   }

   if(array_key_exists ( suche, sucheArray ) == false )
   {
      sucheArray[""+suche+""] = new Array();
      sucheArray[""+suche+""][""+wortgefunden+""] = wortgefunden.length;
   }
   else if(sucheArray[""+suche+""][""+wortgefunden+""] == undefined || (sucheArray.constructor !== Array && sucheArray.constructor !== Object))
   {
      sucheArray[""+suche+""][""+wortgefunden+""] = wortgefunden.length;
   }
   else if(sucheArray[""+suche+""][""+wortgefunden+""] != undefined)
   {
      alert("Die Suche nach "+suche+" mit der Lösung "+wortgefunden+" ist schon im Memofeld vorhanden!");
      return false;
   }

   user_feld(sucheArray);
   user_update_cookie();
}

function array_key_exists ( key, search )
{
   if( !search || (search.constructor !== Array && search.constructor !== Object) )
   {
      return false;
   }

   return search[key] !== undefined;
}

function user_del_eintrag(suche,wortgefunden)
{
   if(sucheArray[""+suche+""][""+wortgefunden+""] != undefined || wortgefunden != '')
   {
      delete(sucheArray[""+suche+""][""+wortgefunden+""]);
   }
   else if(wortgefunden == '' ||  sucheArray[""+suche+""] != undefined)
   {
      delete(sucheArray[""+suche+""]);
   }
   else
   {
      alert( "Der Eintrag konnte nicht entfernt werden!" )
   }

   user_update_cookie();
}

function user_del_all()
{
   sucheArray        = ''
                       sucheArray        = new Array();
   user_save_cookie(sucheArray);
   user_div_leer();
}

function user_div_leer()
{
   var user_str_anzeig ='<div align="center" style="font-size : 11px;">';
   user_str_anzeig +='<b>Rätsel Hilfe Memofeld - Begriffe einfach merken</b><br>';
   user_str_anzeig +='Im Memofeld können unsere Rätselfreunde mögliche Rätsellösungen zwischenspeichern. ';
   user_str_anzeig +='Gespeichert werden Suchbegriff(e) der Rätselfrage(n) bzw. die entsprechenden Lösungen. ';
   user_str_anzeig +='Das Abspeichern erfolgt durch ein Klick auf <input type="button" class="mybutton_user" value="memo" title="Eintrag im Memofeld jetzt speicher!">.<br>';
   user_str_anzeig +='Viel Spaß wünscht das www.raetsel-hilfe.de Team!';
   user_str_anzeig +='</div>';
   document.getElementById("user_navi_id").innerHTML        = '';
   document.getElementById("userfeld").innerHTML                = user_str_anzeig;
}

function user_div_navi()
{
   document.getElementById("user_navi_id").innerHTML         = '';
   var div_str;
   div_str ='<table cellpadding="0" style="font-size:10px;font-family: verdana, arial, sans-serif;" width="90%" cellspacing="0" border="0">'
            +'<tr>'
            +'<td valign="top">'
            +'<a href="javascript:void(0)" onClick="user_del_all();return false;" title="Alle Einträge aus Memofeld löschen!">[lösche Alles]<\/a>'
            +'<\/td>'
            +'<td valign="top" >'
            +'Benutzer Speicher <b><span id="rankprozent">0<\/span> %<\/b>'
            +'<\/td>'
            +'<td align="right" >'
            +'<div class="rank"><img id="rank" src="design/graph1.gif" style="width: 50px;" alt=""><\/div> '
            +'<\/td>'
            +'<\/tr>'
            +'<\/table>';
   document.getElementById("user_navi_id").innerHTML = div_str;
}

function update_rank()
{
   if (document.getElementById("rank") && typeof ranklaenge == 'number')
   {
      var imgweite        = Math.round(((50/4)*(ranklaenge/1024)*100)/100);
      var prozent        = Math.round(((100/4)*(ranklaenge/1024)*100)/100);

      if(prozent > 95)
      {
         alert( "Der Memofeldspeicher ist fast voll!\nMerkeinträge entfernen" );
      }

      document.getElementById("rank").style['width']=  imgweite;
      document.getElementById("rankprozent").innerHTML=  prozent;
   }
}

function user_update_cookie()
{
   var new_array_str        = "";
   var theObj                = sucheArray;
   var r                        = 1;

   if(theObj.constructor == Array || theObj.constructor == Object)
   {
      for(var p in theObj)
      {
         if(theObj[p].constructor == Array|| theObj[p].constructor == Object)
         {
            new_array_str += p+"|";
            r++;

            for (var pp in theObj[p])
            {
               r++;

               if (theObj[p][pp] != "" || pp != "")
               {
                  new_array_str += pp+ "_"+ theObj[p][pp]+":";
               }
            }
         }

         new_array_str +="@";
      }

      new_array_str +="@";
      user_save_cookie(new_array_str);
      ranklaenge = new_array_str.length;
      update_rank();
   }

   if(r == 1)
   {
      user_div_leer();
      ranklaenge = 0;
      update_rank();
   }
}

function user_cookie_to_sucharray(new_array_str)
{
   ranklaenge        = new_array_str.length;
   var a                = new_array_str.split("@");
   var vorhanden        = false;

   if(a.constructor == Array|| a.constructor == Object)
   {
      for(var p in a )
      {
         if(a[p] != "")
         {
            vorhanden = true;
            var b = a[p].split("|");
            //        alert(b);
            cookie_array[""+b[0]+""]= new Array();
            var c = b[1].split(":");
            //alert(c);

            for(var cc in c )
            {
               if(c[cc] != "")
               {
                  var d = c[cc].split("_");
                  cookie_array[""+b[0]+""][""+d[0]+""] =         d[1];
               }
            }
         }
      }
   }

   return cookie_array;
   //        print_r(cookie_array);
   /*
   //alert(a);
   var b = a[1].split("|");
   //alert(b);
   var c = b[1].split(":");
   //alert(c);
   var d = c[1].split("_");
   //alert(d);
   */
}

function user_getCookie(cookieName)
{
   var Cookie_ratsel = document.cookie;

   if (Cookie_ratsel.match(new RegExp("(^|; )"+cookieName+"=([^;]*)")))
      return RegExp.$2;

   return 0;
}

function user_load_cookie()
{
   var suchstr = user_getCookie("raetsel_hilfe");

   if (suchstr == 0)
      return false ;

   var loadcookie =  user_cookie_to_sucharray(unescape(suchstr));

   if( loadcookie instanceof Array )
   {
      sucheArray = loadcookie;
      return true ;
   }
   else
   {
      return false ;
   }

}

function user_save_cookie(insert_array)
{
   document.cookie = "raetsel_hilfe=" + escape(insert_array) + ";expires=Tue, 19-Jan-2038 03:14:07 GMT";
}

function user_feld(theObj)
{
   var rowclass, ul_1,  ul_1_id,  ul_2,  ul_2_id,  li_1,  li_1_id,  li_2,  li_2_id,  text_1,  text_2,  a_link, a_linktext,  a_link2, a_linktext2;
   var r = '1';

   if(theObj.constructor == Array || theObj.constructor == Object)
   {
      document.getElementById("userfeld").innerHTML         = '';

      for(var p in theObj)
      {
         r++;

         if(theObj[p].constructor == Array|| theObj[p].constructor == Object)
         {
            //rowclass = (!(1 & r)) ? "col_11" : "col_22";
            ul_1=document.createElement("ul");
            ul_1.className =rowclass;
            ul_1_id ="ul1_" + r;
            ul_1.id =ul_1_id;
            ul_2=document.createElement("ul");
            ul_2_id ="ul2_" + r;
            ul_2.id =ul_2_id;
            li_1=document.createElement("li");
            text_1=document.createTextNode( p+"      ");
            a_link=document.createElement("a");
            a_link.href="javascript:user_del_ober(\'"+ul_1_id+"\',\'"+p+"\');";
            a_linktext=document.createTextNode("[x]");
            a_link.appendChild(a_linktext);
            ul_1.appendChild(li_1);
            li_1.appendChild(text_1);
            li_1.appendChild(a_link);
            li_1.appendChild(ul_2);

            for (var pp in theObj[p])
            {
               if (theObj[p][pp] != "" || pp != "")
               {
                  r++;
                  text_2=document.createTextNode("    "+pp+"   ["+theObj[p][pp]+"] ");
                  li_2=document.createElement("li");
                  li_2_id  ="li_"+r;
                  li_2.id = li_2_id;
                  ul_2.appendChild(li_2);
                  li_2.appendChild(text_2);
                  a_link2=document.createElement("a");
                  a_link2.href="javascript:user_del_unter(\'"+ul_2_id+"\',\'"+li_2_id+"\',\'"+p+"\',\'"+pp+"\');";
                  a_linktext2=document.createTextNode("[x]");
                  a_link2.appendChild(a_linktext2);
                  li_2.appendChild(a_link2);
               }
            }

            document.getElementById("userfeld").appendChild(ul_1);
            document.getElementById(ul_1_id).appendChild(li_1);
            user_div_navi();
         }
      }
   }

   if(r == 1)
      user_div_leer();
}

function user_del_ober(delid1,suche)
{
   if (document.getElementById(delid1))
   {
      user_del_eintrag(suche,'');

      if (document.getElementById(delid1))
      {
         document.getElementById("userfeld").removeChild(document.getElementById(delid1));
      }
   }
}

function user_del_unter(ober,delid1,suche,wortgefunden)
{
   if (document.getElementById(ober))
   {
      user_del_eintrag(suche,wortgefunden);
      document.getElementById(ober).removeChild(document.getElementById(delid1));
   }
}

/* ende user cookie */

function lernedazu(titleid)
{
   if(lerne == true)
   {
      var wortgefunden,suche,Check;
      wortgefunden         = document.getElementById(""+titleid+"").innerHTML;
      suche                 = window.document.mainform.suchenach.value;
      Check                 = confirm("Mein Lösungswort \n ' "+ wortgefunden  +" ' \n wurde mit der Suchphrase: \n ' "+suche+" ' \n gefunden?");

      if (Check == true)
      {
         //window.open('popupzaehle.php?was='+escape(wortgefunden)+'&suche='+escape(suche)+'','remote', 'toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=no,width=50 ,height=50,left=10,top=10');
         lernedazu_get(wortgefunden,suche);
         lerne = false;
         udate_punkte();
      }
      else
      {
         lerne = true;
      }
   }
   else
   {
      alert("Die Lernfunktion wurde schon einmal\nauf dieser Seite ausgeführt!")
      return false;
   }
}

var http        = null;
var id                = null;

function lernedazu_get(get1,get2)
{
   if (window.XMLHttpRequest)
   {
      http = new XMLHttpRequest();
   }
   else if (window.ActiveXObject)
   {
      http = new ActiveXObject("Microsoft.XMLHTTP");
   }

   if (http != null)
   {
      http.open("GET", "get.php?was=" +get1+ "&suche=" +get2+ "&rand=" + Math.random(), true);
      http.onreadystatechange = ausgeben;
      http.send(null);
      id = window.setTimeout("abbrechen()", 5500);
   }
}


function ausgeben()
{
   if (http.readyState == 4)
   {
      document.getElementById("Ausgabe").innerHTML =
         http.responseText;
      window.clearTimeout(id);
   }
}

function abbrechen()
{
   http.abort();
}


function abstimm(get1)
{
   alert(get1);
   //abstimm_get(get1);
}



function abstimm_get(get1)
{
   if (window.XMLHttpRequest)
   {
      http = new XMLHttpRequest();
   }
   else if (window.ActiveXObject)
   {
      http = new ActiveXObject("Microsoft.XMLHTTP");
   }

   if (http != null)
   {
      http.open("GET", "get_abstimmung.php?was=" +get1+ "&rand=" + Math.random(), true);
      http.onreadystatechange = ausgeben;
      http.send(null);
      id = window.setTimeout("abbrechen()", 5500);
   }
}





/*
function ti(titleid)
{
hideLayer()
var w                 = 'h-'+titleid.split('t-').join('');
if(document.getElementById(""+w+"").innerHTML && document.getElementById(titleid).innerHTML )
{
var wortt                                = document.getElementById(""+w+"").innerHTML;
alert(wortt);
document.getElementById(titleid).title        = " Verbessern Sie die Suchefunktion!\n Sollte das Lösungswort:\n' "+wortt +" '\n stimmen, bitte [ok] klicken!\n\n Die Suchfunktion ist lernfähig!";
}
}
*/
function cache()
{
   window.open('popupcache.php?','remote', 'toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=no,width=500 ,height=500,left=10,top=10');
}

function autocomplete_load()
{
   var autocomplete=document.getElementById('sucheeingabe');

   if(autocomplete==null)
      return;

   autocomplete.setAttribute('autocomplete','off');
}


arrZoomRange=new Array(0.8,1.5);
dblZoomFactor=1;
//Cookie lesen
function get_cookie()
{
   if(strCookie=document.cookie)
   {
      if(arrCookie=strCookie.match(/zoom=\d+\.?\d*/))
      {
         arrZoomCookie=arrCookie[0].split('=');
         dblZoomFactor=Number(arrZoomCookie[1]);
      }
   }

   return(dblZoomFactor);
}

//Cookie schreiben
function set_cookie()
{
   objNow=new Date();
   intExp=2592000000;
   objExp=new Date(objNow.getTime()+intExp);
   document.cookie='zoom='+dblZoomFactor+';expires='+objExp.toGMTString()+';';
}

//Zooming
function zoom_document(dblStep)
{
   if((dblStep<0&&dblZoomFactor<=arrZoomRange[0])||(dblStep>0&&dblZoomFactor>=arrZoomRange[1]))
   {
      return;
   }

   dblZoomFactor+=dblStep;
   document.body.style.zoom=dblZoomFactor;
   set_cookie();
}

//Ausgabe Zoom-Menu
function print_zoom_menu()
{
   strMenu='';
   strAppVersion=navigator.appVersion;
   strPattern=/MSIE\s*(\d\.\d+)/;
   strPattern.exec(strAppVersion);

   if(RegExp.$1>=5.5)
   {
      strMenu='<div align="right" style="font-weight : bolder;color : #6f6f6f;font-size : x-small;" ><span onclick="zoom_document(-0.1)"style="color :  #0063CE;cursor:hand">[ - ]</span>'+
              '&nbsp;Schrift&nbsp;zoom&nbsp;'+
              '<span onclick="zoom_document(0.1)"style="color :#0063CE;cursor:hand">[ + ]</span>&nbsp;</div>';
   }

   document.write(strMenu);
}

if(document.all&&!window.opera)
{
   document.writeln('<style type="text/css">');
   document.writeln('body{zoom:'+get_cookie()+';}');
   document.writeln('</style>');
}