var popup = {};
var language;
 
window.addEvent('domready', function() {
  // Kieli
  var container = $('container');
  
  if(container.hasClass('fi')) {
    language = 'fi';
  }
  else if(container.hasClass('en')) {
    language = 'en';
  }
  else if(container.hasClass('ru')) {
    language = 'ru';
  }
 
  
  // Hakuinputit
  var search_term = {
    'fi': 'Haku',
    'en': 'Search',
    'ru': '?????'
  };
  
  $('dig_query').addEvents({
    'focus': function() {
      if(this.value == search_term[language]) {
        this.default_value = this.value;
        
        this.value = '';
      }
    },
    'blur': function() {
      if(this.value.length == 0 && this.default_value) {
        this.value = this.default_value;
      }
    }
  });
  
  
  // Tabit
  $$('ul.tabs').each(function(ul) {
    var lis = ul.getElements('li');
    
    lis.addEvent('click', function() {
      lis.removeClass('selected');
      this.addClass('selected');
      
      lis.each(function(li) {
        $$(li.get('rel')).setStyle('display', 'none');
      });
      
      $$(this.get('rel')).setStyle('display', 'block');
    });
    
    lis[0].fireEvent('click');
  });
  
  
  
 
 
  
  // Kuvatabit
  var images_term = {
    'fi': 'Kuvat',
    'en': 'Images',
    'ru': 'Изображение'
  };
  
    $$('.tabbed-images').each(function(images) {
  
  		var exists = $('slides');
  		
  		if(exists) {
  		
       var mySlideShow;
        mySlideShow = new SlideShow('slides',{
        delay: 6500, 
        transition: 'fade', 
        duration: 1000,
        autoplay: false 
    });
       var mySlideShow2;
        mySlideShow2 = new SlideShow('slides2',{
        delay: 6500, 
        transition: 'fade', 
        duration: 1000,
        autoplay: false 
    });
  	
  		}
  		
  
      images.addEvent('click', function(e) {
      var e = new Event(e);
      if(e.target.get('tag') == 'a') {
          var numba = e.target.get('class');
          
          if (numba == 'nextSlide') {
          mySlideShow.show('next');
          mySlideShow2.show('next');
          }
        if (numba == 'previousSlide') {
          mySlideShow.show('previous');
          mySlideShow2.show('previous');
          }
    
      }
    });
    
  
    var imgs = images.getElements('img').setStyle('display', 'none');
    
    if(imgs.length > 1) {
    
    var selector = new Element('p', {'class': 'image-selector', 'html': '<span>'+images_term[language]+':</span>'}).inject(images);
    
    var a = new Element('a', {text: '', 'class': 'previousSlide'}).inject(selector);
    var b = new Element('a', {text: '', 'class': 'nextSlide'}).inject(selector);
    var b = new Element('div', {'class': 'clear'}).inject(selector);
    }
    
    if(imgs.length > 0) {
      imgs[0].setStyle('display', 'inline');
      new Element('p', {'class': 'zoom'}).inject(images);
    }
  });
  
  
  // Kuvapopupit
  close_image_term = {
    'fi': 'Sulje kuva',
    'en': 'Close image',
    'ru': 'Close image'
  };
  
  popup.dim = new Element('div', {id: 'popup-dim'}).inject(document.body);
  popup.overlay = new Element('div', {id: 'popup-overlay'}).inject(document.body);
  popup.close = new Element('a', {text: close_image_term[language], 'class': 'close'}).inject(popup.overlay);
  popup.image = new Element('img').inject(popup.overlay);
  
  var hidePopups = function() {
    popup.dim.setStyle('display', 'none');
    popup.overlay.setStyle('display', 'none');
  };
  
  popup.dim.addEvent('click', function() { hidePopups(); });
  popup.close.addEvent('click', function() { hidePopups(); });
  
  
 
  // Huoneistoesittelyn ajaxit
  var apartmentInfoRequestUrl = {
    'fi': '/asunnot/uuteen_kotiin/huoneisto_ajax_info',
    'en': '/housing/new_home/flat_ajax_info',
    'ru': '/ru_housing/ru_new_home/ru_new_home_object/ru_flat_ajax_info'
  };
  
  var apartmentInfoRequest = new Request.HTML({
    url: apartmentInfoRequestUrl[language],
    onComplete: function(response) {
      $('info-huoneisto').empty().adopt(response);
    }
  });
  
  
  var apartmentImagesRequestUrl = {
    'fi': '/asunnot/uuteen_kotiin/huoneisto_ajax_images',
    'en': '/asunnot/uuteen_kotiin/huoneisto_ajax_images',
    'ru': '/ru_housing/ru_new_home/ru_new_home_object/ru_flat_ajax_images'
  };
  
  var apartmentImagesRequest = new Request.HTML({
    url: apartmentImagesRequestUrl[language],
    onComplete: function(response) {
      var images = $('apartment-images').empty().adopt(response);
      
      images.addEvent('click', function(e) {
      var e = new Event(e);
      
      if(e.target.get('tag') == 'a') {
        this.getElements('a.selected').removeClass('selected');
        e.target.addClass('selected');
        
        var imgs = this.getElements('img').setStyle('display', 'none');
        var new_img = imgs[e.target.get('text').toInt() - 1];
        
        new_img.setStyle('display', 'inline');
      }
   	 });
      
      var imgs = images.getElements('img').setStyle('display', 'none');
      imgs[0].setStyle('display', 'inline');
      
      var selector = new Element('p', {'class': 'image-selector', 'html': '<span>'+images_term[language]+':</span>'}).inject(images);
      
      for(i = 1; i <= imgs.length; i++) {
        var a = new Element('a', {text: i}).inject(selector);
        if(i == 1) {
          a.addClass('selected');
        }
      }
      
      new Element('p', {'class': 'zoom'}).inject(images);
    }
  });
  
  var trs = $$('#apartment-ajax-list tr');
  
  trs.each(function(tr) {
    tr.addEvent('click', function() {
      if(this.get('rel') && !this.hasClass('disabled')) {
        $('apartment-images-tab').setStyle('display', 'block').fireEvent('click');
        
        apartmentInfoRequest.get({id: this.get('rel')});
        apartmentImagesRequest.get({id: this.get('rel')});
        
        trs.removeClass('selected');
        this.addClass('selected');
      }
    });
    
    if(tr.hasClass('selected')) {
      tr.fireEvent('click');
    }
  });
  
  
  
  
  // Huoneistojen haku
  var flat_search_types = $$('.flat-search-type a');
  
  var header = $('header');
  
  if(flat_search_types.length == 2) {
    flat_search_types.addEvent('click', function() {
      flat_search_types.removeClass('selected');
      this.addClass('selected');
      
      if(this.hasClass('opt2')) {
        header.morph({height: 220});
        (function() {
          $('huoneistot-additional').setStyle('display', 'block');
        }).delay(250);
      }
      else {
        header.morph({height: 163});
        $('huoneistot-additional').setStyle('display', 'none');
      }
    });
    
    
    var help = $('hakuohjeet').inject(document.body);
    help.fx = new Fx.Morph(help);
    help.fx.set({opacity: 0});
    
    $('show-help').addEvent('click', function(e) {
      help.setStyle('top', e.client.y + 40);
      help.fx.start({opacity: 1});
    });
    help.getElement('.close').addEvent('click', function() {
      help.fx.start({opacity: 0});
    });
  }
  
  
  // Kuvien zoom-ikoni
  
  $$('img.zoom-icon').each(function(img) {
    var wrapper = new Element('div', {'class': 'zoom-wrapper'}).wraps(img);
    new Element('p', {'class': 'zoom'}).inject(wrapper);
  });


  
  
  // IE6-fixit
  
});
 
function imgPopup(url) {
  popup.dim.setStyle('display', 'block');
  popup.overlay.setStyle('display', 'block');
  
  popup.image = new Element('img', {src: url}).replaces(popup.image);
  
  return false;
}
 
 
 
// Cufon
 
Cufon.set('forceHitArea', true);
 
Cufon.replace('.fi #header h1');
Cufon.replace('.en #header h1');
 
Cufon.replace('.helper-subpage.fi #content .text h1, .fi #hakuohjeet h1');
Cufon.replace('.helper-subpage.en #content .text h1, .en #hakuohjeet h1');
