Esempio n. 1
0
def dissociate_line(userid, lineid):
    try:
        user_line = user_line_services.get_by_user_id_and_line_id(userid, lineid)
    except UserLineNotExistsError:
        raise AssociationNotExistsError("User with id=%s is not associated with line id=%s" % (userid, lineid))
    user_line_services.dissociate(user_line)
    return make_response('', 204)
Esempio n. 2
0
    def test_dissociate(self, validate_dissociation, dissociate_user_line,
                        notifier_dissociated):
        user_line = Mock(UserLine)

        user_line_services.dissociate(user_line)

        validate_dissociation.assert_called_once_with(user_line)
        dissociate_user_line.assert_called_once_with(user_line)
        notifier_dissociated.assert_called_once_with(user_line)
Esempio n. 3
0
    def test_dissociate(self,
                        validate_dissociation,
                        dissociate_user_line,
                        notifier_dissociated):
        user_line = Mock(UserLine)

        user_line_services.dissociate(user_line)

        validate_dissociation.assert_called_once_with(user_line)
        dissociate_user_line.assert_called_once_with(user_line)
        notifier_dissociated.assert_called_once_with(user_line)
Esempio n. 4
0
def _delete_line_associations(channel, line_id):
    from xivo_dao.data_handler.line import services as line_services
    from xivo_dao.data_handler.line_extension import services as line_extension_services
    from xivo_dao.data_handler.user_line import services as user_line_services

    line = line_services.get(line_id)
    line.device_id = None
    line.device_slot = 1
    line_services.edit(line)

    line_extension = line_extension_services.find_by_line_id(line_id)
    if line_extension:
        line_extension_services.dissociate(line_extension)

    user_lines = user_line_services.find_all_by_line_id(line_id)
    secondary_associations = [ul for ul in user_lines if not ul.main_user]
    main_associations = [ul for ul in user_lines if ul.main_user]

    for user_line in secondary_associations + main_associations:
        user_line_services.dissociate(user_line)
Esempio n. 5
0
def _delete_line_associations(channel, line_id):
    from xivo_dao.data_handler.line import services as line_services
    from xivo_dao.data_handler.line_extension import services as line_extension_services
    from xivo_dao.data_handler.user_line import services as user_line_services

    line = line_services.get(line_id)
    line.device_id = None
    line.device_slot = 1
    line_services.edit(line)

    line_extension = line_extension_services.find_by_line_id(line_id)
    if line_extension:
        line_extension_services.dissociate(line_extension)

    user_lines = user_line_services.find_all_by_line_id(line_id)
    secondary_associations = [ul for ul in user_lines if not ul.main_user]
    main_associations = [ul for ul in user_lines if ul.main_user]

    for user_line in secondary_associations + main_associations:
        user_line_services.dissociate(user_line)