var bellekListe = new Array;
var toBulten = null;
var toMesaj = null;

function B_(s) {
	var o = bellekListe[s];
	if (o == undefined) {
		o = $(s);
		bellekListe[s] = o;
	}
	return o;
}

xSetTimeout = function(fRef, mDelay) {
	if(typeof fRef == "function") {
		var argu = Array.prototype.slice.call(arguments,2);
		var f = (function(){ fRef.apply(null, argu); });
		return setTimeout(f, mDelay);
	}
	return setTimeout(fRef,mDelay);
}

$(function() {
	B_("form#bulten").submit(function() {
		return bulten();
	});
	B_("form#mesaj").submit(function() {
		return mesaj();
	});
	B_("#s3slider").s3Slider({ timeOut: 6000 });
	B_("div.menu_madde").mouseover(function() { $(this).addClass("menu_madde_sec"); });
	B_("div.menu_madde").mouseout(function() { $(this).removeClass("menu_madde_sec"); });
});

function vekil(param, callback) {
	$.ajax({
		cache: false,
		data: param,
		dataType: "json",
		type: "POST",
		url: "ws",
		success: function(data, textStatus) {
			callback(data);
		},
		error: function (XMLHttpRequest, textStatus, errorThrown) {
			var data = {stat: "nok", text: "İletişim hatası!"};
			callback(data);
		}
	});
}

function bulten() {
	var eposta = B_("input#txt_eposta").val();
	if (eposta == "") {
		B_("input#txt_eposta").focus();
		return false;
	}
	B_("img#bulten_yuk").show();
	B_("input#bulten_tmm").attr("disabled", "disabled");
	xSetTimeout(function() { vekil({'fn':'bulten','eposta':eposta}, function(data) {
		B_("img#bulten_yuk").hide();
		B_("input#bulten_tmm").removeAttr("disabled");
		if (data.stat == "ok") {
			B_("div#bulten_sonuc").html("E-Posta adresiniz başarıyla eklendi.");
		} else {
			B_("div#bulten_sonuc").html(data.text);
		}
		B_("div#bulten_sonuc").show();
		if (toBulten != null) {
			clearTimeout(toBulten);
		}
		toBulten = xSetTimeout(function() { B_("div#bulten_sonuc").fadeOut(2000); }, 8000);
	})}, 1000);
	return false;
}

function mesaj() {
	var ad = B_("input#mesaj_ad").val();
	var tel = B_("input#mesaj_tel").val();
	var eposta = B_("input#mesaj_eposta").val();
	var metin = B_("textarea#mesaj_metin").val();
	if (ad == "") {
		B_("input#mesaj_ad").focus();
		return false;
	} else if (tel == "") {
		B_("input#mesaj_tel").focus();
		return false;
	} else if (eposta == "") {
		B_("input#mesaj_eposta").focus();
		return false;
	} else if (metin == "") {
		B_("textarea#mesaj_metin").focus();
		return false;
	}
	B_("img#mesaj_yuk").show();
	B_("input#mesaj_tmm").attr("disabled", "disabled");
	xSetTimeout(function() { vekil({'fn':'mesaj','ad':ad,'tel':tel,'eposta':eposta,'metin':metin}, function(data) {
		B_("img#mesaj_yuk").hide();
		B_("input#mesaj_tmm").removeAttr("disabled");
		if (data.stat == "ok") {
			B_("div#mesaj_sonuc").html("Mesajınız başarıyla iletildi. En kısa sürede size dönüş yapacağız.");
		} else {
			B_("div#mesaj_sonuc").html(data.text);
		}
		B_("div#mesaj_sonuc").show();
		if (toMesaj != null) {
			clearTimeout(toMesaj);
		}
		toMesaj = xSetTimeout(function() { B_("div#mesaj_sonuc").fadeOut(2000); }, 8000);
	})}, 1000);
	return false;
}

function haritaGoster() {
	var nokta = new google.maps.LatLng(40.96663,29.067482);
	var ayar = {zoom: 15, center: nokta, mapTypeId: google.maps.MapTypeId.ROADMAP};
	var harita = new google.maps.Map(document.getElementById("harita"), ayar);
	var isaret = new google.maps.Marker({position: nokta, map: harita, title: "Cadde Pilates Studio"});
	var balonHtml = "<div><b>Cadde Pilates Studio</b></div><div style=\"margin-top: 10px\"><a href=\"http://www.caddepilates.com\">www.caddepilates.com</a></div>";
	var balon = new google.maps.InfoWindow({content: balonHtml});
	google.maps.event.addListener(isaret, "click", function() {
		balon.open(harita, isaret);
	});
	balon.open(harita, isaret);
}

function fotoGoster() {
	var ayar = {
		imageLoading:  "img/lightbox-ico-loading.gif",
		imageBtnPrev:  "img/lightbox-btn-prev.gif",
		imageBtnNext:  "img/lightbox-btn-next.gif",
		imageBtnClose: "img/lightbox-btn-close.gif",
		imageBlank:    "img/lightbox-blank.gif",
		txtImage:      "Cadde Pilates Studio Fotoğraf",
		txtOf:         "/"
	};
	$("div.foto a").lightBox(ayar);
}

function ilan() {
	if (B_("div#ilan_detay").is(":visible")) {
		B_("div#ilan_detay").fadeOut(500);
	} else {
		B_("div#ilan_detay").fadeIn(1000);
	}
	return false;
}
/* ------------------------------------------------------------------------
s3Slider

Developped By: Boban Karišik -> http://www.serie3.info/
    CSS Help: Mészáros Róbert -> http://www.perspectived.com/
Version: 1.0

Copyright: Feel free to redistribute the script/modify it, as
		   long as you leave my infos at the top.
------------------------------------------------------------------------- */
(function($){  
$.fn.s3Slider = function(vars) {       
    var element     = this;
    var timeOut     = (vars.timeOut != undefined) ? vars.timeOut : 4000;
    var current     = null;
    var timeOutFn   = null;
    var faderStat   = true;
    var mOver       = false;
    var items       = $("#" + element[0].id + "Content ." + element[0].id + "Image");
    var itemsSpan   = $("#" + element[0].id + "Content ." + element[0].id + "Image span");
    /*items.each(function(i) {
        $(items[i]).mouseover(function() {
           mOver = true;
        });
        $(items[i]).mouseout(function() {
            mOver   = false;
            fadeElement(true);
        });
    });*/
    var fadeElement = function(isMouseOut) {
        var thisTimeOut = (isMouseOut) ? (timeOut/2) : timeOut;
        thisTimeOut = (faderStat) ? 10 : thisTimeOut;
        if(items.length > 0) {
            timeOutFn = setTimeout(makeSlider, thisTimeOut);
        } else {
            console.log("Poof..");
        }
    }
    var makeSlider = function() {
        current = (current != null) ? current : items[(items.length-1)];
        var currNo      = jQuery.inArray(current, items) + 1
        currNo = (currNo == items.length) ? 0 : (currNo - 1);
        var newMargin   = $(element).width() * currNo;
        if(faderStat == true) {
            if(!mOver) {
                $(items[currNo]).fadeIn((timeOut/6), function() {
                    if($(itemsSpan[currNo]).css('bottom') == 0) {
                        $(itemsSpan[currNo]).slideUp((timeOut/6), function() {
                            faderStat = false;
                            current = items[currNo];
                            if(!mOver) {
                                fadeElement(false);
                            }
                        });
                    } else {
                        $(itemsSpan[currNo]).slideDown((timeOut/6), function() {
                            faderStat = false;
                            current = items[currNo];
                            if(!mOver) {
                                fadeElement(false);
                            }
                        });
                    }
                });
            }
        } else {
            if(!mOver) {
                if($(itemsSpan[currNo]).css('bottom') == 0) {
                    $(itemsSpan[currNo]).slideDown((timeOut/6), function() {
                        $(items[currNo]).fadeOut((timeOut/6), function() {
                            faderStat = true;
                            current = items[(currNo+1)];
                            if(!mOver) {
                                fadeElement(false);
                            }
                        });
                    });
                } else {
                    $(itemsSpan[currNo]).slideUp((timeOut/6), function() {
                    $(items[currNo]).fadeOut((timeOut/6), function() {
                            faderStat = true;
                            current = items[(currNo+1)];
                            if(!mOver) {
                                fadeElement(false);
                            }
                        });
                    });
                }
            }
        }
    }
    makeSlider();
};  
})(jQuery);
