hamzagedikkaya / leave_master

Leave Master is a powerful Rails application for efficient annual leave management for companies and their employees. It simplifies the leave request process, allowing users to manage time off effortlessly while offering a modular API for seamless external integration.
Other
0 stars 0 forks source link

GSM Numarası İçin Otomatik Ülke Kodu Ekleme #26

Open bkilic11 opened 3 weeks ago

bkilic11 commented 3 weeks ago

Açıklama

Kullanıcı kayıt formunda yer alan GSM alanında, kullanıcıların ülke kodlarını manuel olarak seçmelerini kolaylaştırmak için otomatik ülke kodu getirilecek bir sistem eklenmesi isteniyor. Bu özellik, kullanıcının IP adresine dayanarak bulunduğu ülkenin telefon kodunu otomatik olarak GSM alanına ekleyecektir.

Özellik

Bu özellik, intl-tel-input JavaScript kütüphanesini kullanarak sağlanabilir. Bu kütüphane, kullanıcıların GSM numaralarını doğru biçimde girmelerine yardımcı olur ve IP tabanlı ülke kodu tahmini yapabilir.

Issue GSM Numarası İçin Otomatik Ülke Kodu Ekleme

Açıklama: Kullanıcı kayıt formunda yer alan GSM alanında, kullanıcıların ülke kodlarını manuel olarak seçmelerini kolaylaştırmak için otomatik ülke kodu getirilecek bir sistem eklenmesi isteniyor. Bu özellik, kullanıcının IP adresine dayanarak bulunduğu ülkenin telefon kodunu otomatik olarak GSM alanına ekleyecektir.

Özellik: Bu özellik, intl-tel-input JavaScript kütüphanesini kullanarak sağlanabilir. Bu kütüphane, kullanıcıların GSM numaralarını doğru biçimde girmelerine yardımcı olur ve IP tabanlı ülke kodu tahmini yapabilir.

Gereksinimler

Kullanıcı IP adresine dayanarak ülke kodunun otomatik belirlenmesi. intl-tel-input kütüphanesinin geoIpLookup fonksiyonunu kullanarak IP tabanlı ülke kodu tahmini yapılması. ipinfo.io API hizmetinin kullanımı için gerekli API token’inin temin edilmesi ve uygulanması.

// Kullanıcının ülkesini IP adresine göre tahmin etmek için geoIpLookup fonksiyonu
geoIpLookup: function (callback) {
  fetch("https://ipinfo.io?token=YOUR_API_TOKEN") // Buraya alınan API token yazılacak
    .then((resp) => resp.json())
    .then((resp) => callback(resp.country))
    .catch(() => callback("tr")); // API başarısız olursa 'tr' (Türkiye) kodunu varsayılan olarak kullan
}

ipinfo.io sitesine kaydolun ve ücretsiz bir API anahtarı alın. Bu API token, IP üzerinden ülke bilgisi çekilmesi için gereklidir. Kod Güncellemeleri:

intl-tel-input kütüphanesi içindeki geoIpLookup fonksiyonunda API çağrısı yapacak kodu ekleyin. Bu sayede, kullanıcıların bulunduğu ülkeler otomatik olarak tahmin edilip, uygun ülke kodları GSM alanına eklenir. Varsayılan Ülke Kodu:

API isteği başarısız olursa, varsayılan olarak belirli bir ülke kodu (tr gibi) gösterilebilir. Kullanıcıların GSM alanında ülke kodları IP adreslerine göre otomatik olarak belirlenecek. Kullanıcı deneyimi iyileşecek, böylece kullanıcıların manuel olarak ülke kodu seçme işlemi azalacak.

Notlar

Bu özelliği geliştirmek için YOUR_API_TOKEN kısmının doğru şekilde ayarlanması önemlidir. API token olmadan IP tabanlı ülke tahmini yapılamayacaktır.

bkilic11 commented 3 weeks ago

Bu konu ile müsait zaman da ilgilenip daha sonra tasarıma eklesek daha iyi olabilir kişi Ülkesinin gsm koduna göre telefon numarasını yazması en mantıklısı olacaktır aksi taktirde kişilerin gsm formatı herkes de değişken olacaktır. Şuan olmasa da ilerki zamanlar da sorunlara yol açabilir

Örnek olarak girilebilecek değerler

0530 999 99 99 530 999 99 99

Yukarda belirttiğim özelliği ben birazcık araştırdım bu şekilde yapılabiliyormuş ücretsiz bir yapı buldum. Daha farklı güzel çözümler hakkında araştırma yapılıp değerlendirilebilir.