
/**
 * Formularovy prvek input v indexSearch pluginu
 */ 
function inputIndexSearch() {
    var cont = $('vyhledavani');
    
    if(cont === null)
        return;
    
    var lang = new Array('cz','en');
    
    var element = cont.getElement('input[type=text]');
    var elementBtn = cont.getElement('input[class=tlacitko]');
    var values = new Array('Hledat', 'Search');
    setFormElementValue(element, values, lang); 
    setFormElementValue(elementBtn, values, lang); 
                      
}



/**
 * Nastaveni formularovemu elementu hodnotu
 */ 
function setFormElementValue(element, values, lang) {    
    var value = getValue(values, lang);

    element.set('value', value); 

    element.addEvent('click', function(event) {
        value = getValue(values, lang);
        if(this.get('value') == value)
            this.set('value', '');
    });
    
    element.addEvent('blur', function(event) {
        value = getValue(values, lang);
        if(this.get('value') == '')
            this.set('value', value);
    });                   
}


/**
 * Hodnota pro formularovy prvek
 */ 
function getValue(values, lang) {
    var reg = /\/(en|de|pl|ru|sk|fr|sp|es|hr|hu|ro|cz|cs)((\/.*)|($))/;
    
    if(location.pathname.search(reg) == 0)
        var langParam = location.pathname.substr(1, 2);    
    else 
        var langParam = null;
    
    if(langParam === null)
        value = values[0];
    else
        value = values[lang.indexOf(langParam)];    
    
    return value;   
}
/**
 * strřídání barvy radku u tabulky
 */
 function changeColorRow (obj, child, cl) {

  
  if (obj) {
    var child = obj.getChildren(child);
    
    child.each(function (ch) {
    var i=0;
      ch.each(function (e) {
        var td =  e.getChildren('td');
        var nadpis = td.get('colspan');
        
        if (nadpis.length > 1) { 
        
          if (i%2) {
          e.set('class', cl);
          }
          i++;
        } else {
          e.set('class', 'nadpis');
          td.set("style", "border-left: 0;")
        }
      });
    }); 
     
  }
 } 
/**
 * nastaveni klikaciho bloku 
 */
 function addClick(obj) {
   if (obj) {
    obj.each(function(e) {
      //console.log(e);
      
        var link = $(e).getFirst('a');
        //var target $(e).getFirst('a').get('target');
      if (link) {
        var target = link.target;
        if (target == '_blank') {
        
          $(e).addEvent('click', function() {
              window.open(link.href);
              
            });
           link.addEvent('click', function() {
                window.open(link.href);
                return false;
              
            });
        } else {
          //console.log(link);
          $(e).addEvent('click', function() {
            window.location.href=link.href;
          });
        }
      }
    });
   }
 } 
/**
 * plynuly přechod na kotvu  a spusteni funkci
 */ 





window.addEvent('domready', function() {
    inputIndexSearch(); 
    var mySmoothScroll = new Fx.SmoothScroll({
    links: '.nahoru',
    wheelStops: false
    });
    changeColorRow ($$('.vypis tbody'),'tr', 'tmava');
    addClick($$(".baner"));

});


/*** 
 * uvodni stranka rozcestnik z budovami **
 */
window.addEvent('domready', function() {
        var src = new Array();
        var imgc = 1;
        $$('.uvod_rozcestnik td').each(function(e) {
        var imgObj = $(e).getFirst('img');
        if (!imgObj) {
           var tob = $(e).getFirst('h3');
           var imgObj = tob.getFirst('img');
        };
        var link = $(e).getFirst('p a');
        //console.log(link);
        $(e).addEvent('click', function() {
          window.location.href=link.href;
        });
        if (imgObj) {
            imgObj.set('id', 'imgr'+(imgc++));
           
            src[imgObj.get('id')] = imgObj.src;
            // 
            if(Browser.ie){
                grayscaleImageIE(imgObj);
            } else {
                /*imgObj.addEvent('onload', function() {
                  imgObj.src = grayscaleImage(imgObj); 
                }); */
                Asset.image(imgObj.src, {
                    
                    onLoad: function () {
                      imgObj.src = grayscaleImage(imgObj);
                    }
                });
                
            }
                   
         
            e.addEvent('mouseout', function(e) {
                imgObj = this.getFirst('img');
                
                if(Browser.ie){
                    grayscaleImageIE(imgObj);
                } else {
                   imgObj.src = grayscaleImage(imgObj); 
                }           
            }); 
            e.addEvent('mouseover', function() {
              //alert(src);
                //var imgObj = document.getElementById('test');
                 imgObj = this.getFirst('img');
                if(Browser.ie){
                    imgObj.style.filter = '';
                } else {
                  imgObj.src = src[imgObj.get('id')];
                } 
                        
            });  
        } 
      });
      //console.log(src);
    });
    
    function grayscaleImageIE(imgObj)
    {
        imgObj.style.filter = 'progid:DXImageTransform.Microsoft.BasicImage(grayScale=1)';
    }

    function grayscaleImage(imgObj)
    {
        var canvas = document.createElement('canvas');
        var canvasContext = canvas.getContext('2d');
        
        var imgW = imgObj.width;
        var imgH = imgObj.height;
        canvas.width = imgW;
        canvas.height = imgH;
        
        canvasContext.drawImage(imgObj, 0, 0);
        var imgPixels = canvasContext.getImageData(0, 0, imgW, imgH);
        
        for(var y = 0; y < imgPixels.height; y++){
            for(var x = 0; x < imgPixels.width; x++){
                var i = (y * 4) * imgPixels.width + x * 4;
                var avg = (imgPixels.data[i] + imgPixels.data[i + 1] + imgPixels.data[i + 2]) / 3;
                imgPixels.data[i] = avg; 
                imgPixels.data[i + 1] = avg; 
                imgPixels.data[i + 2] = avg;
            }
        }
        
        canvasContext.putImageData(imgPixels, 0, 0, 0, 0, imgPixels.width, imgPixels.height);
        //console.log(canvas);
        return canvas.toDataURL();
    }
