/*************************************************************************************/
/* FUNKTION: setSectorFilter                                                         */
/* DATUM:    07.11.2006                                                              */
/* AUTOR:    Otto Aschenbrenner - nbsp                                               */
/* AUFGABE:  Setzt den Branchenfilter auf den uebergebenen Wert und sendet das       */
/*           SiteSearchFormular ab.                                                  */
/*                                                                                   */
/*************************************************************************************/
/* PARAMETER: sectorid; Integer: ID des Branchenfilters, anhand dem die Ergebnis-    */
/*                             liste eingeschraenkt werden soll (ID in DB-Tabelle    */
/*                             SECTORS)                                              */
/*            status; Boolean: Kennzeichnet, ob der Branchenfilter gesetzt oder      */
/*                             entfernt werden soll                                  */
/*            destURL; String: Ziel-URL, unter der das Suchergebnis ausgegeben       */
/*                             werden soll.                                          */
/*                             Dieser Parameter ist wahlfrei;                        */
/*                             Defaultwert ist die aktuelle URL                      */
/* RUECKGABE: Keine                                                                  */
/*************************************************************************************/
function switchSectorFilter(sectorid, status)
{
	try
	{
		// Aktuell gesetzten Branchenfilter loeschen
		clearFilter("SSF_SECTOR"); 
		// Aktuell gesetzten Page-Filter loeschen
		clearFilter("SSF_PAGE"); 
		if(status == true)
		{
			// Branchenfilter anlegen
			if(addFilter("ssf_sector", sectorid) == false)
					throw(""); 
		}
		
		// Wurde eine abweichende Ziel-URL uebergeben (um Branchenfilter-Anfragen auf der Homepage in die erweiterte Suche umzuleiten)? 
		if(arguments.length > 2)
		{
			// Aktuell gesetzten Contenttype-Filter loeschen (bei Anfragen von Homepage noetig)
			clearFilter("SSF_CONTENTTYPE"); 
			// SiteSearch an Ziel-URL abschicken
			if(submitSiteSearch(arguments[2]) == false)
				throw(""); 
		}
		else
		{
			// SiteSearch an aktuelles Template abschicken
			if(submitSiteSearch() == false)
				throw(""); 
		}
	}
	catch(exception)
	{
		window.alert("Ein Fehler ist aufgetreten"); 
	}
}

/*************************************************************************************/
/* FUNKTION: getSuggestedArticles                                                    */
/* DATUM:    13.10.2006                                                              */
/* AUTOR:    Otto Aschenbrenner - nbsp                                               */
/* AUFGABE:  Setzt die Suchfilter fuer die Erweiterte Suggestionsearch und sendet    */
/*           das SiteSearchFormular ab.                                              */
/*                                                                                   */
/*************************************************************************************/
/* PARAMETER: autid; INT:             AUT:ID des aktuellen Artikels                  */
/*               OA - 12.02.2007: DEPRECATED; Wird seit Umstellung der               */
/*                                Suggestion-Search von Doc-ID's auf Reference-ID's  */
/*                                nicht mehr verwendet; bitte hier in Zukunft nur    */
/*                                "0"-Werte als Dummy-Parameter uebergeben...        */
/*            searchtype; INT:        Contentklassen-ID (=Suchart)                   */
/*            contenttype; INT:       Contenttype-ID des aktuellen Artikels          */
/*            autreference; String:   AUTN:REFERENCE des aktuellen Artikels          */
/*                                    (aktueller Artikel soll nicht mehr bei         */
/*                                    Suggested Articles auftauchen)                 */
/*            dest_url; String:       URL, unter der die Suggestion-Search           */
/*                                    verarbeitet werden soll                        */
/* RUECKGABE: Keine                                                                  */
/*************************************************************************************/
function getSuggestedArticles(autid, searchtype, contenttype, autreference, dest_url)
{
	try
	{
		// Alle derzeit aktiven SiteSearchFilter loeschen
		clearFilter("all"); 
		
		// Suggestionsearch-Filter vorbelegen
		if(addFilter("ssf_action", "suggest") == false)
			throw(""); 
		
		// ID-Filter vorbelegen
/* OA - 12.02.2007: DEPRECATED
		if(addFilter("ssf_id", autid) == false)
			throw(""); 
*/
		if(addFilter("ssf_id", autreference) == false)
			throw(""); 
		
		// Searchtype-Filter vorbelegen
		if(addFilter("ssf_ctrl_searchtype", searchtype) == false)
			throw(""); 

		// Contenttype-Filter vorbelegen
		if(addFilter("ssf_contenttype", contenttype) == false)
			throw(""); 
		

		// Trefferausgabe nach Relevanz sortieren
		if(addFilter("ssf_sort", "relevance") == false)
			throw(""); 

		// Reference-Filter vorbelegen
/* OA - 12.02.2007: DEPRECATED
		if(addFilter("ssf_hideref", autreference) == false)
			throw(""); 
*/

		// SiteSearch abschicken
		if(submitSiteSearch(dest_url) == false)
			throw(""); 
	}
	catch(exception)
	{
		window.alert("Ein Fehler ist aufgetreten"); 
	}
}

/*************************************************************************************/
/* FUNKTION: getSuggestedCompanies                                                   */
/* DATUM:    12.04.2007                                                              */
/* AUTOR:    Otto Aschenbrenner - nbsp                                               */
/* AUFGABE:  Setzt die Suchfilter fuer die Erweiterte Suggestionsearch und sendet    */
/*           das SiteSearchFormular ab.                                              */
/*                                                                                   */
/*************************************************************************************/
/* PARAMETER: autreference; String:   AUTN:REFERENCE des aktuellen Artikels          */
/*            dest_url; String:       URL, unter der die Suggestion-Search           */
/*                                    verarbeitet werden soll                        */
/* RUECKGABE: Keine                                                                  */
/*************************************************************************************/
function getSuggestedCompanies(autreference, dest_url)
{
	try
	{
		// Alle derzeit aktiven SiteSearchFilter loeschen
		clearFilter("all"); 
		
		// Suggestionsearch-Filter vorbelegen
		if(addFilter("ssf_action", "suggest") == false)
			throw(""); 
		
		// ID-Filter vorbelegen
		if(addFilter("ssf_id", autreference) == false)
			throw(""); 
		
		// Searchtype-Filter vorbelegen
		if(addFilter("ssf_ctrl_searchtype", 597) == false)
			throw(""); 
		
		// Trefferausgabe nach Relevanz sortieren
		if(addFilter("ssf_sort", "relevance") == false)
			throw(""); 
		
		// SiteSearch abschicken
		if(submitSiteSearch(dest_url) == false)
			throw(""); 
	}
	catch(exception)
	{
		window.alert("Ein Fehler ist aufgetreten"); 
	}
}

/*************************************************************************************/
/* FUNKTION: submitPabThemeChannel                                                   */
/* DATUM:    02.03.2007                                                              */
/* AUTOR:    Otto Aschenbrenner - nbsp                                               */
/* AUFGABE:  Setzt den Themenkanalfilter auf den uebergebenen Wert und sendet das    */
/*           SiteSearchFormular ab. Dabei wird automatisch der fuer das PAB-Portal   */
/*           benoetigte Contenttype-Filter gesetzt.                                  */
/*                                                                                   */
/*************************************************************************************/
/* PARAMETER: channel_level; Integer: Level des Channels, nach dem gesucht werden    */
/*                                    soll.                                          */
/*            channel_uuid; String: Page-UUID des Channels, nach dem gesucht werden  */
/*                                  soll.                                            */
/*            contenttype; INT: Contenttype-ID des aktuellen Artikels                */
/*            dest_url; String: URL, unter der der neue Themenkanalfilter            */
/*                              verarbeitet werden soll.                             */
/*                              Default-Wert ist die aktuelle URL...                 */
/* RUECKGABE: Keine                                                                  */
/*************************************************************************************/
function submitPabThemeChannel(channel_level, channel_uuid, contenttype, dest_url)
{
	try
	{
		// Aktuell gesetzten Channel-Filter loeschen
		clearFilter("SSF_CHANNEL"); 
		// Aktuell gesetzten Page-Filter loeschen
		clearFilter("SSF_PAGE"); 
		// Aktuell gesetzten Contenttype-Filter loeschen
		clearFilter("SSF_CONTENTTYPE"); 
		// Aktuell gesetzten Searchtype-Filter loeschen
		clearFilter("SSF_CTRL_SEARCHTYPE"); 
		// Contenttype-Filter anlegen
		if(addFilter("ssf_contenttype", contenttype) == false)
			throw(""); 
		// Channel-Filter anhand UUID anlegen
		var channel_filtervalue = channel_level + "," + channel_uuid; 
		if(addFilter("ssf_channel", channel_filtervalue) == false)
				throw(""); 
		// PAB sucht immer in Contentklasse Downloads
		if(addFilter("ssf_ctrl_searchtype", 598) == false)
			throw(""); 
		// SiteSearch abschicken
		if(submitSiteSearch(dest_url) == false)
			throw(""); 
	}
	catch(exception)
	{
		window.alert("Ein Fehler ist aufgetreten"); 
	}
}

/*************************************************************************************/
/* FUNKTION: submitChannelTeaser                                                     */
/* DATUM:    04.10.2006                                                              */
/* AUTOR:    Otto Aschenbrenner - nbsp                                               */
/* AUFGABE:  Setzt den Themenkanalfilter auf den uebergebenen Wert und sendet das    */
/*           SiteSearchFormular ab.                                                  */
/*                                                                                   */
/*************************************************************************************/
/* PARAMETER: channel_level; Integer: Level des Channels, nach dem gesucht werden    */
/*                                    soll.                                          */
/*            channel_uuid; String: Page-UUID des Channels, nach dem gesucht werden  */
/*                                  soll.                                            */
/* RUECKGABE: Keine                                                                  */
/*************************************************************************************/
function submitChannelTeaser(channel_level, channel_uuid)
{
	try
	{
		// Aktuell gesetzten Channel-Filter loeschen
		clearFilter("SSF_CHANNEL"); 
		// Aktuell gesetzten Page-Filter loeschen
		clearFilter("SSF_PAGE"); 
		// Channel-Filter anhand UUID anlegen
		var channel_filtervalue = channel_level + "," + channel_uuid;
		if(addFilter("ssf_channel", channel_filtervalue) == false)
				throw(""); 
		// SiteSearch abschicken
		if(submitSiteSearch() == false)
			throw(""); 
	}
	catch(exception)
	{
		window.alert("Ein Fehler ist aufgetreten"); 
	}
}

/*************************************************************************************/
/* FUNKTION: setCookieTrailChannel                                                   */
/* DATUM:    11.10.2006                                                              */
/* AUTOR:    Otto Aschenbrenner - nbsp                                               */
/* AUFGABE:  Setzt den Themenkanalfilter auf den uebergebenen Wert und sendet das    */
/*           SiteSearchFormular ab.                                                  */
/*                                                                                   */
/*************************************************************************************/
/* PARAMETER: pageid; Integer: ID der Page, die die Ergebnisliste ausgeben soll.     */
/*                             (normalerweise die PageID des aktuellen Themen-       */
/*                             kanals auf Level 1)                                   */
/*            channel_level; Integer: Level des Channels, nach dem gesucht werden    */
/*                                    soll.                                          */
/*            channel_uuid; String: Page-UUID des Channels, nach dem gesucht werden  */
/*                                  soll.                                            */
/* RUECKGABE: Keine                                                                  */
/*************************************************************************************/
function setCookieTrailChannel(pageid, channel_level, channel_uuid)
{
	try
	{
		// Aktuell gesetzten Channel-Filter loeschen
		clearFilter("SSF_CHANNEL"); 
		// Aktuell gesetzten Page-Filter loeschen
		clearFilter("SSF_PAGE"); 
		// Channel-Filter anhand UUID anlegen
		var channel_filtervalue = channel_level + "," + channel_uuid; 
		if(addFilter("ssf_channel", channel_filtervalue) == false)
				throw(""); 
		// SiteSearch abschicken
		var dest_url = "/index.cfm?pid=" + pageid; 
		if(submitSiteSearch(dest_url) == false)
			throw(""); 
	}
	catch(exception)
	{
		window.alert("Ein Fehler ist aufgetreten"); 
	}
}

/*************************************************************************************/
/* FUNKTION: submitContentclassTeaser                                                */
/* DATUM:    06.10.2006                                                              */
/* AUTOR:    Otto Aschenbrenner - nbsp                                               */
/* AUFGABE:  Setzt den Contentfilter auf den uebergebenen Wert und sendet das        */
/*           SiteSearchFormular ab.                                                  */
/*                                                                                   */
/*************************************************************************************/
/* PARAMETER: htmlObj; HTML-Objekt: Objekt des angeklickten Contentfilter-           */
/*                                  Radiobuttons.                                    */
/* RUECKGABE: Keine                                                                  */
/*************************************************************************************/
function submitContentclassTeaser(fkcontentclass,fkcontentclasstype)
{
	try
	{
		// Aktuell gesetzten Searchtype-Filter loeschen 
		// Info: Dieser Filter dient nur zur Dialogsteuerung und wird von keinem Idol-Suchobjekt direkt verwendet
		clearFilter("SSF_CTRL_SEARCHTYPE"); 
		// Aktuell gesetzten Contenttype-Filter loeschen
		clearFilter("SSF_CONTENTTYPE"); 
		
		
		// Soll ein Contentfilter gesetzt werden? 
		var a=1;
		if (a=1 && fkcontentclass != 0 && fkcontentclasstype != 0)//(fkcontentclass.value.length != 0)
		{
			// Contentfilter-Einstellungen auslesen
			var searchtype = fkcontentclass; 
			var contenttype = fkcontentclasstype; 
			// Aktuell gesetzten Page-Filter loeschen
			clearFilter("SSF_PAGE"); 
			// Searchtype-Filter anlegen
			if(addFilter("ssf_ctrl_searchtype", searchtype) == false)
				throw(""); 
			// Contenttype-Filter anlegen, falls es sich um keine Firmensuche handelt (nur bei Artikel- und Downloadsuche)
			if(searchtype != 597)
			{
				if(addFilter("ssf_contenttype", contenttype) == false)
					throw("");
			}
		}
		// SiteSearch abschicken
		if(submitSiteSearch() == false)
			throw(""); 
	}
	catch(exception)
	{
		window.alert("Ein Fehler ist aufgetreten"); 
	}
}

/*************************************************************************************/
/* FUNKTION: showExtSearchContenttype                                                */
/* DATUM:    15.11.2006                                                              */
/* AUTOR:    Otto Aschenbrenner - nbsp                                               */
/* AUFGABE:  Setzt die fuer die Detaillistenansicht erforderlichen Suchfilter.       */
/*                                                                                   */
/*************************************************************************************/
/* PARAMETER: searchtype; INT:        Contentklassen-ID (=Suchart)                   */
/*            contenttype; INT:       Contenttype-ID des aktuellen Artikels          */
/*            dest_url; String: Ziel-URL, unter der die erweiterte Suchergebnis-     */
/*                              Detailliste ausgegeben wird                          */
/* RUECKGABE: Keine                                                                  */
/*************************************************************************************/
function showExtSearchContenttype(searchtype, contenttype, dest_url)
{
	try
	{
		// Evtl. vorhandene Datenbank-Fitereinstellungen loeschen
		clearFilter("SSF_DATABASE"); 
		
		// Aktuellen Searchtype-Filter loeschen
		clearFilter("SSF_CTRL_SEARCHTYPE"); 
		
		// Aktuellen Contenttype-Filter loeschen
		clearFilter("SSF_CONTENTTYPE"); 
		
		// Searchtype-Filter vorbelegen
		if(addFilter("ssf_ctrl_searchtype", searchtype) == false)
			throw(""); 
		
		// Contenttype-Filter vorbelegen
		if(addFilter("ssf_contenttype", contenttype) == false)
			throw(""); 
		
		// SiteSearch abschicken
		if(submitSiteSearch(dest_url) == false)
			throw(""); 
	}
	catch(exception)
	{
		window.alert("Ein Fehler ist aufgetreten"); 
	}
}

/*************************************************************************************/
/* FUNKTION: submitQuickSearch                                                       */
/* DATUM:    04.10.2006                                                              */
/* AUTOR:    Otto Aschenbrenner - nbsp                                               */
/* AUFGABE:  Setzt die Suchfilter fuer die Quicksearch und sendet das                */
/*           SiteSearchFormular ab.                                                  */
/*                                                                                   */
/*************************************************************************************/
/* PARAMETER: searchform; HTML-Objekt: Quicksearch-Formular als HTML-Objekt.         */
/*            dest_url; String: Ziel-URL, die die Quicksearch ausfuehren soll        */
/*                              (objektabhaengig)                                    */
/* RUECKGABE: Keine                                                                  */
/*************************************************************************************/
function submitQuickSearch(searchform, dest_url)
{
	
	
	try
	{	

		//Keupp, 24.10.2007
		//Prüfen, ob nach Defaultwert gesucht wird
		//in diesem Fall soll nach einem leeren String gesucht werden
		// AG / 13.11 undefined eingebaut, da die googlesearch ned funzt
		if(typeof(searchform.googlesearch) == 'undefined')
			{	
				if(searchform.keyword.value == searchform.keyword.defaultValue)
				{
					searchform.keyword.value = '';
				}
			}


		// Auslesen Suchtyp-Radiobutton
		var searchtype_value = ""; 
		for(i=0; i < searchform.searchtype.length; i++)
		{
			if(searchform.searchtype[i].checked)
				searchtype_value = searchform.searchtype[i].value;
		}
		
		// Abfragen ob Forumsuche aktiviert ist
		if(searchtype_value == "forumsearch")
		{
			if(searchform.keyword.value.length > 0)
			{
				keyword = searchform.keyword.value;
				forumpath = searchform.forumpath.value;
				window.location.href = forumpath + "/search.php?do=process&showposts=0&quicksearch=1&s=&query=" + keyword;
			}
			
		}
		else
		{
			// Auslesen des derzeit gesetzten Branchenfilters
			var curr_sectorid = 0; 
			var arrSectorValues = getFilter("ssf_sector"); 
			if(arrSectorValues.length > 0)
				curr_sectorid = arrSectorValues[0]; 
			
			// Alle derzeit aktiven SiteSearchFilter loeschen
			clearFilter("all"); 
			
			// Zuletzt gesetzten Branchenfilter uebernehmen
			if(curr_sectorid != 0)
				if(addFilter("ssf_sector", curr_sectorid) == false)
					throw(""); 
			
			// SearchType als Filter setzen, wenn nicht "" (=alle Bereiche) ausgewaehlt wurde
			if(searchtype_value.length > 0)
			{
				var arrSearchFilterValues = searchtype_value.split(","); // Suchfilter im Format "Contentklasse,contenttyp" in Array aufsplitten
				if(arrSearchFilterValues.length != 2)
					throw(""); 
				// Filter "ssf_searchtype" dient nur zur Steuerung der Art der Suche im Suchtemplate
				// und wird als eigentlicher Suchfilter nicht verwendet
				if(addFilter("ssf_ctrl_searchtype", arrSearchFilterValues[0]) == false)
					throw(""); 
				// Ausgewaehlten Contenttyp als Filter anlegen
				if(addFilter("ssf_contenttype", arrSearchFilterValues[1]) == false)
					throw(""); 
			}
			
			// Eingegebenes Keyword als Filter anlegen
			if(searchform.keyword.value.length > 0)
				if(addFilter("ssf_keyword", searchform.keyword.value) == false)
					throw(""); 
			
			// Bei Quicksearch sollte defaultmaessig nach Relevanz sortiert werden
			if(addFilter("ssf_sort", "relevance") == false)
				throw(""); 
			
			
			// SiteSearch abschicken
			if(submitSiteSearch(dest_url) == false)
				throw(""); 
		}
	}
	catch(exception)
	{
		window.alert("Ein Fehler ist aufgetreten"); 
	}
}

/*************************************************************************************/
/* FUNKTION: submitExtendedKWSearch                                                  */
/* DATUM:    10.10.2006                                                              */
/* AUTOR:    Otto Aschenbrenner - nbsp                                               */
/* AUFGABE:  Setzt die Suchfilter fuer die Erweiterte Suche und sendet das           */
/*           SiteSearchFormular ab.                                                  */
/*                                                                                   */
/*************************************************************************************/
/* PARAMETER: searchform; HTML-Objekt: Erweitertes Suchformular als HTML-Objekt.     */
/* RUECKGABE: Keine                                                                  */
/*************************************************************************************/
function submitExtendedKWSearch(searchform)
{
	try
	{
		// Evtl. vorhandenen Suggestion-Searchfilter loeschen
		clearFilter("ssf_action"); 
		clearFilter("ssf_id"); 
		// Keyword-SiteSearchFilter loeschen
		clearFilter("ssf_keyword"); 
		// Seitenfilter zuruecksetzen
		clearFilter("ssf_page"); 
		// Channel-Filter zuruecksetzen
		clearFilter("ssf_channel"); 
		// Sortier-Filter zuruecksetzen
		clearFilter("ssf_sort"); 
		
		// Aktuell eingegebenes Keyword als Filter anlegen
		var search_keyword = searchform.keyword.value; 
		if(search_keyword.length > 0)
			if(addFilter("ssf_keyword", search_keyword) == false)
				throw(""); 
		
		// Suchergebnisse defaultmaessig nach Relevanz sortiert ausgeben
		if(addFilter("ssf_sort", "relevance") == false)
			throw(""); 
		
		// SiteSearch abschicken
		if(submitSiteSearch() == false)
			throw(""); 
	}
	catch(exception)
	{
		window.alert("Ein Fehler ist aufgetreten"); 
	}
}

/*************************************************************************************/
/* FUNKTION: submitExtendedSearch                                                    */
/* DATUM:    04.10.2006                                                              */
/* AUTOR:    Otto Aschenbrenner - nbsp                                               */
/* AUFGABE:  Setzt die Suchfilter fuer die Erweiterte Suche und sendet das           */
/*           SiteSearchFormular ab.                                                  */
/*                                                                                   */
/*************************************************************************************/
/* PARAMETER: searchform; HTML-Objekt: Erweitertes Suchformular als HTML-Objekt.     */
/*                                                                                   */
/* RUECKGABE: Keine                                                                  */
/*************************************************************************************/
function submitExtendedSearch(searchform, dest_url)
{
	try
	{
		// Auslesen Suchbegriff
		var search_keyword = searchform.keyword.value;
		// Auslesen Suchtyp-Radiobutton
		var search_searchtype = "";  
		if(searchform.searchtype.length > 0 && searchform.searchtype.type != "select-one")
		{
                 //Suchtyp wurde als Radiobutton angelegt ( Default )
                 for(i=0; i < searchform.searchtype.length; i++)
		 {
			if(searchform.searchtype[i].checked)
				search_searchtype = searchform.searchtype[i].value;
	         }
                }
                else if(searchform.searchtype.length > 0)
                {
                 //Suchtyp wurde als Dropdown angelegt
                 for (i = 0; i < searchform.searchtype.length; i++)
                 {
                    if (searchform.searchtype.options[i].selected == true)
                         search_searchtype = searchform.searchtype.options[i].value;
                 }
                }

                // Auslesen Themenchannel
                var search_channel = 0;
		if(typeof(searchform.searchchannel) != "undefined")
		{
			search_channel = searchform.searchchannel.value;
		}
		// Auslesen Range-Filter
		var search_range = "";
                if(searchform.range.length > 0 && searchform.range.type != "select-one")
		{
                 // Range-Filter wurde als Radiobutton angelegt ( Default )
                 for(i=0; i < searchform.range.length; i++)
		 {
			if(searchform.range[i].checked)
				search_range = searchform.range[i].value;
		  }
                }
                else if(searchform.range.length > 0)
                {
                 //Range-Filter wurde als Dropdown angelegt
                 for (i = 0; i < searchform.range.length; i++)
                  {
                    if (searchform.range.options[i].selected == true)
                         search_range = searchform.range.options[i].value;
                  }
                }

		// Auslesen Branchen-Filter
		if(typeof(searchform.ssf_sector) != "undefined")
		{
			var search_branchen = ""; 
			for(i=0; i < searchform.ssf_sector.length; i++)
			{			
				if(searchform.ssf_sector[i].checked)
					search_branchen = searchform.ssf_sector[i].value;
			}
		}
		/**************************************************************************/
		/* ANFANG Auslesen Filter Publizierungsdatum                              */
		/**************************************************************************/
		/* RUECKGABE: search_mindate; Int: MINDATE-Wert im Idol-Querystringformat */
		/*            search_maxdate; Int: MAXDATE-Wert im Idol-Querystringformat */
		/*                                                                        */
		/*            Bei beiden Feldern: NULL = Keine Datumseinschraenkung       */
		/*                                bei Suche                               */
		/*                                                                        */
		var search_mindate = null; 
		var search_maxdate = null;
		
		// Auslesen Datums-Suchtyp
		var datesearchtype = ""; 
		for(i=0; i < searchform.datesearchtype.length; i++)
		{
			if(searchform.datesearchtype[i].checked)
				datesearchtype = searchform.datesearchtype[i].value; 
		}

		if(datesearchtype == "dropdown")
		{         
			// Suchzeitraum aus Dropdown-Feld auswaehlen
			switch(searchform.datedropdown.value)
			{
				case "alle": 
				{
					search_mindate = null; 
					search_maxdate = null; 
					break; 
				}
				case "1Woche": 
				{
					search_mindate = -7; 
					search_maxdate = 0; 
					break;
				}
				case "2Wochen":
				{
					search_mindate = -14;
					search_maxdate = 0;
					break;
				}
				case "1Monat": 
				{
					search_mindate = -30; 
					search_maxdate = 0; 
					break; 
				}
				case "1Jahr": 
				{
					search_mindate = -365;
					search_maxdate = 0;
					break; 
				}
				default: 
				{
					// FEHLER: Undefinierter Wert ausgewaehlt
					throw(""); 
					break; 
				}
			} 
			
		}
		else if(datesearchtype == "fromto")
		{
			var dateFrom = new Date(searchform.datefromyyyy.value, eval(searchform.datefrommm.value - 1), searchform.datefromdd.value); 
			var dateTo = new Date(searchform.datetoyyyy.value, eval(searchform.datetomm.value - 1), searchform.datetodd.value); 
			var curr_date = new Date(new Date().getFullYear(), new Date().getMonth(), new Date().getDate()); 
			
			// Differenz zwischen dateFrom und aktuellem Datum ermitteln
			var diff_from = curr_date - dateFrom; 
			var search_mindate = Math.round((diff_from / (24 * 60 * 60 * 1000)) * -1); // MSec-Differenz / MSec eines Tages * -1 (negativer Wert fuer Filter)
			// Differenz zwischen dateTo und aktuellem Datum ermitteln
			var diff_to = curr_date - dateTo; 
			var search_maxdate = Math.round((diff_to / (24 * 60 * 60 * 1000)) * -1); 
			
			// Plausipruefungen der Datumseinstellungen
			var bValid = true; 
			var errmsg = ""; 
			if(dateFrom > dateTo)
			{
				bValid = false; 
				errmsg = "Das Publizierungsdatum-Von befindet sich\nnach dem Publizierungsdatum-Bis."; 
			}
			else if(dateTo > curr_date)
			{
				bValid = false; 
				errmsg = "Das Publizierungsdatum-Bis befindet sich in der Zukunft."; 
			}
			
			if(bValid == false)
			{
				window.alert("Fehlerhaftes Publizierungsdatum: \n\n" + errmsg); 
				return(bValid); 
			}
		}
		else
		{
			// FEHLER: Datumssuchtyp konnte nicht ermittelt werden
			throw(""); 
		}
		/* ENDE   Auslesen Filter Publizierungsdatum                              */
		/**************************************************************************/
		
		
		// Alle derzeit aktiven SiteSearchFilter loeschen
		clearFilter("all"); 
		
		// Keyword als Filter anlegen
		if(search_keyword.length > 0)
			if(addFilter("ssf_keyword", search_keyword) == false)
				throw(""); 
		
		// SearchType-Filter anlegen
		if(search_searchtype.length > 0)
		{
			var arrSearchFilterValues = search_searchtype.split(","); // Suchfilter im Format "Contentklasse,contenttyp" in Array aufsplitten
			if(arrSearchFilterValues.length != 2)
				throw(""); 
			// Filter "ssf_searchtype" dient nur zur Steuerung der Art der Suche im Suchtemplate
			// und wird als eigentlicher Suchfilter nicht verwendet
			if(addFilter("ssf_ctrl_searchtype", arrSearchFilterValues[0]) == false)
				throw(""); 
	
			// Ausgewaehlten Contenttyp als Filter anlegen, falls es sich um eine Artikel- oder Downloadsuche handelt
			if(arrSearchFilterValues[0] != 597)
			{
				if(addFilter("ssf_contenttype", arrSearchFilterValues[1]) == false)
					throw(""); 
			}
		}

		// Range-Filter anlegen (Volltext oder nur Titel/Vorspann)
		if(addFilter("ssf_range", search_range) == false)
			throw(""); 
		
		// Branchen-Filter anlegen
		
		if(search_branchen != "0" && typeof(searchform.ssf_sector) != "undefined")
		{
			if(addFilter("ssf_sector", search_branchen) == false)
				throw(""); 
		}
		// Themenchannel anlegen

		if(search_channel != "0" && typeof(searchform.searchchannel) != "undefined")
		{
			if(addFilter("ssf_channel", search_channel) == false)
				throw(""); 
		}

		// Datumsfilter anlegen
		if(search_mindate != null && search_maxdate != null)
		{
			var datefiltervalue = search_mindate + "," + search_maxdate; 
			if(addFilter("ssf_date", datefiltervalue) == false)
				throw(""); 
		}
		
		// Erweiterte Suchergebnisse defaultmaessig nach Relevanz sortiert ausgeben
		if(addFilter("ssf_sort", "relevance") == false)
			throw(""); 
		
		// SiteSearch abschicken
		if(submitSiteSearch(dest_url) == false)
			throw("");
	}
	catch(exception)
	{
		window.alert("Ein Fehler ist aufgetreten"); 
	}
}

/*************************************************************************************/
/* FUNKTION: submitSortFilter                                                        */
/* DATUM:    10.10.2006                                                              */
/* AUTOR:    Otto Aschenbrenner - nbsp                                               */
/* AUFGABE:  Sendet das aktuelle Suchformular mit dem neu gesetzten Sort-Filter ab   */
/*                                                                                   */
/*************************************************************************************/
/* PARAMETER: sortFilter; HTML-Objekt: Objekt des Sort-Filters, der neu gesetzt      */
/*                                     werden soll.                                  */
/* RUECKGABE: Keine                                                                  */
/*************************************************************************************/
function submitSortFilter(sortFilter)
{
	try
	{
		// Aktuell gesetzten Sort-Filter loeschen
		clearFilter("ssf_sort"); 
		if(sortFilter.value.length != 0)
		{
			// Aktuellen Sort-Wert als Filter anlegen
			if(addFilter("ssf_sort", sortFilter.value) == false)
				throw(""); 
		}
		if(submitSiteSearch() == false)
			throw(""); 
	}
	catch(exception)
	{
		window.alert("Ein Fehler ist aufgetreten"); 
	}
}

/*************************************************************************************/
/* FUNKTION: goToResultPage                                                          */
/* DATUM:    22.09.2006                                                              */
/* AUTOR:    Otto Aschenbrenner - nbsp                                               */
/* AUFGABE:  Setzt den Seitenfilter auf den uebergebenen Wert und sendet das         */
/*           SiteSearchFormular ab.                                                  */
/*                                                                                   */
/*************************************************************************************/
/* PARAMETER: nextPage; Integer: Seitenzahl der Suchergebnisliste, zu der            */
/*                               geblaettert werden soll.                            */
/* RUECKGABE: Keine                                                                  */
/*************************************************************************************/
function goToResultPage(nextPage)
{
	try
	{
		// Aktuell gesetzten Seiten-Filter loeschen
		clearFilter("SSF_PAGE"); 
		// Aktuellen Page-Wert als Filter anlegen
		if(addFilter("ssf_page", nextPage) == false)
				throw("");
		// SiteSearch abschicken
		if(submitSiteSearch() == false)
			throw(""); 
	}
	catch(exception)
	{
		window.alert("Ein Fehler ist aufgetreten"); 
	}
}

/*************************************************************************************/
/* FUNKTION: changeRange                                                             */
/* DATUM:    10.10.2006                                                              */
/* AUTOR:    Otto Aschenbrenner - nbsp                                               */
/* AUFGABE:  Sendet das erweiterte Suchformular mit dem neu gesetzten RANGE-Filter   */
/*           ab.                                                                     */
/*                                                                                   */
/*************************************************************************************/
/* PARAMETER: rangeFilter; HTML-Objekt: Objekt des Range-Filters, der neu gesetzt    */
/*                                     werden soll.                                  */
/* RUECKGABE: Keine                                                                  */
/*************************************************************************************/
function changeRangeFilter(rangeFilter)
{
	try
	{
		// Aktuell gesetzten Range-Filter loeschen
		clearFilter("ssf_range"); 
		if(rangeFilter.value.length != 0)
		{
			// Aktuellen Range-Wert als Filter anlegen
			if(addFilter("ssf_range", rangeFilter.value) == false)
				throw(""); 
		}
		if(submitSiteSearch() == false)
			throw(""); 
	}
	catch(exception)
	{
		window.alert("Ein Fehler ist aufgetreten"); 
	}
}

/*************************************************************************************/
/* FUNKTION: submitDownloadDefaultSearch                                             */
/* DATUM:    29.09.2006                                                              */
/* AUTOR:    Otto Aschenbrenner - nbsp                                               */
/* AUFGABE:  Sendet das Download-Suchformular ab.                                    */
/*                                                                                   */
/*************************************************************************************/
/* PARAMETER: sendForm; HTML-Objekt: Objekt des Formulars, das abgeschickt werden    */
/*                                   soll.                                           */
/* RUECKGABE: Keine                                                                  */
/*************************************************************************************/
function submitDownloadDefaultSearch(sendForm)
{
	try
	{
		// Aktuell gesetzten Keyword-Filter loeschen
		clearFilter("ssf_keyword"); 
		// Aktuell gesetzten Seitenzahl loeschen
		clearFilter("ssf_page"); 
		// Aktuell gesetzten Sortier-Filter loeschen
		clearFilter("ssf_sort"); 
		if(sendForm.keyword.value.length != 0)
		{
			// Aktuelles Keyword als Filter anlegen
			if(addFilter("ssf_keyword", sendForm.keyword.value) == false)
				throw(""); 
		}

		// Aktuell gesetzte Downloadtype-Filter loeschen
		clearFilter("ssf_contentsubtype"); 
		// Aktuell gesetze Downloadtype-Filter anlegen
		var downloadTypeObj = document.getElementsByName("chk_downloadtype"); 
		for(i=0; i < downloadTypeObj.length; i++)
		{
			if(downloadTypeObj[i].value != '0' && downloadTypeObj[i].checked == true)
			{
				if(addFilter("ssf_contentsubtype", downloadTypeObj[i].value) == false)
					throw(""); 
			}
		}
		
		if(sendForm.keyword.value.length != 0)
		{
			// Suchergebnisse defaultmaessig nach Relevanz sortiert ausgeben
			// Bei Downloads gibt es kein Sortier-Dropdown - deshalb wird hier nur nach Relevanz sortiert, falls ein Suchbegriff eingegeben wurde
			if(addFilter("ssf_sort", "relevance") == false)
				throw(""); 
		}
		
		if(submitSiteSearch() == false)
			throw(""); 
	}
	catch(exception)
	{
		window.alert("Ein Fehler ist aufgetreten"); 
	}
}

/*************************************************************************************/
/* FUNKTION: setDownloadTypeChkBox                                                   */
/* DATUM:    02.10.2006                                                              */
/* AUTOR:    Otto Aschenbrenner - nbsp                                               */
/* AUFGABE:  Frontend-Workflow beim Aktivieren von Downloadtype-Checkboxen           */
/*                                                                                   */
/*************************************************************************************/
/* PARAMETER: htmlObj; HTML-Objekt: Objekt der Checkbox, die angeklickt wurde.       */
/* RUECKGABE: Keine                                                                  */
/*************************************************************************************/
function setDownloadTypeChkBox(htmlObj)
{
	var downloadTypeObj = document.getElementsByName("chk_downloadtype"); 
	if(htmlObj.value == 0)
	{
		// Downloadtyp "Alle" wurde angeklickt

		// Alle Downloadtypen deaktivieren, falls "Alle" angeklickt wurde (keine Suchfiltereinschraenkungen nach Downloadtyp setzen)
		if(htmlObj.checked == true)
		{
			for(i=0; i < downloadTypeObj.length; i++)
			{
				if(downloadTypeObj[i].value != '0')
					downloadTypeObj[i].checked = false; 
			}
		}
		else
		{
			// Downloadtyp "Alle" laesst sich nicht manuell deaktivieren; 
			// wird automatisch deaktiviert, wenn ein spezieller Downloadtypfilter ausgewaehlt wird
			htmlObj.checked = true; 
		}
	}
	else
	{
		// Spezieller Downloadtyp wurde angeklickt
		if(htmlObj.checked == true)
		{
			// Filter "Alle" deaktivieren, falls ein spezieller Filter angeklickt wurde
			for(i=0; i < downloadTypeObj.length; i++)
			{
				if(downloadTypeObj[i].value == '0')
					downloadTypeObj[i].checked = false; 
			}
		}
		else
		{
			// Ueberpruefen, ob noch ein Downloadtype-Filter gesetzt ist
			var bFilterSet = false; 
			for(i=0; i < downloadTypeObj.length; i++)
			{
				if(downloadTypeObj[i].value != '0' && downloadTypeObj[i].checked == true)
					bFilterSet = true; 
			}
			
			if(bFilterSet == false)
			{
				for(i=0; i < downloadTypeObj.length; i++)
				{
					// Falls kein Downloadtype-Filter mehr gesetzt ist, Filter "Alle" setzen
					if(downloadTypeObj[i].value == '0')
						downloadTypeObj[i].checked = true; 
				}
			}
			
		}
	}
}

/*************************************************************************************/
/* FUNKTION: showDownloadContenttype                                                 */
/* DATUM:    06.10.2006                                                              */
/* AUTOR:    Otto Aschenbrenner - nbsp                                               */
/* AUFGABE:  Sendet das aktuelle SiteSearchFormular an das fuer diesen Contenttype   */
/*           zustaendige Ausgabetemplate                                             */
/*                                                                                   */
/*************************************************************************************/
/* PARAMETER: downloadtypeId; Integer: Contenttype-ID des Downloadtypen, dessen      */
/*                                     Ergebnisse in der Folgeseite ausgegeben       */
/*                                     werden sollten.                               */
/*            dest_url; String: Ziel-URL, die den angegebenen Downloadtypen ausgeben */
/*                              kann (objektabhaengig)                               */
/* RUECKGABE: Keine                                                                  */
/*************************************************************************************/
function showDownloadContenttype(downloadtypeId, dest_url)
{
	try
	{
		// Evtl. vorhandene Datenbank-Fitereinstellungen loeschen (werden bei Downloads nicht verwendet)
		clearFilter("SSF_DATABASE"); 
		// Aktuellen Contenttype als Filter anlegen
		if(addFilter("SSF_CONTENTTYPE", downloadtypeId) == false)
				throw(""); 
		// SiteSearch abschicken
		if(submitSiteSearch(dest_url) == false)
			throw(""); 
	}
	catch(exception)
	{
		window.alert("Ein Fehler ist aufgetreten"); 
	}
}

/*************************************************************************************/
/* FUNKTION: showArticleContenttype                                                  */
/* DATUM:    06.10.2006                                                              */
/* AUTOR:    Otto Aschenbrenner - nbsp                                               */
/* AUFGABE:  Sendet das aktuelle SiteSearchFormular an das fuer diesen Contenttype   */
/*           zustaendige Ausgabetemplate                                             */
/*                                                                                   */
/*************************************************************************************/
/* PARAMETER: articletypeId; Integer: Contenttype-ID des Downloadtypen, dessen       */
/*                                    Ergebnisse in der Folgeseite ausgegeben        */
/*                                    werden sollten.                                */
/*            dest_url; String: Ziel-URL, die den angegebenen Downloadtypen ausgeben */
/*                              kann (objektabhaengig)                               */
/* RUECKGABE: Keine                                                                  */
/*************************************************************************************/
function showArticleContenttype(articletypeId, dest_url)
{
	try
	{
		// Evtl. vorhandene Datenbank-Fitereinstellungen loeschen (werden bei Artikeln nicht verwendet)
		clearFilter("SSF_DATABASE"); 
		// Aktuellen Contenttype als Filter anlegen
		if(addFilter("SSF_CONTENTTYPE", articletypeId) == false)
				throw(""); 
		// SiteSearch abschicken
		if(submitSiteSearch(dest_url) == false)
			throw(""); 
	}
	catch(exception)
	{
		window.alert("Ein Fehler ist aufgetreten"); 
	}
}

/*************************************************************************************/
/* FUNKTION: submitArticleDefaultSearch                                              */
/* DATUM:    07.09.2006                                                              */
/* AUTOR:    Otto Aschenbrenner - nbsp                                               */
/* AUFGABE:  Sendet das Artikel-Suchformular ab.                                     */
/*                                                                                   */
/*************************************************************************************/
/* PARAMETER: sendForm; HTML-Objekt: Objekt des Formulars, das abgeschickt werden    */
/*                                   soll.                                           */
/* RUECKGABE: Keine                                                                  */
/*************************************************************************************/
function submitArticleDefaultSearch(sendForm)
{
	try
	{
		// Aktuell gesetzten Keyword-Filter loeschen
		clearFilter("SSF_KEYWORD");
		// Aktuell gesetzten Seitenzahl loeschen
		clearFilter("SSF_PAGE"); 
		// Sortierfilter loeschen
		clearFilter("SSF_SORT"); 
		if(sendForm.keyword.value.length != 0)
		{		
			// Aktuelles Keyword als Filter anlegen
			if(addFilter("ssf_keyword", sendForm.keyword.value) == false)
				throw(""); 
		}
		// Suchergebnisse defaultmaessig nach Relevanz sortiert ausgeben
		if(addFilter("ssf_sort", "relevance") == false)
			throw(""); 

		if(submitSiteSearch() == false)
			throw(""); 
	}
	catch(exception)
	{
		window.alert("Ein Fehler ist aufgetreten"); 
	}
}

/*************************************************************************************/
/* FUNKTION: setCompanyTypeChkBox                                                    */
/* DATUM:    24.11.2006                                                              */
/* AUTOR:    Otto Aschenbrenner - nbsp                                               */
/* AUFGABE:  Frontend-Workflow beim Aktivieren von Firmenart-Checkboxen              */
/*                                                                                   */
/*************************************************************************************/
/* PARAMETER: htmlObj; HTML-Objekt: Objekt der Checkbox, die angeklickt wurde.       */
/* RUECKGABE: Keine                                                                  */
/*************************************************************************************/
function setCompanyTypeChkBox(htmlObj)
{
	var companyTypeObj = document.getElementsByName("chk_companytype"); 
	if(htmlObj.value == 0)
	{
		// Firmenart "Alle" wurde angeklickt

		// Alle Firmenarten deaktivieren, falls "Alle" angeklickt wurde (keine Suchfiltereinschraenkungen nach Firmenart setzen)
		if(htmlObj.checked == true)
		{
			for(i=0; i < companyTypeObj.length; i++)
			{
				if(companyTypeObj[i].value != '0')
					companyTypeObj[i].checked = false; 
			}
		}
		else
		{
			// Firmenart "Alle" laesst sich nicht manuell deaktivieren; 
			// wird automatisch deaktiviert, wenn ein spezieller Firmenartfilter ausgewaehlt wird
			htmlObj.checked = true; 
		}
	}
	else
	{
		// Spezielle Firmenart wurde angeklickt
		if(htmlObj.checked == true)
		{
			// Filter "Alle" deaktivieren, falls ein spezieller Filter angeklickt wurde
			for(i=0; i < companyTypeObj.length; i++)
			{
				if(companyTypeObj[i].value == '0')
					companyTypeObj[i].checked = false; 
			}
		}
		else
		{
			// Ueberpruefen, ob noch ein Firmenart-Filter gesetzt ist
			var bFilterSet = false; 
			for(i=0; i < companyTypeObj.length; i++)
			{
				if(companyTypeObj[i].value != '0' && companyTypeObj[i].checked == true)
					bFilterSet = true; 
			}
			
			if(bFilterSet == false)
			{
				for(i=0; i < companyTypeObj.length; i++)
				{
					// Falls kein Firmenart-Filter mehr gesetzt ist, Filter "Alle" setzen
					if(companyTypeObj[i].value == '0')
						companyTypeObj[i].checked = true; 
				}
			}
		}
	}
}

/*************************************************************************************/
/* FUNKTION: submitCompanyDefaultSearch                                              */
/* DATUM:    28.11.2006                                                              */
/* AUTOR:    Otto Aschenbrenner - nbsp                                               */
/* AUFGABE:  Sendet das Download-Suchformular ab.                                    */
/*                                                                                   */
/*************************************************************************************/
/* PARAMETER: sendForm; HTML-Objekt: Objekt des Formulars, das abgeschickt werden    */
/*                                   soll.                                           */
/* RUECKGABE: Keine                                                                  */
/*************************************************************************************/
function submitCompanyDefaultSearch(sendForm)
{
	try
	{
		// Aktuell gesetzten Keyword-Filter loeschen
		clearFilter("ssf_keyword"); 
		// Aktuell gesetzten Seitenzahl loeschen
		clearFilter("ssf_page"); 
		// Aktuelle Wildcardsuche leeren
		clearFilter("ssf_title_wildcard"); 
		if(sendForm.keyword.value.length != 0)
		{
			// Aktuelles Keyword als Filter anlegen
			if(addFilter("ssf_keyword", sendForm.keyword.value) == false)
				throw(""); 
		}

		// Aktuell gesetzten Range-Filter loeschen
		clearFilter("ssf_range"); 
		// Aktuell gesetzten Range-Filter anlegen
		var rangeObj = document.getElementsByName("chk_range"); 
		for(i=0; i < rangeObj.length; i++)
		{
			if(rangeObj[i].checked == true)
			{
				if(addFilter("ssf_range", rangeObj[i].value) == false)
					throw(""); 
			}
		}
		
		// Aktuell gesetzten Companytype-Filter loeschen
		clearFilter("ssf_companytype"); 
		// Aktuell gesetzten Companytype-Filter anlegen
		var companyTypeObj = document.getElementsByName("chk_companytype"); 
		for(i=0; i < companyTypeObj.length; i++)
		{
			if(companyTypeObj[i].value != '0' && companyTypeObj[i].checked == true)
			{
				if(addFilter("ssf_companytype", companyTypeObj[i].value) == false)
					throw(""); 
			}
		}

		// Aktuell gesetzten Employees-Filter loeschen
		clearFilter("ssf_employees"); 
		// Aktuell gesetzten Employees-Filter anlegen
		var employeesObj = document.getElementsByName("companyemployees"); 
		for(i=0; i < employeesObj.length; i++)
		{
			if(employeesObj[i].value != '0' && employeesObj[i].checked == true)
			{
				if(addFilter("ssf_employees", employeesObj[i].value) == false)
					throw(""); 
			}
		}
		
		if(submitSiteSearch() == false)
			throw(""); 
	}
	catch(exception)
	{
		window.alert("Ein Fehler ist aufgetreten"); 
	}
}



/*************************************************************************************/
/* FUNKTION: submitCompanyTitleWildcardSearch                                        */
/* DATUM:    18.06.2007                                                              */
/* AUTOR:    Christian Weirich - VSG                                                 */
/* AUFGABE:  Startet die Firmensuche nur im Titel (mit Wildcards).                   */
/*                                                                                   */
/*************************************************************************************/
/* PARAMETER: sendForm; HTML-Objekt: Objekt des Formulars, das abgeschickt werden    */
/*                                   soll.                                           */
/* RUECKGABE: Keine                                                                  */
/*************************************************************************************/
function submitCompanyTitleWildcardSearch(sendForm)
{
	try
	{
		// Aktuell gesetzten Keyword-Filter loeschen
		clearFilter("ssf_keyword"); 
		// Aktuell gesetzten Seitenzahl loeschen
		clearFilter("ssf_page"); 
		
		// Aktuell gesetzte (Buchstaben-)Selektion loeschen
		clearFilter("ssf_title_wildcard"); 
		if(sendForm.title_wildcard.value.length != 0)
		{
			// (Buchstaben-)Selektion als Filter anlegen
			if(addFilter("ssf_title_wildcard", sendForm.title_wildcard.value) == false)
				throw(""); 
		}
		
		if(submitSiteSearch() == false)
			throw(""); 
	}
	catch(exception)
	{
		window.alert("Ein Fehler ist aufgetreten"); 
	}
}

