// if (DOM ready)
domReady(function() {
  
// Function for "maker" template -> show text    
if(id("more_info")) {
  id("more_info").onclick = function(){
    hide(id("more_info"));
    hide(id("watch_maker_description"));
    id("watch_maker_description").style.height = "auto";
    id("watch_maker_description").style.overflow = "auto";
    show(id("watch_maker_description"));
  }
}  
  
// Function for "watch_detail" template -> images slider  
if(id("detail_control")) {  
  var controls = tag("a", id("detail_control"));
  for(var i = 0; i < controls.length; i++) {
    controls[i].onclick = function() {
      if(!(hasClass(this, "act"))){
        var new_x = (this.innerHTML -1) * (-313);
        hide(id("detail_slider"));        
        setX(id("detail_slider"), new_x);
        fadeIn(id("detail_slider"));
        removeClass(className("act", id("detail_control"))[0], "act");
        addClass(this, "act");
      }
      return false;
    }
  }
}

// Function for "partners" template -> map-region switch 
if(id("map_dealers")) {
  var set_select = {"map_hover map_jihocesky-kraj": 4, "map_hover map_plzensky-kraj": 5, "map_hover map_karlovarsky-kraj": 6, "map_hover map_ustecky-kraj": 7, "map_hover map_liberecky-kraj": 8, "map_hover map_kralovehradecky-kraj": 9, "map_hover map_pardubicky-kraj": 10, "map_hover map_olomoucky-kraj": 13, "map_hover map_moravskoslezsky-kraj": 14, "map_hover map_zlinsky-kraj": 15, "map_hover map_jihomoravsky-kraj": 12, "map_hover map_kraj-vysocina": 11, "map_hover map_stredocesky-kraj": 3, "map_hover map_hlavni-mesto-praha": 2, "map_hover map_bratislavsky_kraj": 17, "map_hover map_trnavsky_kraj": 18, "map_hover map_nitriansky_kraj": 19, "map_hover map_trenciansky_kraj": 20, "map_hover map_banskobystricky_kraj": 21, "map_hover map_zilinsky_kraj": 22, "map_hover map_kosicky_kraj": 23, "map_hover map_presovsky_kraj": 24};	
  var get_select = {1703: "map_hover map_jihocesky-kraj", 1704: "map_hover map_plzensky-kraj", 1705: "map_hover map_karlovarsky-kraj", 1706: "map_hover map_ustecky-kraj", 1707: "map_hover map_liberecky-kraj", 1708: "map_hover map_kralovehradecky-kraj", 1709: "map_hover map_pardubicky-kraj", 1712: "map_hover map_olomoucky-kraj", 1713: "map_hover map_moravskoslezsky-kraj", 1714: "map_hover map_zlinsky-kraj", 1711: "map_hover map_jihomoravsky-kraj", 1710: "map_hover map_kraj-vysocina", 1702: "map_hover map_stredocesky-kraj", 1701: "map_hover map_hlavni-mesto-praha", 0: "map_hover map_def", 1801: "map_hover map_bratislavsky_kraj", 1802: "map_hover map_trnavsky_kraj", 1803: "map_hover map_nitriansky_kraj", 1804: "map_hover map_trenciansky_kraj", 1805: "map_hover map_banskobystricky_kraj", 1806: "map_hover map_zilinsky_kraj", 1807: "map_hover map_kosicky_kraj", 1808: "map_hover map_presovsky_kraj"};
  var areas = tag("area", id("map_dealers"));
  for(var i = 0; i < areas.length; i++) {
    areas[i].onmouseover = function(i) {
      	if(this.id == "map_stredocesky-kraj") { 
          show(id("js_prague"));
          } else {
          hide(id("js_prague"));
        }       	   
        id("js_hover").className = "map_hover " + this.id;
      	
		id("js_hover").onclick = function () { 
			id("js_click").className = id("js_hover").className;
			id("f_region").options[set_select[id("js_click").className]].selected = true;
		}
		if(this.className == "map_outer") {
			this.onclick = function(){
				id("js_click").className = "map_hover map_def";
				id("f_region").options[0].selected = true;
			}
		}
    }
  }
  id("f_region").onchange = function() {
    if(this.value == 0){ 
      var country_num = country_visible_id;
    } else {
      var country_num = this.value.substr(0,2) - 17;
    }      
    if(country_visible_id != country_num){
      if(country_num == 1){
        move_map_slider(id("map_slider"), 1);
        country_visible_id = 1;
        hide(id("map_button_sk"));
        show(id("map_button_cz"));
        show(id("slovenska-republika"));
        hide(id("ceska-republika"));          
		     
      } else {
        move_map_slider(id("map_slider"), -1);
        country_visible_id = 0;
        show(id("map_button_sk"));
        hide(id("map_button_cz")); 
        show(id("ceska-republika")); 	
        hide(id("slovenska-republika"));	              
      }    
    }
	  id("js_click").className = get_select[this.value];
  }
  
  if(id("root_ceska-republika"))
  id("root_ceska-republika").onclick = function() {
  if(country_visible_id == 1){
    hide(id("map_button_cz"));
    show(id("map_button_sk"));
    move_map_slider(id("map_slider"), -1);
    country_visible_id = 0;
    id("js_click").className = "map_hover map_def";
		id("f_region").options[1].selected = true;
    if(id("ceska-republika"))	
      show(id("ceska-republika"));
    if(id("slovenska-republika"))	
      hide(id("slovenska-republika"));
  }
  return false;      
  }
  if(id("root_slovenska-republika"))id("root_slovenska-republika").onclick = function() {
  if(country_visible_id == 0){  
    hide(id("map_button_sk"));
    show(id("map_button_cz"));
    move_map_slider(id("map_slider"), 1);
    country_visible_id = 1;
    id("js_click").className = "map_hover map_def";
		id("f_region").options[16].selected = true;
    if(id("ceska-republika"))	
      hide(id("ceska-republika"));
    if(id("slovenska-republika"))	
      show(id("slovenska-republika"));
  }
  return false;
  }  
  
  
  id("js_prague").onmouseover = function() {
    id("js_hover").className = "map_hover map_hlavni-mesto-praha";
  }
  id("js_prague").onclick = function() {
    id("js_click").className = "map_hover map_hlavni-mesto-praha";
    id("f_region").options[set_select[id("js_click").className]].selected = true;
  } 
  id("js_click").onmouseover = function() {
    if(this.className == "map_hover map_stredocesky-kraj" ) {
      show(id("js_prague"));    
    } else {
      hide(id("js_prague")); 
    }
  } 
}

if(id("map_dealers_sk")) {
  show(id("map_button_sk"));
  
  id("map_button_sk").onclick = function(){
   if(country_visible_id == 0){
    hide(id("map_button_sk"));
    show(id("map_button_cz"));
    move_map_slider(id("map_slider"), 1);
    country_visible_id = 1;
    id("js_click").className = "map_hover map_def";
		id("f_region").options[0].selected = true;
    if(id("ceska-republika"))	
      hide(id("ceska-republika"));
    if(id("slovenska-republika"))	
      show(id("slovenska-republika"));
    }
  };
  
  
  id("map_button_cz").onclick = function(){
    if(country_visible_id == 1){
    hide(id("map_button_cz"));
    show(id("map_button_sk"));
    move_map_slider(id("map_slider"), -1);
    country_visible_id = 0;
    id("js_click").className = "map_hover map_def";
		id("f_region").options[0].selected = true;
    if(id("ceska-republika"))	
      show(id("ceska-republika"));
    if(id("slovenska-republika"))	
      hide(id("slovenska-republika"));   
    }
  }

  var areas_sk = tag("area", id("map_dealers_sk"));
  for(var i = 0; i < areas_sk.length; i++) {
    areas_sk[i].onmouseover = function(i) {
      id("js_hover").className = "map_hover " + this.id;
		  id("js_hover").onclick = function () { 
			id("js_click").className = id("js_hover").className;
			id("f_region").options[set_select[id("js_click").className]].selected = true;
		}
		if(this.className == "map_outer") {
			this.onclick = function(){
				id("js_click").className = "map_hover map_def";
				id("f_region").options[0].selected = true;
			}
		}
    }
  }  
  
  if(country_visible_id == 0){ 
    hide(id("slovenska-republika"));
  } else if (country_visible_id == 1) {
    hide(id("ceska-republika"));
    addX(id("map_slider"), -447);
  	id("f_region").options[0].selected = true;  
    hide(id("map_button_sk"));
    show(id("map_button_cz"));	  
  }

}

if(id("search_dealer_box")){
 if(country_visible_id == 0){
    hide(id("slovenska-republika"));
 } else if(country_visible_id == 1) {
    hide(id("ceska-republika"));      
 }
}


// Functions for "watch_maker" template -> top products slider

// show right control 
if(id("tp_slider")) {
  if(tag("div", id("tp_slider")).length > 4) show_tp_control("right"); 

id("slider_right").onclick = move_tp_slider;
id("slider_double_right").onclick = move_tp_slider;
id("slider_left").onclick = move_tp_slider;
id("slider_double_left").onclick = move_tp_slider;
}
  
  
});


function hide_tp_control(type){
  hide(id('slider_'+type));
  hide(id('slider_double_'+type));  
}
function show_tp_control(type){
  show(id('slider_'+type));
  show(id('slider_double_'+type));
}

var slider_x = 0;
var new_slider_x;
var tp_busy = false;

var move_tp_slider = function(){
  if(tp_busy == false) {
    tp_busy = true;
    var slider = id("tp_slider");
    var count_slider_items = tag("div", slider).length;
    var limit_right = count_slider_items * (-163) + (3*163); // platí pro 4 viditelné záznamy 
    var limit_left = 163;
    var way = this.id;
    
    if(way == 'slider_right') {
      new_slider_x = slider_x - 163;
      if(new_slider_x == limit_right) {
        new_slider_x = limit_right + 163 ;
        hide_tp_control('right');
      } 
      else if(new_slider_x == limit_right+163) {
        hide_tp_control('right'); 
      } 
      show_tp_control('left');
      slider_x =  new_slider_x;
      move_slider(slider, 1);
	} 
    else if(way == 'slider_left') {
      new_slider_x = slider_x + 163;
      if(new_slider_x == limit_left) {
        new_slider_x = limit_left - 163 ;
        hide_tp_control('left');
      } 
      else if(new_slider_x == limit_left-163) {
        hide_tp_control('left'); 
      }   
      show_tp_control('right');    
      slider_x =  new_slider_x;
      move_slider(slider, -1);
    } 
    else if(way == 'slider_double_right') {
      new_slider_x = slider_x - 652;
      if(new_slider_x == limit_right-326) {
        move_slider(slider, 1);
        hide_tp_control('right');      
        slider_x =  limit_right + 163;
        show_tp_control('left');
      }
      else if(new_slider_x == limit_right-163) {
        move_slider(slider, 2);
        hide_tp_control('right');      
        slider_x =  limit_right + 163;
      }    
      else if(new_slider_x == limit_right) {
        move_slider(slider, 3);
        hide_tp_control('right');      
        slider_x =  limit_right + 163;
      }        
      else if(new_slider_x == limit_right+163) {
        move_slider(slider, 4);
        hide_tp_control('right');      
        slider_x =  limit_right + 163;
      }
      else {
        slider_x =  new_slider_x;
        move_slider(slider, 4);
        show_tp_control('left');
      }
    } 
    else if(way == 'slider_double_left') {
      new_slider_x = slider_x + 652;
      if(new_slider_x == limit_left+326) {
        move_slider(slider, -1);
        hide_tp_control('left');      
        slider_x =  limit_left - 163;
        show_tp_control('right');        
      }
      else if(new_slider_x == limit_left+163) {
        move_slider(slider, -2);
        hide_tp_control('left');      
        slider_x =  limit_left - 163;
      }    
      else if(new_slider_x == limit_left) {
        move_slider(slider, -3);
        hide_tp_control('left');      
        slider_x =  limit_left - 163;
      }        
      else if(new_slider_x == limit_left-163) {
        move_slider(slider, -4);
        hide_tp_control('left');      
        slider_x =  limit_left - 163;
      }
      else {
        slider_x =  new_slider_x;
        move_slider(slider, -4);
        show_tp_control('right');
      }  
    } 
    else {
      return false;
    }  
    tp_busy = false;
  }  
}


// ** Product Top SLIDER - Hibernia ** // 

function move_slider(element, num) { // num = počet oken; +- určuje směr
  var correction = num * 3 ;
  var iteration = num * 2
  for(var i = 0; i <= 82; i += 1) {
    (function(){
      var position = i; 
      setTimeout(function(){
        addX(element, -iteration);
      }, (position + 1) * 8);
    })();
  }
  addX(element, correction);  
}

// ** Partners Map SLIDER - Hibernia ** // 

var country_visible_id = 0;

function move_map_slider(element, num) { 
  var correction = num * -5 ;
  var iteration = 17 * num;
  for(var i = 0; i <= 25; i += 1) {
    (function(){
      var position = i; 
      setTimeout(function(){
        addX(element, -iteration);
      }, (position + 1) * 8);
    })();
  }
  addX(element, correction);  
}



// picWin by James
function picWin(){var url=(typeof(arguments[0])=="string")?arguments[0]:"URL_MISSING";var width=arguments[1] || 100;var height=arguments[2] || 100;var title=arguments[3] || "";var winParams=arguments[4] || "";var closeTitle=(document.lang=="cs")?"Kliknutím zavřete okno":"Click to close the window";var encoding="iso-8859-2";if(typeof(arguments[0])=="object"){var assign=function(data){var vars=["url","width","height","title","winParams","closeTitle","encoding"];var vl=vars.length;for(var i=0;i<vl;i++)if(!isUndefined(data[vars[i]]))eval(vars[i]+"=data."+vars[i]);};assign(arguments[0]);}var win=window.open("about:blank","","width="+width+",height="+height+((winParams=="")?"":(","+winParams)));if(typeof(win)!="object")return true;var html='<html><head><title>'+title+'</title><meta http-equiv="content-type" content="text/html; charset='+encoding+'"></head><body style="margin:0"><img src="'+url+'" style="cursor:pointer;display:block;" width="'+width+'" height="'+height+'" alt="'+title+'" title="'+closeTitle+'"></body></html>';win.document.open();win.document.write(html);win.document.onclick=function(){win.close();};win.document.close();win.focus();return false;}


