getInnerSize=function() {
  var myWidth = 0, myHeight = 0;
  if( typeof( window.innerWidth ) == 'number' ) {
    //Non-IE
    myWidth = window.innerWidth;
    myHeight = window.innerHeight;
  } else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {
    //IE 6+ in 'standards compliant mode'
    myWidth = document.documentElement.clientWidth;
    myHeight = document.documentElement.clientHeight;
  } else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
    //IE 4 compatible
    myWidth = document.body.clientWidth;
    myHeight = document.body.clientHeight;
  }
	return [ myWidth, myHeight ];
}

createTip = function(eventObj, className, contentTitle, contentText, posXY){
  if (Ext.get(className) == null) {
    ExtElement = Ext.DomHelper.append(document.body, {
      tag: 'div',
      id: className
    });
  }
  
  //IE Bug
  var title = '';
  
  function calcPos(event, pos){
    var tipH = Ext.get(className).getHeight();
    var tipW = Ext.get(className).getWidth();
    var spaceY = event.getPageY() - document.documentElement.scrollTop;
    var spaceX = event.getPageX() - document.documentElement.scrollLeft;
		var difY = getInnerSize(0)[1] - spaceY + posXY[1];
    var difX = getInnerSize(0)[0] - spaceX - 2*posXY[0];

    if (difY < tipH) {
			var sign=(0<posXY[1])?-1:1;
      pos[1] = pos[1] - (tipH) + (2*posXY[1]*sign);;
    }
    if (difX < tipW) {
      pos[0] = pos[0] - tipW - (posXY[0]);
    }
  }
  
  
  Ext.fly(eventObj).addListener('mouseenter', function(event, target){
    title = target.title;
    var TipSpec = {
      tag: 'div',
      id: className,
      title: target.getAttribute('title'),
      children: [{
        tag: 'div',
        cls: className + 'Item',
        children: [{
          tag: 'p',
          cls: className + 'ContentTitle',
          html: contentTitle
        }, {
          tag: 'p',
          cls: className + 'ContentText',
          html: contentText,
          style: 'display: block'
        }]
      }]
    }
    target.removeAttribute('title');
    Ext.get(className).replaceWith(TipSpec);
    Ext.get(className).setStyle({
      position: 'absolute',
      display: 'block'
    });
    var pos = event.getXY();
    calcPos(event,pos);
    
    pos[0] = pos[0] + posXY[0];
    pos[1] = pos[1] - posXY[1];
    Ext.get(className).setXY(pos);
    //IE Bug
    target.title = '';
  });
  
  
  Ext.fly(eventObj).on('mousemove', function(event){
    var pos = event.getXY();
    calcPos(event, pos);
    
    pos[0] = pos[0] + posXY[0];
    pos[1] = pos[1] - posXY[1];
    Ext.get(className).setXY(pos);
    
  });
  
  
  Ext.fly(eventObj).on('mouseleave', function(event, target){
    Ext.get(target).set({
      title: Ext.get(className).getAttribute('title')
    });
    Ext.get(className).setStyle('display', 'none');
    //IE Bug
    target.title = title;
  });
}


Ext.onReady(function(){

  Ext.get('imglogo').on('click', function(){
    window.location.href = 'http://www.fv-tumringen.de'
  });
  
  initAjax(Ext.getBody());
  
  if (Ext.get('like')) {
		var child = '<iframe src="http://www.facebook.com/widgets/like.php?href=www.fv-tumringen.de" scrolling="no" frameborder="0"></iframe>';
    Ext.DomHelper.append(Ext.get('like'), child);
  }
});


update = function(divElement, strURL){
  el = Ext.get(divElement);
  if (!el)     
    return;
  el.dom.innerHTML='<div style="margin-left:200px; margin-top: 200px;"><img src=/images/ajax-loader.gif></div>';
  
  el.load({
    url: strURL,
    scripts: true,
    nocache:true,
    callback: function(El, success, response, opt){
    	if (success) {
      	initAjax(Ext.get('ajax'));
      	ajaxCallback();
    	}else{
    		alert('es ist ein AJAX-Fehler aufgetretten');
    	}
    }
  });
}

function initAjax(StartEl){
  StartEl.select('a').each(function(El){
    El.on('click', function(ev, tar){
    	if(typeof tar.href=='undefined'){
    			tar=Ext.get(tar).findParent('a');
    	}
    	
    	if ( tar.onclick==null){
    		if(tar.nodeName=='IMG'){
    			tar=Ext.get(tar).findParentNode('a');
    		}
    		update('ajax', tar.href.split('#')[1]);
    	}
    });
  });
  
  StartEl.select('img').each(function(El){
    var currWidth=El.getAttribute('width');
    if (currWidth>600){
    	El.setWidth(600);
    }
  });
  StartEl.select('.liam').each(function(El){
		El.dom.innerHTML=El.first('p').dom.innerHTML+'@'+El.last('p').dom.innerHTML;
  });
  
  Ext.select('.quicktip').each(function(e){
    createTip(e, 'quicktip', e.getAttribute('alt'), e.getAttribute('title'), new Array(10, -20));
  });
} 

function ajaxCallback(){
}
