59 lines
1.8 KiB
Python
59 lines
1.8 KiB
Python
# -*- coding: utf-8 -*-
|
|
from __future__ import unicode_literals
|
|
import time
|
|
import wx
|
|
import widgetUtils
|
|
|
|
code = None
|
|
remember = True
|
|
|
|
def new_account_dialog():
|
|
return wx.MessageDialog(None, _("In order to continue, you need to configure your VK account before. Would you like to autorhise a new account now?"), _("Authorisation"), wx.YES_NO).ShowModal()
|
|
|
|
def two_factor_auth():
|
|
global code, remember
|
|
wx.CallAfter(get_code)
|
|
while code == None:
|
|
time.sleep(0.5)
|
|
return (code, remember)
|
|
|
|
def get_code():
|
|
global code, remember
|
|
dlg = wx.TextEntryDialog(None, _("Please provide the authentication code you have received from VK."), _("Two factor authentication code"))
|
|
response = dlg.ShowModal()
|
|
if response == widgetUtils.OK:
|
|
code = dlg.GetValue()
|
|
dlg.Destroy()
|
|
dlg.Destroy()
|
|
|
|
class newSessionDialog(widgetUtils.BaseDialog):
|
|
def __init__(self):
|
|
super(newSessionDialog, self).__init__(parent=None, id=wx.NewId(), title=_("Authorise VK"))
|
|
panel = wx.Panel(self)
|
|
lbl1 = wx.StaticText(panel, -1, _("&Email or phone number"))
|
|
self.email = wx.TextCtrl(panel, -1)
|
|
lbl2 = wx.StaticText(panel, -1, _("&Password"))
|
|
self.passw = wx.TextCtrl(panel, -1, style=wx.TE_PASSWORD)
|
|
sizer = wx.BoxSizer()
|
|
b1 = wx.BoxSizer(wx.HORIZONTAL)
|
|
b1.Add(lbl1, 0, wx.ALL, 5)
|
|
b1.Add(self.email, 0, wx.ALL, 5)
|
|
b2 = wx.BoxSizer(wx.HORIZONTAL)
|
|
b2.Add(lbl2, 0, wx.ALL, 5)
|
|
b2.Add(self.passw, 0, wx.ALL, 5)
|
|
sizer.Add(b1, 0, wx.ALL, 5)
|
|
sizer.Add(b2, 0, wx.ALL, 5)
|
|
ok = wx.Button(panel, wx.ID_OK)
|
|
ok.SetDefault()
|
|
cancel = wx.Button(panel, wx.ID_CANCEL)
|
|
btnb = wx.BoxSizer(wx.HORIZONTAL)
|
|
btnb.Add(ok, 0, wx.ALL, 5)
|
|
btnb.Add(cancel, 0, wx.ALL, 5)
|
|
sizer.Add(btnb, 0, wx.ALL, 5)
|
|
panel.SetSizer(sizer)
|
|
|
|
def get_email(self):
|
|
return self.email.GetValue()
|
|
|
|
def get_password(self):
|
|
return self.passw.GetValue() |