var menuA = 0;
var menuB = 0;
var menuTimerA = 0;
var menuTimerB = 0;
var menuHome = 0;

window.onload = function()
{
  if($('page'))
    CCL.Center('page');
  document.body.onclick = hideDropDownLists;
  document.body.onmousedown = hidePopups;
}

function Calculator()
{
  var self = this;
  
  self.PriceDecimals = 0;
	self.DecimalPoint = ',';
	self.ThousandsSeperator = '.';
	
	self.Round = function(input)
	{
		input = self.ReRound(input);
		if(input.toFixed)
			input = input.toFixed(self.PriceDecimals);
		input = input.toString();
		var r = new RegExp('([0-9])([0-9]{3}([\.,].*|))$');
		while(r.test(input))
			input = input.replace(r, '$1,$2');
		input = input.replace(/\./, '---dp---');
		input = input.replace(/,/g, self.ThousandsSeperator);
		input = input.replace(/---dp---/, self.DecimalPoint);
		return '€ ' + input;
	}
	
	self.ReRound = function(input)
	{
    input = input.toString();
    input = input.replace(/[^0-9,\.]/g, '');
    input = input.replace(new RegExp(self.DecimalPoint == '.' ? '\\.' : self.DecimalPoint), '---dp---');
    input = input.replace(new RegExp(self.ThousandsSeperator == '.' ? '\\.' : self.ThousandsSeperator, 'g'), '');
    input = input.replace(/---dp---/, '.');
    input = parseInt(input);
    return isNaN(input) ? 0 : input;
  }
  
  self.CalculateIncome = function(income, incomePartner, alimentation, cost, round)
  {
    var v = (self.ReRound(income) + self.ReRound(incomePartner) - self.ReRound(alimentation) - self.ReRound(cost));
    return round ? self.Round(v) : v;
  }
	
	self.Calculate = function(income, incomePartner, alimentation, cost)
	{
    return self.Round(self.CalculateIncome(income, incomePartner, alimentation, cost, false) * 6);
  }

}

window.Calculator = new Calculator();

function BerekenHypotheek()
{
  $('inkomen').innerHTML = window.Calculator.CalculateIncome(CCL.Forms.NamedItem('BrutoInkomen').value, CCL.Forms.NamedItem('BrutoInkomenPartner').value, CCL.Forms.NamedItem('AlimentatieVerplichtingen').value, CCL.Forms.NamedItem('LastenConsumptiefKrediet').value, true);
  $('leensom').innerHTML = window.Calculator.Calculate(CCL.Forms.NamedItem('BrutoInkomen').value, CCL.Forms.NamedItem('BrutoInkomenPartner').value, CCL.Forms.NamedItem('AlimentatieVerplichtingen').value, CCL.Forms.NamedItem('LastenConsumptiefKrediet').value);
  $('periode').innerHTML = CCL.Forms.NamedItem('RenteVastPeriode').value;
}

function SwitchCalculator(result)
{
  var d = 1;
  while($('d' + d))
  {
    $('d' + d).style.display = result ? 'none' : '';
    d++;
  }
  d = 1;
  while($('m' + d))
  {
    $('m' + d).style.display = result ? '' : 'none';
    d++;
  }
  d = 1;
  while($('a' + d))
  {
    $('a' + d).style.display = (result == 2 ? '' : 'none');      
    d++;
  }
  d = 1;
  while($('b' + d))
  {
    $('b' + d).style.display = (result == 1 ? '' : 'none');      
    d++;
  }
  var name = CCL.Forms.NamedItem('Naam');
  var email = CCL.Forms.NamedItem('txtEmail');
  var phone = CCL.Forms.NamedItem('Telefoon');
  if(result == 2 && name.value == name.defaultValue)
    name.value = '';
  else if(result != 2 && name.value == '')
    name.value = name.defaultValue;
  if(result == 2 && phone.value == phone.defaultValue)
    phone.value = '';
  else if(result != 2 && phone.value == '')
    phone.value = phone.defaultValue;
  if(result == 2 && email.value == email.defaultValue)
    email.value = '';
  else if(result != 2 && !CCL.Forms.Validate())
  {
    email.value = email.defaultValue;
    CCL.Forms.Validate();
  }
}

function BannerCarrousel(banners, img)
{
  var self = this;
  self.Banners = banners;
  self.Img = img;
  self.Index = parseInt(Math.random() * self.Banners.length);
  
  self.ShowBanner = function()
  {
    self.Index++;
    if(self.Index == self.Banners.length)
      self.Index = 0;
    if(self.Index < self.Banners.length)
    {
      self.Img.src = self.Banners[self.Index].img;
      if(/^http/.test(self.Banners[self.Index].url))
      {
        self.Img.onclick = function(){document.location.href = self.Banners[self.Index].url;};
        self.Img.style.cursor = 'pointer';
      }
      else
      {
        self.Img.onclick = function(){};
        self.Img.style.cursor = 'default';
      }
      if(self.Banners.length > 1)
        self.Timer = setTimeout(self.ShowBanner, 20000);
    }
  }
  
  self.ShowBanner();
  
}

function Popup(type)
{
  var self = this;
  
  self.Destroy = function()
  {
    self.Div.parentNode.removeChild(self.Div);
    self.Div = 0;
  }
  
  self.Init = function()
  {
    self.Div = $('page').appendChild(document.createElement('DIV'));
    self.Div.className = 'popup';
    
    self.Table = self.Div.appendChild(document.createElement('TABLE'));
    self.Table.cellPadding = self.Table.cellSpacing = self.Table.border = 0;
    self.Table.width = '100%';
    self.Table = self.Table.appendChild(document.createElement('TBODY'));
    var row = self.Table.appendChild(document.createElement('TR'));
    var cell = row.appendChild(document.createElement('TD'));
    cell.className = 'popup_top';
    var closeButton = cell.appendChild(document.createElement('DIV'));
    closeButton.onclick = self.Destroy;
    closeButton.className = 'popup_closebutton';
    row = self.Table.appendChild(document.createElement('TR'));
    self.Content = row.appendChild(document.createElement('TD'));
    row = self.Table.appendChild(document.createElement('TR'));
    cell = row.appendChild(document.createElement('TD'));
    cell.className = 'popup_bottom';
    var height = 395;
    if(type == 'nieuwsbrief')
      height = 300;
    self.Content.innerHTML = '<iframe src="../' + type + '.html" scroll="no" frameborder="0" border="0" style="width: 100%; height: ' + height + 'px; overflow: hidden;" allowtransparency="true"></iframe>';
    
  }
  
  self.Init(); 
}

function hidePopups(e)
{
  e = e ? e : window.event;
  e = e.srcElement ? e.srcElement : e.target;
  if(e != null && e.tagName == 'INPUT')
    return true;
  if(window.cruise && window.cruise.Div)
    window.cruise.Destroy();
  if(window.nieuwsbrief && window.nieuwsbrief.Div)
    window.nieuwsbrief.Destroy();
}

function hideDropDownLists(e)
{
  e = e ? e : window.event;
  e = e.srcElement ? e.srcElement : e.target;
  if(e != null && e.tagName == 'INPUT')
    return true;
  if((e == null || e.className != 'dropdownbox') && (e.parentNode == null || e.parentNode.className != 'dropdownbox'))
  {
    $T('DIV', 0, false, function(d, i)
    {
      if(d.className == 'dropdownbox' && d.parentNode.className == 'dropdownlist' && $T0('DIV', d.parentNode) != e)
        d.style.display = 'none';
    });
  }
}

