var HataDurum = false;
var isStarted;
var logs = ["Loglar"];
var log = "";



var kontrol;

var isRefreshed = false;
var SekmeKapatildi = false;
var PcName = "";

var AmazonUrl = "";
var AbeUrl = "";
var UrunID = "";
var MagazaAdi = "";
chrome.runtime.onMessage.addListener(
    function (message, sender, sendResponse) {

        if (message.Link) {
            window.location.reload();
            setTimeout(function () {
                window.location.reload();
            }, 1000);
        }
        if (message.UygulamaBaslatildi) {
            SekmeBilgileriGonder();
        }
        if (message.PageReload) {
            window.location.reload();
            setTimeout(function () {
                window.location.reload();
            }, 1000);
        }
        if (message.SekmeBulunamadi) {
            var text = "Extension'un çalıştığı sekme açık sekmeler arasında bulunamadı!"
            HataKontrolYap(1, text);
            console.log("Hata var:" + text);
        }

    }
);


var linkKontrolCount = 0;
var urunKontrolCount = 0;

chrome.storage.onChanged.addListener(function (changes, namespace) {
    var storageChange;

    for (key in changes) {

        if (key == "KontrolUrl1" || key == "KontrolUrl2") {
            storageChange = changes[key];
            if (storageChange.newValue.length > 0) {
                linkKontrolCount++;
                if (linkKontrolCount == 2) {

                    setTimeout(function () {
                        UrlKontrolYap();
                    }, 2000);
                }

            }
        } else if (key == "AmzUrunList" || key == "AbeUrunList") {
            storageChange = changes[key];
            if (storageChange.newValue != undefined && storageChange.newValue != null) {
                urunKontrolCount++;
                if (urunKontrolCount == 2) {
                    setTimeout(function () {
                        console.log(" UrunListeleriniGonder(); onchanged çağrıldı")
                        UrunListeleriniGonder();
                    }, 2000);
                }
            }

        } else {}
    }
});


$(document).ready(function () {


    var host = window.location.host;
    chrome.storage.sync.get(["isStarted", "UrunGetirildi", "Durum", "KontrolUrl1", "KontrolUrl1Hata", "KontrolUrl2Hata",
            "KontrolUrl2", "UrunFiyat", "AmzPageCount", "AbePageCount", "AmazonUrl", "AbeUrl", "UrunFiyat", "MagazaAdi", "RequestTime"
        ],
        function (item) {
            setTimeout(function () {
                if (item.isStarted == true) {
                    MagazaAdi = item.MagazaAdi;
                    AmazonUrl = item.AmazonUrl;
                    console.log(item.Durum);
                    AbeUrl = item.AbeUrl;
                    if (host != "www.amazon.com" && host != "www.abebooks.com") {
                        if (item.UrunGetirildi == false) {
                            KartBilgisiGetir(item.MagazaAdi);
                            UrunGetir();
                            SekmeBilgileriGonder();
                        } else if ((item.KontrolUrl1.length > 0) && (item.KontrolUrl2.length > 0)) {
                            UrlKontrolYap();
                            console.log("Ürün bilgisi alınmış. Şuan yapılan işlem: " + item.Durum);
                        } else if (item.Durum == "FiyatKontrol") {
                            console.log("Şuan yapılan işlem: " + item.Durum);
                        } else {
                            console.log("düşün");
                        }
                    } else {
                        HataKontrolYap(75);
                        if (item.Durum == "TypeKontrol") {
                            var KontrolUrl1 = item.KontrolUrl1;
                            var KontrolUrl2 = item.KontrolUrl2;
                            var KontrolUrl1Hata = parseInt(item.KontrolUrl1Hata);
                            var KontrolUrl2Hata = parseInt(item.KontrolUrl2Hata);
                            var LinkKontrolSayfasi = parseInt(QueryStringOku("Validate"));
                            setTimeout(function () {
                                var TipKontrolYap = LinkKontrolSayfasi == 1 ? BirinciLinkKontrol(KontrolUrl2, KontrolUrl1Hata) : IkinciLinkKontrol(KontrolUrl1, KontrolUrl2Hata);
                            }, 500);

                        } else if (item.Durum == "FiyatKontrol") {
                            var Fiyat = item.UrunFiyat;
                            var AmzPageCount = 0;
                            var AbePageCount = 0;
                            AmazonUrl = item.AmazonUrl;
                            AbeUrl = item.AbeUrl;
                            var FiyatKontrolSayfasi = QueryStringOku("PgNm");
                            if (FiyatKontrolSayfasi != null && FiyatKontrolSayfasi.length > 0) {
                                setTimeout(function () {
                                    var FiyatKontrolYap = FiyatKontrolSayfasi == "Abe" ? AbeFiyatKontrol(Fiyat, AbePageCount, AbeUrl) : AmazonFiyatKontrol(Fiyat, AmzPageCount, AmazonUrl);
                                    console.log("FiyatKontrolYap");
                                }, 500);
                            }

                        } else if (item.Durum == "UrunAl") {
                            AmazonUrl = item.AmazonUrl;
                            AbeUrl = item.AbeUrl;
                            var UrunSatinAlmaSayfasi = QueryStringOku("PgNm");
                            var UrunSepetSayfasi = QueryStringOku("Basket");
                            var AddAdres = QueryStringOku("AddAdres");
                            var AmzSepetBosalt = QueryStringOku("Sil");
                            var AbeBilling = QueryStringOku("Billing");
                            var isAbePlaceOrder = QueryStringOku("Complete");
                            if (UrunSatinAlmaSayfasi != null && UrunSatinAlmaSayfasi.length > 0) {
                                if (UrunSepetSayfasi != null && UrunSepetSayfasi.length > 0) {
                                    setTimeout(function () {
                                        var HangiSayfa = UrunSatinAlmaSayfasi == "Abe" ? AbeBasketPage() : AmzBasketPage();
                                    }, 500);
                                } else if (AddAdres != null && AddAdres.length > 0) {
                                    setTimeout(function () {
                                        var HangiSayfa = UrunSatinAlmaSayfasi == "Abe" ? AbeAdresSilme() : "AmzAdresEkle()";
                                    }, 500);
                                } else if (AmzSepetBosalt != null && AmzSepetBosalt.length > 0) {
                                    setTimeout(function () {
                                        AmzBasketBosalt();
                                    }, 500);
                                } else if (AbeBilling != null && AbeBilling.length > 0) {
                                    setTimeout(function () {
                                        AbeEditBilling();
                                    }, 500);
                                } else if (isAbePlaceOrder != null && isAbePlaceOrder.length > 0) {
                                    setTimeout(function () {
                                        // AbeOrderComplete();
                                        //incele
                                    }, 500);
                                } else {
                                    setTimeout(function () {
                                        var HangiSayfa = UrunSatinAlmaSayfasi == "Abe" ? AbeUrunAl(item.UrunFiyat) : AmzUrunAl(item.UrunFiyat);
                                    }, 500);
                                }

                            } else if (window.location.href == "https://www.abebooks.com/servlet/ShoppingBasket") {
                                AbeBasketBosalt();
                            } else if (window.location.href == "https://www.abebooks.com/servlet/PaymentDetail?ac=f") {
                                AbeSaveBilling();
                            } else if (window.location.href == "https://www.abebooks.com/servlet/OrderSummary" &&
                                document.referrer == "https://www.abebooks.com/servlet/PaymentDetail?ac=f") {
                                AbeOrderComplete();
                            } else if (window.location.href == "https://www.abebooks.com/servlet/ShippingAddress") {

                                var textMessage = $(".errorMessage").text();
                                if (textMessage.length > 0) {

                                    HataKontrolYap(1, textMessage.trim());
                                    console.log("Hata var:" + textMessage.trim());
                                    UrunZararYaz();
                                } else {
									//AbeAdresEkle();
										 
										
										 chrome.storage.sync.get(["AdresEklendi"], function (item) {
											console.log(item.AdresEklendi);
											if (!item.AdresEklendi) {
												 var url  = "https://www.abebooks.com/servlet/ShippingAddress?AddAdres=true&PgNm=Abe";
												SayfaGit(url,1);
											}else{
									
												var link = "https://www.abebooks.com/servlet/OrderSummary?Billing=true&PgNm=Abe";
												SayfaGit(link, 1);
												console.log("Adres Eklendi && Sayfa Yenilendi")
											}
										 });
									 
									 
                                }

                            } else if (window.location.pathname == "/gp/huc/view.html") {
                                var SepetCount = $("#nav-cart-count").text();
                                if (SepetCount != undefined && SepetCount.length > 0) {
                                    if (parseInt(SepetCount) > 1) {
                                        var amzlink = "https://www.amazon.com/gp/cart/view.html?";
                                        var params = "PgNm=Amz&Sil=True";
                                        var link = amzlink + params;
                                        SayfaGit(link, 1);
                                    } else if (parseInt(SepetCount) == 1) {
                                        console.log("Sepetteki ürün 0");
                                        var amzlink = "https://www.amazon.com/gp/cart/view.html?";
                                        var params = "PgNm=Amz&Basket=True";
                                        var link = amzlink + params;
                                        SayfaGit(link, 1);
                                    } else {

                                    }
                                }

                            } else if (window.location.pathname == "/gp/buy/addressselect/handlers/display.html") {
                                AmzAdresEkle();
                            } else if (window.location.pathname == "/gp/yourstore") {
                                var SepetKargoAdres = "https://www.amazon.com/gp/buy/addressselect/handlers/display.html";
                                // SekmeAc(SepetKargoAdres);
                                console.log("yourstore")

                            } else {
                                var path = window.location.pathname.toString();
                                var NotAdded = "item-dispatch";
                                var NotAddedDurum = path.indexOf(NotAdded) !== -1;
                                if (NotAddedDurum) {
                                    AmzItemNotAdded();
                                } else {
                                    console.log("hiç biri");
                                }

                            }
                        } else if (item.Durum == "SiparisTamamla") {
                            var Sayfa = QueryStringOku("PgNm");
                            var SiparisTamamla = QueryStringOku("SiparisTamamla");
                            if (Sayfa != null && Sayfa.length > 0) {
                                if (SiparisTamamla != null && SiparisTamamla.length > 0) {
                                    setTimeout(function () {
                                        var HangiSayfa = Sayfa == "Abe" ? AbeSiparisTamamla() : "AmzSiparisTamamla()";
                                    }, 500);
                                }
                            } else if (window.location.pathname == "/servlet/ThankYou") {
                                var params = "?PgNm=Abe&SiparisTamamla=True";
                                var url = "https://www.abebooks.com/servlet/BuyerOrderTrackPL"
                                var link = url + params;
                                SayfaGit(link, 1);
                            } else if (window.location.pathname == "/gp/buy/thankyou/handlers/display.html") {

                                AmzSiparisTamamla();
                            }
                        }
                    }
                }
            }, parseInt(item.RequestTime) * 1000);

        });
});



function KartBilgisiGetir(Magaza) {
    //  safelybook_1
    //bestrange_1
    var datam = {
        "magazaDeger": Magaza,
        "tip": "newOrderCard"
    };
    console.log(datam.magazaDeger + " için kart bilgisi alınacak!");
    $.ajax({
        type: "post",
        url: "https://www.andromedaworkspace.com/Extension/ajaxCall",
        beforeSend: function (xhr) {
            xhr.setRequestHeader('X-Requested-With', 'XMLHttpRequest');
        },
        cache: false,
        dataType: "json",
        data: datam,
        success: function (cevap) {

            if (cevap.hata == 0) {
                console.log("Hata: Kart Bilgisi Getirilemedi!");
                KartBilgisiGetir(Magaza);
                //Hata alındı bilgilendirilme yapılacak
            } else {
                if (cevap.result) {

                    chrome.storage.sync.set({
                        "CardNumber": cevap.result.CardNumber,
                    }, function () {

                    });
                }
            }
            console.log("Kart Bilgisi Response!");
        },
        error: function (req, textStatus, errorThrown) {
            console.log('Ooops, something happened: ' + textStatus + ' ' + errorThrown);
        }
    });

}



function SiparisTamamla(MagazaAdi, SiparisNo, AbeOrAmazon, AbeSaticiNo) {

    chrome.storage.sync.get(["UrunID", "PcName","DLastPrice"], function (item) {
        PcName = item.PcName;
        //MTip: Mağaza Tip (Amazon (0), Abe (1))
        if (AbeOrAmazon == '0') {
            AbeSaticiNo = '-';
        }
        var datam = {
            "ID": item.UrunID,
            "tip": "newOrderEnd",
            "MAd": MagazaAdi,
            "SipNo": SiparisNo,
            "MTip": AbeOrAmazon,
            "SNo": AbeSaticiNo,
            "PCAd": PcName,
			"Price" : item.DLastPrice
        };
        console.log(datam);
        $.ajax({
            type: "post",
            url: "https://www.andromedaworkspace.com/Extension/ajaxCall",
            beforeSend: function (xhr) {
                xhr.setRequestHeader('X-Requested-With', 'XMLHttpRequest');
            },
            cache: false,
            dataType: "json",
            data: datam,
            success: function (cevap) {
                console.log(cevap);
                if (cevap.hata == "0") {
                    console.log("Hata: Sipariş Bilgileri Gönderilemedi!");

                    //Hata alındı bilgilendirilme yapılacak
                } else {
                    if (cevap.result == "1") {
                        console.log(cevap.result);
                        console.log("Sipariş bilgileri gönderildi")
                        setTimeout(function () {
                            UrunGetir();
                        }, 2000);
                    } else {}
                }
                console.log("Sipariş Tamamla Response!");
            },
            error: function (req, textStatus, errorThrown) {
                console.log('Ooops, something happened: ' + textStatus + ' ' + errorThrown);
            }
        });
    });
}

function UrunGetir2() {

    setTimeout(function () {
        chrome.storage.sync.get(["MagazaAdi"], function (item) {
            console.log("Ürün Getirilecek!" + item.MagazaAdi);
            localStorage.clear();
            localStorage.removeItem("LSAmazonUrunList");
            clearTimeout(HataKontrol);
            HataKontrolYap(250);
            chrome.storage.sync.set({
                "UrunID": "2535",
                "UrunGetirildi": true,
                "Durum": "TypeKontrol",
                "UrunFiyat": "4.67",
                "AbeUrl": "https://www.abebooks.com/servlet/SearchResults?cm_sp=SearchF-_-topnav-_-Results&isbn=0061536121&sts=t",
                "AmazonUrl": "https://www.amazon.com/gp/offer-listing/0061536121/ref=olp_f_usedAcceptable?ie=UTF8&f_all=true&f_new=true&f_usedGood=true&f_usedLikeNew=true&f_usedVeryGood=true",
                "KontrolUrl1Hata": 0,
                "KontrolUrl2Hata": 0
            }, function () {
                var link1 = `https://www.amazon.com/gp/product/B01FIW6NIW?&Validate=1`;
                var link2 = `https://www.amazon.com/gp/product/0321908775?&Validate=2`;
                SekmeAc(link1);
                SekmeAc(link2);

                AbeUrl = "https://www.abebooks.com/servlet/SearchResults?cm_sp=SearchF-_-topnav-_-Results&isbn=0061536121&sts=t",
                    AmazonUrl = "https://www.amazon.com/gp/offer-listing/0061536121/ref=olp_f_usedAcceptable?ie=UTF8&f_all=true&f_new=true&f_usedGood=true&f_usedLikeNew=true&f_usedVeryGood=true",
                    console.log("Sekmeler Açılacak!");
            });
        });
    });


}


function UrunGetir() {

    var host = window.location.host;
    setTimeout(function () {
        chrome.storage.sync.get(["MagazaAdi"], function (item) {
            clearTimeout(HataKontrol);
            HataKontrolYap(75);
            console.log("Ürün Getirilecek!");
            localStorage.clear();
            localStorage.removeItem("LSAmazonUrunList");
            var datam = {
                "magazaDeger": item.MagazaAdi,
                "tip": "newOrderStart"
            };
            console.log(datam);
            console.log(datam.magazaDeger + " için sipariş alınacak!");
            $.ajax({
                type: "post",
                url: "https://www.andromedaworkspace.com/Extension/ajaxCall",
                beforeSend: function (xhr) {
                    xhr.setRequestHeader('X-Requested-With', 'XMLHttpRequest');
                },
                cache: false,
                dataType: "json",
                data: datam,
                success: function (cevap) {
                    console.log(cevap);
                    if (cevap.hata == 0) {
                        chrome.storage.sync.set({
                            "UrunGetirildi": false,
                            "Durum": "AppStarted"
                        }, function () {
                            console.log("Hata: Ürün getirilemedi!");
                            var d1 = new Date(),
                                d2 = new Date(d1);
                            d2.setMinutes(d1.getMinutes() + 30);
                            var sure = d2.toLocaleString().substring(11, 19);
                            var text = " Kontrol edilecek sipariş kalmadı! Uygulama 30 dk bekletiliyor." + sure + " itibariyle tekrar başlatılacak.";
                            HataKontrolYap(1, text);

                            chrome.runtime.sendMessage({
                                YenidenBaslat: true,
                            });
                            if (host == "www.amazon.com" || host == "www.abebooks.com") {
                                SekmeKapat(2);
                            }
                        });
                    } else {
                        if (cevap.result) {
                            console.log(cevap.result);
                            //console.table(cevap.result);
                            var data = cevap.result;
                            if (true) {
                                chrome.storage.sync.set({
                                    "UrunID": data.ID,
                                    "UrunGetirildi": true,
                                    "Durum": "TypeKontrol",
                                    "UrunFiyat": data.Fiyat,
                                    "AbeUrl": data.AbeUrl,
                                    "AmazonUrl": data.AmazonUrl,
                                    "KontrolUrl1Hata": 0,
                                    "KontrolUrl2Hata": 0,
                                    "KontrolUrl1": "",
                                    "KontrolUrl2": ""
                                }, function () {
                                    linkKontrolCount = 0;
                                    urunKontrolCount = 0;
                                    var link1 = `${data.KontrolUrl1}?&Validate=1`;
                                    var link2 = `${data.KontrolUrl2}?&Validate=2`;
                                    SekmeAc(link1);
                                    SekmeAc(link2);
                                    AmazonUrl = data.AmazonUrl;
                                    AbeUrl = data.AbeUrl;
                                    console.log("Sekmeler Açılacak!");
                                    if (host == "www.amazon.com" || host == "www.abebooks.com") {
                                        SekmeKapat(2);
                                    }
                                });
                            } else {
                                console.log("istenilen id ler değil");
                                setTimeout(function () {
                                    UrunGetir()
                                }, 1000);

                            }

                        }
                    }
                    console.log("UrunGetir() Response!");
                },
                error: function (req, textStatus, errorThrown) {
                    console.log('Ooops, something happened: ' + textStatus + ' ' + errorThrown);
                }
            });
        });
    }, 2000);
}

function BirinciLinkKontrol(KontrolUrl2, Sorgu) {

    var deger = "";
    var mediaTab = $("#mediaTabsGroup");
    var tmmSwatches = $("#tmmSwatches > ul > li.swatchElement.selected");
	var c = $("#productTitle").text();
		 chrome.storage.sync.get(["KontrolUrl1", "KontrolUrl2", "UrunID", "AbeUrl", "AmazonUrl"],
            function (item) {
                console.log(item.KontrolUrl1 + " " + item.KontrolUrl2);
               
            });
			console.log(KontrolUrl2);
    if (mediaTab.length > 0) {
        var a = $("ul#mediaTabs_tabSet").find(".a-active").children().find(".mediaTab_title").text();
        deger = a;
    } else if (tmmSwatches.length > 0) {
        var b = $("#tmmSwatches > ul > li.swatchElement.selected").children().children().children().children().children().eq(0).text();
        deger = b;		
    } else {
        
        var durum = c.indexOf(KontrolUrl2) !== -1;
        deger = durum == true ? KontrolUrl2 : "EşitDegilKontrolURL1";
    }

    if (deger.length == 0) {
        if (Sorgu < 10) {
            var sorguCount = Sorgu + 1;
            chrome.storage.sync.set({
                'KontrolUrl1Hata': sorguCount
            }, function () {
                setTimeout(function () {
                    console.log("Sayfa Yeniden Yükledim!");
                    window.location.reload();
                }, 2000);
            });
        } else {
            deger = "KontrolUrl1" + Sorgu;
            chrome.storage.sync.set({
                'KontrolUrl1': deger
            }, function () {
                console.log("Birinci url kontrol edildi: " + deger);
                SekmeKapat(1);
            });
        }

    } else {
        chrome.storage.sync.set({
            'KontrolUrl1': deger,
			'Titles' : c 
        }, function () {
            console.log("Birinci url kontrol edildi: " + deger);
            SekmeKapat(1);
        });
    }
}

function IkinciLinkKontrol(KontrolUrl1, Sorgu) {
setTimeout(function () {
    var deger = "";
    var mediaTab = $("#mediaTabsGroup");
    var tmmSwatches = $("#tmmSwatches");
    if (mediaTab.length > 0) {
        var a = $("ul#mediaTabs_tabSet").find(".a-active").children().find(".mediaTab_title").text();
        deger = a;
		chrome.storage.sync.get(["KontrolUrl1", "Titles"],
            function (item) {
                 console.log(item.KontrolUrl1+'aliosman'+item.Titles);
					console.log(deger);
					console.log(deger);
				if(deger!=item.KontrolUrl1 && item.KontrolUrl1!='Mass Market Paperback')
				{
					var durum = item.Titles.indexOf(deger) !== -1;
					console.log(durum);
					if(durum  && item.KontrolUrl1!='')
					{
						deger = durum == true ? item.KontrolUrl1 : "EşitDegilKontrolURL2";
					} 
					console.log(item.KontrolUrl1 +'am'+deger);
					chrome.storage.sync.set({
					'KontrolUrl2': deger
						}, function () {
							console.log("İkinci url kontrol edildi: " + deger);
							SekmeKapat(1);
						});
				}
            });
		
    } else if (tmmSwatches.length > 0) {
		
        var b = $("#tmmSwatches > ul > li.swatchElement.selected").children().children().children().children().children().eq(0).text();
        deger = b;
		chrome.storage.sync.get(["KontrolUrl1", "Titles"],
            function (item) {
                 console.log(item.KontrolUrl1+'aliosman'+item.Titles);
					console.log(deger);
					console.log(deger);
				if(deger!=item.KontrolUrl1 && item.KontrolUrl1!='Mass Market Paperback')
				{
					var durum = item.Titles.indexOf(deger) !== -1;
					console.log(durum);
					if(durum  && item.KontrolUrl1!='')
					{
						deger = durum == true ? item.KontrolUrl1 : "EşitDegilKontrolURL2";
					} 
					console.log(item.KontrolUrl1 +'am'+deger);
					chrome.storage.sync.set({
					'KontrolUrl2': deger
						}, function () {
							console.log("İkinci url kontrol edildi: " + deger);
							SekmeKapat(1);
						});
				}
            });
			
    } else {
        var c = $("#productTitle").text();
        var durum = c.indexOf(KontrolUrl1) !== -1;
        deger = durum == true ? KontrolUrl1 : "EşitDegilKontrolURL2";
    }

    if (deger.length == 0) {
        if (Sorgu < 10) {
            var sorguCount = Sorgu + 1;
            chrome.storage.sync.set({
                'KontrolUrl2Hata': sorguCount
            }, function () {
                setTimeout(function () {
                    console.log("Sayfa Yeniden Yükledim!");
                    window.location.reload();
                }, 2000);
            });
        } else {
            deger = "KontrolUrl2" + Sorgu;
            chrome.storage.sync.set({
                'KontrolUrl2': deger
            }, function () {
                console.log("İkinci url kontrol edildi: " + deger);
                SekmeKapat(1);
            });
        }
    } else {
        chrome.storage.sync.set({
            'KontrolUrl2': deger
        }, function () {
            console.log("İkinci url kontrol edildi: " + deger);
            SekmeKapat(1);
        });
    }
	 }, 2000);
}


function UrlKontrolYap() {
    var host = window.location.host;
    if (host != "www.amazon.com" && host != "www.abebooks.com") {
        chrome.storage.sync.get(["KontrolUrl1", "KontrolUrl2", "UrunID", "AbeUrl", "AmazonUrl"],
            function (item) {
                console.log(item.KontrolUrl1 + " " + item.KontrolUrl2);
                linkKontrolCount = 0;
                var id = item.UrunID;
                AbeUrl = item.AbeUrl;
                AmazonUrl = item.AmazonUrl;
				
                if (item.KontrolUrl1 == item.KontrolUrl2) {
                    console.log("doğru");
                    //WHataliUrun(id);
                    SiparisLinkleriGetir(id, AmazonUrl, AbeUrl);
                } else {
					
					if((item.KontrolUrl1 == 'Board book' || item.KontrolUrl1 =='Hardcover') && (item.KontrolUrl2 == 'Board book' || item.KontrolUrl2 =='Hardcover')){
					console.log("deneme dogrusu");
                    //WHataliUrun(id);
                    SiparisLinkleriGetir(id, AmazonUrl, AbeUrl);
				}else{
                    console.log("yanlış");
                    HataliUrun(id);
                    //SiparisLinkleriGetir(id, AmazonUrl, AbeUrl);
                }
				}

            });
    }
}



function HataliUrun(id) {
    console.log("Hatalı Ürün bildirilecek!")
    $.ajax({
        type: "post",
        url: "https://www.andromedaworkspace.com/Extension/ajaxCall",
        beforeSend: function (xhr) {
            xhr.setRequestHeader('X-Requested-With', 'XMLHttpRequest');
        },
        cache: false,
        dataType: "json",
        data: {
            "ID": id,
            "tip": "newOrderStartFalse"
        },
        success: function (cevap) {
            if (cevap.hata) {
                console.log("Hata");
            } else {
                if (cevap.result) {
                    console.log(cevap.result)
                    linkKontrolCount = 0;
                    urunKontrolCount = 0;
                    UrunGetir()
                }
            }

        },
        error: function (req, textStatus, errorThrown) {
            console.log('Ooops, something happened: ' + textStatus + ' ' + errorThrown);
        }
    });
    console.log(id + " Nolu id'ye sahip ürün hatali");
}



function SiparisLinkleriGetir(id, AmazonUrl, AbeUrl) {
    chrome.storage.sync.set({
        "Durum": "FiyatKontrol",
        "KontrolUrl1": "",
        "KontrolUrl2": "",
        "AmzPageCount": 0,
        "AbePageCount": 0
    }, function () {
        var amazonLink = AmazonUrl + "&PgNm=Amz";
        var abeLink = AbeUrl + "&PgNm=Abe";
        chrome.storage.local.set({
            "AbeUrl": AbeUrl,
            "AmazonUrl": AmazonUrl,
            'AbeUrunList': null,
            "AmzUrunList": null,
            "SiparisBilgileri": null
        }, function () {
            linkKontrolCount = 0;
            urunKontrolCount = 0;
            console.log("amazonlink-->" + amazonLink);
            console.log("abelink-->" + abeLink);
            SekmeAc(amazonLink);
            SekmeAc(abeLink);
            console.log("Amazon ve Abebook Ürün Sayfaları  Açılacak !");

        });
    });
}

var AbeUrunList = [];

function AbeFiyatKontrol(fiyat, AbePageCount, AbeUrl) {

    console.log(AbeFiyatKontrol);
    var UrunList = localStorage.getItem('LSAbeUrunList');
	console.log(UrunList);
    if (UrunList != undefined) {
        AbeUrunList = JSON.parse(UrunList);
    }

    var liste = $(".result-set").find("div.result");
    var listeItemCount = parseInt($(".result-set").find("div.result").length) - 1;
    var FiyatKontrolTamamlandi = true;
    liste.each(function (index) {
        //  var UrunFiyat = $(this).find(".item-price").find("span.price").text().split(" ")[1];
        //  var KargoFiyat = $(this).find(".shipping").find("span.price").text().split(" ")[1];
        var UrunFiyat = $(this).find(".srp-item-price").text().split(" ")[1].replace(',','');
        var KargoFiyat = $(this).find(".srp-item-price-shipping").text().split(" ")[1];
        var DFiyat = parseFloat(fiyat);
        var DUrunFiyat = parseFloat(UrunFiyat);
        var DKargoFiyat = KargoFiyat != undefined ? parseFloat(KargoFiyat.replace(',','')) : 0;
        var Price = DUrunFiyat + DKargoFiyat;
        if (DFiyat > Price) {

            var isAvailable = $(this).find(".bookseller-info").next("div").attr('class');
            console.log(isAvailable);
            if (isAvailable == "print-on-demand" || isAvailable == "international-edition") {
                console.log("eklenmeyecek");
            } else {
                var c = $(this).find(".clear-all").children().eq(1).text().split("Condition:")[1];
                var Condition = c != undefined ? c.split(".")[0].trim() : "-";
                var Seller = $(this).find(".bookseller-info").children().eq(0).children().text().trim();
                var Ratings = $(this).find(".bookseller-rating").children().eq(1).children("img").attr("alt").split("-")[0];
                // var Within = $(this).find(".shipping").next("div.small").text().trim();
                var Within = $(this).find(".srp-item-shipping-dest").text().trim();
                // var SellerHref = $(this).find(".shipping").next().next().children().eq(0).attr('href');
                var SellerHref = $(this).find(".srp-item-buybox ").children().last().children().last().attr('href');
                var SellerID = SellerHref.split(/[=&]/)[2];
                var ShippingDate = [];
                var SellerLink = "https://www.abebooks.com/servlet/ShipRates?vid=" + SellerID;
                var gelenData = getSayfa(SellerLink);
                var parser = new DOMParser();
                var htmlDoc = parser.parseFromString(gelenData, "text/html");
                var normal = $(htmlDoc).find("tbody > tr").eq(0).find("td").eq(1).text();

                ShippingDate = normal;
                Price = Price.toFixed(2);
                var item = {
                    index,
                    Condition,
                    Seller,
                    Ratings,
                    Within,
                    ShippingDate,
                    Price,
                    "Page": AbePageCount,
                };
                AbeUrunList.push(item);
            }

            console.log("listeItemCount: " + listeItemCount);
            console.log("index: " + index);
            if (listeItemCount == index && listeItemCount != 0) {
                FiyatKontrolTamamlandi = true;
                localStorage.setItem('LSAbeUrunList', JSON.stringify(AbeUrunList));
            } else {
                FiyatKontrolTamamlandi = true;
            }
        } else {

        }

    });

    console.log("FiyatKontrolTamamlandi: " + FiyatKontrolTamamlandi);
    if (FiyatKontrolTamamlandi) {
        console.log("Verileri Gonder");
        console.table(AbeUrunList);
        var isbn = QueryStringOku("isbn");
        chrome.storage.local.set({
            'AbeUrunList': AbeUrunList,
            "ISBN": isbn,
            "UrunFiyat": fiyat
        }, function () {

            console.log("AbeUrunList kontrol edildi: ");
            localStorage.removeItem("LSAbeUrunList");
            SekmeKapat(1);
        });

    } else {
        var PaginationNext = parseInt(AbePageCount) + 1;
        chrome.storage.sync.set({
            'AbePageCount': PaginationNext
        }, function () {
            //https://www.abebooks.com/servlet/SearchResults?isbn=0452266556&n=100121501&sortby=17&cm_sp=pan-_-srp-_-new
            var abelink = AbeUrl;
            var PaginationNextCount = PaginationNext * 30;
            var params = `?PgNm=Abe&bsi=${PaginationNextCount}`;
            var link = abelink + params;
            console.log("diğer sayfaya gec");
            SayfaGit(link, 1);
        });
    }
}



var AmzUrunList = [];

function AmazonFiyatKontrol(fiyat, AmzPageCount, AmazonUrl) {
    var UrunList = localStorage.getItem('LSAmazonUrunList');
    if (UrunList != undefined) {
        AmzUrunList = JSON.parse(UrunList);
    }
    var liste = $("#olpOfferList").find(".olpOffer");
    var listeItemCount = parseInt($("#olpOfferList").find(".olpOffer").length) - 1;
    var FiyatKontrolTamamlandi = true;
    liste.each(function (index) {
        // $(this).find(".olpFastTrack").find("a").parent().remove("").end();
        var UrunFiyat = $(this).find(".olpOfferPrice").text().trim().substr(1).replace(',','');
        var KargoFiyat = $(this).find(".olpShippingPrice").text().trim().substr(1);
        var DFiyat = parseFloat(fiyat);
        var DUrunFiyat = parseFloat(UrunFiyat);
        var DKargoFiyat = KargoFiyat.length > 0 ? parseFloat(KargoFiyat.replace(',','')) : 0;
        var Price = DUrunFiyat + DKargoFiyat;
        if (DFiyat > Price) {
            var Condition = $(this).find(".olpCondition").text().split('\n').map(item => item.trim()).join(" ").trim();
            var Delivery = $(this).find(".olpFastTrack").text().split('\n').map(item => item.trim()).join(" ").trim();
            var isPrime = $(this).find(".olpPriceColumn").find("span.supersaver").length > 0 ? true : false;
            var Seller = $(this).find(".olpSellerName").text().trim();
            var Positive = $(this).find(".olpSellerColumn").children("p").children().eq(1).text().split("%")[0];
            var r = $(this).find(".olpSellerColumn").children("p").clone().children().remove().end().text().trim().split(/[()]/)[1];
            var Ratings = r != undefined ? r.split(" ")[0] : "-";
            Price = Price.toFixed(2);
            if (isPrime) {
                Seller = "Amazon.com";
            }
            var item = {
                index,
                isPrime,
                Condition,
                Delivery,
                Seller,
                Positive,
                Ratings,
                Price,
                "Page": AmzPageCount,
            };
            AmzUrunList.push(item);
			console.log(listeItemCount + ' '+index + ' ' + listeItemCount);
            if (listeItemCount == index && listeItemCount != 0) {
                FiyatKontrolTamamlandi = true;
                localStorage.setItem('LSAmazonUrunList', JSON.stringify(AmzUrunList));

            } else {
                FiyatKontrolTamamlandi = true;
            }
        } else {
            console.log("Fiyat Yüksek");
        }

    });
    console.log(AmzUrunList);
    if (FiyatKontrolTamamlandi) {
        console.log("Verileri Gonder");
        console.table(AmzUrunList);
        chrome.storage.local.set({
            'AmzUrunList': AmzUrunList,
            "AmazonUrl": AmazonUrl,
            "UrunFiyat": fiyat
        }, function () {
            console.log("AmzUrunList kontrol edildi: ");
            localStorage.removeItem("LSAmazonUrunList");
            SekmeKapat(1);
        });
    } else {
		console.log(AmzPageCount);
        var PaginationNext = parseInt(AmzPageCount) + 1;
        chrome.storage.sync.set({
            'AmzPageCount': PaginationNext
        }, function () {
            var amzlink = AmazonUrl;
            var params = "&PgNm=Amz&startIndex=" + PaginationNext * 10;
            var link = amzlink + params;
            console.log("diğer sayfaya gec");
            //SayfaGit(link, 1);
        });
    }

}

function UrunListeleriniGonder() {

    console.log(" UrunListeleriniGonder()");

    var host = window.location.host;

    if (host != "www.amazon.com" && host != "www.abebooks.com") {
        chrome.storage.sync.get(["UrunID"], function (item) {
            UrunID = item.UrunID;
        });
        chrome.storage.local.get(["AmzUrunList", "AbeUrunList"], function (item) {

            var Amazon = item.AmzUrunList;
            var Abebook = item.AbeUrunList;
            var orderArray = [
                [...Amazon],
                [...Abebook]
            ];
            console.log(orderArray);
            var stringArray = JSON.stringify(orderArray);
            $.ajax({
                type: "post",
                url: "https://www.andromedaworkspace.com/Extension/ajaxCall",
                beforeSend: function (xhr) {
                    xhr.setRequestHeader('X-Requested-With', 'XMLHttpRequest');
                },
                cache: false,
                dataType: "json",
                data: {
                    "ID": UrunID,
                    "orderArray": stringArray,
                    "tip": "newOrderFiltre"
                },
                success: function (cevap) {
                    if (cevap.hata) {
                        console.log("Hata");
                    } else {
                        if (cevap.result) {

                            console.log("Sipariş listesi başarıyla alındı! UrunListeleriniGonder()");
                            // fiyatkontroldeki veriler duruma göre silinecek. lcaol storage sync
                            var gelenJson = cevap.result;
                            if (gelenJson["1"] != null && gelenJson["1"] != undefined) {
                                console.log("Sipariş Alınacak");
                                console.log(gelenJson[0]);
                                console.log(gelenJson[1]);
                                var SiparisListesiLastIndex = parseInt(gelenJson["1"].length) - 1;
                                var SiparisIndex = 0;
                                chrome.storage.sync.set({
                                    "Durum": "UrunAl",
									"AdresEklendi":false
                                }, function () {
                                    chrome.storage.local.set({
                                        "AdresBilgileri": gelenJson[0],
                                        "SiparisBilgileri": gelenJson[1],
                                        "SiparisListesiLastIndex": SiparisListesiLastIndex,
                                        "SiparisIndex": SiparisIndex
                                    }, function () {
                                        console.log("Siparişler alınacak. ");
                                        UrunAl();

                                    });
                                });

                            } else {
                                //localstorage'ları temizle

                                console.log("Yeni Ürüne Geçilecek! UrunListeleriniGonder()");
                                UrunGetir();
                            }
                        }
                    }
                    console.log("Gönderildi");
                },
                error: function (req, textStatus, errorThrown) {
                    console.log('Ooops, something happened: ' + textStatus + ' ' + errorThrown);
                }
            });
        });
    } else {
        SekmeKapat(1);
    }


}

function UrunZararYaz() {
    chrome.storage.sync.get(["UrunID"], function (item) {
        console.log("İstenilen ürüne  uygun fiyat ve diğer şartlar sağlanamadı!");
        var stringArray = [];
        $.ajax({
            type: "post",
            url: "https://www.andromedaworkspace.com/Extension/ajaxCall",
            beforeSend: function (xhr) {
                xhr.setRequestHeader('X-Requested-With', 'XMLHttpRequest');
            },
            cache: false,
            dataType: "json",
            data: {
                "ID": item.UrunID,
                "orderArray": stringArray,
                "tip": "newOrderFiltre"
            },
            success: function (cevap) {
                if (cevap.hata) {
                    console.log("Hata");
                } else {
                    if (cevap.result == null) {
                        console.log(cevap.result)
                        console.log("UrunZararYaz()  çalıştı!")
                        UrunGetir();
                    }
                }

            },
            error: function (req, textStatus, errorThrown) {
                console.log('Ooops, something happened: ' + textStatus + ' ' + errorThrown);
            }
        });
    });

}

function UrunAl() {
    //siparisIndex, ItemIndex
    var host = "window.location.host";
    chrome.storage.local.get(["SiparisBilgileri", "UrunFiyat", "SiparisListesiLastIndex", "SiparisIndex", "AmazonUrl", "ISBN"], function (item) {
        var link = "";
        var isbn = item.ISBN;
        var SiparisBilgileri = item.SiparisBilgileri;
        var SiparisIndex = item.SiparisIndex;
        var SiparisListesiLastIndex = item.SiparisListesiLastIndex;
        console.log(SiparisListesiLastIndex);
        console.log(SiparisIndex);

        if (SiparisIndex < SiparisListesiLastIndex || SiparisIndex == SiparisListesiLastIndex) {

            var isMagazaAmazon = SiparisBilgileri[SiparisIndex]["Magaza"] == "0" ? true : false;
            var Page = parseInt(SiparisBilgileri[SiparisIndex]["Page"]);
            var Item = SiparisBilgileri[item.SiparisIndex]["Index"];
            var NPrice = SiparisBilgileri[item.SiparisIndex]["SecondPrice"];

            console.log("Nprice type: " + typeof NPrice);

            if (NPrice == null) {
                NPrice = item.UrunFiyat;
            }
            // if (isMagazaAmazon) {
            if (isMagazaAmazon) {
                console.log("Amazon Açılacak!");
                var SiparisIndexNext = parseInt(SiparisIndex) + 1;
                chrome.storage.local.set({
                    'SiparisIndex': SiparisIndexNext
                }, function () {
                    var amzlink = item.AmazonUrl;
                    var amzparams = `&PgNm=Amz&startIndex=${Page * 10}&itemIndex=${Item}&itemPage=${Page}&NPrice=${NPrice}`;
                    link = amzlink + amzparams;
                    SekmeAc(link);
                });

            } else {

                console.log("Abebook Açılacak");
                var SiparisIndexNext = parseInt(SiparisIndex) + 1;
                chrome.storage.local.set({
                    'SiparisIndex': SiparisIndexNext
                }, function () {
                    if (item.AbeUrl == undefined) {
                        var abelink = AbeUrl;
                    } else {
                        var abelink = item.AbeUrl;
                    }

                    var abeparams = `&PgNm=Abe&bsi=${Page * 30}&itemIndex=${Item}&itemPage=${Page}&NPrice=${NPrice}`;
                    link = abelink + abeparams;
                    SekmeAc(link);
                });

            }
            if (host == "www.amazon.com" || host == "www.abebooks.com") {
                SekmeKapat(1);
            }
        } else {
            console.log("Sipariş Listesinde Uygun Sipariş Kalmadı!");
            UrunZararYaz();
        }
    });

}

function AmzUrunAl(IstenilenFiyat) {

    chrome.storage.local.get(["AmzUrunList"], function (item) {
        console.log(item.AmzUrunList);
        console.log("Amazon");
        var AmzUrunList = item.AmzUrunList;
        var itemIndex = QueryStringOku("itemIndex");
        var itemPage = QueryStringOku("itemPage");
        var NPrice = QueryStringOku("NPrice");

        var LocaldekiUrun = AmzUrunList.find(item => item.index == itemIndex && item.Page == itemPage);

        var Urun = $("#olpOfferList").find(".olpOffer").eq(itemIndex);
        var UrunFiyat = Urun.find(".olpOfferPrice").text().trim().substr(1);
        var KargoFiyat = Urun.find(".olpShippingPrice").text().trim().substr(1);
        var DUrunFiyat = parseFloat(UrunFiyat);
        var DKargoFiyat = KargoFiyat.length > 0 ? parseFloat(KargoFiyat) : 0;
        var Price = DUrunFiyat + DKargoFiyat;

        var Condition = Urun.find(".olpCondition").text().split('\n').map(item => item.trim()).join(" ").trim();
        var Seller = Urun.find(".olpSellerName").text().trim();
        var r = Urun.find(".olpSellerColumn").children("p").clone().children().remove().end().text().trim().split(/[()]/)[1];
        var isPrime = Urun.find(".olpPriceColumn").find("span.supersaver").length > 0 ? true : false;
        Price = Price.toFixed(2);
        var AmzSeller = LocaldekiUrun.Seller;
        if (isPrime) {
            Seller = "Amazon.com";
        }
        console.log("Localdeki:" + LocaldekiUrun.Condition + " " + LocaldekiUrun.Seller + " " + LocaldekiUrun.Price);
        console.log("Sayfadaki:" + Condition + " " + Seller + " " + Price);

        if (NPrice == null) {
            NPrice = IstenilenFiyat;
        }
        if (LocaldekiUrun.Condition == Condition && LocaldekiUrun.Seller == Seller && (Price <= parseFloat(LocaldekiUrun.Price).toFixed(2)) || parseFloat(Price).toFixed(2) <= parseFloat(NPrice).toFixed(2)) {
            console.log("İki ürün aynı. İşlemler devam edecek (Amazon)");

            var link = window.location.href;
            chrome.storage.sync.set({
                "AmzSepetUrunLink": link,
                "AmzSeller": AmzSeller,
                "NextPrice": NPrice
            }, function () {
                Urun.find(".a-button-input").click();
                Urun.find(".a-button-input").trigger("click");
            });

        } else {

            console.log("İki ürün aynı değil listedeki diğer ürüne geçilecek! (Amazon)");
            UrunAl();

        }


    });



}

function AmzBasketPage() {

    console.log("AmzBasketPage()");

    var SepetCount = $("#nav-cart-count").text();
    console.log(SepetCount);
    if (SepetCount != undefined && SepetCount.length > 0) {
        if (parseInt(SepetCount) == 1) {
            console.log("Sepetteki ürün adeti: 1 Sipariş işlemleri devcam edecek! AmzBasketPage()");

            $("#sc-buy-box-ptc-button").click();
            $("#sc-buy-box-ptc-button").trigger("click");
            $("#sc-buy-box-ptc-button > span").click();
            $("#sc-buy-box-ptc-button > span").trigger("click");
            $("#sc-buy-box-ptc-button > span > input").click();
            $("#sc-buy-box-ptc-button > span > input").trigger("click");

            console.log("proceedToCheckout tıklandı AmzBasketPage() ");
            var SepetKargoAdres = "https://www.amazon.com/gp/buy/addressselect/handlers/display.html?hasWorkingJavascript=1";
            //SekmeAc(SepetKargoAdres);
            //SekmeKapat(1);

        } else {
            console.log(SepetCount + " Sepetteki ürün 1'den fazla sepet boşaltılacak!  AmzBasketPage() ");
        }
    } else {
        console.log("Sepet Boş! Ürün tekrar sepete atılacak. AmzBasketPage()");
        chrome.storage.sync.get(["AmzSepetUrunLink"], function (item) {
            console.log(item.AmzSepetUrunLink);
        });

    }

}


function AmzBasketBosalt() {
    console.log("AmzBasketBosalt()");
    var Listeler = [];
    var liste1 = $(".sc-batch-items").children();
    var liste1Count = liste1.length;
    Listeler.push({
        liste: ".sc-batch-items",
        count: liste1Count
    });
    var liste2 = $(".sc-batches-list-body").children();
    var liste2Count = liste2.length;
    Listeler.push({
        liste: ".sc-batches-list-body",
        count: liste2Count
    });
    var liste3 = $(".sc-list-body").children();
    var liste3Count = liste3.length;
    Listeler.push({
        liste: ".sc-list-body",
        count: liste3Count
    });

    console.log(liste1Count);
    console.log(liste2Count);
    console.log(liste3Count);

    var HangiListe = Listeler.find(item => item.count > 0);
    var AranacakListe = "";
    var AranacakCount = "";
    if (HangiListe != null && HangiListe != undefined) {
        AranacakListe = HangiListe.liste;
        AranacakCount = HangiListe.count;
    } else {
        AranacakListe = ".sc-batch-items";
        AranacakCount = "0";
    }


    var headerText = $(".sc-cart-header").text().trim();

    if (parseInt(AranacakCount) > 0 && headerText != "Your Shopping Cart is empty.") {

        console.log("Sepetteki ürün 0'dan fazla AmzBasketBosalt()");

        $(AranacakListe).children().each(function (index) {
            $(this).find(".sc-action-delete > span > input").click();
            $(this).find(".sc-action-delete > span > input").trigger("click");
            $(this).find(".sc-action-delete > span").click();
            $(this).find(".sc-action-delete > span").trigger("click");

            AmzBasketBosalt2(index);
        });

    } else {
        console.log("Sepet Boş. Ürün sepete tekrar atılacak. AmzBasketBosalt()");
        chrome.storage.sync.get(["AmzSepetUrunLink"], function (item) {
            console.log(item.AmzSepetUrunLink);
            SayfaGit(item.AmzSepetUrunLink, 1);
        });
    }

}

function AmzBasketBosalt2(index) {
    setTimeout(function () {
        $(".sc-list-body").find("div").eq(index).find(".sc-action-delete > span > input").click();
        $(".sc-list-body").find("div").eq(index).find(".sc-action-delete > span > input").trigger("click");
        $(".sc-list-body").find("div").eq(index).find(".sc-action-delete > span").click();
        $(".sc-list-body").find("div").eq(index).find(".sc-action-delete > span").trigger("click");
        window.location.reload();
    }, 100 * parseInt(index));
}

function AmzItemNotAdded() {
    console.log("AmzItemNotAdded()");
    var isNotAdded = $("#huc-v2-order-row-confirm-text").text().trim();
    if (isNotAdded == "Not added") {
        //birse git ikiyse sil?
        var amzlink = "https://www.amazon.com/gp/cart/view.html?";
        var params = "PgNm=Amz&Sil=True";
        var link = amzlink + params;
        SayfaGit(link, 1);
    }
}

function AmzAdresEkle() {
    console.log("AmzAdresEkle()");
    chrome.storage.local.get(["AdresBilgileri"], function (item) {
        var data = item.AdresBilgileri;
        $("#add-new-address-popover-link").parent().click();
        $("#add-new-address-popover-link").parent().trigger("click");
        //Rita Cabases Goni ||  430 Grand Bay Dr Apt 1406|| Key Biscayne|| FL ||33149
        setTimeout(function () {
            $("input[name=enterAddressFullName]").val(data.Name);
            $("input[name=enterAddressAddressLine1]").val(data.Adres1);
            $("input[name=enterAddressAddressLine2]").val(data.Adres2);
            $("input[name=enterAddressCity]").val(data.City);
            $("input[name=enterAddressStateOrRegion]").val(data.State);
            $("input[name=enterAddressPostalCode]").val(data.PKod);
            $('#enterAddressCountryCode').val(data.Country).prop('selected', true);
            $("input[name=enterAddressPhoneNumber]").val(data.Phone);
            $(".a-popover-footer > div").children().eq(0).find("input").click();
            $(".a-popover-footer > div").children().eq(0).find("input").trigger("click");
            OriginalAddressCheck();
        }, 1000);

    });
}

function OriginalAddressCheck() {
    setTimeout(function () {
        if ($('#a-popover-content-2').parent().parent().parent().css('visibility') == 'visible') {
            $(".radio-option-list").children().eq(0).find('input:radio[name=addr]').prop('checked', true);
            $("#a-popover-content-2").next(".a-popover-footer").addClass("Butonlar");
            $(".Butonlar > div").children().eq(0).click();
            $(".Butonlar > div").children().eq(0).trigger("click");
            $(".Butonlar > div").children().eq(0).find("input").trigger("click");
            $(".Butonlar > div").children().eq(0).find("input").css("margin-left", "50px;");
            $(".Butonlar > div").children().eq(0).find("input").click();
            $(".Butonlar > div").children().eq(0).find("input").trigger("click");
            $(".Butonlar > div").children().eq(0).find("input").next("span").click();
            $(".Butonlar > div").children().eq(0).find("input").next("span").trigger("click");

            var AdresError = "Please correct the fields marked in red";
            var ErrorText = $(".a-color-error").text();
            var AdresErrorDurum = ErrorText.indexOf(AdresError) !== -1;
            if (AdresErrorDurum) {
                console.log("Please correct the fields marked in red || Çıktı... Yeni ürün getirilecek!");
				$("input[type=submit][aria-labelledby=newAddressUseThisAddressButton-announce]").click();
					 $("input[type=submit][aria-labelledby=newAddressUseThisAddressButton-announce]").trigger('click');
				AmzOrderComplete();
				//UrunZararYaz();
            } else {
                OriginalAddressCheckButtonClick();
                console.log("Adres düzeltme önerildi: Original adres seçildi.");
            }
        } else {
            var AdresError = "Please correct the fields marked in red";
            var ErrorText = $(".a-color-error").text();
            var AdresErrorDurum = ErrorText.indexOf(AdresError) !== -1;
            if (AdresErrorDurum) {
                console.log("Please correct the fields marked in red || Çıktı... Yeni ürün getirilecek!")
				$("input[type=submit][aria-labelledby=newAddressUseThisAddressButton-announce]").click();
					 $("input[type=submit][aria-labelledby=newAddressUseThisAddressButton-announce]").trigger('click');
               AmzOrderComplete();
				//UrunZararYaz();
            } else {
                AmzOrderComplete();
                console.log("Adres düzeltme önerilmedi!");
            }

        }
    }, 1000);

}

function OriginalAddressCheckButtonClick() {
    setTimeout(function () {
        $(".Butonlar > div").children().eq(0).click();
        $(".Butonlar > div").children().eq(0).trigger("click");
        $(".Butonlar > div").children().eq(0).find("input").trigger("click");
        $(".Butonlar > div").children().eq(0).find("input").click();
        $(".Butonlar > div").children().eq(0).find("input").trigger("click");
        $(".Butonlar > div").children().eq(0).find("input").next("span").click();
        $(".Butonlar > div").children().eq(0).find("input").next("span").trigger("click");
        AmzOrderComplete();
    }, 1000);
}

function AmzOrderComplete() {
	var i=0;
    chrome.storage.sync.get(["UrunID", "UrunFiyat", "NextPrice", "CardNumber"], function (item) {
		// if($("input[type=radio][value=no-rush-delivery]"))
			// $("input[type=radio][value=no-rush-delivery]").prop("checked",true);$("input[type=radio][value=no-rush-delivery]").click();$("input[type=radio][value=no-rush-delivery]").trigger('click');
        // console.log("AmzOrderComplete()");
		
        setInterval(function () {
			 $("input[type=radio][value=no-rush-delivery]").prop("checked",true);$("input[type=radio][value=no-rush-delivery]").click();$("input[type=radio][value=no-rush-delivery]").trigger('click');
            console.log("AmzOrderComplete()" + i);
			i++;
			
			if(i==10)
			{
				$("input[type=radio][value=no-rush-delivery]").prop("checked",true);$("input[type=radio][value=no-rush-delivery]").click();$("input[type=radio][value=no-rush-delivery]").trigger('click');
				$(".tikladim2").click();
				$(".tikladim2").trigger("click");
				$(".tikladim1").click();
				$(".tikladim1").trigger("click");
				$("#submitOrderButtonId > span > input").click();
			}	
        }, 3000);
		setTimeout(function () {
        waitForElement("#subtotals-marketplace-spp-bottom > span", function () {	 
            var LastPrice = $("#subtotals-marketplace-spp-bottom > span").text().split("$")["1"];
            var DLastPrice = parseFloat(LastPrice);
            var DUrunFiyat = parseFloat(item.UrunFiyat);
            var DNextPrice = parseFloat(item.NextPrice);
            console.log(DLastPrice);
            console.log(DUrunFiyat);
            console.log(DNextPrice);
            if (DLastPrice <= DUrunFiyat || DLastPrice <= DNextPrice) {
			
                chrome.storage.sync.set({
                    "Durum": "SiparisTamamla",
					"DLastPrice": DLastPrice,
					
                }, function () {
                    $("#submitOrderButtonId > span > input").addClass("tikladim1");
                    $("#submitOrderButtonId > span > input").click();
                    $("#submitOrderButtonId > span > input").trigger("click");
					
                    waitForElement("#submitOrderButtonId > span", function () {


                        var checkError = $(".a-color-error").text();
                        if (checkError.length > 0) {
                            HataKontrolYap(1, checkError.trim());
                            console.log("Hata var:" + checkError.trim());
                            UrunAl();
                        } else {
                            //sipariş alınacak.

                            $("input[name=placeYourOrder1]").click();
                            $("input[name=placeYourOrder1]").trigger("click");
                            $("#submitOrderButtonId").addClass("isa1");
                            $("#submitOrderButtonId").trigger("click");
                            $("#submitOrderButtonId > span").click();
                            $("#submitOrderButtonId > span").trigger("click");
                            $("#submitOrderButtonId > span > input").click();
                            $("#submitOrderButtonId > span > input").trigger("click");
                            $("#submitOrderButtonId > span > input").addClass("tikladim2");
                            console.log("AmzOrderComplete Button tıkladım");
							
							setTimeout(function () {
								$(".tikladim2").click();
								$(".tikladim2").trigger("click");
								$(".tikladim1").click();
								$(".tikladim1").trigger("click");
							}, 10000);
								
                        }
                    });
                    console.log("AmzOrderComplete Button tıklanacak");
				
                });

            } else {
                console.log("AmzOrderComplete() son fiyat ile istenilen fiyattan fazla");
				
                UrunAl();
				setTimeout(function () {
								SekmeKapat(1);
							}, 3000);
				

            }
        });
		}, 3000);
        waitForElement("#existing-credit-cards-box > .payment-row", function () {


            $("#addCreditCardNumber").parent().parent().addClass("ekledim");
            $("#addCreditCardNumber").parent().parent().removeClass("hidden");
            $("#addCreditCardNumber").parent().parent().css("display", "block");
            $("#addCreditCardNumber").parent().parent().show();
            $("#existing-credit-cards-box > .payment-row").eq(0).addClass("payment-selected");
            $("#existing-credit-cards-box > .payment-row").eq(0).children().find('input:radio[name=paymentMethod]').prop('checked', true);
            //credit card CardNumber
            $("#addCreditCardNumber").val(item.CardNumber);
            $("#confirm-card").click();
            $("#confirm-card").trigger("click");
            console.log("card number eklendi");
            waitForElement("#useThisPaymentMethodButtonId", function () {
                $("#useThisPaymentMethodButtonId > span > input").click();
                $("#useThisPaymentMethodButtonId > span > input").trigger("click");
                $("#useThisPaymentMethodButtonId > span > span").click();
                $("#useThisPaymentMethodButtonId > span > span").trigger("click");
                console.log("continue-top tıkladım!");
            });

            console.log("card number tıkladım!");
        });

    });

}

var AmzOrderCompleteCheckCount = 0;

function AmzOrderCompleteCheck() {
    if (AmzOrderCompleteCheckCount < 2) {
        setTimeout(function () {
            OriginalAddressCheck();
            console.log("OriginalAddressCheck() Tekrar");
            AmzOrderCompleteCheckCount++;
        }, 2000);
    }

}

function AmzSiparisTamamla() {
    chrome.storage.sync.get(["AmzSeller","DLastPrice"], function (item) {
        console.log("AmzSiparisTamamla()");
        var MagazaAdi = item.AmzSeller;
        var AbeOrAmazon = 0;
        var SiparisNo = QueryStringOku("orderId");
        SiparisTamamla(MagazaAdi, SiparisNo, AbeOrAmazon);
        console.log("MagazaAdi:" + MagazaAdi + " SiparisNo:" + SiparisNo + " AbeSaticiNo: " + "-" + "Son Fiyat:" + item.DLastPrice);
    });

    // var SiparisNo = $("[id|='order-number']").text();
}

function AbeUrunAl(IstenilenFiyat) {
    chrome.storage.local.get(["AbeUrunList"], function (item) {
        console.log(item.AbeUrunList);
        var AbeUrunList = item.AbeUrunList;
        var itemIndex = QueryStringOku("itemIndex");
        var itemPage = QueryStringOku("itemPage");
        var NPrice = QueryStringOku("NPrice");
        var LocaldekiUrun = AbeUrunList.find(item => item.index == itemIndex && item.Page == itemPage);

        var Urun = $(".result-set").find("div.result").eq(itemIndex);
        var UrunFiyat = Urun.find(".srp-item-price").text().split(" ")[1];
        var KargoFiyat = Urun.find(".srp-item-price-shipping").text().split(" ")[1];

        var DUrunFiyat = parseFloat(UrunFiyat);
        var DKargoFiyat = KargoFiyat != undefined ? parseFloat(KargoFiyat) : 0;
        var Price = DUrunFiyat + DKargoFiyat;

        var c = Urun.find(".clear-all").children().eq(1).text().split("Condition:")[1];
        var Condition = c != undefined ? c.split(".")[0].trim() : "-";
        var Seller = Urun.find(".bookseller-info").children().eq(0).children().text().trim();

        Price = Price.toFixed(2);

        console.log("Localdeki:" + LocaldekiUrun.Condition + " " + LocaldekiUrun.Seller + " " + LocaldekiUrun.Price);
        console.log("Sayfadaki:" + Condition + " " + Seller + " " + Price);
        if (NPrice == null) {
            NPrice = IstenilenFiyat;
        }
        if (LocaldekiUrun.Condition == Condition && LocaldekiUrun.Seller == Seller && (Price <= parseFloat(LocaldekiUrun.Price).toFixed(2)) || parseFloat(Price).toFixed(2) <= parseFloat(NPrice).toFixed(2)) {
            console.log("İki ürün aynı işlemlere devam edilecek! (Abebook)");

            var a = Urun.find(".btn-add-to-basket").attr('href');

            var abelink = "https://www.abebooks.com" + a;
            var params = "&PgNm=Abe&Basket=True";
            var link = abelink + params;

            chrome.storage.sync.set({
                'AbeSepetUrunLink': link,
                "NextPrice": NPrice
            }, function () {
                SayfaGit(link, 1);

            });

        } else {

            console.log("İki ürün aynı değil, diğer ürüne geç! (Abebook)");
            UrunAl();

        }

    });

}

function AbeBasketPage() {

    console.log("AbeBasketPage()");

    var SepetCount = $("#bskc").text();
    console.log(SepetCount);
    if (SepetCount != undefined && SepetCount.length > 0) {
        if (parseInt(SepetCount) > 1) {
            console.log("Sepetteki ürün 1 dan fazla");
            $(".saveDelete").find(".secondarybutton").click();
            $(".saveDelete").find(".secondarybutton").trigger("click");

        } else {
            console.log("Sepetteki ürün adeti 1. İşlemlere devam edilecek. AbeBasketPage()");
            var ErrorMessage = $(".errorMessage").text();
            var itemSold = "Item sold";
            var itemSoldDurum = ErrorMessage.indexOf(itemSold) !== -1;
            var itemSoldText = $(".status > .alert").text();
            if (itemSoldDurum || itemSoldText.length > 0) {
                console.log("Sepetteki ürün adeti 1. Fakat ürün satılmış. Yeni Ürüne geçilecek! AbeBasketPage()");
                // UrunZararYaz();
                UrunAl();
            } else {
                console.log("Sepetteki ürün adeti 1. Ürün stokta mevcut! AbeBasketPage()");
                var SepetKargoAdres = "https://www.abebooks.com/servlet/ShippingAddress?AddAdres=true&PgNm=Abe";
                SayfaGit(SepetKargoAdres, 1);
            }

        }
    } else {
        var ErrorMessage = $(".errorMessage").text();
        var itemSold = "Item sold";
        var itemSoldDurum = ErrorMessage.indexOf(itemSold) !== -1;
        if (itemSoldDurum) {
            console.log("ürün satılmış. Yeni Ürüne geçilecek! AbeBasketPage()");
           // UrunZararYaz();
           UrunAl();
        } else {
            console.log("Sepet Boş. Ürün tekrar alınacak! AbeBasketPage()");
            chrome.storage.sync.get(["AbeSepetUrunLink"], function (item) {
                console.log(item.AbeSepetUrunLink);
            });

        }

    }

}

function AbeBasketBosalt() {
    console.log("AbeBasketBosalt()");

    var SepetCount = $("#bskc").text();
    if (SepetCount != undefined && SepetCount.length > 0) {
        if (parseInt(SepetCount) != 0) {
            console.log("Sepetteki ürün 0'dan fazla. Sepet boşaltılacak! AbeBasketBosalt()");
            $(".saveDelete").find(".secondarybutton").click();
            $(".saveDelete").find(".secondarybutton").trigger("click");
        } else {
            console.log("Sepetteki ürün 0 (Code:1)");
        }
    } else {
        console.log("Sepet Boş. Ürün tekrar alınacak. AbeBasketBosalt()");
        chrome.storage.sync.get(["AbeSepetUrunLink"], function (item) {
            console.log(item.AbeSepetUrunLink);
            SayfaGit(item.AbeSepetUrunLink, 1);
        });
    }

}
function AbeAdresSilme(){
	console.log($('#delete-address-link-10'));
	if($('#delete-address-link-10').length){
			setTimeout(function () {
				$('#delete-address-link-10').click();
				$('#delete-address-link-10').trigger('click');			
			}, 5000);
			 var url  = "https://www.abebooks.com/servlet/ShippingAddress?AddAdres=true&PgNm=Abe";
			 getSayfa(url);
			
	}else{
		 
		AbeAdresEkle();
	}
}
function AbeAdresEkle() {
    console.log("AbeAdresEkle()");
    chrome.storage.local.get(["AdresBilgileri"], function (item) {

        var Adressler = $(".address");
        var ToplamAdres = $(".address").length - 3;
        console.log(ToplamAdres);
		 
		
        Adressler.each(function (index) {;

            if (ToplamAdres > 10) {
                if (index != 0 && index < ToplamAdres) {
					// $('#delete-address-link-'+index).click();
					// $('#delete-address-link-'+index).trigger('click');
					// console.log('ededsed');
                    // var href = $(this).children("a").eq(1).attr("href");
                    // var url = "https://www.abebooks.com" + href;
                    // console.log(url);
                    // getSayfa(url);
                }
            }
        });

		  
         chrome.storage.sync.set({
                        "AdresEklendi": true
                    }, function () {
                        var data = item.AdresBilgileri;
						$('#countryisocode').val("USA").prop('selected', true);
						$("input[name=firstandlastname]").val(data.Name);
						$("input[name=address1]").val(data.Adres1);
						$("input[name=address2]").val(data.Adres2);
						$("input[name=zipcode]").val(data.PKod);
						$("input[name=city]").val(data.City);
						$("input[name=phone]").val(data.Phone);

						// $('#provstate').val("ME").prop('selected', true);
						$('#provstate').val(data.State).prop('selected', true);
						// $("input[name=setAsDefault]").prop('checked', true);
						$("#setAsDefault0").prop('checked', true);
						$("#savesubmitid").click();
						$("#savesubmitid").trigger("click");
						console.log("Adres ekledim!");
						
                    });
			
			// var link = "https://www.abebooks.com/servlet/OrderSummary?Complete=true&PgNm=Abe"
			//  SekmeAc(link);
			// console.log("Adres ekledim!");
			// var link = "https://www.abebooks.com/servlet/OrderSummary?Billing=true&PgNm=Abe"
			//  SekmeAc(link);
		
    });
}

function AbeEditBilling() {
    console.log("AbeEditBilling();")
    chrome.storage.sync.get(["UrunID", "UrunFiyat", "NextPrice"], function (item) {

        waitForElement(".couponList > span.price", function () {
            var LastPrice = $(".couponList > span.price").text().split("$")["1"];
            var DLastPrice = parseFloat(LastPrice);
            var DUrunFiyat = parseFloat(item.UrunFiyat);
            var DNextPrice = parseFloat(item.NextPrice);
            console.log(DLastPrice);
            console.log(DUrunFiyat);
            console.log(DNextPrice);
            if (DLastPrice <= DUrunFiyat || DLastPrice <= DNextPrice) {
                var adres = $("#addressid").parent("td").text().length;
                console.log("fatura adresi eklenecek");
                if (adres > 100) {
                    console.log("AbeEditBilling Button tıklanacak!");
                    $("#editbillinginfo").click();
                    $("#editbillinginfo").trigger("click");
                }

            } else {
                console.log("AbeEditBilling() son fiyat ile istenilen fiyattan fazla!");
                UrunAl();

            }
        });

    });
}

function AbeSaveBilling() {
    console.log("AbeSaveBilling()");
	if($("#saveButton").length  > 0){
		$("#saveButton").click();
    $("#saveButton").trigger("click");
	}else{
		$("#savesubmitid").click();
    $("#savesubmitid").trigger("click");
	}
    
}

function AbeOrderComplete() {
    console.log("AbeOrderComplete();")
    chrome.storage.sync.get(["UrunID", "UrunFiyat", "NextPrice"], function (item) {

        waitForElement(".couponList > span.price", function () {
            var LastPrice = $(".couponList > span.price").text().split("$")["1"];
            var DLastPrice = parseFloat(LastPrice);
            var DUrunFiyat = parseFloat(item.UrunFiyat);
            var DNextPrice = parseFloat(item.NextPrice);
            console.log(DLastPrice);
            console.log(DUrunFiyat);
            console.log(DNextPrice);
            if (DLastPrice <= DUrunFiyat || DLastPrice <= DNextPrice) {
                console.log("AbeOrderComplete Button tıklanacak!");


                var kargoadres = $("#addressid").parent("td").text().length;
                var faturaadres = $("#editbillinginfo").parent().parent().parent().text().length;

                console.log(faturaadres);
                console.log("tıklanacak");


                if (kargoadres > 100 && faturaadres > 100) {
                    chrome.storage.sync.set({
                        "Durum": "SiparisTamamla",
						"DLastPrice": DLastPrice,
						"AdresEklendi":false
                    }, function () {
                        //tah
                        $(".btn-abebooks").click();
                        $(".btn-abebooks").trigger("click");
                        console.log("abe Button tıklanacak");
                    });
                }


            } else {
                console.log("AbeOrderComplete() son fiyat ile istenilen fiyattan fazla!");

                UrunAl();
				SekmeKapat(1);
            }
        });

    });




}



function AbeSiparisTamamla() {

    console.log("AbeSiparisTamamla()");

    var form = $("#main > .panel-default").eq(0);

    if (form.length > 0) {
        var MagazaAdi = form.find(".bookseller-heading").children().eq(1).text().trim();
        var SiparisNo = form.find(".x-large").text().split('#')[1].trim();
        console.log(SiparisNo);
        var AbeOrAmazon = 1;
        var AbeSaticiNo = form.find(".bookseller-heading").find(".po-number").text().trim().split(":")["1"].trim();
        console.log("MagazaAdi:" + MagazaAdi + " SiparisNo:" + SiparisNo + " AbeSaticiNo: " + AbeSaticiNo);
        console.log(AbeSaticiNo);
        SiparisTamamla(MagazaAdi, SiparisNo, AbeOrAmazon, AbeSaticiNo);
    }
}

function getSayfa(adres) {
    var strText = null;
    $.ajax({
        url: adres,
        async: false,
        dataType: 'text',
        success: function (text) {
            strText = text;
        },
        error: function (http, message, exc) {
            strText = null;
        }
    });

    return strText;
}

function QueryStringOku(name, url) {
    if (!url) url = window.location.href;
    name = name.replace(/[\[\]]/g, "\\$&");
    var regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)"),
        results = regex.exec(url);
    if (!results) return null;
    if (!results[2]) return '';
    return decodeURIComponent(results[2].replace(/\+/g, " "));
}

function SekmeKapat(sure) {
    setTimeout(function () {
        chrome.runtime.sendMessage({
            SekmeKapat: true,
        });
    }, sure * 1000);
}

function SekmeBilgileriGonder() {
    chrome.runtime.sendMessage({
        AktifSekmeBilgileri: true,
    });
}


function waitForElement(elementPath, callBack) {
    window.setTimeout(function () {
        if ($(elementPath).text().length > 0) {
            callBack(elementPath, $(elementPath));
        } else {
            waitForElement(elementPath, callBack);
        }
    }, 100);
}


function ClearData() {
    AppLog(log);
    AppLogGonder();
    sessionStorage.clear();
    chrome.runtime.sendMessage({
        LinkHata: "LinkteError",
        YeniSekme: true
    });
    clearTimeout(HataKontrol);
}


function AppLogGonder() {
    chrome.runtime.sendMessage({
        HataDurum: HataDurum,
        isStarted: isStarted,
        AppLog: logs
    });
}

function AppLog(log) {

    var time = new Date().toLocaleString();
    var test = log + " - " + time;
    var loglar = logs;
    if (loglar.length < 6) {
        loglar.push(test);
    } else {
        loglar.splice(0, 1);
        loglar.push(test);
    }
    logs = loglar;
    localStorage.setItem('LocalStorageAppLog', JSON.stringify(logs));
    chrome.storage.sync.set({
        'AppLog': test
    }, function () {

    });
}


function SayfaGit(adres, time) {
    setTimeout(function () {
        window.location.href = adres;
    }, parseInt(time) * 1000);

}


function BellekSil() {
    chrome.storage.sync.remove([
        "isStarted",
        "Durum"
    ], function () {});

}

var HataKontrol;

function HataKontrolYap(time, msj2) {
    HataKontrol = setTimeout(function () {
        chrome.storage.sync.get(["isStarted", "PcName", "UygulamaAdi", "Durum", "UrunID", "MagazaAdi"],
            function (item) {
                var aciklama = "";
                if (msj2 == undefined) {
                    aciklama = "";
                } else {
                    aciklama = msj2;
                }
                var msj = `Bilgisayar: ${item.PcName} Mağaza Adı: ${item.MagazaAdi}  Durum: ${item.Durum} iken extension çalışmayı durdurdu! ${aciklama}`;
                var datam = {
                    "ID": item.UrunID,
                    "tip": "newOrderBreak",
                    "mesaj": msj
                };
                console.log(msj);

                $.ajax({
                    type: "post",
                    url: "https://www.andromedaworkspace.com/Extension/ajaxCall",
                    beforeSend: function (xhr) {
                        xhr.setRequestHeader('X-Requested-With', 'XMLHttpRequest');
                    },
                    cache: false,
                    dataType: "json",
                    data: datam,
                    success: function (cevap) {

                        if (cevap.hata == 0) {
                            console.log("Hata: Hata Bilgisi Gönderilemedi!");


                        } else {
                            if (cevap.result) {
                                console.log(cevap.result);
                                setTimeout(function () {

                                }, 3000);
                            }
                        }
                        console.log("Hata Bilgisi  Gönder Response!");
                    },
                    error: function (req, textStatus, errorThrown) {
                        console.log('Ooops, something happened: ' + textStatus + ' ' + errorThrown);
                    }
                });
            });
    }, parseInt(time) * 1000);
}

function getRandomInt(max) {
    return Math.floor(Math.random() * (max - 0 + 1)) + 0;
}


function SekmeAc(link) {
    setTimeout(function () {
        console.log("Sekme Açılıyor: " + link);
        chrome.runtime.sendMessage({
            YeniSekme: true,
            Url: link,
        });
    }, 200);
}