var backgroundElementId = 'menu_buttons_section_inner';
var startOpacityClass   = 'start_opacity';
var opacity = 0.2;
var class_tmp = '';
var intervalId = 0;


function getOpacityProperty()
{
  var p;
  if (typeof document.body.style.opacity == 'string') p = 'opacity';
  else if (typeof document.body.style.MozOpacity == 'string') p =  'MozOpacity';
  else if (typeof document.body.style.KhtmlOpacity == 'string') p =  'KhtmlOpacity';
  else if (document.body.filters && navigator.appVersion.match(/MSIE ([\d.]+);/)[1]>=5.5) p =  'filter';

  return (getOpacityProperty = new Function("return '"+p+"';"))();
}

function setElementOpacity(oElem, nOpacity)
{
  var p = getOpacityProperty();
  (setElementOpacity = p=="filter"?new Function('oElem', 'nOpacity', 'nOpacity *= 100;  var oAlpha = oElem.filters["DXImageTransform.Microsoft.alpha"] || oElem.filters.alpha;  if (oAlpha) oAlpha.opacity = nOpacity; else oElem.style.filter += "progid:DXImageTransform.Microsoft.Alpha(opacity="+nOpacity+")";'):p?new Function('oElem', 'nOpacity', 'oElem.style.'+p+' = nOpacity;'):new Function)(oElem, nOpacity);
}


function fadeOpacity(cl, bBackward)
{
  var elem = $('#' + backgroundElementId);
  opacity = 0;
  if (!elem)
  {
    return;
  }
  class_tmp = cl;

  setElementOpacity(document.getElementById(backgroundElementId), opacity);
  elem.toggleClass(cl);
  elem.toggleClass(startOpacityClass);
  clearInterval(backgroundElementId);
  intervalId = setInterval(function() { fadeOpacity.run() }, 100)
}


fadeOpacity.run = function()
{
  opacity = Math.round(( opacity + .1*0.5 )*10)/10;
  setElementOpacity(document.getElementById(backgroundElementId), opacity);

  if (opacity == 1) {
    clearInterval(intervalId);
  }
}


fadeOpacity.back = function(){
  var elem = $('#' + backgroundElementId);

  if (!elem)
  {
    return;
  }

  elem.removeClass(class_tmp);
  elem.removeClass(startOpacityClass);
  clearInterval(intervalId);
  setElementOpacity(document.getElementById(backgroundElementId), 1);
};



function flickTitle(selector, runNow){

  if (runNow){
    $(selector).fadeOut(500,
      function () {
        $(selector).fadeIn(500, function(){
          setTimeout(function () { flickTitle(selector, true)}, 500);
        });
      }
    );
  }
  else {
    setTimeout(function () { flickTitle(selector, true)}, 10000);
  }
}

