def __init__(self, sock, parent = None):
     QtGui.QWidget.__init__(self, parent)
     self.sock = sock
     self.registrationForm = Ui_RegistrationForm()
     self.registrationForm.setupUi(self)
     self.connect(self.registrationForm.RegisterBtn, QtCore.SIGNAL("clicked()"),
                  lambda : self.registration_start(True))
class RegisterWindow(QtGui.QWidget):
    def __init__(self, sock, parent = None):
        QtGui.QWidget.__init__(self, parent)
        self.sock = sock
        self.registrationForm = Ui_RegistrationForm()
        self.registrationForm.setupUi(self)
        self.connect(self.registrationForm.RegisterBtn, QtCore.SIGNAL("clicked()"),
                     lambda : self.registration_start(True))

    def registration_start(self, flag):
        login = unicode(self.registrationForm.LoginRegister.text()).strip()
        password = unicode(self.registrationForm.PassRegister.text()).strip()
        if login == "" or password == "":
            self.registrationForm.showError("Вы не ввели имья пользователя или пароль!!!")
            return
        try:
            f = open(pathDb())
            f.close()
        except IOError:
            with connectDb() as con:
                curr = con.cursor()
                curr.execute(
                    """
                    create table t_user(
                        id integer not null primary key autoincrement,
                        user text null,
                        passwd text null,
                        last_login integer null
                        );
                    """
                    )
                con.commit()
                # con.close()
        err = registerOnServer(login, password, self.sock)
        if err:
            self.registrationForm.showError(err)
            return
        else:
            if not self.register(login, password):
                self.close()

    def register(self, login, password):
        id_list = []
        with connectDb() as conn:
            curr = conn.cursor()
            curr.execute(
            """
            select id from t_user where user = ?;
            """, (unicode(login), )
            )
            for i in curr:
                id_list.append(i)
            print id_list
            if len(id_list) == 0:
                curr.execute(
                    """
                    insert into t_user(user, passwd)
                    values(?, ?);
                    """,(unicode(login), unicode(password), )
                    )
                conn.commit()
            else:
                self.registrationForm.showError("Данный пользователь уже сущесвствует")
                return True

    def closeEvent(self, event):
        self.sock.sendall("finishRegistration")
        event.accept()