﻿ // --- Flyt  snippet fra sitelayout til sidelayout -----------------------------------------//

function MoveSnippet(sCon, nsCon)
{
var SnippetContainer = document.getElementById(sCon);
var NewSnippetContainer = document.getElementById(nsCon);

   if (SnippetContainer && NewSnippetContainer)
   {
     Tangora.DOM.MoveElement(sCon, nsCon);
     SnippetContainer.style.display = "block";
   }
}

function LoadHandler()
{
  MoveSnippet('SnippetContainer1','NewSnippetContainer1');
  MoveSnippet('SnippetContainer2','NewSnippetContainer2');
  MoveSnippet('SnippetContainer3','NewSnippetContainer3');
  MoveSnippet('SnippetContainer4','NewSnippetContainer4');
  MoveSnippet('SnippetContainer5','NewSnippetContainer5');
  MoveSnippet('SnippetContainer6','NewSnippetContainer6');
  MoveSnippet('SnippetContainer7','NewSnippetContainer7');
  MoveSnippet('SnippetContainer8','NewSnippetContainer8');
  MoveSnippet('SnippetContainer9','NewSnippetContainer9');
  MoveSnippet('SnippetContainer10','NewSnippetContainer10');
  MoveSnippet('SnippetContainer11','NewSnippetContainer11');
  MoveSnippet('SnippetContainer_siteId31','NewSnippetContainer_siteId31');
  MoveSnippet('SnippetContainer_siteId33','NewSnippetContainer_siteId33');
  MoveSnippet('SnippetContainer_siteId34','NewSnippetContainer_siteId34');
}



//------------ FAQ -------------------------------------------------------------------------//

// Viser svar
function showAnswer(recordid) {
  document.getElementById("answer" + recordid).style.display = 'block';
  document.getElementById("showAnswerLink" + recordid).style.display = 'none';
  document.getElementById("hideAnswerLink" + recordid).style.display = 'block'; 
}

// skjuler svar
function hideAnswer(recordid) {
  document.getElementById("answer" + recordid).style.display = 'none';
  document.getElementById("hideAnswerLink" + recordid).style.display = 'none';
  document.getElementById("showAnswerLink" + recordid).style.display = 'block';
}

//----------- DROPDOWN ---------------------------------------------------------------------//
function BrandsCountries() {

	var cPageid = '0';
	var bPageid = '0';
	var country = '';
	var brand = '';
	var cLocked = false;
	var bLocked = false;
	var filter1 = 0;
	var filter2 = 0;

	this.Init = function (brandselect, countryselect, brandpageid, countrypageid, urlfilter1, urlfilter2) {

		$elm(countryselect).onchange = selectFilter.FilterCountries;
		$elm(brandselect).onchange = selectFilter.FilterBrands;

		cPageid = countrypageid;
		bPageid = brandpageid;

		country = countryselect;
		brand = brandselect;

		filter1 = urlfilter1;
		filter2 = urlfilter2;

		if (urlfilter2 !== '' && urlfilter2 !== '0' && urlfilter1 !== '0') {
			selectFilter.FilterBrands();
		}

		if (urlfilter1 !== '' && urlfilter1 !== '0' && urlfilter2 !== '0') {
			selectFilter.FilterCountries();
		}

	}

	this.FilterCountries = function () {
		var cElm = $elm(country);
		var bElm = $elm(brand);
		var selectedid = cElm.options[cElm.selectedIndex].value;
		var uri = '/page' + bPageid + '.aspx?countryid=' + selectedid;
		if (selectedid === '0') {
			bLocked = false;
			uri = '/page2500.aspx';
			filter1 = parseInt(bElm.options[bElm.selectedIndex].value);
		}
		if (!bLocked) {

			var data = $ts.ajax({
				url: uri,
				type: 'GET',
				async: false
			});

			data = eval(data);

			for (var r = (bElm.options.length - 1); r > 0; r--) {
				$elm(brand).options.remove(r);
			}
			var curBrand = '';
			for (var i = 0; i < data.records.length; i++) {
				var text = data.records[i].Brand;
				var value = data.records[i].field452_raw;
				var opt = $ts.createElement('option');
				opt.text = text;
				opt.value = value;
				if (value == filter1) {
					opt.selected = true;
				}
				if (curBrand != text) {
					curBrand = text;
					$elm(brand).options.add(opt);
				}
			}
			if (selectedid != '0') {
				cLocked = true;
			} else {
				cLocked = false;
			}

		}

	}

	this.FilterBrands = function () {
		var bElm = $elm(brand);
		var cElm = $elm(country);
		var selectedid = bElm.options[bElm.selectedIndex].value;
		var uri = '/page' + cPageid + '.aspx?brandid=' + selectedid;
		if (selectedid === '0') {
			cLocked = false;
			uri = '/page2499.aspx';
			filter2 = parseInt(cElm.options[cElm.selectedIndex].value);
		}
		if (!cLocked) {

			var data = $ts.ajax({
				url: uri,
				type: 'GET',
				async: false
			});

			data = eval(data);

			for (var r = (cElm.options.length - 1); r > 0; r--) {
				$elm(country).options.remove(r);
			}
			var curCountry = '';
			for (var i = 0; i < data.records.length; i++) {
				var text = data.records[i].Land;
				var value = data.records[i].field451_raw;
				var opt = $ts.createElement('option');
				opt.text = text;
				opt.value = value;
				if (value == filter2) {
					opt.selected = true;
				}
				if (curCountry !== text) {
					curCountry = text;
					$elm(country).options.add(opt);
				}
			}
			if (selectedid != '0') {
				bLocked = true;
			} else {
				bLocked = false;
			}
		}
	}
}

var selectFilter = new BrandsCountries();

function BrandCountriesMulti() {

	var cPageid = '0';
	var bPageid = '0';
	var country = '';
	var brand = '';
	var orgCountry = '';
	var orgBrand = '';
	var cLocked = false;
	var bLocked = false;
	var filter1 = 0;
	var filter2 = 0;

	this.Init = function (brandselect, countryselect, brandpageid, countrypageid, urlfilter1, urlfilter2) {
		cPageid = countrypageid;
		bPageid = brandpageid;

		orgCountry = countryselect;
		orgBrand = brandselect;

		var countryParent = $elm(countryselect).parentNode;
		var selector = $elm(countryselect);
		var sel = $ts.createElement('select', { 'id': 'countryselect' }, { 'width': selector.style.width });
		country = 'countryselect';
		sel.onchange = selectFilter2.FilterCountries;
		for (var i = 0; i < selector.options.length; i++) {
			var opt = $ts.createElement('option');
			opt.value = selector.options[i].value;
			opt.text = selector.options[i].text;
			if (selector.options[i].value == urlfilter2) {
				opt.selected = true;
			}
			try {
				sel.add(opt, null);
			} catch (e) {
				sel.add(opt);
			}
		}
		countryParent.appendChild(sel);
		selector.style.display = 'none';

		countryParent = $elm(brandselect).parentNode;
		selector = $elm(brandselect);
		sel = $ts.createElement('select', { 'id': 'brandselect' }, { 'width': selector.style.width });
		brand = 'brandselect';
		sel.onchange = selectFilter2.FilterBrands;
		for (i = 0; i < selector.options.length; i++) {
			opt = $ts.createElement('option');
			opt.value = selector.options[i].value;
			opt.text = selector.options[i].text;
			if (selector.options[i].value == urlfilter1) {
				opt.selected = true;
			}
			try {
				sel.add(opt, null);
			} catch (e) {
				sel.add(opt);
			}
		}
		countryParent.appendChild(sel);
		selector.style.display = 'none';

		filter1 = urlfilter1;
		filter2 = urlfilter2;

		if (urlfilter1 !== '' && urlfilter1 !== '0') {
			selectFilter2.FilterBrands();
		}

		if (urlfilter2 !== '' && urlfilter2 !== '0') {
			selectFilter2.FilterCountries();
		}

	}

	this.FilterCountries = function () {
		var cElm = $elm(country);
		var bElm = $elm(brand);
		var selectedid = cElm.options[cElm.selectedIndex].value;

		var orgCountryElm = $elm(orgCountry);
		var orgBrandElm = $elm(orgBrand);
		for (var ob = 0; ob < orgCountryElm.options.length; ob++) {
			if (orgCountryElm.options[ob].value == cElm.options[cElm.selectedIndex].value) {
				orgCountryElm.options[ob].selected = true;
			}
		}
		if (selectedid === '0') {
			for (var r = (bElm.options.length - 1); r > 0; r--) {
				$elm(brand).options.remove(r);
			}
			orgCountryElm.selectedIndex = 0;
			orgBrandElm.selectedIndex = 0;
			bLocked = false;
			cLocked = false;
			filter1 = '0';
			filter2 = '0';
			var selector = $elm(orgBrand);
			for (var i = 1; i < selector.options.length; i++) {
				var opt = $ts.createElement('option');
				opt.value = selector.options[i].value;
				opt.text = selector.options[i].text;
				if (selector.options[i].value == filter1) {
					opt.selected = true;
				}
				try {
					bElm.add(opt, null);
				} catch (e) {
					bElm.add(opt);
				}
			}
		} else {
			if (!bLocked) {
				for (var r = (bElm.options.length - 1); r > 0; r--) {
					$elm(brand).options.remove(r);
				}
				var uri = '/page' + bPageid + '.aspx?countryid=' + selectedid;
				var data = $ts.ajax({
					url: uri,
					type: 'GET',
					async: false
				});

				data = eval(data);

				var ArrBrands = [];
				data = eval(data);
				var max = data.records.length;
				var strBrands = '';
				for (i = 0; i < max; i++) {
					strBrands += ',' + data.records[i].Brand;
				}
				strBrands += ',';

				var selector = $elm(orgBrand);
				for (var i = 1; i < selector.options.length; i++) {
					if (strBrands.indexOf(',' + selector.options[i].value + ',')) {
						var opt = $ts.createElement('option');
						opt.value = selector.options[i].value;
						opt.text = selector.options[i].text;
						if (selector.options[i].value == filter1) {
							opt.selected = true;
						}
						try {
							bElm.add(opt, null);
						} catch (e) {
							bElm.add(opt);
						}
					}
				}
				if (selectedid != '0') {
					cLocked = true;
				} else {
					cLocked = false;
				}

			}
		}
	}

	this.FilterBrands = function () {
		var bElm = $elm(brand);
		var cElm = $elm(country);
		var selectedid = bElm.options[bElm.selectedIndex].value;

		var orgCountryElm = $elm(orgCountry);
		var orgBrandElm = $elm(orgBrand);
		for (var ob = 0; ob < orgBrandElm.options.length; ob++) {
			if (orgBrandElm.options[ob].value == bElm.options[bElm.selectedIndex].value) {
				orgBrandElm.options[ob].selected = true;
			}
		}
		if (selectedid === '0') {
			orgBrandElm.selectedIndex = 0;
			orgCountryElm.selectedIndex = 0;
			cLocked = false;
			bLocked = false;
			filter1 = '0';
			filter2 = '0';
			for (var r = (cElm.options.length - 1); r > 0; r--) {
				$elm(country).options.remove(r);
			}

			var selector = $elm(orgCountry);
			for (var i = 1; i < selector.options.length; i++) {
				var opt = $ts.createElement('option');
				opt.value = selector.options[i].value;
				opt.text = selector.options[i].text;
				if (selector.options[i].value == filter2) {
					opt.selected = true;
				}
				try {
					cElm.add(opt, null);
				} catch (e) {
					cElm.add(opt);
				}
			}
		} else {
			if (!cLocked) {
				for (var r = (cElm.options.length - 1); r > 0; r--) {
					$elm(country).options.remove(r);
				}
				var uri = '/page' + cPageid + '.aspx?brandid=' + selectedid;
				var data = $ts.ajax({
					url: uri,
					type: 'GET',
					async: false
				});

				var ArrCountries = [];
				data = eval(data);
				var max = data.records.length;
				var strCountries = '';
				for (i = 0; i < max; i++) {
					strCountries += ',' + data.records[i].Land;
				}

				strCountries += ',';

				var selector = $elm(orgCountry);
				for (var i = 1; i < selector.options.length; i++) {
					if (strCountries.indexOf(',' + selector.options[i].value + ',') > -1) {
						var opt = $ts.createElement('option');
						opt.value = selector.options[i].value;
						opt.text = selector.options[i].text;
						if (selector.options[i].value == filter2) {
							opt.selected = true;
						}
						try {
							cElm.add(opt, null);
						} catch (e) {
							cElm.add(opt);
						}
					}
				}
				if (selectedid != '0') {
					bLocked = true;
				} else {
					bLocked = false;
				}
			}
		}
	}
}

var selectFilter2 = new BrandCountriesMulti();
