
function Do_Resize()
{
    // root_tablo`yu döküman üzerinde ortalar.
    var Obj = Get_Obj("root_tablo");
    var L = (document.body.scrollWidth - parseInt(Obj.style.width)) / 2;

    if (L > -1)
      Obj.style.left = L.toString() + "px";
    else
      Obj.style.left = "2px";

    Obj.style.top = "2px";

    return true;
}

function Do_Load()
{
    var Obj_Govde = Get_Obj("govde_satiri");
    var Obj_Alt_Panel = Get_Obj("alt_panel_satiri");

    // Do_Resize();

    Obj_Govde.style.display = "block";
    Obj_Alt_Panel.style.display = "block";

    if (Trim(typeof(Google_Map_Load)) == "function")
        Google_Map_Load();

    return true;
}

function Submit_Ara(Aranan)
{
    var form = document.forms['ara'];
    form.elements['aranan'].value = Aranan;
    form.submit();
}

function Submit_Bulten_Kontrol(form)
{
    var isim = Trim(form.elements['bulten_kisi_adi'].value);
    var mail = Trim(form.elements['bulten_kisi_mail'].value);

    if (isim == "")
    {
        alert("Lütfen, isminizi giriniz!");
        return false;
    }

    if (isValidMail(mail) == false)
    {
        alert("Lütfen, geçerli bir mail adresi giriniz!");
        return false;
    }

    return true;
}

function Submit_Yeni_Uye_Kontrol(form)
{
    var ad = Trim(form.elements['uye_adi'].value);
    var soyad = Trim(form.elements['uye_soyadi'].value);
    var mail = Trim(form.elements['uye_mail'].value);
    var sifre1 = Trim(form.elements['uye_sifre'].value);
    var sifre2 = Trim(form.elements['uye_sifre_check'].value);

    if (ad == "")
    {
        alert("Lütfen, ad giriniz!");
        return false;
    }

    if (soyad == "")
    {
        alert("Lütfen, soyad giriniz!");
        return false;
    }

    if (sifre1.length < 4)
    {
        alert("Şifre uzunluğu minimum 4, azami 8 hane olabilir!");
        return false;
    }

    if (sifre2 == "")
    {
        alert("Şifre uzunluğu minimum 4, azami 8 hane olabilir!");
        return false;
    }

    if (sifre1 != sifre2)
    {
        form.elements['uye_sifre'].value = "";
        form.elements['uye_sifre_check'].value = "";
        alert("Girmiş olduğunuz şifre doğrulanamadı!" + CRLF + "Lütfen, tekrar giriniz.");
        return false;
    }

    if (isValidMail(mail) == false)
    {
        alert("Lütfen, geçerli bir mail adresi giriniz!");
        return false;
    }

    return true;
}

function Kum_Saati()
{
    document.body.style.cursor = "wait";
}

function Normal_Imlec()
{
    document.body.style.cursor = "default";
}

/* Sepete ürün ekleme işlemleri */
var Sepet =
{
    Sepet_xmlHttp            : null,  // XML nesnesi.
    Sepet_Button             : null,  // Sepete ekle buttonu.
    Sepet_Parent             : null,  // Alışveriş sepetinin parenti.
    Bilgi_Layer              : null,  // Bilgi katmanı.
    INPUT_Stok_Miktari       : null,  // Ürün sayfasındaki stoktaki ürün miktarı INPUT nesnesi.
    Stok_Yonetimi            : false, // true ise stok kontrolü yapar.
    Eklenen_Miktar           : 0,
    Timer_Bilgi_Gizle_Handle : null,

    OnTimer_Bilgi_Gizle: function ()
    {
        Bilgi_Layer.style.display = "none";
        clearTimeout(this.Timer_Bilgi_Gizle_Handle);
    },
    
    OnTimeOut: function ()
    {
        Sepet_Button.disabled = false;
        Bilgi_Layer.style.display = "none";
        Normal_Imlec();
        alert("Sunucu veya internet bağlantınızdaki bir sorun nedeni ile sepete ekleme işlemi gerçekleştirilemedi'");
        location = 'index.php'; // Anasayfaya dönmek en iyisi. Çünkü ürün eklenmiş olabilir. Bu durumda sunucudaki ürün sayıları ile istemcideki farklı olur.
    },

    OnReadyStateChange: function ()
    {
        if (Sepet_xmlHttp.readyState == 4 || Sepet_xmlHttp.readyState == "complete")
        {
            Normal_Imlec();
            Sepet_Parent.innerHTML = Sepet_xmlHttp.responseText;
            Sepet_Button.disabled = false;
            Bilgi_Layer.style.display = "block";

            // Ürün sayfasındaki yeni stok miktarını ayarla.
            if (Stok_Yonetimi == true)
            {
                AJAX_Miktar                       = Get_Obj('AJAX_urun_stok_miktari').value * 1;
                Get_Obj(INPUT_Stok_Miktari).value = AJAX_Miktar.toString();
            }

            // Şimdilik iptal edildi. Uyarının sürekli gösterilmesi daha iyi. Timer_Bilgi_Gizle_Handle = setTimeout("Bilgi_Gizle()", 3000);
        }
    },

    Sepete_Ekle: function (Islem, Urun_Id, Stokta_Bulunan_Miktar, INPUT_Stokta_Bulunan_Miktar, Stok_Yonetimi_Kullan, Sepet_Parent_Id, Sepet_Button_Id, INPUT_Id_Miktar, Bilgi_Layer_Id)
    {
        var postRequest;

        INPUT_Stok_Miktari = INPUT_Stokta_Bulunan_Miktar;
        Stok_Yonetimi      = Stok_Yonetimi_Kullan;
        Stok_Miktari       = Stok_Yonetimi_Kullan == true ? Get_Obj(INPUT_Stokta_Bulunan_Miktar).value * 1 : Stokta_Bulunan_Miktar;
        Eklenen_Miktar     = Get_Obj(INPUT_Id_Miktar).value * 1;
        Sepet_Parent       = Get_Obj(Sepet_Parent_Id);
        Sepet_Button       = Get_Obj(Sepet_Button_Id);
        Bilgi_Layer        = Get_Obj(Bilgi_Layer_Id);

        if (Stok_Yonetimi == true && (Eklenen_Miktar > Stok_Miktari || Stok_Miktari < 1))
        {
            alert('Eklenen miktar, stok miktarından fazla olamaz!');
            return;
        }

        if (Stok_Yonetimi == false && Stok_Miktari < 1)
        {
            alert('Bu ürün stoklarımızda tükenmiştir!' + CRLF + 'Lütfen, stoklarımıza girdikten sonra tekrar deneyiniz.');
            return;
        }

        if (Eklenen_Miktar < 1)
        {
            alert('Eklenen miktar 1`den küçük olamaz!');
            return;
        }

        postRequest = escape("id") + '=' + escape(Urun_Id.toString()) + '&' +
                      escape("miktar") + '=' + escape(Eklenen_Miktar.toString()) + '&' +
                      escape("islem") + '=' + escape(Islem);

        this.OnTimer_Bilgi_Gizle();
        Sepet_Button.disabled = true;
        Kum_Saati();
        
        Sepet_xmlHttp = GetXmlHttpObject(this.OnReadyStateChange, this.OnTimeOut);
        Sepet_xmlHttp.open("POST", "sepet_siparis/sepete_ekle.php", true);
        Sepet_xmlHttp.timeout = 30000;
        // Sepet_xmlHttp.setRequestHeader("Content-Type", "text/html; charset=ISO-8859-9");
        Sepet_xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=iso-8859-9"); // Gönderilen verilerin karakter kodlaması
        Sepet_xmlHttp.send(postRequest);
    },

    Refresh_OnReadyStateChange: function ()
    {
        if (Sepet_xmlHttp.readyState == 4 || Sepet_xmlHttp.readyState == "complete")
            Sepet_Parent.innerHTML = Sepet_xmlHttp.responseText;
    },

    Sepet_Refresh: function ()
    {
        //Sepetin o anki durumunu göstermek için kullanılır.
        Sepet_xmlHttp = GetXmlHttpObject(this.Refresh_OnReadyStateChange, this.Refresh_OnReadyStateChange);
        Sepet_xmlHttp.open("POST", "sepet_siparis/alisveris_sepeti_ozet.php?refresh=true", true);
        Sepet_xmlHttp.timeout = 30000;
        // Sepet_xmlHttp.setRequestHeader("Content-Type", "text/html; charset=ISO-8859-9");
        Sepet_xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=iso-8859-9"); // Gönderilen verilerin karakter kodlaması
        Sepet_xmlHttp.send();
    }
}

function Bilgi_Gizle()
{
    Sepet.OnTimer_Bilgi_Gizle();
}
