Пример #1
0
    def __init__(self, jobs_ctx, claimer, user_email):
        super().__init__()
        self.setupUi(self)
        self.jobs_ctx = jobs_ctx
        self.claimer = claimer
        self.claim_job = None
        self.new_device = None
        self.line_edit_user_full_name.setFocus()
        self.line_edit_user_full_name.set_validator(
            validators.NotEmptyValidator())
        self.line_edit_user_full_name.validity_changed.connect(
            self.check_infos)

        self.line_edit_user_email.setText(user_email)
        self.line_edit_user_email.set_validator(validators.EmailValidator())
        self.line_edit_user_email.validity_changed.connect(self.check_infos)

        self.line_edit_device.setText(get_default_device())
        self.line_edit_device.set_validator(validators.DeviceNameValidator())
        self.line_edit_device.validity_changed.connect(self.check_infos)

        self.claim_success.connect(self._on_claim_success)
        self.claim_error.connect(self._on_claim_error)
        self.label_wait.hide()
        self.button_ok.clicked.connect(self._on_claim_clicked)
        self.check_infos()
Пример #2
0
 def __init__(self):
     super().__init__()
     self.setupUi(self)
     self.widget_password.info_changed.connect(self.check_infos)
     self.line_edit_device.setText(get_default_device())
     self.line_edit_device.validity_changed.connect(self.check_infos)
     self.line_edit_device.set_validator(validators.DeviceNameValidator())
    def __init__(self, jobs_ctx, config,
                 addr: BackendOrganizationBootstrapAddr):
        super().__init__()
        self.setupUi(self)
        self.dialog = None
        self.jobs_ctx = jobs_ctx
        self.config = config
        self.addr = addr
        self.label_instructions.setText(
            _("TEXT_BOOTSTRAP_ORG_INSTRUCTIONS_url-organization").format(
                url=self.addr.to_url(),
                organization=self.addr.organization_id))
        self.bootstrap_job = None
        self.button_bootstrap.clicked.connect(self.bootstrap_clicked)
        pwd_str_widget = PasswordStrengthWidget()
        self.layout_password_strength.addWidget(pwd_str_widget)
        self.line_edit_password.textChanged.connect(
            pwd_str_widget.on_password_change)
        self.line_edit_login.textChanged.connect(self.check_infos)
        self.line_edit_device.textChanged.connect(self.check_infos)
        self.line_edit_password.textChanged.connect(self.check_infos)
        self.line_edit_password_check.textChanged.connect(self.check_infos)
        self.line_edit_login.setValidator(validators.UserIDValidator())
        self.line_edit_device.setValidator(validators.DeviceNameValidator())
        self.bootstrap_success.connect(self.on_bootstrap_success)
        self.bootstrap_error.connect(self.on_bootstrap_error)

        self.line_edit_device.setText(get_default_device())

        self.status = None

        self.check_infos()
Пример #4
0
    def __init__(self, jobs_ctx, greeter):
        super().__init__()
        self.setupUi(self)
        self.jobs_ctx = jobs_ctx
        self.greeter = greeter
        self.get_requests_job = None
        self.create_user_job = None

        self.widget_info.hide()
        self.label_waiting.show()

        self.line_edit_user_full_name.validity_changed.connect(self.check_infos)
        self.line_edit_user_full_name.set_validator(validators.NotEmptyValidator())
        self.line_edit_user_email.validity_changed.connect(self.check_infos)
        self.line_edit_user_email.set_validator(validators.EmailValidator())
        self.line_edit_device.validity_changed.connect(self.check_infos)
        self.line_edit_device.set_validator(validators.DeviceNameValidator())

        # self.combo_profile.addItem(_("TEXT_USER_PROFILE_OUTSIDER"), UserProfile.OUTSIDER)
        self.combo_profile.addItem(_("TEXT_USER_PROFILE_STANDARD"), UserProfile.STANDARD)
        self.combo_profile.addItem(_("TEXT_USER_PROFILE_ADMIN"), UserProfile.ADMIN)
        self.combo_profile.setCurrentIndex(0)

        self.get_requests_success.connect(self._on_get_requests_success)
        self.get_requests_error.connect(self._on_get_requests_error)
        self.create_user_success.connect(self._on_create_user_success)
        self.create_user_error.connect(self._on_create_user_error)
        self.button_create_user.clicked.connect(self._on_create_user_clicked)

        self.get_requests_job = self.jobs_ctx.submit_job(
            ThreadSafeQtSignal(self, "get_requests_success", QtToTrioJob),
            ThreadSafeQtSignal(self, "get_requests_error", QtToTrioJob),
            self.greeter.get_claim_requests,
        )
Пример #5
0
    def __init__(self, jobs_ctx, config,
                 addr: BackendOrganizationClaimUserAddr):
        super().__init__()
        self.setupUi(self)
        self.jobs_ctx = jobs_ctx
        self.config = config
        self.claim_user_job = None
        self.dialog = None
        self.addr = addr
        self.label_instructions.setText(
            _("TEXT_CLAIM_USER_INSTRUCTIONS_user-url-organization").format(
                user=self.addr.user_id,
                url=self.addr.to_url(),
                organization=self.addr.organization_id,
            ))
        pwd_str_widget = PasswordStrengthWidget()
        self.layout_password_strength.addWidget(pwd_str_widget)
        self.button_claim.clicked.connect(self.claim_clicked)
        self.line_edit_device.textChanged.connect(self.check_infos)
        self.line_edit_token.textChanged.connect(self.check_infos)
        self.line_edit_password.textChanged.connect(
            pwd_str_widget.on_password_change)
        self.line_edit_password.textChanged.connect(self.check_infos)
        self.line_edit_password_check.textChanged.connect(self.check_infos)
        self.claim_success.connect(self.on_claim_success)
        self.claim_error.connect(self.on_claim_error)
        self.line_edit_device.setValidator(validators.DeviceNameValidator())

        self.status = None

        if addr.token:
            self.line_edit_token.setText(addr.token)
        self.line_edit_device.setText(get_default_device())

        self.check_infos()
Пример #6
0
def test_device_name_validator(qtbot, core_config):
    switch_language(core_config, "en")

    le = ValidatedLineEdit()
    le.set_validator(validators.DeviceNameValidator())
    qtbot.addWidget(le)
    le.show()

    qtbot.keyClicks(le, "abcd")
    assert le.is_input_valid()
    assert le.property("validity") == QtGui.QValidator.Acceptable

    qtbot.keyClicks(le, "~")
    assert not le.is_input_valid()
    assert le.property("validity") == QtGui.QValidator.Invalid
Пример #7
0
 def __init__(self, jobs_ctx, claimer, device_email):
     super().__init__()
     self.setupUi(self)
     self.jobs_ctx = jobs_ctx
     self.claimer = claimer
     self.claim_job = None
     self.line_edit_device.setFocus()
     self.line_edit_device.set_validator(validators.DeviceNameValidator())
     self.line_edit_device.setText(get_default_device())
     self.line_edit_device.validity_changed.connect(self.check_infos)
     self.widget_password.info_changed.connect(self.check_infos)
     self.button_ok.setDisabled(True)
     self.claim_success.connect(self._on_claim_success)
     self.claim_error.connect(self._on_claim_error)
     self.label_wait.hide()
     self.button_ok.clicked.connect(self._on_claim_clicked)
 def __init__(self, core_config, *args, **kwargs):
     super().__init__(*args, **kwargs)
     self.setupUi(self)
     self.core_config = core_config
     self.button_cancel.hide()
     self.button_claim.clicked.connect(self.claim_clicked)
     self.button_cancel.clicked.connect(self.cancel_claim)
     self.line_edit_login.textChanged.connect(self.check_infos)
     self.line_edit_device.textChanged.connect(self.check_infos)
     self.line_edit_token.textChanged.connect(self.check_infos)
     self.line_edit_url.textChanged.connect(self.check_infos)
     self.line_edit_password.textChanged.connect(self.password_changed)
     self.claim_successful.connect(self.claim_finished)
     self.on_claim_error.connect(self.claim_error)
     self.line_edit_login.setValidator(validators.UserIDValidator())
     self.line_edit_device.setValidator(validators.DeviceNameValidator())
     self.line_edit_url.setValidator(
         validators.BackendOrganizationAddrValidator())
     self.claim_thread = None
     self.cancel_scope = None
     self.trio_portal = None
     self.claim_queue = queue.Queue(1)
Пример #9
0
 def __init__(self, core, jobs_ctx, *args, **kwargs):
     super().__init__(*args, **kwargs)
     self.setupUi(self)
     self.core = core
     self.dialog = None
     self.jobs_ctx = jobs_ctx
     self.registration_job = None
     self.widget_registration.hide()
     self.button_register.clicked.connect(self.register_device)
     self.button_copy_device.clicked.connect(
         self.copy_field(self.button_copy_device, self.line_edit_device))
     self.button_copy_token.clicked.connect(
         self.copy_field(self.button_copy_token, self.line_edit_token))
     self.button_copy_url.clicked.connect(
         self.copy_field(self.button_copy_url, self.line_edit_url))
     self.button_copy_device.apply_style()
     self.button_copy_token.apply_style()
     self.button_copy_url.apply_style()
     self.registration_success.connect(self.on_registration_success)
     self.registration_error.connect(self.on_registration_error)
     self.line_edit_device_name.setValidator(
         validators.DeviceNameValidator())
Пример #10
0
 def __init__(self, portal, core, *args, **kwargs):
     super().__init__(*args, **kwargs)
     self.setupUi(self)
     self.core = core
     self.portal = portal
     self.cancel_scope = None
     self.register_thread = None
     self.register_queue = queue.Queue(1)
     self.widget_registration.hide()
     self.button_cancel.hide()
     self.button_register.clicked.connect(self.register_device)
     self.button_cancel.clicked.connect(self.cancel_register_device)
     self.button_copy_device.clicked.connect(
         self.copy_field(self.line_edit_device))
     self.button_copy_token.clicked.connect(
         self.copy_field(self.line_edit_token))
     self.button_copy_url.clicked.connect(
         self.copy_field(self.line_edit_url))
     self.on_registered.connect(self.device_registered)
     self.on_register_error.connect(self.register_error)
     self.line_edit_device_name.setValidator(
         validators.DeviceNameValidator())
     self.closing_allowed = True