function EnhancedTextbox(textbox, use_value_not_title)
{

  this.textbox = textbox;
  this.emptybydefault = textbox.value == '' || use_value_not_title ;

  if (!this.emptybydefault)
    return;

  this.isdefault = true;
  this.defaultvalue = '';

  if (this.emptybydefault && this.textbox.title != '')
    this.textbox.value = this.textbox.title;

  var oThis = this;

  $(textbox).bind('blur',
    function ()
    {
      if (oThis.textbox.value === '')
      {
//       alert('Moin');
        oThis.isdefault = true;
        oThis.textbox.value = oThis.defaultvalue;
      }
    }
  );

  $(textbox).bind('focus',
    function ()
    {
      if (oThis.isdefault)
      {
        oThis.isdefault = false;
        oThis.defaultvalue = oThis.textbox.value;
        oThis.textbox.value = '';
      }
    }
  );

  if (this.emptybydefault)
  {
    $(textbox.form).bind('submit',
      function ()
      {
        if (oThis.isdefault)
        {
          oThis.textbox.value = '';
        }
      }
    );
  }

}

EnhancedTextbox.prototype.update = function (new_value)
{
  if (this.isdefault)
  {
    this.defaultvalue = this.textbox.value;
  }
  this.isdefault = false;
  this.textbox.value = new_value;
};


function SetupBasics()
{

// für alle IE kleiner 7!
/*@cc_on
  @if (@_jscript_version < 5.7)
    //$('ul.mainnavi li, span.aslink').hover(function(){$(this).addClass("hover");},function(){$(this).removeClass("hover");});
  @end
@*/

  EnhancedTextboxes = {};
  $('input.enhanced').each(function(){ EnhancedTextboxes[this.name] = new EnhancedTextbox(this); });
//  $('input.enhanced2').each(function(){EnhancedTextboxes[this.name] = new EnhancedTextbox(this,true); });


  var selects = $('select.submitonchange');
  if (selects.length > 0)
  {
    for (i = 0; i < selects.length; i++)
    {
      var form = selects[i].form;
      selects[i].onchange = function (){ form.submit(); }
    }
  }

  $('.hidewithjs').hide();
  
  // Clicktracker
  $('a.clicktracker').bind('click', function(){
    clickTracker($(this).attr('title'));
  });

 // Datepicker
  if ($.fn.datePicker != undefined)
  {
    $('#datum').datePicker({
      clickInput:true,
      showYearNavigation:false,
      createButton:false,
      verticalOffset : -($('#datum').height() * 1.3),
      verticalPosition : $.dpConst.POS_BOTTOM
    });
 
    var today = new Date();

    $('input.pick-past-date').each(function(){$(this).datePicker({
      endDate: today.asString('dd.mm.yyyy'),
      startDate:today.addMonths(-3).asString('dd.mm.yyyy'),
      clickInput:true,
      showYearNavigation:false,
      createButton:false,
      verticalOffset : -($(this).height() * 1.3),
      verticalPosition : $.dpConst.POS_BOTTOM
    })});

  }

}

function addFlashBox(text)
{
  $('div.content h1:first ~ p.flash').remove(); 
  flash($('div.content h1:first').after('<p class="flash"></p>').next('.flash').text(text));
}

function flash(elem)
{
  if (elem)
  $(elem).fadeTo('slow', 0.4, function(){
    $(elem).fadeTo('slow', 1, function(){
      $(elem).fadeTo('slow', 0.4, function(){
        $(elem).fadeTo('slow', 1, function(){
          /* $('.flash.remove').slideUp('slow') */
        })
      })
    })
  });
}

function TriggerDC(cat)
{
  var a = Math.random() * 10000000000000;

  var img = document.createElement('img');
  img.src = '//ad.de.doubleclick.net/activity;src=1813490;type=hvvbq323;cat='+ cat +';ord=' + a + '?';
}

function WhenFinished()
{
  $('.flash, .round-flash').each(function(){flash(this)});
}

  try
  {

    // IE Hover Flicker Fix zusätzlich zum Serverfix
    document.execCommand("BackgroundImageCache",false,true);

  }
  catch(e)
  {
  }

    $(document).ready(SetupBasics);
    $(window).load(WhenFinished);

