Closed BirolU closed 7 years ago
Evet istemiyoruz. Belki önce e-posta kontrolü yapıp sonra şifre sorma ekranına geçebiliriz.
On Fri, Dec 9, 2016 at 9:53 PM, BirolU notifications@github.com wrote:
Öğrenci yönetim ekranından, öğretmen oyun ekranından şifremi unuttum özelliğini kullanabiliyor. Bunu gerçekten istiyor muyuz? @muratulman https://github.com/muratulman ?
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/mitolojix/issues/issues/538, or mute the thread https://github.com/notifications/unsubscribe-auth/ARFwHgWw1P2XxUSNuOXaRIsudWhYqriPks5rGaOugaJpZM4LJPqt .
@serkandurusoy burada kontrolu kullanici rolunden mi yapmali? Mevcut durumda en azindan oyun ekraninda 'Sifremi Unuttum' tusunu kullanmiyoruz. Yonetim ekrani icin de, mail adresi elimizde var. Kullanici rolunun ogrenci olup olmamasi yonunde bir kontrol koyarak, uyari mesaji cikarabiliriz ?
sifremi unuttum tusunu kullanmiyoruz diye kenara kaldiramayiz. kullanmasak bile ileride kullanabiliriz. dolayisiyla yapacagimiz cozumun hem yonetim hem de oyunda ayni mantik ile calisiyor olmasi lazim.
oyun kodunda da yonetim kodunda da Accounts.forgotPassword
metodunu kullaniyoruz. Bu, built-in bir metod ve aldigi email adresinden server tarafinda once kullanicisini bulup ardindan bu kullanici icin Accounts.sendResetPasswordEmail
metodunu userId ve email ile birlikte cagiriyor.
(not, client metodu hata var mi diye kontrol etmiyor. misal girilen email adresi kullanici degilse veya oyundan girilen yonetim kullaicisi ise vb gibi durumlarda kullaniciya hata yaptin kardesim demiyor, demeyecek. neden? Cunku kullaniciya bu hatalari gostermek, bilmemesi gereken seyleri ona soylemek demek. kullanici oraya hangi email adresini girerse girsin, ona biz tamam kardesim talebini aldim posta kutuna bir seyler gonderdim diyoruz. gercekte posta kutusuna bir sey gitmese bile.)
Simdi bizim yapmamiz gerekenler
client'ta Accounts.forgotPassword
yerine Meteor.call('forgotPassword', email, callback)
signature'ini iceren bir metod cagirmak (hem oyun hem de yonetimde ayni metod olacak ayri metodlar gelistirilmemeli, zira tek bir account system var, sadece callback'ler degisebilir zira kullaniciya gosterilecek mesajlar sunlar bunlar farkli, zaten mevcut forgotPassword'lere bakarsan farki gorursun)
server'da (sadece server side calisacak) bir Meteor.methods({ forgotPassword(email) {/* */} })
metodu olusturmak
server metodu, sunlari yapacak:
return 'ok'
(dikkat hata degil)Accounts.sendResetPasswordEmail
metodunu hem bulunan userId hem de email ile cagiracagiz (email opsiyoneldir ama biz yine de kullanmaliyiz ileri donuk birden fazla email adresi olasiliginda sicmamak icin)return 'ok'
Tamamlandi, yukleme bekliyor.
Öğrenci yönetim ekranından, öğretmen oyun ekranından şifremi unuttum özelliğini kullanabiliyor. Bunu gerçekten istiyor muyuz? @muratulman ?