|
İlk Yaptığında Kamera Sorunsuz Açılıyor Ancak Uygulamadan Çıkmadan Tekrar Fotoğraf Çekmek İstediği Zaman Donuyor. (Eğer Orda Donmasa Ürünü Analiz Et Butonuna Basınca Donuyor, Her Türlü Donuyor. Android'de Sorun Olmadan Çalışıyor.)
var AnaSayfaForm : TCLForm; lblHosGeldin : TClProLabel; edtBarkodSonuc : TclProEdit; btnBarkodOkut, btnUrunBul : TClProButton; lblUrunFotoCerceve : TClProLabel; imgUrunFoto : TClImage; lytBottomContainer, lytBottomBarBg, lytIconsLayer : TClLayout; lytNavLeft, lytNavMiddle, lytNavRight : TClLayout; lblBarBg, lblNavMiddleBg, lblNavLeftBg : TClProLabel; imgNavLeft, imgNavMiddle, imgNavRight : TClImage; lytLogoutOverlay, lytLogoutKasa, lytLogoutBtnKasa : TClLayout; lblLogoutArkaplan, lblLogoutKasaBg, lblLogoutSoru : TClProLabel; btnLogoutEvet, btnLogoutIptal : TClProButton;
lytHesapSilOverlay, lytHesapSilKasa, lytHesapSilBtnKasa : TClLayout; lblHesapSilArkaplan, lblHesapSilKasaBg, lblHesapSilSoru : TClProLabel; btnHesapSilEvet, btnHesapSilIptal : TClProButton;
tmrGemini, tmrKamera : TclTimer; OpenFoodFactsApi, GeminiApi, ProfilApi : TCLRest; btnAnaStil, btnAltStil, btnKirmiziStil, prefFile, edtStil, edtSoftStil : String; prefList : TclStringList; scrollAna : TclVertScrollBox; lytScrollBosluk : TClLayout; lytUstKasa, lytSonucKasa : TClLayout; lytKasaUrun, lytKasaColyak, lytKasaSporcu : TClLayout; lytIcerikUrun, lytIcerikColyak, lytIcerikSporcu : TClLayout; lblKasaUrunBg, lblKasaColyakBg, lblKasaSporcuBg : TClProLabel; lblUrunBaslik, lblColyakBaslik, lblSporcuBaslik : TClProLabel; memoUrunCevap, memoColyakCevap, memoSporcuCevap : TclMemo; lytProfilKasa : TClLayout; scrollProfil : TclVertScrollBox; lytP_Tercihler, lytP_CheckList, lytP_Sifre, lytP_HesapSil, lytP_Bosluk : TClLayout; lblP_AdSoyad, lblP_Email, lblP_TercihBaslik, lblP_SifreBaslik, lblP_TercihKasaBg, lblP_SifreKasaBg, lblP_SifreKurallari : TClProLabel; chkP_Colyak, chkP_Sporcu, chkP_Vegan, chkP_Vejetaryen, chkP_Saglikli, chkP_Diyabet, chkP_Laktoz : TclCheckBox; edtP_EskiSifre, edtP_Sifre, edtP_SifreTekrar : TclProEdit; imgP_EskiSifre, imgP_Sifre, imgP_SifreTekrar : TClProImage; btnP_TercihKaydet, btnP_SifreKaydet, btnP_HesapSil : TClProButton; IslemTipi, ArananDeger, KullaniciTercihleri, KullaniciEmail, apiUrl, apiKey : String;
void OrtadakiButonTikladi; var i : Integer; { if (lblNavMiddleBg.Visible == True) { Exit; } lytProfilKasa.Visible = False; scrollAna.Visible = True; lblNavLeftBg.Visible = False; lblNavMiddleBg.Visible = True;
i = 1; while (i <= 6) { lytNavLeft.Margins.Top = lytNavLeft.Margins.Top + 5; lytNavLeft.Margins.Bottom = lytNavLeft.Margins.Bottom - 5; if (lytNavLeft.Margins.Top > 30) { lytNavLeft.Margins.Top = 30; } if (lytNavLeft.Margins.Bottom < 20) { lytNavLeft.Margins.Bottom = 20; }
lytNavMiddle.Margins.Top = lytNavMiddle.Margins.Top - 5; lytNavMiddle.Margins.Bottom = lytNavMiddle.Margins.Bottom + 5; if (lytNavMiddle.Margins.Top < 0) { lytNavMiddle.Margins.Top = 0; } if (lytNavMiddle.Margins.Bottom > 30) { lytNavMiddle.Margins.Bottom = 30; }
AnaSayfaForm.StartProcessMessages(15); i = i + 1; } }
void SoldakiButonTikladi; var i : Integer; { if (lblNavLeftBg.Visible == True) { Exit; } scrollAna.Visible = False; lytProfilKasa.Visible = True; lblNavMiddleBg.Visible = False; lblNavLeftBg.Visible = True;
i = 1; while (i <= 6) { lytNavMiddle.Margins.Top = lytNavMiddle.Margins.Top + 5; lytNavMiddle.Margins.Bottom = lytNavMiddle.Margins.Bottom - 5; if (lytNavMiddle.Margins.Top > 30) { lytNavMiddle.Margins.Top = 30; } if (lytNavMiddle.Margins.Bottom < 20) { lytNavMiddle.Margins.Bottom = 20; }
lytNavLeft.Margins.Top = lytNavLeft.Margins.Top - 5; lytNavLeft.Margins.Bottom = lytNavLeft.Margins.Bottom + 5; if (lytNavLeft.Margins.Top < 0) { lytNavLeft.Margins.Top = 0; } if (lytNavLeft.Margins.Bottom > 30) { lytNavLeft.Margins.Bottom = 30; }
AnaSayfaForm.StartProcessMessages(15); i = i + 1; } }
void ChkP_VeganClick; { if (chkP_Vegan.isChecked == False) { chkP_Vejetaryen.isChecked = False; chkP_Vejetaryen.Enabled = False; } else { chkP_Vejetaryen.Enabled = True; } }
void P_SifreGizleGosterEski; { if (edtP_EskiSifre.Password == True) { edtP_EskiSifre.Password = False; AnaSayfaForm.SetImage(imgP_EskiSifre, ' https://i.ibb.co/2311b9kv/acikgoz.png" rel="nofollow - https://i.ibb.co/2311b9kv/acikgoz.png '); } else { edtP_EskiSifre.Password = True; AnaSayfaForm.SetImage(imgP_EskiSifre, ' https://i.ibb.co/Z1V7rfXV/kapal-g-z.png" rel="nofollow - https://i.ibb.co/Z1V7rfXV/kapal-g-z.png '); } }
void P_SifreGizleGosterYeni; { if (edtP_Sifre.Password == True) { edtP_Sifre.Password = False; AnaSayfaForm.SetImage(imgP_Sifre, ' https://i.ibb.co/2311b9kv/acikgoz.png" rel="nofollow - https://i.ibb.co/2311b9kv/acikgoz.png '); } else { edtP_Sifre.Password = True; AnaSayfaForm.SetImage(imgP_Sifre, ' https://i.ibb.co/Z1V7rfXV/kapal-g-z.png" rel="nofollow - https://i.ibb.co/Z1V7rfXV/kapal-g-z.png '); } }
void P_SifreGizleGosterTekrar; { if (edtP_SifreTekrar.Password == True) { edtP_SifreTekrar.Password = False; AnaSayfaForm.SetImage(imgP_SifreTekrar, ' https://i.ibb.co/2311b9kv/acikgoz.png" rel="nofollow - https://i.ibb.co/2311b9kv/acikgoz.png '); } else { edtP_SifreTekrar.Password = True; AnaSayfaForm.SetImage(imgP_SifreTekrar, ' https://i.ibb.co/Z1V7rfXV/kapal-g-z.png" rel="nofollow - https://i.ibb.co/Z1V7rfXV/kapal-g-z.png '); } }
void BtnP_TercihKaydetClick; var secilenTercih, jsonBody : String; { if (KullaniciEmail == '') { ShowMessage('Oturum zaman aşımına uğradı. Lütfen giriş yapın.'); Clomosy.RunUnit('uLogin'); Exit; }
secilenTercih = ''; if (chkP_Colyak.isChecked == True) { secilenTercih = 'Çölyak'; } if (chkP_Sporcu.isChecked == True) { if (secilenTercih == '') { secilenTercih = 'Sporcu'; } else { secilenTercih = secilenTercih + ', Sporcu'; } } if (chkP_Vegan.isChecked == True) { if (secilenTercih == '') { secilenTercih = 'Vegan'; } else { secilenTercih = secilenTercih + ', Vegan'; } } if ((chkP_Vejetaryen.isChecked == True) && (chkP_Vegan.isChecked == False)) { if (secilenTercih == '') { secilenTercih = 'Vejetaryen'; } else { secilenTercih = secilenTercih + ', Vejetaryen'; } } if (chkP_Saglikli.isChecked == True) { if (secilenTercih == '') { secilenTercih = 'Sağlıklı Beslenme'; } else { secilenTercih = secilenTercih + ', Sağlıklı Beslenme'; } } if (chkP_Diyabet.isChecked == True) { if (secilenTercih == '') { secilenTercih = 'Diyabet'; } else { secilenTercih = secilenTercih + ', Diyabet'; } } if (chkP_Laktoz.isChecked == True) { if (secilenTercih == '') { secilenTercih = 'Laktoz İntoleransı'; } else { secilenTercih = secilenTercih + ', Laktoz İntoleransı'; } } if (secilenTercih == '') { secilenTercih = 'Yok'; }
jsonBody = '{"tercihler": "' + secilenTercih + '"}'; ProfilApi.BaseURL = apiUrl + '/rest/v1/kullanicilar?email=eq.' + KullaniciEmail; ProfilApi.Method = rmPatch; ProfilApi.AddHeader('apikey', apiKey); ProfilApi.AddHeader('Authorization', 'Bearer ' + apiKey); ProfilApi.AddHeader('Content-Type', 'application/json'); ProfilApi.AddBody(jsonBody, 'application/json'); try ProfilApi.Execute; prefList.Clear; prefList.Add(KullaniciEmail); prefList.Add(Clomosy.GlobalVariableString); prefList.Add(secilenTercih); prefList.SaveToFile(prefFile, 0); KullaniciTercihleri = secilenTercih; ShowMessage('Tercihleriniz başarıyla güncellendi!'); except ShowMessage('Tercihler güncellenirken bir hata oluştu.'); } }
void BtnP_SifreKaydetClick; var eskiSifre, sifre, karakter, lowerChars, upperChars, digitChars, jsonBody: String; i, len, hasLower, hasUpper, hasDigit, hasSpecial: Integer; { if (KullaniciEmail == '') { ShowMessage('Oturum zaman aşımına uğradı. Lütfen giriş yapın.'); Clomosy.RunUnit('uLogin'); Exit; }
eskiSifre = edtP_EskiSifre.Text; sifre = edtP_Sifre.Text; if ((eskiSifre == '') || (sifre == '') || (edtP_SifreTekrar.Text == '')) { ShowMessage('Lütfen tüm şifre alanlarını doldurun.'); Exit; } if (sifre <> edtP_SifreTekrar.Text) { ShowMessage('Yeni şifreler eşleşmiyor!'); Exit; } if (eskiSifre == sifre) { ShowMessage('Yeni şifreniz mevcut şifrenizle aynı olamaz!'); Exit; } ProfilApi.BaseURL = apiUrl + '/rest/v1/kullanicilar?email=eq.' + KullaniciEmail + '&sifre=eq.' + eskiSifre; ProfilApi.Method = rmGet; ProfilApi.AddHeader('apikey', apiKey); ProfilApi.AddHeader('Authorization', 'Bearer ' + apiKey); ProfilApi.Execute; if ((ProfilApi.Response == '[]') || (ProfilApi.Response == '')) { ShowMessage('Mevcut (eski) şifrenizi yanlış girdiniz!'); Exit; } len = Length(sifre); if ((len < 8) || (len > 50)) { ShowMessage('Şifre 8-50 karakter olmalıdır!'); Exit; } hasLower = 0; hasUpper = 0; hasDigit = 0; hasSpecial = 0; lowerChars = 'abcdefghijklmnopqrstuvwxyzçğıöşü'; upperChars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZÇĞIÖŞÜ'; digitChars = '0123456789'; i = 1; while (i <= len) { karakter = Copy(sifre, i, 1); if (Pos(karakter, lowerChars) > 0) { hasLower = 1; } else if (Pos(karakter, upperChars) > 0) { hasUpper = 1; } else if (Pos(karakter, digitChars) > 0) { hasDigit = 1; } else { hasSpecial = 1; } i = i + 1; }
if (hasUpper == 0) { ShowMessage('Şifre en az 1 büyük harf içermeli!'); Exit; } if (hasLower == 0) { ShowMessage('Şifre en az 1 küçük harf içermeli!'); Exit; } if (hasDigit == 0) { ShowMessage('Şifre en az 1 rakam içermeli!'); Exit; } if (hasSpecial == 0) { ShowMessage('Şifre en az 1 özel karakter içermeli!'); Exit; }
jsonBody = '{"sifre": "' + sifre + '"}'; ProfilApi.BaseURL = apiUrl + '/rest/v1/kullanicilar?email=eq.' + KullaniciEmail; ProfilApi.Method = rmPatch; ProfilApi.AddHeader('Content-Type', 'application/json'); ProfilApi.AddBody(jsonBody, 'application/json'); try ProfilApi.Execute; ShowMessage('Şifreniz başarıyla değiştirildi! Güvenliğiniz için lütfen yeni şifrenizle tekrar giriş yapın.'); prefList.Clear; prefList.SaveToFile(prefFile, 0); Clomosy.GlobalVariableString = ''; KullaniciEmail = ''; Clomosy.RunUnit('uLogin'); except ShowMessage('Şifre güncellenirken bir hata oluştu.'); } }
void BtnP_HesapSilSoru; { if (KullaniciEmail == '') { ShowMessage('Oturum zaman aşımına uğradı. Lütfen giriş yapın.'); Clomosy.RunUnit('uLogin'); Exit; } lytHesapSilOverlay.Visible = True; lytHesapSilOverlay.BringToFront; }
void BtnP_HesapSilIptal; { lytHesapSilOverlay.Visible = False; }
void BtnP_HesapSilEvet; { ProfilApi.BaseURL = apiUrl + '/rest/v1/kullanicilar?email=eq.' + KullaniciEmail; ProfilApi.Method = rmDelete; ProfilApi.AddHeader('apikey', apiKey); ProfilApi.AddHeader('Authorization', 'Bearer ' + apiKey); try ProfilApi.Execute; prefList.Clear; prefList.SaveToFile(prefFile, 0); Clomosy.GlobalVariableString = ''; KullaniciEmail = ''; ShowMessage('Hesabınız başarıyla silindi. Hoşça kalın!'); Clomosy.RunUnit('uKarsilama'); except ShowMessage('Hesap silinirken bir hata oluştu.'); lytHesapSilOverlay.Visible = False; } }
void BtnCikisSoru; { lytLogoutOverlay.Visible = True; lytLogoutOverlay.BringToFront; }
void BtnCikisIptal; { lytLogoutOverlay.Visible = False; }
void BtnCikisEvet; { prefList.Clear; prefList.SaveToFile(prefFile, 0); Clomosy.GlobalVariableString = ''; KullaniciEmail = ''; Clomosy.RunUnit('uKarsilama'); }
void btnBarkodOkutClick; { lblUrunFotoCerceve.Visible = False; lytSonucKasa.Visible = False; lytUstKasa.Height = 310; btnUrunBul.Enabled = True; AnaSayfaForm.CallBarcodeReader(edtBarkodSonuc); }
void OnGeminiCompleted; var jsonResp, tempStr, geminiSonuc : String; baslangic, bitis, pU, pC, pS, loopLimit : Integer; strU, strC, strS : String; { try jsonResp = GeminiApi.Response; if (jsonResp == '') { ShowMessage('Bağlantı zaman aşımına uğradı veya internet koptu. Lütfen tekrar deneyin.'); memoUrunCevap.Text = 'Yanıt Alınamadı.'; memoColyakCevap.Text = 'Bağlantı Hatası.'; memoSporcuCevap.Text = 'Bağlantı Hatası.'; lytSonucKasa.Visible = True; btnUrunBul.Enabled = True; Exit; }
if (Pos('"error"', jsonResp) > 0) { if (Pos('RESOURCE_EXHAUSTED', jsonResp) > 0) { ShowMessage('Google API Kotası Doldu! Ücretsiz sürümde çok hızlı istek attığınız için geçici olarak engellendiniz. Lütfen 1 dakika bekleyin.'); memoUrunCevap.Text = 'Lütfen 1 Dakika Bekleyiniz (API Sınırı)'; memoColyakCevap.Text = 'API Kotası Doldu...'; memoSporcuCevap.Text = 'API Kotası Doldu...'; } else { ShowMessage('API Hatası Detayı: ' + jsonResp); memoUrunCevap.Text = 'API Hatası!'; memoColyakCevap.Text = 'Hata.'; memoSporcuCevap.Text = 'Hata.'; } lytSonucKasa.Visible = True; } else { loopLimit = 0; baslangic = Pos('\"', jsonResp); while ((baslangic > 0) && (loopLimit < 5000)) { jsonResp = Copy(jsonResp, 1, baslangic - 1) + '''' + Copy(jsonResp, baslangic + 2, Length(jsonResp)); baslangic = Pos('\"', jsonResp); loopLimit = loopLimit + 1; } baslangic = Pos('"text": "', jsonResp); if (baslangic > 0) { tempStr = Copy(jsonResp, baslangic + 9, Length(jsonResp)); bitis = Pos('"', tempStr) - 1; geminiSonuc = Trim(Copy(tempStr, 1, bitis)); loopLimit = 0; baslangic = Pos('\n', geminiSonuc); while ((baslangic > 0) && (loopLimit < 1000)) { geminiSonuc = Copy(geminiSonuc, 1, baslangic - 1) + #13#10 + Copy(geminiSonuc, baslangic + 2, Length(geminiSonuc)); baslangic = Pos('\n', geminiSonuc); loopLimit = loopLimit + 1; } loopLimit = 0; baslangic = Pos('*', geminiSonuc); while ((baslangic > 0) && (loopLimit < 1000)) { Delete(geminiSonuc, baslangic, 1); baslangic = Pos('*', geminiSonuc); loopLimit = loopLimit + 1; } loopLimit = 0; baslangic = Pos('\', geminiSonuc); while ((baslangic > 0) && (loopLimit < 1000)) { Delete(geminiSonuc, baslangic, 1); baslangic = Pos('\', geminiSonuc); loopLimit = loopLimit + 1; } pU = Pos('###URUN###', geminiSonuc); pC = Pos('###OZEL###', geminiSonuc); pS = Pos('###GENEL###', geminiSonuc); if (pU > 0) { if (pC > 0) { strU = Trim(Copy(geminiSonuc, pU + 10, pC - pU - 10)); } else { strU = Trim(Copy(geminiSonuc, pU + 10, Length(geminiSonuc) - pU + 1)); } } else { strU = 'Bulunamadı.'; } if (pC > 0) { if (pS > 0) { strC = Trim(Copy(geminiSonuc, pC + 10, pS - pC - 10)); } else { strC = Trim(Copy(geminiSonuc, pC + 10, Length(geminiSonuc) - pC + 1)); } } else { strC = 'Profilinize özel analiz çıkarılamadı.'; } if (pS > 0) { strS = Trim(Copy(geminiSonuc, pS + 11, Length(geminiSonuc) - pS + 1)); } else { strS = 'Genel bilgi bulunamadı.'; } if ((pU <= 0) && (pC <= 0) && (pS <= 0)) { strU = geminiSonuc; strC = 'Analiz edilemedi.'; strS = 'Analiz edilemedi.'; } memoUrunCevap.Text = strU; memoColyakCevap.Text = strC; memoSporcuCevap.Text = strS; lytSonucKasa.Visible = True; } else { memoUrunCevap.Text = 'Okunamadı.'; memoColyakCevap.Text = 'İçerik çekilemedi.'; memoSporcuCevap.Text = 'İçerik çekilemedi.'; ShowMessage('Yapay Zeka cevabı tam olarak okuyamadı!'); } } except ShowMessage('İşlem sırasında ufak bir hata oluştu. Lütfen tekrar deneyin.'); memoUrunCevap.Text = 'Bağlantı kesildi.'; memoColyakCevap.Text = 'Bağlantı kesildi.'; memoSporcuCevap.Text = 'Bağlantı kesildi.'; lytSonucKasa.Visible = True; } btnUrunBul.Enabled = True; }
void TmrGeminiTick; var jsonBody, base64Foto, OzelSartMetni : String; baslangic, loopLimit : Integer; MyStream : TclMemoryStream; { tmrGemini.Enabled = False; memoUrunCevap.Text = 'Yapay Zeka Sunucusuna Bağlanılıyor...'; memoColyakCevap.Text = 'Bekleniyor...'; memoSporcuCevap.Text = 'Bekleniyor...'; if (GeminiApi <> nil) { GeminiApi.Free; } GeminiApi = TCLRest.Create; OzelSartMetni = ''; if (Pos('Çölyak', KullaniciTercihleri) > 0) { OzelSartMetni = OzelSartMetni + 'Çölyak (Gluten yasak). '; } if (Pos('Sporcu', KullaniciTercihleri) > 0) { OzelSartMetni = OzelSartMetni + 'Sporcu (Protein/Temiz içerik). '; } if (Pos('Vegan', KullaniciTercihleri) > 0) { OzelSartMetni = OzelSartMetni + 'Vegan (Hayvansal yasak). '; } if (Pos('Vejetaryen', KullaniciTercihleri) > 0) { OzelSartMetni = OzelSartMetni + 'Vejetaryen (Et yasak). '; } if (Pos('Sağlıklı', KullaniciTercihleri) > 0) { OzelSartMetni = OzelSartMetni + 'Sağlıklı Beslenme (Katkı maddesi istemiyor). '; } if (Pos('Diyabet', KullaniciTercihleri) > 0) { OzelSartMetni = OzelSartMetni + 'Diyabet (İlave şeker yasak). '; } if (Pos('Laktoz', KullaniciTercihleri) > 0) { OzelSartMetni = OzelSartMetni + 'Laktoz İntoleransı (Süt ürünü yasak). '; } if (OzelSartMetni == '') { OzelSartMetni = 'Özel bir kısıtlama yok.'; } GeminiApi.BaseURL = ' https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent?key=AIzaSyBiV75pbw3O3gnyTH5DgOyMQ6C1BLrYHcs" rel="nofollow - https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent?key=AIzaSyBiV75pbw3O3gnyTH5DgOyMQ6C1BLrYHcs '; GeminiApi.Accept = 'application/json'; GeminiApi.Method = rmPost; GeminiApi.AddHeader('Content-Type', 'application/json'); if (IslemTipi == 'Gorsel') { imgUrunFoto.Bitmap.Resize(400, 400); MyStream = TclMemoryStream.Create; imgUrunFoto.Bitmap.SaveToStream(MyStream); MyStream.Position = 0; base64Foto = Clomosy.StreamToBase64(MyStream); MyStream.Free; loopLimit = 0; baslangic = Pos(Chr(13), base64Foto); while ((baslangic > 0) && (loopLimit < 25000)) { Delete(base64Foto, baslangic, 1); baslangic = Pos(Chr(13), base64Foto); loopLimit = loopLimit + 1; } loopLimit = 0; baslangic = Pos(Chr(10), base64Foto); while ((baslangic > 0) && (loopLimit < 25000)) { Delete(base64Foto, baslangic, 1); baslangic = Pos(Chr(10), base64Foto); loopLimit = loopLimit + 1; } jsonBody = '{"contents":[{"parts":[{"text":"Sen uzman bir gıda analistisin. Fotoğrafı analiz et. KULLANICI PROFİLİ: [' + OzelSartMetni + ']. KESİN KURAL: 1- Ürünün HANGİ MARKAYA ait olduğunu kesinlikle bul ve ''Marka - Ürün Adı'' formatında yaz (Örn: Tadım - Tadımca Yer Fıstıklı Bar). 2- SADECE profilde yazan durumu değerlendir. Profilde Çölyak, Diyabet gibi kelimeler YOKSA onlardan ASLA BAHSETME! 3- Ürünün genel kalitesini ve içeriğini özetle. FORMAT: ###URUN### [Marka - Adı] ###OZEL### [Profile uygunluk analizi] ###GENEL### [Kısa genel özet ve içindekiler]"},{"inline_data":{"mime_type":"image/jpeg","data":"' + base64Foto + '"}}]}]}'; } else { jsonBody = '{"contents":[{"parts":[{"text":"Sen uzman bir gıda analistisin. Ürün: ' + ArananDeger + '. KULLANICI PROFİLİ: [' + OzelSartMetni + ']. KESİN KURAL: 1- Verilen ürünün HANGİ MARKAYA ait olduğunu kendi veritabanından kesinlikle bul ve ''Marka - Ürün Adı'' formatında yaz (Örn: Tadım - Tadımca Yer Fıstıklı Bar). 2- SADECE profilde yazan durumu değerlendir. Profilde Çölyak, Diyabet gibi kelimeler YOKSA onlardan ASLA BAHSETME! 3- Ürünün genel kalitesini ve içeriğini özetle. FORMAT: ###URUN### [Marka - Adı] ###OZEL### [Profile uygunluk analizi] ###GENEL### [Kısa genel özet ve içindekiler]"}]}]}'; } GeminiApi.AddBody(jsonBody, 'application/json'); GeminiApi.OnCompleted = 'OnGeminiCompleted'; GeminiApi.ExecuteAsync; }
void TmrKameraTick; { tmrKamera.Enabled = False; Clomosy.ImageChooser(AnaSayfaForm, imgUrunFoto); btnUrunBul.Enabled = True; }
void btnUrunBulClick; var arananBarkod, jsonResp, tempStr, urunAdi : String; baslangic, bitis, loopLimit: Integer; { btnUrunBul.Enabled = False; edtBarkodSonuc.Enabled = False; edtBarkodSonuc.Enabled = True; AnaSayfaForm.clVKVisible = False;
if (lblUrunFotoCerceve.Visible == True) { if (imgUrunFoto.Bitmap == nil) { ShowMessage('Lütfen geçerli bir fotoğraf çekin!'); btnUrunBul.Enabled = True; Exit; } IslemTipi = 'Gorsel'; lytSonucKasa.Visible = True; memoUrunCevap.Text = 'Fotoğraf İşleniyor...'; memoColyakCevap.Text = 'Bekleniyor...'; memoSporcuCevap.Text = 'Bekleniyor...'; tmrGemini.Enabled = True; } else { arananBarkod = Trim(edtBarkodSonuc.Text); if (arananBarkod == '') { ShowMessage('Lütfen önce bir barkod okutun veya yazın!'); btnUrunBul.Enabled = True; Exit; } lytSonucKasa.Visible = True; memoUrunCevap.Text = 'Veritabanı Aranıyor...'; memoColyakCevap.Text = 'Bekleniyor...'; memoSporcuCevap.Text = 'Bekleniyor...'; OpenFoodFactsApi.BaseURL = ' https://world.openfoodfacts.org/api/v0/product/" rel="nofollow - https://world.openfoodfacts.org/api/v0/product/ ' + arananBarkod + '.json'; OpenFoodFactsApi.Accept = 'application/json'; OpenFoodFactsApi.Method = rmGet; try OpenFoodFactsApi.Execute; jsonResp = OpenFoodFactsApi.Response; except ShowMessage('Sunucuya bağlanılamadı!'); memoUrunCevap.Text = 'Bağlantı Hatası.'; btnUrunBul.Enabled = True; Exit; } if (Pos('"status":1', jsonResp) > 0) { baslangic = Pos('"product_name_tr":"', jsonResp); if (baslangic > 0) { tempStr = Copy(jsonResp, baslangic + 19, Length(jsonResp)); } else { baslangic = Pos('"product_name":"', jsonResp); if (baslangic > 0) { tempStr = Copy(jsonResp, baslangic + 16, Length(jsonResp)); } } if (baslangic > 0) { bitis = Pos('"', tempStr) - 1; if (bitis > 0) { urunAdi = Copy(tempStr, 1, bitis); } else { urunAdi = 'Bulunamadı'; } } else { urunAdi = 'Bulunamadı'; } baslangic = Pos('"brands":"', jsonResp); if ((baslangic > 0) && (urunAdi <> 'Bulunamadı')) { tempStr = Copy(jsonResp, baslangic + 10, Length(jsonResp)); bitis = Pos('"', tempStr) - 1; if (bitis > 0) { urunAdi = Copy(tempStr, 1, bitis) + ' - ' + urunAdi; } } } else { urunAdi = 'Bulunamadı'; } if ((urunAdi == 'Bulunamadı') || (urunAdi == '')) { lytSonucKasa.Visible = False; lblUrunFotoCerceve.Visible = True; lytUstKasa.Height = 520; ShowMessage('Ürün bulunamadı! Kamerayı açmak için Tamam''a basın.'); tmrKamera.Enabled = True; } else { loopLimit = 0; baslangic = Pos('"', urunAdi); while ((baslangic > 0) && (loopLimit < 500)) { Delete(urunAdi, baslangic, 1); baslangic = Pos('"', urunAdi); loopLimit = loopLimit + 1; } loopLimit = 0; baslangic = Pos('\', urunAdi); while ((baslangic > 0) && (loopLimit < 500)) { Delete(urunAdi, baslangic, 1); baslangic = Pos('\', urunAdi); loopLimit = loopLimit + 1; } loopLimit = 0; baslangic = Pos(Chr(13), urunAdi); while ((baslangic > 0) && (loopLimit < 500)) { Delete(urunAdi, baslangic, 1); baslangic = Pos(Chr(13), urunAdi); loopLimit = loopLimit + 1; } loopLimit = 0; baslangic = Pos(Chr(10), urunAdi); while ((baslangic > 0) && (loopLimit < 500)) { Delete(urunAdi, baslangic, 1); baslangic = Pos(Chr(10), urunAdi); loopLimit = loopLimit + 1; }
IslemTipi = 'Metin'; ArananDeger = urunAdi; memoUrunCevap.Text = 'Bulundu! AI Analiz Ediyor...'; tmrGemini.Enabled = True; } } }
{ AnaSayfaForm = TclForm.Create(Self); AnaSayfaForm.SetFormColor('#f1f2f6', '#f1f2f6', clGVertical);
apiUrl = ' https://brsrrtwbhyrxlyetebas.supabase.co" rel="nofollow - https://brsrrtwbhyrxlyetebas.supabase.co '; apiKey = 'sb_publishable_T6KRGIkL-av7M9C-aqdrag_dJteJPcR'; OpenFoodFactsApi = TCLRest.Create; GeminiApi = TCLRest.Create; ProfilApi = TCLRest.Create; prefFile = clPathCombine('userpref.txt', Clomosy.AppFilesPath); prefList = Clomosy.StringListNew; KullaniciEmail = ''; if (clFileExists(prefFile, '')) { prefList.LoadFromFile(prefFile, 0); if (prefList.Count > 0) { KullaniciEmail = Clomosy.StringListItemString(prefList, 0); } if (prefList.Count > 2) { KullaniciTercihleri = Clomosy.StringListItemString(prefList, 2); } else { KullaniciTercihleri = 'Özel Bir Durumu Yok'; } } else { KullaniciTercihleri = 'Özel Bir Durumu Yok'; }
btnAnaStil = '{"Align":"Top","MarginTop":15,"MarginLeft":25,"MarginRight":25,"Height":55,"RoundHeight":15,"RoundWidth":15,"BackgroundColor":"#00b894","TextColor":"#ffffff","TextSize":16,"TextBold":"yes"}'; edtStil = '{"Align":"Top","MarginTop":10,"MarginLeft":25,"MarginRight":25,"Height":55,"RoundHeight":12,"RoundWidth":12,"BorderColor":"#b2bec3","BorderWidth":1.5,"BackgroundColor":"#ffffff","TextColor":"#2d3436","TextSize":15,"TextBold":"yes"}'; edtSoftStil = '{"Align":"Top","MarginTop":10,"MarginLeft":20,"MarginRight":20,"Height":45,"RoundHeight":10,"RoundWidth":10,"BorderColor":"#dfe6e9","BorderWidth":1.5,"BackgroundColor":"#f8f9fa","TextColor":"#2d3436","TextSize":14}';
tmrGemini = AnaSayfaForm.AddNewTimer(AnaSayfaForm, 'tmrGemini', 200); tmrGemini.Enabled = False; AnaSayfaForm.AddNewEvent(tmrGemini, tbeOnTimer, 'TmrGeminiTick'); tmrKamera = AnaSayfaForm.AddNewTimer(AnaSayfaForm, 'tmrKamera', 1000); tmrKamera.Enabled = False; AnaSayfaForm.AddNewEvent(tmrKamera, tbeOnTimer, 'TmrKameraTick');
scrollAna = AnaSayfaForm.AddNewVertScrollBox(AnaSayfaForm, 'scrollAna'); scrollAna.Align = alContents; scrollAna.Margins.Bottom = 0;
lytUstKasa = AnaSayfaForm.AddNewLayout(scrollAna, 'lytUstKasa'); lytUstKasa.Align = alTop; lytUstKasa.Height = 310;
lblHosGeldin = AnaSayfaForm.AddNewProLabel(lytUstKasa, 'lblHosGeldin', 'Hoş Geldin,' + #13#10 + Clomosy.GlobalVariableString); clComponent.SetupComponent(lblHosGeldin, '{"Align":"Top","MarginTop":30,"MarginBottom":15,"Height":60,"TextColor":"#2d3436","TextSize":22,"TextBold":"yes","TextHorizontalAlign":"center"}');
edtBarkodSonuc = AnaSayfaForm.AddNewProEdit(lytUstKasa, 'edtBarkodSonuc','Barkod Numarası Girin'); clComponent.SetupComponent(edtBarkodSonuc, edtStil); btnBarkodOkut = AnaSayfaForm.AddNewProButton(lytUstKasa, 'btnBarkodOkut', 'BARKOD OKUT VEYA YAZ'); clComponent.SetupComponent(btnBarkodOkut, btnAnaStil); AnaSayfaForm.AddNewEvent(btnBarkodOkut, tbeOnClick, 'btnBarkodOkutClick');
lblUrunFotoCerceve = AnaSayfaForm.AddNewProLabel(lytUstKasa, 'lblUrunFotoCerceve', ''); clComponent.SetupComponent(lblUrunFotoCerceve, '{"Align":"Top","MarginTop":15,"MarginLeft":25,"MarginRight":25,"Height":180,"RoundHeight":15,"RoundWidth":15,"BorderColor":"#dfe6e9","BorderWidth":1,"BackgroundColor":"#ffffff"}'); lblUrunFotoCerceve.Visible = False; imgUrunFoto = AnaSayfaForm.AddNewImage(lblUrunFotoCerceve, 'imgUrunFoto'); imgUrunFoto.Align = alClient; imgUrunFoto.Margins.Left = 5; imgUrunFoto.Margins.Right = 5; imgUrunFoto.Margins.Top = 5; imgUrunFoto.Margins.Bottom = 5;
btnUrunBul = AnaSayfaForm.AddNewProButton(lytUstKasa, 'btnUrunBul', 'ÜRÜNÜ ANALİZ ET'); clComponent.SetupComponent(btnUrunBul, btnAnaStil); AnaSayfaForm.AddNewEvent(btnUrunBul, tbeOnClick, 'btnUrunBulClick');
lytSonucKasa = AnaSayfaForm.AddNewLayout(scrollAna, 'lytSonucKasa'); lytSonucKasa.Align = alTop; lytSonucKasa.Height = 720; lytSonucKasa.Visible = False;
lytKasaSporcu = AnaSayfaForm.AddNewLayout(lytSonucKasa, 'lytKasaSporcu'); lytKasaSporcu.Align = alTop; lytKasaSporcu.Height = 250; lytKasaSporcu.Margins.Top = 15; lytKasaSporcu.Margins.Left = 20; lytKasaSporcu.Margins.Right = 20; lblKasaSporcuBg = AnaSayfaForm.AddNewProLabel(lytKasaSporcu, 'lblKasaSporcuBg', ''); clComponent.SetupComponent(lblKasaSporcuBg, '{"Align":"Client","BackgroundColor":"#ffffff","BorderColor":"#ff7675","BorderWidth":2,"RoundHeight":15,"RoundWidth":15}'); lytIcerikSporcu = AnaSayfaForm.AddNewLayout(lblKasaSporcuBg, 'lytIcerikSporcu'); lytIcerikSporcu.Align = alClient; lblSporcuBaslik = AnaSayfaForm.AddNewProLabel(lytIcerikSporcu, 'lblSporcuBaslik', 'Genel Değerlendirme'); clComponent.SetupComponent(lblSporcuBaslik, '{"Align":"Top","MarginTop":10,"MarginLeft":15,"Height":25,"TextColor":"#d63031","TextSize":16,"TextBold":"yes"}'); memoSporcuCevap = AnaSayfaForm.AddNewMemo(lytIcerikSporcu, 'memoSporcuCevap', ''); memoSporcuCevap.Align = alClient; memoSporcuCevap.Margins.Left = 10; memoSporcuCevap.Margins.Right = 10; memoSporcuCevap.Margins.Bottom = 10; memoSporcuCevap.ReadOnly = True; memoSporcuCevap.WordWrap = True;
lytKasaColyak = AnaSayfaForm.AddNewLayout(lytSonucKasa, 'lytKasaColyak'); lytKasaColyak.Align = alTop; lytKasaColyak.Height = 250; lytKasaColyak.Margins.Top = 15; lytKasaColyak.Margins.Left = 20; lytKasaColyak.Margins.Right = 20; lblKasaColyakBg = AnaSayfaForm.AddNewProLabel(lytKasaColyak, 'lblKasaColyakBg', ''); clComponent.SetupComponent(lblKasaColyakBg, '{"Align":"Client","BackgroundColor":"#ffffff","BorderColor":"#74b9ff","BorderWidth":2,"RoundHeight":15,"RoundWidth":15}'); lytIcerikColyak = AnaSayfaForm.AddNewLayout(lblKasaColyakBg, 'lytIcerikColyak'); lytIcerikColyak.Align = alClient; lblColyakBaslik = AnaSayfaForm.AddNewProLabel(lytIcerikColyak, 'lblColyakBaslik', 'Size Özel Analiz'); clComponent.SetupComponent(lblColyakBaslik, '{"Align":"Top","MarginTop":10,"MarginLeft":15,"Height":25,"TextColor":"#0984e3","TextSize":16,"TextBold":"yes"}'); memoColyakCevap = AnaSayfaForm.AddNewMemo(lytIcerikColyak, 'memoColyakCevap', ''); memoColyakCevap.Align = alClient; memoColyakCevap.Margins.Left = 10; memoColyakCevap.Margins.Right = 10; memoColyakCevap.Margins.Bottom = 10; memoColyakCevap.ReadOnly = True; memoColyakCevap.WordWrap = True;
lytKasaUrun = AnaSayfaForm.AddNewLayout(lytSonucKasa, 'lytKasaUrun'); lytKasaUrun.Align = alTop; lytKasaUrun.Height = 150; lytKasaUrun.Margins.Top = 15; lytKasaUrun.Margins.Left = 20; lytKasaUrun.Margins.Right = 20; lblKasaUrunBg = AnaSayfaForm.AddNewProLabel(lytKasaUrun, 'lblKasaUrunBg', ''); clComponent.SetupComponent(lblKasaUrunBg, '{"Align":"Client","BackgroundColor":"#ffffff","BorderColor":"#fdcb6e","BorderWidth":2,"RoundHeight":15,"RoundWidth":15}'); lytIcerikUrun = AnaSayfaForm.AddNewLayout(lblKasaUrunBg, 'lytIcerikUrun'); lytIcerikUrun.Align = alClient; lblUrunBaslik = AnaSayfaForm.AddNewProLabel(lytIcerikUrun, 'lblUrunBaslik', 'Ürün Bilgisi'); clComponent.SetupComponent(lblUrunBaslik, '{"Align":"Top","MarginTop":10,"MarginLeft":15,"Height":25,"TextColor":"#e17055","TextSize":16,"TextBold":"yes"}'); memoUrunCevap = AnaSayfaForm.AddNewMemo(lytIcerikUrun, 'memoUrunCevap', ''); memoUrunCevap.Align = alClient; memoUrunCevap.Margins.Left = 10; memoUrunCevap.Margins.Right = 10; memoUrunCevap.Margins.Bottom = 10; memoUrunCevap.ReadOnly = True; memoUrunCevap.WordWrap = True;
lytScrollBosluk = AnaSayfaForm.AddNewLayout(scrollAna, 'lytScrollBosluk'); lytScrollBosluk.Align = alTop; lytScrollBosluk.Height = 110;
lytProfilKasa = AnaSayfaForm.AddNewLayout(AnaSayfaForm, 'lytProfilKasa'); lytProfilKasa.Align = alContents; lytProfilKasa.Visible = False;
scrollProfil = AnaSayfaForm.AddNewVertScrollBox(lytProfilKasa, 'scrollProfil'); scrollProfil.Align = alClient; lblP_AdSoyad = AnaSayfaForm.AddNewProLabel(scrollProfil, 'lblP_AdSoyad', Clomosy.GlobalVariableString); clComponent.SetupComponent(lblP_AdSoyad, '{"Align":"Top","MarginTop":30,"Height":35,"TextColor":"#2d3436","TextSize":22,"TextBold":"yes","TextHorizontalAlign":"center"}'); lblP_Email = AnaSayfaForm.AddNewProLabel(scrollProfil, 'lblP_Email', KullaniciEmail); clComponent.SetupComponent(lblP_Email, '{"Align":"Top","MarginTop":0,"Height":25,"TextColor":"#636e72","TextSize":14,"TextBold":"no","TextHorizontalAlign":"center"}');
lytP_Tercihler = AnaSayfaForm.AddNewLayout(scrollProfil, 'lytP_Tercihler'); lytP_Tercihler.Align = alTop; lytP_Tercihler.Height = 360; lytP_Tercihler.Margins.Top = 20; lytP_Tercihler.Margins.Left = 20; lytP_Tercihler.Margins.Right = 20;
lblP_TercihKasaBg = AnaSayfaForm.AddNewProLabel(lytP_Tercihler, 'lblP_TercihKasaBg', ''); clComponent.SetupComponent(lblP_TercihKasaBg, '{"Align":"Client","RoundHeight":15,"RoundWidth":15,"BackgroundColor":"#ffffff"}');
lblP_TercihBaslik = AnaSayfaForm.AddNewProLabel(lblP_TercihKasaBg, 'lblP_TercihBaslik', 'Beslenme Tercihleriniz'); clComponent.SetupComponent(lblP_TercihBaslik, '{"Align":"Top","MarginTop":15,"MarginBottom":10,"Height":25,"TextColor":"#2d3436","TextSize":16,"TextBold":"yes","TextHorizontalAlign":"center"}');
lytP_CheckList = AnaSayfaForm.AddNewLayout(lblP_TercihKasaBg, 'lytP_CheckList'); lytP_CheckList.Align = alClient;
chkP_Laktoz = AnaSayfaForm.AddNewCheckBox(lytP_CheckList, 'chkP_Laktoz', ' Laktoz İntoleransı'); chkP_Laktoz.Align = alTop; chkP_Laktoz.Height = 30; chkP_Laktoz.Margins.Left = 20; chkP_Diyabet = AnaSayfaForm.AddNewCheckBox(lytP_CheckList, 'chkP_Diyabet', ' Diyabet (Şeker Hastalığı)'); chkP_Diyabet.Align = alTop; chkP_Diyabet.Height = 30; chkP_Diyabet.Margins.Left = 20; chkP_Saglikli = AnaSayfaForm.AddNewCheckBox(lytP_CheckList, 'chkP_Saglikli', ' Sağlıklı Beslenme'); chkP_Saglikli.Align = alTop; chkP_Saglikli.Height = 30; chkP_Saglikli.Margins.Left = 20; chkP_Vejetaryen = AnaSayfaForm.AddNewCheckBox(lytP_CheckList, 'chkP_Vejetaryen', ' Vejetaryen'); chkP_Vejetaryen.Align = alTop; chkP_Vejetaryen.Height = 30; chkP_Vejetaryen.Margins.Left = 20; chkP_Vegan = AnaSayfaForm.AddNewCheckBox(lytP_CheckList, 'chkP_Vegan', ' Vegan'); chkP_Vegan.Align = alTop; chkP_Vegan.Height = 30; chkP_Vegan.Margins.Left = 20; AnaSayfaForm.AddNewEvent(chkP_Vegan, tbeOnClick, 'ChkP_VeganClick'); chkP_Sporcu = AnaSayfaForm.AddNewCheckBox(lytP_CheckList, 'chkP_Sporcu', ' Sporcuyum'); chkP_Sporcu.Align = alTop; chkP_Sporcu.Height = 30; chkP_Sporcu.Margins.Left = 20; chkP_Colyak = AnaSayfaForm.AddNewCheckBox(lytP_CheckList, 'chkP_Colyak', ' Çölyak Hastasıyım'); chkP_Colyak.Align = alTop; chkP_Colyak.Height = 30; chkP_Colyak.Margins.Left = 20; if (Pos('Laktoz', KullaniciTercihleri) > 0) { chkP_Laktoz.isChecked = True; } if (Pos('Diyabet', KullaniciTercihleri) > 0) { chkP_Diyabet.isChecked = True; } if (Pos('Sağlıklı', KullaniciTercihleri) > 0) { chkP_Saglikli.isChecked = True; } if (Pos('Vejetaryen', KullaniciTercihleri) > 0) { chkP_Vejetaryen.isChecked = True; } if (Pos('Vegan', KullaniciTercihleri) > 0) { chkP_Vegan.isChecked = True; chkP_Vejetaryen.Enabled = False; } if (Pos('Sporcu', KullaniciTercihleri) > 0) { chkP_Sporcu.isChecked = True; } if (Pos('Çölyak', KullaniciTercihleri) > 0) { chkP_Colyak.isChecked = True; }
btnP_TercihKaydet = AnaSayfaForm.AddNewProButton(lblP_TercihKasaBg, 'btnP_TercihKaydet', 'GÜNCELLE'); clComponent.SetupComponent(btnP_TercihKaydet, '{"Align":"Bottom","MarginBottom":15,"MarginLeft":20,"MarginRight":20,"Height":45,"RoundHeight":10,"RoundWidth":10,"BackgroundColor":"#00b894","TextColor":"#ffffff","TextSize":14,"TextBold":"yes"}'); AnaSayfaForm.AddNewEvent(btnP_TercihKaydet, tbeOnClick, 'BtnP_TercihKaydetClick');
lytP_Sifre = AnaSayfaForm.AddNewLayout(scrollProfil, 'lytP_Sifre'); lytP_Sifre.Align = alTop; lytP_Sifre.Height = 300; lytP_Sifre.Margins.Top = 20; lytP_Sifre.Margins.Left = 20; lytP_Sifre.Margins.Right = 20;
lblP_SifreKasaBg = AnaSayfaForm.AddNewProLabel(lytP_Sifre, 'lblP_SifreKasaBg', ''); clComponent.SetupComponent(lblP_SifreKasaBg, '{"Align":"Client","RoundHeight":15,"RoundWidth":15,"BackgroundColor":"#ffffff"}');
lblP_SifreBaslik = AnaSayfaForm.AddNewProLabel(lblP_SifreKasaBg, 'lblP_SifreBaslik', 'Şifre İşlemleri'); clComponent.SetupComponent(lblP_SifreBaslik, '{"Align":"Top","MarginTop":15,"Height":30,"TextColor":"#2d3436","TextSize":16,"TextBold":"yes","TextHorizontalAlign":"center"}');
edtP_EskiSifre = AnaSayfaForm.AddNewProEdit(lblP_SifreKasaBg, 'edtP_EskiSifre', 'Mevcut Şifreniz'); edtP_EskiSifre.Password = True; clComponent.SetupComponent(edtP_EskiSifre, edtSoftStil); imgP_EskiSifre = AnaSayfaForm.AddNewProImage(edtP_EskiSifre, 'imgP_EskiSifre'); clComponent.SetupComponent(imgP_EskiSifre, '{"Align":"Right","Width":25,"MarginRight":10,"MarginTop":10,"MarginBottom":10}'); AnaSayfaForm.SetImage(imgP_EskiSifre, ' https://i.ibb.co/Z1V7rfXV/kapal-g-z.png" rel="nofollow - https://i.ibb.co/Z1V7rfXV/kapal-g-z.png '); AnaSayfaForm.AddNewEvent(imgP_EskiSifre, tbeOnClick, 'P_SifreGizleGosterEski'); edtP_Sifre = AnaSayfaForm.AddNewProEdit(lblP_SifreKasaBg, 'edtP_Sifre', 'Yeni Şifre'); edtP_Sifre.Password = True; clComponent.SetupComponent(edtP_Sifre, edtSoftStil); imgP_Sifre = AnaSayfaForm.AddNewProImage(edtP_Sifre, 'imgP_Sifre'); clComponent.SetupComponent(imgP_Sifre, '{"Align":"Right","Width":25,"MarginRight":10,"MarginTop":10,"MarginBottom":10}'); AnaSayfaForm.SetImage(imgP_Sifre, ' https://i.ibb.co/Z1V7rfXV/kapal-g-z.png" rel="nofollow - https://i.ibb.co/Z1V7rfXV/kapal-g-z.png '); AnaSayfaForm.AddNewEvent(imgP_Sifre, tbeOnClick, 'P_SifreGizleGosterYeni'); edtP_SifreTekrar = AnaSayfaForm.AddNewProEdit(lblP_SifreKasaBg, 'edtP_SifreTekrar', 'Yeni Şifre (Tekrar)'); edtP_SifreTekrar.Password = True; clComponent.SetupComponent(edtP_SifreTekrar, edtSoftStil); imgP_SifreTekrar = AnaSayfaForm.AddNewProImage(edtP_SifreTekrar, 'imgP_SifreTekrar'); clComponent.SetupComponent(imgP_SifreTekrar, '{"Align":"Right","Width":25,"MarginRight":10,"MarginTop":10,"MarginBottom":10}'); AnaSayfaForm.SetImage(imgP_SifreTekrar, ' https://i.ibb.co/Z1V7rfXV/kapal-g-z.png" rel="nofollow - https://i.ibb.co/Z1V7rfXV/kapal-g-z.png '); AnaSayfaForm.AddNewEvent(imgP_SifreTekrar, tbeOnClick, 'P_SifreGizleGosterTekrar');
lblP_SifreKurallari = AnaSayfaForm.AddNewProLabel(lblP_SifreKasaBg, 'lblP_SifreKurallari', 'Şifre: 8-50 karakter, 1 büyük, 1 küçük, 1 rakam, 1 özel krk.'); clComponent.SetupComponent(lblP_SifreKurallari, '{"Align":"Top","MarginTop":5,"MarginLeft":25,"MarginRight":25,"Height":20,"TextColor":"#7f8c8d","TextSize":11,"TextBold":"no"}');
btnP_SifreKaydet = AnaSayfaForm.AddNewProButton(lblP_SifreKasaBg, 'btnP_SifreKaydet', 'ŞİFREYİ DEĞİŞTİR'); clComponent.SetupComponent(btnP_SifreKaydet, '{"Align":"Bottom","MarginBottom":15,"MarginLeft":20,"MarginRight":20,"Height":45,"RoundHeight":10,"RoundWidth":10,"BackgroundColor":"#ffffff","BorderColor":"#00b894","BorderWidth":2,"TextColor":"#00b894","TextSize":14,"TextBold":"yes"}'); AnaSayfaForm.AddNewEvent(btnP_SifreKaydet, tbeOnClick, 'BtnP_SifreKaydetClick');
lytP_HesapSil = AnaSayfaForm.AddNewLayout(scrollProfil, 'lytP_HesapSil'); lytP_HesapSil.Align = alTop; lytP_HesapSil.Height = 55; lytP_HesapSil.Margins.Top = 20; lytP_HesapSil.Margins.Left = 20; lytP_HesapSil.Margins.Right = 20; btnP_HesapSil = AnaSayfaForm.AddNewProButton(lytP_HesapSil, 'btnP_HesapSil', 'Hesabımı Kalıcı Olarak Sil'); clComponent.SetupComponent(btnP_HesapSil, '{"Align":"Client","RoundHeight":15,"RoundWidth":15,"BackgroundColor":"#ffe0e0","TextColor":"#d63031","TextSize":14,"TextBold":"yes"}'); AnaSayfaForm.AddNewEvent(btnP_HesapSil, tbeOnClick, 'BtnP_HesapSilSoru');
lytP_Bosluk = AnaSayfaForm.AddNewLayout(scrollProfil, 'lytP_Bosluk'); lytP_Bosluk.Align = alTop; lytP_Bosluk.Height = 150;
lytBottomContainer = AnaSayfaForm.AddNewLayout(AnaSayfaForm, 'lytBottomContainer'); lytBottomContainer.Align = alBottom; lytBottomContainer.Height = 100;
lytBottomBarBg = AnaSayfaForm.AddNewLayout(lytBottomContainer, 'lytBottomBarBg'); lytBottomBarBg.Align = alClient; lblBarBg = AnaSayfaForm.AddNewProLabel(lytBottomBarBg, 'lblBarBg', ''); clComponent.SetupComponent(lblBarBg, '{"Align":"Client","BackgroundColor":"#ffffff","BorderColor":"#e0e0e0","BorderWidth":1.5,"RoundHeight":30,"RoundWidth":30,"MarginLeft":15,"MarginRight":15,"MarginBottom":10,"MarginTop":30}');
lytIconsLayer = AnaSayfaForm.AddNewLayout(lytBottomContainer, 'lytIconsLayer'); lytIconsLayer.Align = alClient;
lytNavLeft = AnaSayfaForm.AddNewLayout(lytIconsLayer, 'lytNavLeft'); lytNavLeft.Align = alLeft; lytNavLeft.Width = 80; lytNavLeft.Margins.Left = 50; lytNavLeft.Margins.Top = 30; lytNavLeft.Margins.Bottom = 20; lblNavLeftBg = AnaSayfaForm.AddNewProLabel(lytNavLeft, 'lblNavLeftBg', ''); clComponent.SetupComponent(lblNavLeftBg, '{"Align":"Center","Width":70,"Height":70,"BackgroundColor":"#00b894","BorderColor":"#ffffff","BorderWidth":5,"RoundHeight":35,"RoundWidth":35}'); lblNavLeftBg.Visible = False;
imgNavLeft = AnaSayfaForm.AddNewImage(lytNavLeft, 'imgNavLeft'); imgNavLeft.Align = alCenter; imgNavLeft.Width = 40; imgNavLeft.Height = 40; AnaSayfaForm.SetImage(imgNavLeft, ' https://i.ibb.co/XZstP4XY/profil-T.png" rel="nofollow - https://i.ibb.co/XZstP4XY/profil-T.png '); AnaSayfaForm.AddNewEvent(imgNavLeft, tbeOnClick, 'SoldakiButonTikladi'); AnaSayfaForm.AddNewEvent(lblNavLeftBg, tbeOnClick, 'SoldakiButonTikladi'); imgNavLeft.BringToFront;
lytNavMiddle = AnaSayfaForm.AddNewLayout(lytIconsLayer, 'lytNavMiddle'); lytNavMiddle.Align = alCenter; lytNavMiddle.Width = 80; lytNavMiddle.Margins.Top = 0; lytNavMiddle.Margins.Bottom = 30;
lblNavMiddleBg = AnaSayfaForm.AddNewProLabel(lytNavMiddle, 'lblNavMiddleBg', ''); clComponent.SetupComponent(lblNavMiddleBg, '{"Align":"Center","Width":70,"Height":70,"BackgroundColor":"#00b894","BorderColor":"#ffffff","BorderWidth":5,"RoundHeight":35,"RoundWidth":35}'); lblNavMiddleBg.Visible = True; imgNavMiddle = AnaSayfaForm.AddNewImage(lytNavMiddle, 'imgNavMiddle'); imgNavMiddle.Align = alCenter; imgNavMiddle.Width = 40; imgNavMiddle.Height = 40; AnaSayfaForm.SetImage(imgNavMiddle, ' https://i.ibb.co/wF4GMPzm/home-T.png" rel="nofollow - https://i.ibb.co/wF4GMPzm/home-T.png '); AnaSayfaForm.AddNewEvent(imgNavMiddle, tbeOnClick, 'OrtadakiButonTikladi'); AnaSayfaForm.AddNewEvent(lblNavMiddleBg, tbeOnClick, 'OrtadakiButonTikladi'); imgNavMiddle.BringToFront;
lytNavRight = AnaSayfaForm.AddNewLayout(lytIconsLayer, 'lytNavRight'); lytNavRight.Align = alRight; lytNavRight.Width = 80; lytNavRight.Margins.Right = 50; lytNavRight.Margins.Top = 30; lytNavRight.Margins.Bottom = 20;
imgNavRight = AnaSayfaForm.AddNewImage(lytNavRight, 'imgNavRight'); imgNavRight.Align = alCenter; imgNavRight.Width = 40; imgNavRight.Height = 40; AnaSayfaForm.SetImage(imgNavRight, ' https://i.ibb.co/LzrRzZ3t/cikis-T.png" rel="nofollow - https://i.ibb.co/LzrRzZ3t/cikis-T.png '); AnaSayfaForm.AddNewEvent(imgNavRight, tbeOnClick, 'BtnCikisSoru');
lytLogoutOverlay = AnaSayfaForm.AddNewLayout(AnaSayfaForm, 'lytLogoutOverlay'); lytLogoutOverlay.Align = alContents; lytLogoutOverlay.Visible = False;
lblLogoutArkaplan = AnaSayfaForm.AddNewProLabel(lytLogoutOverlay, 'lblLogoutArkaplan', ''); clComponent.SetupComponent(lblLogoutArkaplan, '{"Align":"Client","BackgroundColor":"#000000"}'); lblLogoutArkaplan.Opacity = 0.6; AnaSayfaForm.AddNewEvent(lblLogoutArkaplan, tbeOnClick, 'BtnCikisIptal');
lytLogoutKasa = AnaSayfaForm.AddNewLayout(lytLogoutOverlay, 'lytLogoutKasa'); lytLogoutKasa.Align = alCenter; lytLogoutKasa.Width = 320; lytLogoutKasa.Height = 160;
lblLogoutKasaBg = AnaSayfaForm.AddNewProLabel(lytLogoutKasa, 'lblLogoutKasaBg', ''); clComponent.SetupComponent(lblLogoutKasaBg, '{"Align":"Client","BackgroundColor":"#ffffff","RoundHeight":20,"RoundWidth":20}');
lblLogoutSoru = AnaSayfaForm.AddNewProLabel(lblLogoutKasaBg, 'lblLogoutSoru', 'Çıkış yapmak istediğinize' + #13#10 + 'emin misiniz?'); clComponent.SetupComponent(lblLogoutSoru, '{"Align":"Top","MarginTop":25,"MarginLeft":10,"MarginRight":10,"Height":50,"TextColor":"#2d3436","TextSize":16,"TextBold":"yes","TextHorizontalAlign":"center"}');
lytLogoutBtnKasa = AnaSayfaForm.AddNewLayout(lblLogoutKasaBg, 'lytLogoutBtnKasa'); lytLogoutBtnKasa.Align = alBottom; lytLogoutBtnKasa.Height = 50; lytLogoutBtnKasa.Margins.Bottom = 20; lytLogoutBtnKasa.Margins.Left = 20; lytLogoutBtnKasa.Margins.Right = 20;
btnLogoutIptal = AnaSayfaForm.AddNewProButton(lytLogoutBtnKasa, 'btnLogoutIptal', 'İptal'); clComponent.SetupComponent(btnLogoutIptal, '{"Align":"Left","Width":130,"Height":45,"BackgroundColor":"#f1f2f6","TextColor":"#2d3436","TextSize":14,"TextBold":"yes","RoundHeight":10,"RoundWidth":10}'); AnaSayfaForm.AddNewEvent(btnLogoutIptal, tbeOnClick, 'BtnCikisIptal');
btnLogoutEvet = AnaSayfaForm.AddNewProButton(lytLogoutBtnKasa, 'btnLogoutEvet', 'Çıkış Yap'); clComponent.SetupComponent(btnLogoutEvet, '{"Align":"Right","Width":130,"Height":45,"BackgroundColor":"#00b894","TextColor":"#ffffff","TextSize":14,"TextBold":"yes","RoundHeight":10,"RoundWidth":10}'); AnaSayfaForm.AddNewEvent(btnLogoutEvet, tbeOnClick, 'BtnCikisEvet');
lytHesapSilOverlay = AnaSayfaForm.AddNewLayout(AnaSayfaForm, 'lytHesapSilOverlay'); lytHesapSilOverlay.Align = alContents; lytHesapSilOverlay.Visible = False;
lblHesapSilArkaplan = AnaSayfaForm.AddNewProLabel(lytHesapSilOverlay, 'lblHesapSilArkaplan', ''); clComponent.SetupComponent(lblHesapSilArkaplan, '{"Align":"Client","BackgroundColor":"#000000"}'); lblHesapSilArkaplan.Opacity = 0.8; AnaSayfaForm.AddNewEvent(lblHesapSilArkaplan, tbeOnClick, 'BtnP_HesapSilIptal');
lytHesapSilKasa = AnaSayfaForm.AddNewLayout(lytHesapSilOverlay, 'lytHesapSilKasa'); lytHesapSilKasa.Align = alCenter; lytHesapSilKasa.Width = 320; lytHesapSilKasa.Height = 180;
lblHesapSilKasaBg = AnaSayfaForm.AddNewProLabel(lytHesapSilKasa, 'lblHesapSilKasaBg', ''); clComponent.SetupComponent(lblHesapSilKasaBg, '{"Align":"Client","BackgroundColor":"#ffffff","RoundHeight":25,"RoundWidth":25}');
lblHesapSilSoru = AnaSayfaForm.AddNewProLabel(lblHesapSilKasaBg, 'lblHesapSilSoru', 'Hesabınızı kalıcı olarak' + #13#10 + 'silmek istediğinize emin misiniz?'); clComponent.SetupComponent(lblHesapSilSoru, '{"Align":"Top","MarginTop":25,"MarginLeft":10,"MarginRight":10,"Height":50,"TextColor":"#d63031","TextSize":15,"TextBold":"yes","TextHorizontalAlign":"center"}');
lytHesapSilBtnKasa = AnaSayfaForm.AddNewLayout(lblHesapSilKasaBg, 'lytHesapSilBtnKasa'); lytHesapSilBtnKasa.Align = alBottom; lytHesapSilBtnKasa.Height = 50; lytHesapSilBtnKasa.Margins.Bottom = 20; lytHesapSilBtnKasa.Margins.Left = 20; lytHesapSilBtnKasa.Margins.Right = 20;
btnHesapSilIptal = AnaSayfaForm.AddNewProButton(lytHesapSilBtnKasa, 'btnHesapSilIptal', 'İptal'); clComponent.SetupComponent(btnHesapSilIptal, '{"Align":"Left","Width":130,"Height":45,"BackgroundColor":"#f1f2f6","TextColor":"#2d3436","TextSize":14,"TextBold":"yes","RoundHeight":10,"RoundWidth":10}'); AnaSayfaForm.AddNewEvent(btnHesapSilIptal, tbeOnClick, 'BtnP_HesapSilIptal');
btnHesapSilEvet = AnaSayfaForm.AddNewProButton(lytHesapSilBtnKasa, 'btnHesapSilEvet', 'Evet, Sil'); clComponent.SetupComponent(btnHesapSilEvet, '{"Align":"Right","Width":130,"Height":45,"BackgroundColor":"#ff7675","TextColor":"#ffffff","TextSize":14,"TextBold":"yes","RoundHeight":10,"RoundWidth":10}'); AnaSayfaForm.AddNewEvent(btnHesapSilEvet, tbeOnClick, 'BtnP_HesapSilEvet');
AnaSayfaForm.Run; } https://static.cloudflareinsights.com/beacon.min.js/v8c78df7c7c0f484497ecbca7046644da1771523124516" rel="nofollow - https://static.cloudflareinsights.com/beacon.min.js/v8c78df7c7c0f484497ecbca7046644da1771523124516" integrity="sha512-8DS7rgIrAmghBFwoOTujcf6D9rXvH8xm8JQ1Ja01h9QX8EzXldiszufYa4IFfKdLUKTTrnSFXLDkUEOTrZQ8Qg==" data-cf-beacon="{"version":"2024.11.0","token":"439455f3e46c40b98dbd42a2f1a954d8","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}" crossorigin="anonymous">
|