def link_gecerliligi_kontrolu(self):
        """

        Eğer linkle başlatıldıysa, doğrulama linkinin
        geçerli olup olmadığı kontrol edilir.

        """
        self.current.task_data['kod'] = aktivasyon_kodu = self.current.input[
            'model'].split('=')[1]
        self.current.task_data['e_posta'] = EPostaDogrulama(
            aktivasyon_kodu).get()
Example #2
0
 def e_posta_bilgisi_cache_koy_e_posta_hazirla(self):
     """
     Doğrulama linki gönderilecek e_posta adresi, oluşturulan aktivasyon kodu
     ile cache'e kaydedilir. Gönderilecek e-postanın içeriği ve linki wf ismi
     ve aktivasyon kodu ile hazırlanır.
     """
     self.current.task_data['msg'] = None
     self.current.task_data["aktivasyon"] = aktivasyon_kodu_uret()
     EPostaDogrulama(self.current.task_data["aktivasyon"]).set(
         self.current.task_data["e_posta"], 7200)
     self.current.task_data["message"] = "E-Posta adresinizi doğrulamak için aşağıdaki linke" \
                                         " tıklayınız:\n\n %s/#/%s/dogrulama=%s" % (
     DEMO_URL, self.current.task_data['wf_name'], self.current.task_data["aktivasyon"])
     self.current.task_data['subject'] = 'Ulakbüs Aktivasyon Maili'
    def e_posta_degistir(self):
        """
        E_posta adresi doğrulanmışsa, e_posta değiştirme işlemi yapılır,
        değiştirilecek e_posta bilgisi Cache'den alınır, işlem yapıldıktan sonra
        Cache'den silinir.

        """

        kullanici = User.objects.get(self.current.user_id)
        kullanici.e_mail = self.current.task_data['e_posta']
        kullanici.save()
        EPostaDogrulama(self.current.task_data['kod']).delete()
        self.current.task_data['title'] = _(u'E-Posta Değişikliği')
        self.current.task_data['msg'] = _(
            u'E-Posta değiştirme işleminiz başarıyla gerçekleştirilmiştir.')
        self.current.task_data['type'] = 'info'
 def test_gecerli_link_basarili_islem(self):
     # Değiştirilecek e_posta adresi doğrulama kodu keyi ile cache e kaydedilir.
     EPostaDogrulama('2fd1deed4653f40107571368cd46411088c7d988').set(
         'ulakbus_mail@ulakbus_mail.com')
     # Linkle gelerek iş akışı tekrardan başlatılır.
     user = User.objects.get(self.user_key)
     self.prepare_client('/profil_sayfasi_goruntuleme', user=user)
     resp = self.client.post(
         model='dogrulama=2fd1deed4653f40107571368cd46411088c7d988')
     # Başarılı işlem mesajı oluştuğu test edilir.
     assert resp.json['msgbox']['title'] == 'E-Posta Değişikliği'
     # Veritabanından kullanıcı tekrar çekilir.
     user = User.objects.get(self.user_key)
     # Linkle gelindiği test edilir.
     assert self.client.current.task_data['link'] == True
     # Linkin geçerliliği test edilir.
     assert self.client.current.task_data['e_posta'] != None
     # Birincil e-posta adresinin değiştiği test edilir.
     assert user.e_mail == 'ulakbus_mail@ulakbus_mail.com'
     # E-postası eski haline döndürülür.
     user.e_mail = self.user.e_mail
     user.blocking_save()