//global vars
var opera = window.opera;
var ie4 = document.all;
var doc = document;
var offsetX = 10;
var offsetY = -5;
var innerLayer,layer,x,y;
var doWheel = false;
// automatisches selectfield
function temp_switch(){
  var url = doc.form.tempswitch.options[doc.form.tempswitch.selectedIndex].value;
  
  if(url != 'lazy') window.location.href = url;
}
// Userliste wechseln
function switchuser(){
  var url = doc.formChange.changeme.options[doc.formChange.changeme.selectedIndex].value;
  window.location.href = url
}
// Zur URL wechseln
function goTo(url,n)
{
  if(n==1)window.open(url);
  else window.location.href = url
}
//Länge bei Texteingaben
function maxlength(field, countfield, max) {
	if (field.value.length > max)
	field.value = field.value.substring(0, max);
	else
	countfield.value = max - field.value.length;
}
//TSViewer
function swindow()
{
  window.open("joinus.php","JoinUs" + new Date().getTime(),"toolbar=0,status=0,menubar=0,scrollbars=0,resizable=0,width=420,height=360")
}
//Popup
function popup(vars,x,y)
{
  var object="../popup.php?"+vars;
  y = y+50;
  
  pUP = window.open(object,"Popup" + new Date().getTime(),"width=1,height=1,location=0,scrollbars=0,resizable=1,status=0");
  pUP.resizeTo(x,y);
  pUP.moveTo((screen.width-x)/2,(screen.height-y)/2);
  pUP.focus();
}
//Klapptext
function more(id)
{
  if(id == 0) return;
  else {
    if ($("more" + id).style.display == 'none')
    {
    	$("img" + id).src = "../inc/images/collapse.gif";
    	$("more" + id).style.display = "";
    } else {
      $("img" + id).src = "../inc/images/expand.gif";
    	$("more" + id).style.display = "none";
    }
  }
}
//Klapptext #2
function showme()
{
  if($("showme").style.display == 'none') $("showme").style.display = "";
  else                                    $("showme").style.display = "none";
}
//Popupfenster erzeugen
function w(url,name,w,h,scroll)
{
  LeftPosition = (screen.width) ? (screen.width-w)/2 : 0;
  TopPosition = (screen.height) ? (screen.height-h)/2 : 0;
  settings='height='+h+',width='+w+',top='+TopPosition+',left='+LeftPosition+',scrollbars='+scroll+',resizable'
  win = window.open(url,name + new Date().getTime(),settings);
}
nereidFadeObjects = new Object();
nereidFadeTimers = new Object();
//Ein-/Ausblenden von textfelder values
function nereidFade(object, destOp, rate, delta)
{
  if (!doc.all)
  return
  if (object != "[object]")
  {
    setTimeout("nereidFade("+object+","+destOp+","+rate+","+delta+")",0);
    return;
  }

  clearTimeout(nereidFadeTimers[object.sourceIndex]);
  diff = destOp-object.filters.alpha.opacity;
  direction = 1;

  if (object.filters.alpha.opacity > destOp)
  {
    direction = -1;
  }
  delta=Math.min(direction*diff,delta);
  object.filters.alpha.opacity+=direction*delta;

  if (object.filters.alpha.opacity != destOp)
  {
    nereidFadeObjects[object.sourceIndex]=object;
    nereidFadeTimers[object.sourceIndex] = setTimeout("nereidFade(nereidFadeObjects["+object.sourceIndex+"],"+destOp+","+rate+","+delta+")",rate);
  }
}

function showInfo(info, longer) 
{
  var ie4 = document.all;
  var opera = window.opera;
  if(longer == 1) l = 'style="width:440px;padding:2px"';
  else l = '';
  layer.innerHTML =
    '<div id="hDiv" style="position:absolute;top:0px;left:0px"><table class="hperc" cellspacing="0" style="height:100%"><tr><td style="vertical-align:middle"><div id="infoInnerLayer" '+l+'><table class="hperc" cellspacing="0">'+info+'</table></div></td></tr></table></div>';

//IE Fix
  if(ie4 && !opera)
  {
    var dW = $('hDiv').clientWidth;
    var dH = $('hDiv').clientHeight;
  
    layer.innerHTML += '<iframe id="ieFix" style="width:'+dW+'px;height:'+dH+'px"></iframe>'
  }
  
  layer.style.visibility = 'visible';
}

function showXFire(id) 
{
  var ie4 = document.all;
  var opera = window.opera;
  layer.innerHTML =
    '<div id="hDiv"><table class="hperc" cellspacing="0" style="height:100%"><tr><td style="vertical-align:middle"><div id="infoInnerLayer"><img src="http://de.miniprofile.xfire.com/bg/bg/type/0/'+id+'.png" alt="" /></div></td></tr></table></div>';

//IE Fix
  if(ie4 && !opera)
  {
    var dW = $('hDiv').clientWidth;
    var dH = $('hDiv').clientHeight;
  
    layer.innerHTML += '<iframe id="ieFix" style="width:'+dW+'px;height:'+dH+'px"></iframe>'
  }
  
  layer.style.visibility = 'visible';
}

function hideInfo()
{
  layer.innerHTML = '';
  layer.style.visibility   = 'hidden';
}
function trackMouse(e) 
{
  innerLayer = document.getElementById('infoInnerLayer');
  if(typeof(layer) == 'object')
  {
    var ie4 = document.all;
    var ns6 = document.getElementById && !document.all;
    var mLeft = 5;
    var mTop = -15;
  
  	x = (ns6) ? e.pageX-mLeft : window.event.clientX+doc.documentElement.scrollLeft - mLeft;
  	y = (ns6) ? e.pageY-mTop  : window.event.clientY+doc.documentElement.scrollTop  - mTop;
    
    if(innerLayer)
    {
    	var layerW = ((ie4) ? innerLayer.offsetWidth : innerLayer.clientWidth) - 3;
      var layerH = (ie4) ? innerLayer.offsetHeight : innerLayer.clientHeight;

    } else {
    	var layerW = ((ie4) ? layer.clientWidth : layer.offsetWidth) - 3;
      var layerH = (ie4) ? layer.clientHeight : layer.offsetHeight;
    }
    	var winW   = (ns6) ? (window.innerWidth) + window.pageXOffset - 12 
                 : doc.documentElement.clientWidth + doc.documentElement.scrollLeft;
    	
    	var winH   = (ns6) ? (window.innerHeight) + window.pageYOffset 
                 : doc.documentElement.clientHeight + doc.documentElement.scrollTop;

      layer.style.left = ((x+offsetX+layerW >= winW-offsetX) ? x-(layerW+offsetX) : x+offsetX) + "px";
      layer.style.top = ((y+offsetY+layerH >= winH-offsetY) ? winH-(layerH+offsetY) : y+offsetY) + "px";
  } 
	return true;
}

//Image Resizer
function resizeImages()
{
	for(var i=0;i<doc.images.length;i++)
  {
    var d = doc.images[i];
    
    if(d.className == 'content')
    {
  	  var imgW = d.width;
  	  var imgH = d.height;
  
  	  if(maxW != 0 && imgW > maxW)
      {
   		  d.width = maxW;
  		  d.height = Math.round(imgH * (maxW / imgW));
  
  		  if(!linkedImage(d))
        {
          var textLink = doc.createElement("span");
  			  var popupLink = doc.createElement("a");
  
          textLink.appendChild(doc.createElement("br"));
          textLink.setAttribute('class', 'resized');
          textLink.appendChild(doc.createTextNode('auto resized to '+d.width+'x'+d.height+' px'));
  
          popupLink.setAttribute('href', 'javascript:popup(\'img='+d.src+'\','+imgW+','+imgH+')');
          popupLink.appendChild(d.cloneNode(true));
           
          d.parentNode.appendChild(textLink);
  			  d.parentNode.replaceChild(popupLink, d);
  		  }
      }
    }
	}
}

function linkedImage(node) 
{
	do {
		node = node.parentNode;
		if (node.nodeName == 'A') return true;
	}
	while(node.nodeName != 'TD' && node.nodeName != 'BODY');
  
	return false;
}
//Ajax Calendarswitch
function calSwitch(m,y)
{
  pars = '&month='+m+'&year='+y;
  var myAjax = new Ajax.Updater('navKalender', '../inc/global.php?i=kalender'+pars, {method: 'get'});
}
//Ajax Teamswitch
function teamSwitch(obj)
{
  pars = '&tID='+obj;
  var myAjax = new Ajax.Updater('navTeam', '../inc/global.php?i=teams'+pars, {method: 'get'});
}
//Ajax Preview
function ajaxPreview(form)
{
  var tag=document.getElementsByTagName("textarea");
  for(var i=0;i<tag.length;i++)
  {
    var thisTag = tag[i].className;
    var thisID = tag[i].id;
    if(thisTag=="editorStyle" || thisTag=="editorStyleWord" || thisTag=="editorStyleNewsletter")
    {
      var inst = tinyMCE.getInstanceById(thisID);
      $(thisID).value = inst.getBody().innerHTML;
    }
  }

  if(form == 'cwForm') 
    addpars = '&s1='+$('screen1').value+'&s2='+$('screen2').value+'&s3='+$('screen3').value+'&s4='+$('screen4').value;
  else addpars = '';

  var url = prevURL;
  var pars = Form.serialize(form)+addpars;

  $('previewDIV').innerHTML = '<div style="width:100%;text-align:center">'
                             +' <img src="../inc/images/admin/loading.gif" alt="" />'
                             +'</div>';

  var myAjax = new Ajax.Updater('previewDIV', url, {method: 'post', postBody: pars});
}
//Filebrowser
function fileBrowser()
{
  h = screen.height;
  w = 768;
  Lpos = (screen.width)?(screen.width-w)/2:100;
  Tpos = 0;
  settings = "width="+w+",height="+h+",location=0,scrollbars=1,resizable=1,status=0";
  
  win = window.open('filebrowser.php', 'Filebrowser', settings);
}
//Confim before delete
function delCheck(txt,url)
{
  txt = txt.replace(/\+/g,' ');
  txt = txt.replace(/oe/g,'ö');
  
  check = confirm(txt+'?');
  
  if(check == true)
    this.location.href = url;
}
// Search form -> hide some checkboxes
function hideForumFirst()
{
  $('allkat').checked = false;
}
function hideForumAll()
{
	for(var i = 0; i < doc.forms['search'].elements.length; i++)
	{ 
		var box = doc.forms['search'].elements[i];
    
    if(box.id.match(/k_/g))
		  box.checked = false;
	}
}
// Google Maps API  
function googleAPI(overlay)
{
// initialize
  map = new GMap2(document.getElementById("memberMap")); 
  map.addControl(new GLargeMapControl()); 
  map.addControl(new GMapTypeControl()); 
// functions needed
  function initMember(point,userInfo,team) 
  { 
    var icon = new GIcon(); 

    if(team == 1) icon.image = '../inc/images/mappin_team.png'; 
    else icon.image = '../inc/images/mappin.png'; 
    
    icon.iconSize = new GSize(20, 34); 
    icon.iconAnchor = new GPoint(10, 32); 
    icon.infoWindowAnchor = new GPoint(10, 2); 
    
    var marker = new GMarker(point,icon); 
    GEvent.addListener(marker, "mouseover", function() { showInfo(userInfo); }); 
    GEvent.addListener(marker, "mouseout", function() { hideInfo(); }); 
    GEvent.addListener(marker, "click", function() { hideInfo();map.showMapBlowup(marker.getPoint(),5); }); 
    map.addOverlay(marker); 
  }

  function initWheel()
  {
    $('memberMap').onmouseover = function() { doWheel = true; };
    $('memberMap').onmouseout =  function() { doWheel = false; };
  }

  function handle(delta) 
  {
   	var s = '';
   	if (delta < 0) s += "down";
   	else           s += "up";
   	if(s == "down") map.zoomOut();
   	if(s == "up")   map.zoomIn();
  }

  function wheel(event)
  {
    if(doWheel == true)
    {
     	var delta = 0;
     	if (!event) event = window.event;
     	if (event.wheelDelta) 
      {
     		delta = event.wheelDelta/120;
     		if (window.opera) delta = -delta;
     	} else if (event.detail) delta = -event.detail/3;
    	if (delta) handle(delta);
    }
  }
  var mt = map.getMapTypes(); 
  for (var i=0; i<mt.length; i++) { 
    mt[i].getMinimumResolution = function() {return 4;}; 
    mt[i].getMaximumResolution = function() {return 17;}; 
  } 

  map.setCenter(new GLatLng(51.200000, 12.50000), 6); 
  /*map.setMapType(G_HYBRID_MAP);*/ 
  new GKeyboardHandler(map);
// initialize overlays
  eval(overlay);
// start scroll event
  window.onmousewheel = document.onmousewheel = wheel;map.addControl(new GMapTypeControl());          
  addEvent(window,'DOMMouseScroll',wheel);
  initWheel();
}
//initPage
function initPage()
{
//Infolayer initialisieren
  document.body.id = 'dzcp-engine';
  var div=doc.createElement('div');
      div.setAttribute('id','infoDiv');
  doc.body.appendChild(div);

	layer = $('infoDiv');
	doc.body.onmousemove = trackMouse;
}
//Ajax Vote
function ajaxVote(id)
{
  sendMe('contentSubmitVote')
  var pars = Form.serialize('navAjaxVote');
  var myAjax = new Ajax.Updater('navVote', '../votes/index.php?action=do&ajax=1&what=vote&id='+id,{method: 'post', postBody: pars});
}
//Load global events
addEvent(window, 'load', initPage);
addEvent(window, 'load', resizeImages);
//onerror = function() { return true; };

function initNavigation()
{
  var tags = $('navi').getElementsByTagName('a');
  var imgArr = new Array();
  for(var i=0;i<tags.length;i++)
  {
    if(tags[i].className == 'b')
    {
      imgArr[i] = new Image();
      imgArr[i].src = tags[i].firstChild.src.replace(/\.jpg/,'_hover.jpg');
      
      tags[i].onfocus = function() { this.blur() }
    }
  }
}

function setNavi(objID)
{
  var type = $(objID).style.display == 'none' ? 1 : 0;

  $('home').style.display = 'none';
  $('team').style.display = 'none';
  $('comm').style.display = 'none';
  $('misc').style.display = 'none';
  
  var tags = $('navi').getElementsByTagName('a');
  for(var i=0;i<tags.length;i++)
  {
    if(tags[i].className == 'b')
    {
      tags[i].firstChild.src = tags[i].firstChild.src.replace(/\_hover\.jpg/,'.jpg');
    }
  }
  
  if(type == 1)
  {
    $('l' + objID).src = $('l' + objID).src.replace(/\.jpg/,'_hover.jpg');
    $(objID).style.display = '';
  } else if(type == 0) {
    $('l' + objID).src = $('l' + objID).src.replace(/\_hover\.jpg/,'.jpg');
    $(objID).style.display = 'none';
  }
}

// SLIDESHOW
var ck_images = new Array();
var ck_url    = new Array();
//////////////////////////////////////////////////////////////
// CONFIG
//////////////////////////////////////////////////////////////
var ck_timer  = 10;               // Sekunden bis zum nächsten Bild
var ck_folder = '../__slideshow/';   // Ordner in dem sich die Bilder befinden
//////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////
var ck_intervall, ck_nr, ck_old_nr, ck_action, ck_hover;
//////////////////////////////////////////////////////////////
function ck_setOpacity(objID, opacity)
{
  var obj = document.getElementById(objID);
      obj.style.filter       = "alpha(opacity:"+opacity+")";
      obj.style.KHTMLOpacity = opacity/100;
      obj.style.MozOpacity   = opacity/100;
      obj.style.opacity      = opacity/100;
}

function ck_getOpacity(objID)
{
  var obj = document.getElementById(objID);
  if(obj.filters)                 return !obj.filters.alpha.opacity ? 0 : obj.filters.alpha.opacity/100;
  else if(obj.style.KHTMLOpacity) return !obj.style.KHTMLOpacity ? 0 : obj.style.KHTMLOpacity;
  else if(obj.style.MozOpacity)   return !obj.style.MozOpacity ? 0 : obj.style.MozOpacity;
  else                            return !obj.style.opacity ? 0 : obj.style.opacity;
}

function ck_fade(objID1, objID2)
{
  if(!this.proc)
  {
    ck_action = true;
    ck_setOpacity(objID1, 100);
    ck_setOpacity(objID2, 0);
    this.proc = window.setInterval ('ck_fade(\'' + objID1 + '\', \'' + objID2 + '\')', 90);
  } else {
    var opacity1 = ck_getOpacity(objID1);
    var opacity2 = ck_getOpacity(objID2);

    if(opacity1 != 0)
    {
      opacity1 -= 0.10;
      opacity2 += 0.10;

      ck_setOpacity(objID1, parseInt(opacity1*100));
      ck_setOpacity(objID2, parseInt(opacity2*100));
    } else {
      if(document.getElementById(objID1)) document.getElementById('ck_slideshow').removeChild(document.getElementById(objID1));
      window.clearInterval(this.proc);
      this.proc = null;
      ck_action = false;
    }
  }
}

function ck_empty(str)
{
  return (str.length == 0) ? true : false;
}

function ck_slide(i)
{
  if(ck_action != true)
  {
    if(typeof(ck_nr) == 'undefined')
    {
      ck_old_nr = 0;
      ck_nr = 1;
    } else {
      ck_old_nr = ck_nr;
      ck_nr++;
    }
    
    if(ck_nr == (ck_images.length)) ck_nr = 0;
    if(typeof(i) == 'number')       ck_nr = i;
    if(ck_nr != ck_old_nr)
    {
      if(typeof(i) == 'number') {
        window.clearInterval(ck_intervall);
        ck_intervall = window.setInterval('ck_slide()', ck_timer * 1000);
      }

      var ck_sliderDiv = document.createElement('div');
          ck_sliderDiv.setAttribute('id', 'ck_item_' + ck_nr);
          ck_sliderDiv.setAttribute('class', 'ck_items');
          ck_sliderDiv.style.position     = 'absolute';
          ck_sliderDiv.style.top          = '0';
          ck_sliderDiv.style.left         = '0';
          ck_sliderDiv.style.zIndex       = '9';
          ck_sliderDiv.style.filter       = "alpha(opacity:0)";
          ck_sliderDiv.style.KHTMLOpacity = 0;
          ck_sliderDiv.style.MozOpacity   = 0;
          ck_sliderDiv.style.opacity      = 0;
      document.getElementById('ck_slideshow').appendChild(ck_sliderDiv);

      ck_sliderDiv.innerHTML += (!ck_empty(ck_url[ck_nr]) ? '  <a href="' + ck_url[ck_nr] + '">' : '')
                              + '    <img src="' + ck_folder + ck_images[ck_nr] + '" alt="" />'
                              + (!ck_empty(ck_url[ck_nr]) ? '  </a>' : '');
                                                     
      ck_fade('ck_item_' + ck_old_nr, 'ck_item_' + ck_nr);
    }
    
    var tags = document.getElementById('ck_pages').getElementsByTagName('a');
    for(var i=0;i<tags.length;i++)
    {
      tags[i].style.color = (tags[i].rel == ck_nr) ? ck_hover : '';
      tags[i].className   = (tags[i].rel == ck_nr) ? 'ck_aktiv' : '';
    }
  }
}
  
function ck_init_slideshow()
{
  document.writeln('<div id="ck_slideshow"><div id="ck_pages"></div></div>');
  ck_setOpacity('ck_pages', 80);
  document.getElementById('ck_slideshow').innerHTML += '<div id="ck_item_0" class="ck_items">'
                                                     + (!ck_empty(ck_url[0]) ? '  <a href="' + ck_url[0] + '">' : '')
                                                     + '    <img src="' + ck_folder + ck_images[0] + '" alt="" />'
                                                     + (!ck_empty(ck_url[0]) ? '  </a>' : '')
                                                     + '</div>';
  for(var i=0;i<ck_images.length;i++)
  {
    document.getElementById('ck_pages').innerHTML += '<a id="ck_page' + i + '" rel="' + i + '" ' + (i == 0 ? 'class="ck_aktiv" ' : '') + 'onfocus="this.blur()"'
                                                   + ' href="javascript:ck_slide(' + i + ')">' + parseInt(i + 1) + '</a>';
  }
  
  var x = document.getElementById('ck_page0');
  ck_hover = x.currentStyle ? x.currentStyle['color'] : document.defaultView.getComputedStyle(x,null).getPropertyValue('color');

  ck_intervall = window.setInterval('ck_slide()', ck_timer * 1000);
}