function searchClear(target, searchText)
{
  if (target.value == searchText)
  {
    target.value = '';
  }
}

function searchRestore(target, searchText)
{
  if (target.value == '')
  {
    target.value = searchText;
  }
}

function submitOnChange() {
  document.getElementById('hledej_dotace').submit();
}

function bar(url, title) {
	wasOpen = false;
	win     = window.open(url, title);    
	return (typeof(win) == 'object') ? true : false;
}

function myPopImage(imageURL,imageTitle,imageWidth,imageHeight) {

  PositionX = 30;
  PositionY = 30;
  
  ratio = imageWidth/imageHeight;
  maxHeight = screen.height - 105;
  maxWidth = maxHeight*ratio;
  if (maxWidth > screen.width-30) {
    maxWidth = screen.width - 80;
    maxHeight = maxWidth/ratio;
  }
    
  var opt='width=320,height=240,left='+PositionX+',top='+PositionY+',status=0,toolbar=0,menubar=0,location=0';
  imgWin=window.open('about:blank','null',opt);
  with (imgWin.document) {
    writeln('<html><head><title>Loading...</title><style>body{margin:0px;}</style>');
    writeln('<sc'+'ript>');
    writeln('function reSizeToImage(){');
    writeln('if (document.images[0].height > '+maxHeight+' || document.images[0].width > '+maxWidth+'){');
    writeln('height = '+maxHeight+';');
    writeln('width = '+maxWidth+';');
    writeln('document.images[0].width = '+maxWidth+';');
    writeln('document.images[0].height = '+maxHeight+';');
    writeln('window.resizeTo(width+40,height+100);}');
    writeln('else {');
    writeln('height = document.images[0].height;');
    writeln('width = document.images[0].width;');
    writeln('window.resizeTo(width+40,height+100);}}');
    writeln('function doTitle(){document.title="'+imageTitle+'";}');
    writeln('</sc'+'ript>');
    writeln('</head><body bgcolor="FFFFFF" onload="reSizeToImage();doTitle();self.focus()">');
    writeln('<img alt="'+imageTitle+'" title="'+imageTitle+'" src="'+imageURL+'" style="display:block; margin:0 auto;" /></body></html>');
    close();
  }
}

function myPopWindow(windowURL, windowName, windowFeatures) {
  var defaultFeatures = {"status": 0, "toolbar": 0, "location": 0, "menubar": 0,
                         "directories": 0, "resizeable": 1, "scrollbars": 1,
                         "width": 640, "height": 480};
  var features = '';

  for (i in windowFeatures) { defaultFeatures[i] = windowFeatures[i]; }
  for (i in defaultFeatures) { features += i + '=' + defaultFeatures[i] + ','; }

  window.open(windowURL, windowName, features);
  return false;
}

function switchBmk(n, css) {
  if (document.getElementById('bmk_header')) {
    var num = document.getElementById('bmk_header').getElementsByTagName('div').length;
    for (var i=1;i<=num;i++) {
      var elt = document.getElementById('bmk_title_' + i);
      var elc = document.getElementById('bmk_content_' + i);
      if (i == n) {
        elt.className = css + '_title active';
        elc.className = css + '_content visible';
      }
      else {
        elt.className = css + '_title';
        elc.className = css + '_content invisible';
      }
    }
  }
}

// adding method getPageSize to prototype's Position method
// returns [width, height] and {width, height}
//
// usage:
// Position.getPageSize().width/height OR
// var pageSize = Position.getPageSize()
Position.getPageSize = function() {
  var array = [];
  var pageW, pageH;

  if (window.innerHeight && window.scrollMaxY) {
		pageW = document.body.scrollWidth;
		pageH = window.innerHeight + window.scrollMaxY;
  } else {
		pageW = document.body.scrollWidth || document.body.offsetWidth;
		pageH = document.body.scrollHeight || document.body.offsetHeight;
  }

	if(pageH < document.viewport.getHeight()) {
		pageH = document.viewport.getHeight();
	}

	if(pageW < document.viewport.getWidth()) {
		pageW = document.viewport.getWidth();
	}

  array.width = array[0] = pageW;
  array.height = array[1] = pageH;

  return array;
}

var inlineGallery = {

  cssRule: 'a[rel="ig"]',
  cssRuleAjax: 'a[rel^="ig["]',
  contentBefore: '',
  contentAfter: '',
  galleryArr: new Array(),
  galleryArrAjax: new Array(),
  ajaxURL: '',
  ajaxLimit: 10,
  ajaxOffset: 0,
  ajaxLimitName: 'limit',
  ajaxOffsetName: 'offset',
  ajaxGalleryIdName: 'filter[id_albums][0]',
  ajaxAlbumId: null,
  imgKey: 0,

  init: function(varNames, ajaxURL, contentBefore, contentAfter) {
    if (typeof varNames.limitName != 'undefined') {
      inlineGallery.ajaxLimitName = varNames.limitName;
      inlineGallery.ajaxOffsetName = varNames.offsetName;
      inlineGallery.ajaxGalleryIdName = varNames.galleryIdName;
    }
    if (typeof ajaxURL != 'undefined' && ajaxURL != '') {
      inlineGallery.ajaxURL = ajaxURL;
    }
    if (typeof contentBefore != 'undefined' && contentBefore != '') {
      inlineGallery.contentBefore = contentBefore;
    }
    if (typeof contentAfter != 'undefined' && contentAfter != '') {
      inlineGallery.contentAfter = contentAfter;
    }
    if ($$(inlineGallery.cssRuleAjax).size() > 0) {
      $$(inlineGallery.cssRuleAjax).each(function(s, key) {
        var albumId = s.rel.slice(s.rel.indexOf('[')+1, s.rel.lastIndexOf(']'));
        if (albumId != '') {
          var ajaxParams = {};
          ajaxParams[inlineGallery.ajaxGalleryIdName] = albumId;
          ajaxParams[inlineGallery.ajaxLimitName] = inlineGallery.ajaxLimit;
          ajaxParams[inlineGallery.ajaxOffsetName] = inlineGallery.ajaxOffset;
          new Ajax.Request(inlineGallery.ajaxURL, {
            method: 'get',
            parameters: ajaxParams,
            onSuccess: function(transport) {
              inlineGallery.galleryArrAjax[albumId] = transport.responseText.evalJSON(true);
              s.observe('click', inlineGallery.openAjaxGallery.bind(albumId));
            }
          });
        }
      });
    }
    var gKey = 0;
    $$(inlineGallery.cssRule).each(function(s, key) {
      if (s.firstDescendant() != null) {
        if (typeof s.firstDescendant().src != 'undefined') {
          var imgSrc = s.firstDescendant().src.replace(/gallery\/([a-z]*)\//, 'gallery/full/');
          inlineGallery.galleryArr.push({link: imgSrc, name: s.title});
          s.observe('click', inlineGallery.openGallery.bind(gKey));
          gKey++;
        }
      }
    }); // set onclick on each image which matches cssRule
    $('prevImg').setOpacity(0.6);
    $('nextImg').setOpacity(0.6);
    $('inlineGallery').observe('click', inlineGallery.close); // set close observing
    $('inlineGalleryBg').observe('click', inlineGallery.close); // set close observing
  },

  openAjaxGallery: function(event) {
    inlineGallery.ajaxAlbumId = parseInt(this);
    $$('select,object').each(function(s){s.hide();});
    $('imgInfoBox').hide();
    $('customContentBefore').hide();
    $('customContentAfter').hide();
    $('inlineGalleryBg').setOpacity(0.8);
    $('inlineGalleryBg').style.height = Position.getPageSize().height + 'px';
    $('inlineGalleryBg').style.width = Position.getPageSize().width + 'px';
    $('inlineGalleryBg').show();
    var galleryOffset = document.viewport.getScrollOffsets().top + document.viewport.getHeight()/20;
    $('inlineGallery').style.top = galleryOffset + 'px';
    $('inlineGallery').show();
    inlineGallery.loadImage(0, true, inlineGallery.galleryArrAjax[inlineGallery.ajaxAlbumId]);
    Event.stop(event);
  },

  openGallery: function(event) {
    var key = this;
    $$('select,object').each(function(s){s.hide();});
    $('imgInfoBox').hide();
    $('customContentBefore').hide();
    $('customContentAfter').hide();
    $('inlineGalleryBg').setOpacity(0.8);
    $('inlineGalleryBg').style.height = Position.getPageSize().height + 'px';
    $('inlineGalleryBg').style.width = Position.getPageSize().width + 'px';
    $('inlineGalleryBg').show();
    var galleryOffset = document.viewport.getScrollOffsets().top + document.viewport.getHeight()/20;
    $('inlineGallery').style.top = galleryOffset + 'px';
    $('inlineGallery').show();
    inlineGallery.loadImage(key, true, inlineGallery.galleryArr);
    Event.stop(event);
  },

  loadImage: function(key, opened, imgArr) {
    inlineGallery.imgKey = key;

    if (key == 0 && inlineGallery.ajaxOffset == 0) {
      $('prevImg').hide();
    } else {
      if (!$('prevImg').visible()) {
        $('prevImg').show();
      }
    }

    if (inlineGallery.ajaxOffset > 0) {
      var pos = key+1+inlineGallery.ajaxOffset;
    } else {
      var pos = key+1;
    }
    if (typeof imgArr[key].count != 'undefined') {
      var count = imgArr[key].count;
    } else {
      var count = imgArr.length;
    }

    if (pos == count) {
      $('nextImg').hide();
    } else {
      if (!$('nextImg').visible()) {
        $('nextImg').show();
      }
    }
    inlineGallery.updateNav(key, imgArr);
    $('galleryImg').hide();
    $('imgLoading').show();
    if (typeof imgArr[key].name != 'undefined') {
      $('galleryImg').alt = imgArr[key].name;
      $('galleryImg').title = imgArr[key].name;
      if ($('galleryImg').title != '') {
        $('imgTitle').innerHTML = $('galleryImg').title;
      }
    }

    $('imgPos').innerHTML = pos + ' z ' + count;

		$('galleryImg').src = imgArr[key].link;

    imgPreloader = new Image();
		imgPreloader.onload = function() {
      $('imgLoading').hide();
      $('imgInfoBox').hide();
      var boxHeight = imgPreloader.height + $('imgInfoBox').getHeight();
      $('galleryImg').src = imgArr[key].link;
      /*if (opened) {*/
        $('customContentBefore').morph('width:'+imgPreloader.width+'px;', {duration: 0.4});
        $('customContentAfter').morph('width:'+imgPreloader.width+'px;', {duration: 0.4});
        $('imgOuterBox').morph('height:'+boxHeight+'px;width:'+imgPreloader.width+'px;', {duration: 0.4});
        setTimeout("inlineGallery.showImage(imgPreloader.width, imgPreloader.height)", 400);
      /*} else {
        $('imgOuterBox').style.width = imgPreloader.width + 'px';
        $('imgOuterBox').style.height = boxHeight + 'px';
        inlineGallery.showImage(imgPreloader.width, imgPreloader.height);
      }*/ // uncomment if you want faster move between photos
		}
    imgPreloader.src = imgArr[key].link;
    inlineGallery.preloadImages(key, imgArr);
  },

  showImage: function(w, h) {
    $('imgInnerBox').style.width = w + 'px';
    $('imgInnerBox').style.height = h + 'px';
    var navHeight = h + 10;
    $('galleryNav').style.height = navHeight + 'px';
    $('galleryImg').appear({ duration: 0.3 });
    $('imgInfoBox').appear({ duration: 0.3 });
    if (inlineGallery.contentBefore != '') {
      $('customContentBefore').innerHTML = inlineGallery.contentBefore;
      $('customContentBefore').appear({ duration: 0.3 });
    }
    if (inlineGallery.contentAfter != '') {
      $('customContentAfter').innerHTML = inlineGallery.contentAfter;
      $('customContentAfter').appear({ duration: 0.3 });
    }
  },

  updateNav: function(key, imgArr) {
    if (typeof imgArr[key].count != 'undefined') {
      if (key+inlineGallery.ajaxOffset > 0) {
        $('prevImg').onclick = function(event) {
          if (key == 0 && inlineGallery.ajaxOffset > 0) {
            inlineGallery.imgKey = inlineGallery.ajaxLimit-1;
            inlineGallery.getImagesFromServer(-10);
          } else {
            inlineGallery.imgKey--;
            inlineGallery.loadImage(inlineGallery.imgKey, false, inlineGallery.galleryArrAjax[inlineGallery.ajaxAlbumId]);
          }
          return false;
        }
      }
      if (key+1+inlineGallery.ajaxOffset < imgArr[key].count) {
        $('nextImg').onclick = function(event) {
          if (key == inlineGallery.ajaxLimit-1) {
            inlineGallery.imgKey = 0;
            inlineGallery.getImagesFromServer(10);
          } else {
            inlineGallery.imgKey++;
            inlineGallery.loadImage(inlineGallery.imgKey, false, inlineGallery.galleryArrAjax[inlineGallery.ajaxAlbumId]);
          }
          return false;
        }
      }
    } else {
      if (key > 0) {
        $('prevImg').onclick = function(event) {
          inlineGallery.imgKey--;
          inlineGallery.loadImage(inlineGallery.imgKey, false, imgArr);
          return false;
        }
      }
      if (key < imgArr.length-1) {
        $('nextImg').onclick = function(event) {
          inlineGallery.imgKey++;
          inlineGallery.loadImage(inlineGallery.imgKey, false, imgArr);
          return false;
        }
      }
    }
  },

  preloadImages: function(key, imgArr) {
    if((imgArr.length - 1) > key){
      var preloadNextImage = new Image();
      preloadNextImage.src = imgArr[key + 1][0];
    }
    if(key > 0){
      var preloadPrevImage = new Image();
      preloadPrevImage.src = imgArr[key - 1][0];
    }
  },

  getImagesFromServer: function(offsetChange) {
    inlineGallery.ajaxOffset += offsetChange;
    var ajaxParams = {};
    ajaxParams[inlineGallery.ajaxGalleryIdName] = inlineGallery.ajaxAlbumId;
    ajaxParams[inlineGallery.ajaxLimitName] = inlineGallery.ajaxLimit;
    ajaxParams[inlineGallery.ajaxOffsetName] = inlineGallery.ajaxOffset;
    new Ajax.Request(inlineGallery.ajaxURL, {
      method: 'get',
      parameters: ajaxParams,
      onSuccess: function(transport) {
        inlineGallery.galleryArrAjax[inlineGallery.ajaxAlbumId] = transport.responseText.evalJSON(true);
        inlineGallery.loadImage(inlineGallery.imgKey, false, inlineGallery.galleryArrAjax[inlineGallery.ajaxAlbumId]);
      }
    });
  },

  close: function(event) {
    if (Event.element(event).id == 'inlineGallery' || Event.element(event).id == 'closeImg' || Event.element(event).id == 'inlineGalleryBg') {
      $('inlineGallery').fade({ duration: 0.3 });
      $('inlineGalleryBg').fade({ duration: 0.3 });
      setTimeout("$('imgOuterBox').style.width = '32px'", 300);
      setTimeout("$('imgOuterBox').style.height = '32px'", 300);
      setTimeout("$('imgInnerBox').style.width = 'auto'", 300);
      setTimeout("$('imgInnerBox').style.height = 'auto'", 300);
      inlineGallery.ajaxOffset = 0;
      inlineGallery.ajaxAlbumId = null;
      $$('select,object').each(function(s){s.show();});
    }
  }
}

document.observe("dom:loaded", function() {
  switchArt.delay(7, 2);
});

function switchArt(n) {
  $$('#news-box .news-item').each(function(el, k){
    if (n == k+1 && !$(el).visible()) {
      $(el).appear();
    } else if ($(el).visible()) {
      $(el).fade();
    }
  });
  n++;
  if (n>$$('#news-box .news-item').length) {
    n = 1;
  }
  switchArt.delay(7, n);
}