////////////////////////////////////////////////////////////////
//
// @method void wOpenURL(url)
//
// @desc Öffnet eine Seite
//
// @return void
//
////////////////////////////////////////////////////////////////

function wOpenURL(url){
  if(location.pathname.indexOf('/weblication/grid5/') != 0){
    top.location.href = url;
  }
}

////////////////////////////////////////////////////////////////
//
// @method void wOpenPopupURL(url, width, height)
//
// @desc Öffnet eine Seite in einem Popup
//
// @return void
//
////////////////////////////////////////////////////////////////

function wOpenPopupURL(url, width, height){

  var name = '';

  if(width == '' || width == ' '){
    width = 786;
  }
  if(height == '' || height == ' '){
    height = 677;
  }

  url = url.replace(/&amp;/g, '&');
  options = ',location=no, menubar=no,toolbar=no,resizable=no,scrollbars=yes,status=no';
  width   = parseInt(width);
  height  = parseInt(height);

  var posLeft = (screen.width / 2)  - (width  / 2);
  var posTop  = (screen.height / 2) - (height / 2);
  window.open(url, name, 'top='+posTop+',left='+posLeft+',width='+width+',height='+height+',' + options);
}

////////////////////////////////////////////////////////////////
//
// @method void wSendMailNospam(data)
//
// @desc Öffnet eine E-Mail zum Versenden
//
// @return void
//
////////////////////////////////////////////////////////////////

function wSendMailNospam(data){
  location.href = 'mailto:' + data.replace('|', '@');
}

function wEmbedNavpoint(id, url, mode){

  if(typeof wEditor == 'object'){
    return false;
  }

  if(mode == 'embed'){
    if(jQuery('#navpoint_' + id).data('hasLoaded') == '1'){
      jQuery('#navEmbed_' + id).show();
    }
    else{
      jQuery('#navpoint_' + id).mouseout(function(){
        jQuery('#navEmbed_' + id).hide();
      });

      url = url.indexOf('?') == -1 ? url + '?viewmode=embed' : url + '&viewmode=embed';
      url = url.replace('[URL]', location.pathname + location.search);
      jQuery.ajax({
        type: "GET",
        url: url,
        success: function(result){

          result = result.replace(/\n/g, '_wNL-').replace(/\s+id="[^"]+"/gim, '').replace(/_wNL-/g, "\n");

          jQuery('#navpoint_' + id).data('hasLoaded', '1');
          jQuery('#navEmbed_' + id).html(result);

          var navpointLeft = jQuery('#navpoint_' + id).offset().left;

          jQuery('#navEmbed_' + id).show();

          var layerLeft = jQuery('#navEmbed_' + id).offset().left;

          var blockMainRight = jQuery('#blockMain').offset().left + jQuery('#blockMain').width();

          if(layerLeft < navpointLeft){
            jQuery('#navEmbed_' + id).css('left', String(navpointLeft - layerLeft - 6) + 'px');
          }

          var layerRight = jQuery('#navEmbed_' + id).offset().left + jQuery('#navEmbed_' + id).width();

          if(layerRight > blockMainRight){
            jQuery('#navEmbed_' + id).css('marginLeft', String( - (layerRight - blockMainRight) - 22) + 'px');
          }

          jQuery('#navEmbed_' + id).mouseover(function(){
            jQuery('#navEmbed_' + id).show();
          });

          jQuery('#navEmbed_' + id).mouseout(function(){
            jQuery('#navEmbed_' + id).hide();
          });
        }
      });
    }
  }
  else{
    if(jQuery('#navpoint_' + id).data('hasLoaded') == '1'){
      jQuery('#navEmbed_' + id).show();
      jQuery('#navEmbedIframe_' + id).height(frames['navEmbedIframe_' + id].jQuery('#blockContent').height() + 50);
      jQuery('#navEmbed_' + id).height(frames['navEmbedIframe_' + id].jQuery('#blockContent').height() + 60);
    }
    else{
      url = url.indexOf('?') == -1 ? url + '?viewmode=blank&parentIframeId=navEmbedIframe_'+id : url + '&viewmode=blank&parentIframeId=navEmbedIframe_'+id;
      url = url.replace('[URL]', location.pathname + location.search);
      jQuery('#navpoint_' + id).data('hasLoaded', '1');

      var iframeEmbed    = document.createElement('iframe');

      iframeEmbed.id        = 'navEmbedIframe_' + id;
      iframeEmbed.name      = 'navEmbedIframe_' + id;
      iframeEmbed.className = 'navLevel1Embed';
      iframeEmbed.frameBorder = '0';
      iframeEmbed.scrolling   = 'no';
      iframeEmbed.src       = url;

      var embedContainer = document.getElementById('navEmbed_' + id);
      embedContainer.appendChild(iframeEmbed);

      var navpointLeft = jQuery('#navpoint_' + id).offset().left;

      jQuery('#navEmbed_' + id).show();

      var layerLeft = jQuery('#navEmbed_' + id).offset().left;

      var blockMainRight = jQuery('#blockMain').offset().left + jQuery('#blockMain').width();

      if(layerLeft < navpointLeft){
        jQuery('#navEmbed_' + id).css('left', String(navpointLeft - layerLeft - 6) + 'px');
      }

      var layerRight = jQuery('#navEmbed_' + id).offset().left + jQuery('#navEmbed_' + id).width();

      if(layerRight > blockMainRight){
        //jQuery('#navEmbed_' + id).css('left', String(parseInt(jQuery('#navEmbed_' + id).css('left')) - (layerRight - blockMainRight)) + 'px');
        jQuery('#navEmbed_' + id).css('marginLeft', String( - (layerRight - blockMainRight) - 22) + 'px');
      }

      jQuery('#navpoint_' + id).mouseout(function(){
        jQuery('#navEmbed_' + id).hide();
      });

      jQuery('#navEmbed_' + id).mouseover(function(){
        jQuery('#navEmbed_' + id).show();
      });

      jQuery('#navEmbed_' + id).mouseout(function(){
        jQuery('#navEmbed_' + id).hide();
      });
    }
  }
}

var isEasy = 0;

function wInitFontSize(){

  document.write('<div id="fontSizerLeft">Schrift:</div><div id="fontSizerRight">');
  document.write('<a id="increase" href="#" class="fontSizerBig" onClick="wSetFontSize(\'bigger\')" title="Schrift vergrößern">Größer</a>');
  document.write('<a href="#" class="fontSizerDefault" onClick="wSetFontSize(\'default\')" title="Schriftgröße zurückstellen">Normal</a>');
  document.write('<a id="decrease" href="#" class="fontSizerSmall" onClick="wSetFontSize(\'smaller\')" title="Schrift verkleinern">Kleiner</a>');
  document.write('</div>');

  var cookieStr    = document.cookie;
  var fontSizeBody = 's';

  var getFontSizeRegExpr = /wFontSize=(\w+)/;
  if(getFontSizeRegExpr.test(cookieStr) == true){
    fontSizeBody = RegExp.$1;
  }

  wSelectStylesheetSize(fontSizeBody);
}


////////////////////////////////////////////////////////////////
//
// Beschreibung: Druckt das aktuelle Dokument
//
////////////////////////////////////////////////////////////////

function printDocument(){

  if(document.all && navigator.appVersion.substring(22,23)==4) {
    self.focus();
    var OLECMDID_PRINT = 6;
    var OLECMDEXECOPT_DONTPROMPTUSER = 2;
    var OLECMDEXECOPT_PROMPTUSER = 1;
    var WebBrowser = '<object id="WebBrowser1" width="0" height="0" classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"></object>';
    document.body.insertAdjacentHTML('beforeEnd',WebBrowser);
    WebBrowser1.ExecWB(OLECMDID_PRINT,OLECMDEXECOPT_DONTPROMPTUSER);
    WebBrowser1.outerHTML = '';
  }
  else{
    window.print();
  }
}


////////////////////////////////////////////////////////////////
//
// Vergrößert oder verkleinert die Schriftgröße
//
////////////////////////////////////////////////////////////////

function wSetFontSize(size){

  var cookieStr    = document.cookie;

  var fontSizeCur = 's';
  var fontSizeNew = 's';

  var linkTags = document.getElementsByTagName('LINK');
  for(var i = 0; i < linkTags.length; ++i){
    if(linkTags[i].rel == 'stylesheet'){
      var getFontSizeRegExpr = /\/size_(\w)\.css$/;
      if(getFontSizeRegExpr.test(linkTags[i].href) == true){
        fontSizeCur = RegExp.$1;
      }
    }
  }

  var getFontSizeRegExpr = /wFontSize=(\w+)/;
  if(getFontSizeRegExpr.test(cookieStr) == true){
    fontSizeCur = RegExp.$1;
  }

  if(size == 'bigger'){
    if(fontSizeCur == 's'){
      fontSizeNew = 'm';
    }
    else if(fontSizeCur == 'm'){
      fontSizeNew = 'l';
    }
    else if(fontSizeCur == 'l'){
      fontSizeNew = 'xl';
    }
    else {
      fontSizeNew = 'xl';
    }
  }
  else if(size == 'smaller'){
    if(fontSizeCur == 'xl'){
      fontSizeNew = 'l';
    }
    else if(fontSizeCur == 'l'){
      fontSizeNew = 'm';
    }
    else if(fontSizeCur == 'm'){
      fontSizeNew = 's';
    }
    else {
      fontSizeNew = 's';
    }
  }

  document.cookie = "wFontSize=" + fontSizeNew + ";path=/;";

  wSelectStylesheetSize(fontSizeNew)
}


////////////////////////////////////////////////////////////////
//
// Setzt die Schriftgröße neu
//
////////////////////////////////////////////////////////////////

function wSelectStylesheetSize(size){

  //document.write('<div style="position:absolute;margin-left:0px">' + size + ':</div>');

  if(size == ''){
    var cookieStr    = document.cookie;
    var getFontSizeRegExpr = /wFontSize=(\w+)/;
    if(getFontSizeRegExpr.test(cookieStr) == true){
      size = RegExp.$1;
    }
    if(size == ''){
      size = 's';
    }
  }

  //document.write('<div style="position:absolute;margin-left:10px">' + size + ':</div>');

  if(isEasy == 1){
    if(size == 's'){
      size = 'm';
    }
    else if(size == 'm'){
      size = 'l';
    }
    else if(size == 'l'){
      size = 'xl';
    }
  }

  //document.write('<div style="position:absolute;margin-left:20px">' + size + '</div>');

  var linkTags = document.getElementsByTagName('LINK');
  for(var i = 0; i < linkTags.length; ++i){
    if(linkTags[i].rel == 'stylesheet'){
      var getFontSizeRegExpr = /\/size_(\w+)\.css$/;
      //alert(size + ' : ' + linkTags[i].href +  ' . ' +  getFontSizeRegExpr.test(linkTags[i].href) );
      if(getFontSizeRegExpr.test(linkTags[i].href) == true){
        //alert('/wLayout/wGlobal/layout/styles/size_' + size + '.css');
        if(document.all && size == 'xl'){
          linkTags[i].href = '/wLayout/wGlobal/layout/styles/size_' + size + '_ie.css';
        }
        else{
          linkTags[i].href = '/wLayout/wGlobal/layout/styles/size_' + size + '.css';
        }
        return true;
      }
    }
  }
}

////////////////////////////////////////////////////////////////
//
// jQuery - Bereich
//
////////////////////////////////////////////////////////////////
var $j = jQuery.noConflict();
jQuery(document).ready(function() {
  //Fancybox
  /*
  jQuery('a[rel=fancybox]').fancybox({
    'overlayShow' :true,
    'overlayOpacity' : 0.5
  });
  jQuery("a[rel*=pdflist]").fancybox({
		'titleShow' : false,
		'scrolling' : 'no',
		'hideOnContentClick' : false
	});
	*/
});
