Example #1
0
def delete_api_key_by_user(user: User, api_key_prefix: str) -> None:
    api_key = ApiKey.query.filter_by(prefix=api_key_prefix).one()

    if not user.has_access(api_key.offererId):
        raise ApiKeyDeletionDenied()

    db.session.delete(api_key)
def check_user_can_validate_bookings_v2(user: User, offerer_id: int) -> None:
    if not user.has_access(offerer_id):
        api_errors = ForbiddenError()
        api_errors.add_error(
            "user",
            "Vous n’avez pas les droits suffisants pour valider cette contremarque car cette réservation n'a pas été faite sur une de vos offres, ou que votre rattachement à la structure est encore en cours de validation",
        )
        raise api_errors
Example #3
0
def check_user_has_access_to_offerer(user: User, offerer_id: int):
    if not user.has_access(offerer_id):
        errors = ApiErrors()
        errors.add_error(
            "global",
            "Vous n'avez pas les droits d'accès suffisant pour accéder à cette information."
        )
        errors.status_code = 403
        raise errors
def check_user_can_validate_bookings(user: User, offerer_id: int) -> bool:
    if not user.is_authenticated:
        return False

    if not user.has_access(offerer_id):
        api_errors = ApiErrors()
        api_errors.add_error("global", "Cette contremarque n'a pas été trouvée")
        raise api_errors

    return True
Example #5
0
def check_user_has_access_to_offerer(user: User, offerer_id: int) -> None:
    if not user.has_access(offerer_id):
        raise ApiErrors(
            errors={
                "global": [
                    "Vous n'avez pas les droits d'accès suffisant pour accéder à cette information."
                ],
            },
            status_code=403,
        )
def check_user_can_alter_venue(user: User, venue_id: int) -> None:
    venue = Venue.query.get(venue_id)
    if not user.has_access(venue.managingOffererId):
        api_errors = ForbiddenError()
        api_errors.add_error("user", "Vous n'avez pas les droits suffisants pour modifier ce lieu.")
        raise api_errors