示例#1
0
void RegistrationWidget::doRegister()
{
  std::auto_ptr<AbstractUserDatabase::Transaction>
    t(model_->users().startTransaction());

  updateModel(model_);

  if (validate()) {
    User user = model_->doRegister();
    if (user.isValid()) {
      registerUserDetails(user);
      if (!model_->baseAuth()->emailVerificationRequired())
	model_->loginUser(model_->login(), user);
      else {
	if (authWidget_)
	  authWidget_->displayInfo
	    (WString::tr("Wt.Auth.confirm-email-first"));

	close();
      }
    } else
      update();
  } else
    update();

  if (t.get())
    t->commit();
}
示例#2
0
void RegistrationWidget::doRegister()
{
  std::auto_ptr<AbstractUserDatabase::Transaction>
    t(model_->users().startTransaction());

  updateModel(model_);

  if (validate()) {
    User user = model_->doRegister();
    if (user.isValid()) {
      registerUserDetails(user);
      model_->login().login(user);
    } else
      update();
  } else
    update();

  if (t.get())
    t->commit();
}