public void Validate(RegisterViewModel model, ValidatorAction action = ValidatorAction.Register)
        {
            if (model == null)
            {
                AddError("You provided no data");
                return;
            }

            if (entityService.IsNameTaken(model.Name))
            {
                AddError("Name is taken", () => model.Name);
            }

            if (entityService.IsSpecialName(model.Name))
            {
                AddError("This is special name. You cannot use it", () => model.Name);
            }

            if (citizenRepository.IsEmailAddressAllowed(model.Email) == false)
            {
                AddError("Email address not registered for beta!");
            }
            else if (citizenRepository.IsEmailAddressUsed(model.Email))
            {
                AddError("Email address is already used!");
            }
        }