function winHeight () {
  if (window.innerHeight) {
    return window.innerHeight;
  } else if (document.body && document.body.offsetHeight) {
    return document.body.offsetHeight;
  } else {
    return 0;
  }
}

var lfp = {
  redraw: function() {
    if (!$('PubBody')) return;
    var el = $('cusFooter');
    if (!el._ContentHeight) {
      el._ContentHeight = Element.iccGetDimensions('PubMainWin').height;
      if (Element.iccGetDimensions('PubMainNav').height > el._ContentHeight) el._ContentHeight = Element.iccGetDimensions('PubMainNav').height;
      if (Element.iccGetDimensions('PubRightNav').height > el._ContentHeight) el._ContentHeight = Element.iccGetDimensions('PubRightNav').height;
      el._ContentHeight += Element.iccGetDimensions('PubMainWin').top;
    }    
    if (winHeight() > el._ContentHeight+10+35) {
      $('cusFooter').style.top = winHeight()-64;
      $('Pub').style.height = winHeight()-5;      
    } else {  
      $('cusFooter').style.top = el._ContentHeight-25;
      $('Pub').style.height = el._ContentHeight;      
    }  
  }
}

var lfpRules = {
  'body': function(el) {
    el.onresize = function() {
      if (!$('PubBody')) return;
      lfp.redraw();
    };
  },
  '#cusFooter': function(el) {   
    if (!$('PubBody')) return;
    if (!el._ContentHeight) {
      el._ContentHeight = Element.iccGetDimensions('PubMainWin').top+Element.iccGetDimensions('PubMainWin').height;
      if (Element.iccGetDimensions('PubMainNav').top+Element.iccGetDimensions('PubMainNav').height > el._ContentHeight) {
        el._ContentHeight = Element.iccGetDimensions('PubMainNav').top+Element.iccGetDimensions('PubMainNav').height;
      }
      if (Element.iccGetDimensions('PubRightNav').top+Element.iccGetDimensions('PubRightNav').height > el._ContentHeight) {
        el._ContentHeight = Element.iccGetDimensions('PubRightNav').top+Element.iccGetDimensions('PubRightNav').height;
      }  
    }    
    if (winHeight() > el._ContentHeight+10+35) {
      $('cusFooter').style.display = 'block';     
      $('cusFooter').style.top = winHeight()-64;
      $('Pub').style.height = winHeight()-5;            
    } else {  
      $('cusFooter').style.display = 'block';     
      $('cusFooter').style.top = el._ContentHeight-25;
      $('Pub').style.height = el._ContentHeight;
    }  
  }
}
Behaviour.register(lfpRules);