Ejemplo n.º 1
0
def get_public_manager_detail_by_uuid(group_uuid, manager_uuid):

    # manager_uuid is the user_uuid
    group_manager = groupService.get_group_manager_by_uuid(
        group_uuid, manager_uuid)
    core.logger.debug("group_manager=" + str(group_manager))

    if group_manager:

        # print("current_token(type)=" + str(type(current_token)))
        bearer_token = request.headers['Authorization']

        if current_token is not None:
            user_data = _get_external_user_info(manager_uuid, bearer_token)
            data = serializeUtils.serialize_manager(group_manager,
                                                    user_info=user_data)
        else:
            data = serializeUtils.serialize_manager(group_manager)

        resp = apiUtils.generate_response_wrapper(data)
        return jsonify(resp)
    else:
        #
        # In case we did not find the candidate by id
        # we send HTTP 404 - Not Found error to the client
        #
        abort(404)
Ejemplo n.º 2
0
def get_public_groups():

    if current_token is not None and current_token.user_uuid is not None:
        user_uuid = current_token.user_uuid

        group_info = groupService.get_public_groups(user_uuid)
        groups = group_info['groups']
        subscribed_groups = group_info['subscribed']

        # core.logger.debug("subscribed_groups=" + str(subscribed_groups))

        group_list = []
        for g in groups:
            d = GroupSchema().dump(g)
            d['subscribed'] = False
            for s in subscribed_groups:
                if g.group_id == s.group_id:
                    d['subscribed'] = True
                    break

            group_list.append(d)
            # core.logger.debug("d=" + str(d))

        resp = apiUtils.generate_response_wrapper(group_list)
        return jsonify(resp)
    else:
        abort(403)
Ejemplo n.º 3
0
def get_groups():
    groups = groupService.get_groups()
    group_list = []
    for g in groups:
        group_list.append(GroupSchema().dump(g))

    resp = apiUtils.generate_response_wrapper(group_list)
    return jsonify(resp)
Ejemplo n.º 4
0
def add_public_group():
    group_name = request.form["group_name"]
    group_de = request.form["group_de"]

    new_group = groupService.add_group(group_name, group_de)

    data = GroupSchema().dump(new_group)
    resp = apiUtils.generate_response_wrapper(data)
    resp = apiUtils.add_global_success_msg(resp, "New group has been added")
    return jsonify(resp), 201
Ejemplo n.º 5
0
def get_group_by_uuid(group_uuid):
    current_group = groupService.get_group_by_uuid(group_uuid)
    if current_group:
        data = GroupSchema().dump(current_group)
        resp = apiUtils.generate_response_wrapper(data)
        return jsonify(resp)
    else:
        #
        # In case we did not find the candidate by id
        # we send HTTP 404 - Not Found error to the client
        #
        abort(404)
Ejemplo n.º 6
0
def get_my_public_groups():
    if current_token is not None and current_token.user_uuid is not None:

        user_uuid = current_token.user_uuid

        groups = groupService.get_groups_by_user_uuid(user_uuid)
        group_list = []
        for g in groups:
            group_list.append(GroupSchema().dump(g))

        resp = apiUtils.generate_response_wrapper(group_list)
        return jsonify(resp)
    abort(403)
Ejemplo n.º 7
0
def subscribe_to_group(group_uuid, group_digest):

    if current_token is not None and current_token.user_uuid is not None:
        user_uuid = current_token.user_uuid

        digest_to_compare = sha256.hexdigest(group_uuid)

        if digest_to_compare == group_digest:
            group_membership = groupService.add_group_membership(
                group_uuid, user_uuid)
            data = MembershipSchema().dump(group_membership)

            resp = apiUtils.generate_response_wrapper(data)
            resp = apiUtils.add_global_success_msg(
                resp, "You have been added to the group")
            return jsonify(resp), 201
        else:
            abort(403)
    else:
        abort(403)
Ejemplo n.º 8
0
def get_my_public_groups_details():
    if current_token is not None and current_token.user_uuid is not None:
        user_uuid = current_token.user_uuid

        groups = groupService.get_groups_by_user_uuid(user_uuid)

        groups_details_list = list()

        for g in groups:
            group_details = groupService.get_group_detail_by_uuid(
                g.group_uuid, None, user_uuid)

            user_uuid_list = []

            for m in group_details.active_members:
                user_uuid_list.append(str(m.person.user_uuid))

            for m in group_details.active_managers:
                user_uuid_list.append(str(m.person.user_uuid))

                # core.logger.debug("user_uuid_list=" + str(user_uuid_list))

            # print("current_token(type)=" + str(type(current_token)))
            bearer_token = request.headers['Authorization']

            if current_token is not None:
                user_data = _get_external_user_info_list(
                    user_uuid_list, bearer_token)
                groups_details_list.append(
                    serializeUtils.serialize_group_detail(group_details,
                                                          user_info=user_data))
            else:
                groups_details_list.append(
                    serializeUtils.serialize_group_detail(group_details))

        resp = apiUtils.generate_response_wrapper(groups_details_list)
        return jsonify(resp)
    else:
        abort(403)
Ejemplo n.º 9
0
def get_public_group_detail_by_uuid(group_uuid):
    user_uuid = None
    if current_token is not None and current_token.user_uuid is not None:
        user_uuid = current_token.user_uuid

    group_details = groupService.get_group_detail_by_uuid(
        group_uuid, None, user_uuid)
    core.logger.debug("group_details=" + str(group_details))

    if group_details:
        user_uuid_list = []

        for m in group_details.active_members:
            user_uuid_list.append(str(m.person.user_uuid))

        for m in group_details.active_managers:
            user_uuid_list.append(str(m.person.user_uuid))

            # core.logger.debug("user_uuid_list=" + str(user_uuid_list))

        # print("current_token(type)=" + str(type(current_token)))
        bearer_token = request.headers['Authorization']

        if current_token is not None:
            user_data = _get_external_user_info_list(user_uuid_list,
                                                     bearer_token)
            data = serializeUtils.serialize_group_detail(group_details,
                                                         user_info=user_data)
        else:
            data = serializeUtils.serialize_group_detail(group_details)

        resp = apiUtils.generate_response_wrapper(data)
        return jsonify(resp)
    else:
        #
        # In case we did not find the candidate by id
        # we send HTTP 404 - Not Found error to the client
        #
        abort(404)