コード例 #1
0
def remove_group_manager(group_uuid, user_uuid):
    core.logger.debug("Removing Group Manager: " + str(group_uuid) + ", " + str(user_uuid))

    session = baseDao.get_session()

    group = groupDao.get_group_by_uuid(session, group_uuid, None)

    if group:
        if not group.private_fl:
            try:
                person = groupDao.get_person_by_uuid(session, user_uuid)
                if person is None:
                    person = Person()
                    person.user_uuid = user_uuid
                    person = groupDao.add_person(session, person)

                is_removed = groupDao.remove_group_manager(session, group.group_id, person.person_id)
                session.commit()
                return is_removed
            except Exception:
                session.rollback()
                raise
        else:
            raise Exception("Not a public group")
    else:
        raise Exception("Group Doesn't exist!")
コード例 #2
0
def get_group_manager_by_uuid(group_uuid, person_uuid):
    session = baseDao.get_session()

    group = groupDao.get_group_by_uuid(session, group_uuid, None)
    person = groupDao.get_person_by_uuid(session, person_uuid)

    return groupDao.get_group_manager(session, group.group_id, person.person_id)
コード例 #3
0
def get_group_detail_by_uuid(group_uuid, is_private_fl=None, user_uuid=None):
    session = baseDao.get_session()
    group_detail = GroupDetail()
    group = groupDao.get_group_by_uuid(session, group_uuid, is_private_fl)
    group_detail.group = group
    group_detail.active_members = groupDao.get_active_group_members(session, group.group_id)
    group_detail.active_managers = groupDao.get_active_group_managers(session, group.group_id)

    if user_uuid is not None:
        person = groupDao.get_person_by_uuid(session, user_uuid)
        core.logger.debug("person=" + str(person))
        if person is not None:
            is_active_member = groupDao.is_active_group_member(session, group.group_id, person.person_id)
            core.logger.debug("is_active_member=" + str(is_active_member))
            if is_active_member:
                group_detail.group.subscribed = True
            else:
                is_active_manager = groupDao.is_active_group_manager(session, group.group_id, person.person_id)
                core.logger.debug("is_active_manager=" + str(is_active_manager))
                if is_active_manager:
                    group_detail.group.subscribed = True

    return group_detail
コード例 #4
0
def add_group_membership(group_uuid, user_uuid):
    session = baseDao.get_session()

    group = groupDao.get_group_by_uuid(session, group_uuid, None)

    if group:
        if not group.private_fl:
            try:
                person = groupDao.get_person_by_uuid(session, user_uuid)
                if person is None:
                    person = Person()
                    person.user_uuid = user_uuid
                    person = groupDao.add_person(session, person)

                group_membership = groupDao.add_group_membership(session, group.group_id, person)
                session.commit()
                return group_membership
            except Exception:
                session.rollback()
                raise
        else:
            raise Exception("Not a public group")
    else:
        raise Exception("Group Doesn't exist!")