Exemplo n.º 1
0
def async_unregister(self, registration_id, logger_context=None):
    self.setup_logger(logger_context)

    registration = Registration.objects.get(id=registration_id)
    pool_id = registration.pool_id
    try:
        with transaction.atomic():
            registration.event.unregister(registration)
            activation_time = registration.event.get_earliest_registration_time(
                registration.user
            )
            transaction.on_commit(
                lambda: notify_event_registration(
                    constants.SOCKET_UNREGISTRATION_SUCCESS,
                    registration,
                    from_pool=pool_id,
                    activation_time=activation_time,
                )
            )
        log.info("unregistration_success", registration_id=registration.id)
    except EventHasClosed as e:
        log.warn(
            "unregistration_tried_after_started",
            exception=e,
            registration_id=registration.id,
        )
    except IntegrityError as e:
        log.error("unregistration_error", exception=e, registration_id=registration.id)
        registration.status = constants.FAILURE_UNREGISTER
        registration.save()
        notify_user_registration(
            constants.SOCKET_UNREGISTRATION_FAILURE,
            registration,
            error_message="Avregistrering feilet",
        )
Exemplo n.º 2
0
 def on_failure(self, *args):
     if self.request.retries == self.max_retries:
         self.registration.status = constants.FAILURE_REGISTER
         self.registration.save()
         notify_user_registration(constants.SOCKET_REGISTRATION_FAILURE,
                                  self.registration,
                                  error_message='Registrering feilet')
Exemplo n.º 3
0
 def on_failure(self, return_value, *args):
     if self.request.retries == self.max_retries:
         if return_value.json_body:
             error = return_value.json_body['error']
             self.registration.charge_id = error['charge']
             self.registration.charge_status = error['code']
             self.registration.save()
             notify_user_registration(constants.SOCKET_PAYMENT_FAILURE,
                                      self.registration,
                                      error_message=error['message'])
         else:
             self.registration.charge_status = constants.PAYMENT_FAILURE
             self.registration.save()
             notify_user_registration(constants.SOCKET_PAYMENT_FAILURE,
                                      self.registration,
                                      error_message='Payment failed')