/************************ DİL ***************************************/

const googleTranslateConfig = {
    lang: "tr",
    domain: "kriosmedical.com"
};


['https://cdn.jsdelivr.net/npm/js-cookie@2/src/js.cookie.min.js','https://translate.google.com/translate_a/element.js?cb=TranslateInit'].forEach(function(src) {
var script = document.createElement('script');
script.src = src;
script.async = true; 
document.head.appendChild(script);
	  if(src.includes("js-cookie")){
		script.onload = function() {
			console.log("cookie loaded");

			/*!***************************************************
			 * google-translate.js v1.0.2
			 * https://Get-Web.Site/
			 * author: L2Banners
			 *****************************************************/
			$(".translation-icons").show();
			// var googtrans = $.cookie('googtrans');
			// console.log("googtrans:"+asd);
			code = TranslateGetCode(); 
			console.log("code --- :"+code);

			/*
			if(code != "tr"){
				var html = $("."+code).html();
				$("#language_select").html(html+" <i class='fa fa-angle-down'></i>");
			}
			*/

		}
	  }	
});	

function TranslateInit() {
    let code = TranslateGetCode();
	console.log("code:"+code);
    if (document.querySelector('[data-google-lang="' + code + '"]') !== null) {
        document.querySelector('[data-google-lang="' + code + '"]').classList.add('language__img_active');
    }

    if (code == googleTranslateConfig.lang) {
        TranslateCookieHandler(null, googleTranslateConfig.domain);
    }

    new google.translate.TranslateElement({
        pageLanguage: googleTranslateConfig.lang,
    });
}

function TranslateGetCode() {
	console.log("Cookies googtrans:"+Cookies.get('googtrans'));
    let lang = (Cookies.get('googtrans') != undefined && Cookies.get('googtrans') != "null") ? Cookies.get('googtrans') : googleTranslateConfig.lang;
    return lang.match(/(?!^\/)[^\/]*$/gm)[0];
}


$('[data-google-lang]').on('click', function (e) {
	console.log("data-google-lang clicked");
	TranslateCookieHandler("/" + googleTranslateConfig.lang + "/" + $(this).data("google-lang"), googleTranslateConfig.domain);

    new google.translate.TranslateElement({
        pageLanguage: googleTranslateConfig.lang,
    });
	console.log("google.translate.TranslateElement");
	
	window.location.reload();
});
	


function TranslateCookieHandler(val, domain) {
	console.log("val:"+val+" domain:"+domain);
    
	Cookies.set('googtrans', val);
	
    Cookies.set("googtrans", val, {
        domain: "." + document.domain,
    });

    if (domain == "undefined") { console.log("lomain undefined"); return;}
    // записываем куки для домена, если он назначен в конфиге
    Cookies.set("googtrans", val, {
        domain: domain,
    });

    Cookies.set("googtrans", val, {
        domain: "." + domain,
    });
}


$(this).bind("contextmenu", function(e) {
	e.preventDefault();
});
var d = (new DOMParser).parseFromString(string, 'text/html');
d.getElementsByTagName('pre')[0].innerHTML = d.getElementsByTagName('pre')[0].innerHTML.replace(/\n/g, '<br/>');
/* arama */
function ada_gore_ara(){
    var kelime = $('#ad_input').val();
    if(kelime != ""){
        location.href="https://www.kriosmedical.com/arama?search="+$('#ad_input').val();
    }else{
        alert("Aranacak kelimeyi girin");
    }    
}

$('#ad_ara_button').on('click', function (e) {
    ada_gore_ara();
});

$('#ad_input').keypress(function (e) {
  if (e.which == 13) {
    ada_gore_ara();
    return false;
  }
});


function removeHighlighting(highlightedElements){
    highlightedElements.each(function(){
        var element = $(this);
        element.replaceWith(element.html());
    })
}

function addHighlighting(element, textToHighlight){
    var text = element.text();
    var highlightedText = '<em>' + textToHighlight + '</em>';
    var newText = text.replace(textToHighlight, highlightedText);
    
    element.html(newText);
}

['https://cdnjs.cloudflare.com/ajax/libs/vue/2.0.1/vue.min.js'].forEach(function(src) {
var script = document.createElement('script');
script.src = src;
script.async = true; 
document.head.appendChild(script);
	  if(src.includes("vue.min")){
		script.onload = function() {
			/*****************************************************/	
            Vue.config.devtools = true;
            Vue.component('card', {
              template: `
                <div class="card-wrap"
                  @mousemove="handleMouseMove"
                  @mouseenter="handleMouseEnter"
                  @mouseleave="handleMouseLeave"
                  ref="card">
                  <div class="card-x"
                    :style="cardStyle">
                    <div class="card-bg" :style="[cardBgTransform, cardBgImage]"></div>
                    <div class="card-info">
                      <slot name="header"></slot>
                      <slot name="content"></slot>
                    </div>
                  </div>
                </div>`,
              mounted() {
                this.width = this.$refs.card.offsetWidth;
                this.height = this.$refs.card.offsetHeight;
              },
              props: ['dataImage'],
              data: () => ({
                width: 0,
                height: 0,
                mouseX: 0,
                mouseY: 0,
                mouseLeaveDelay: null
              }),
              computed: {
                mousePX() {
                  return this.mouseX / this.width;
                },
                mousePY() {
                  return this.mouseY / this.height;
                },
                cardStyle() {
                  const rX = this.mousePX * 30;
                  const rY = this.mousePY * -30;
                  return {
                    transform: `rotateY(${rX}deg) rotateX(${rY}deg)`
                  };
                },
                cardBgTransform() {
                  const tX = this.mousePX * -40;
                  const tY = this.mousePY * -40;
                  return {
                    transform: `translateX(${tX}px) translateY(${tY}px)`
                  }
                },
                cardBgImage() {
                  return {
                    backgroundImage: `url(${this.dataImage})`
                  }
                }
              },
              methods: {
                handleMouseMove(e) {
                  this.mouseX = e.pageX - this.$refs.card.offsetLeft - this.width/2;
                  this.mouseY = e.pageY - this.$refs.card.offsetTop - this.height/2;
                },
                handleMouseEnter() {
                  clearTimeout(this.mouseLeaveDelay);
                },
                handleMouseLeave() {
                  this.mouseLeaveDelay = setTimeout(()=>{
                    this.mouseX = 0;
                    this.mouseY = 0;
                  }, 1000);
                }
              }
            });
            
            const app = new Vue({
              el: '#app'
            });

			/*********************************************/
		}
	  }	
});	






$(document).ready(function() {
  $('.lazyLoad').removeClass('lazyLoad');
});

$(".kullanici-sozlesmesi").find("label").html('<a href="https://www.halarestaurant.co.uk/terms-and-conditions" target="_blank">I agree to the terms and conditions.</a>')
$('.thumb_image_holder_orange > img').hover(function(){
    $(this).parent().toggleClass('hover');
})
/*
 * Translated default messages for the jQuery validation plugin.
 * Locale: TR (Turkish; Türkçe)
 */
 
var today = new Date();

$.extend($.validator.messages, {
    required: "This field is required.",
    remote: "Please fix this field.",
    email: "Please enter a valid email address.",
    url: "Please enter a valid URL.",
    date: "Please enter a valid date.",
    dateISO: "Please enter a valid date (ISO).",
    number: "Please enter a valid number.",
    digits: "Please enter only digits.",
    creditcard: "Please enter a valid credit card number.",
    equalTo: "Please enter the same value again.",
    accept: "Please enter a value with a valid extension.",
    maxlength: jQuery.validator.format("Please enter no more than {0} characters."),
    minlength: jQuery.validator.format("Please enter at least {0} characters."),
    rangelength: jQuery.validator.format("Please enter a value between {0} and {1} characters long."),
    range: jQuery.validator.format("Please enter a value between {0} and {1}."),
    max: jQuery.validator.format("Please enter a value less than or equal to {0}."),
    min: jQuery.validator.format("Please enter a value greater than or equal to {0}.")
});



/*
Circle Slider
*/
if ($.isFunction($.fn.flipshow)) {
	var circleContainer = $('#fcSlideshow');

	if (circleContainer.get(0)) {
		circleContainer.flipshow();

		setTimeout(function circleFlip() {
			circleContainer.data().flipshow._navigate(circleContainer.find('div.fc-right span:first'), 'right');
			setTimeout(circleFlip, 3000);
		}, 3000);
	}
}
