def delete_group_from_project(request): project_id, group_info_id = map( int, extract_from_GET(request.GET, 'project_id', 'group_info_id')) project = get_object_or_404(Project, id=project_id) group_info = get_object_or_404(GroupInfo, id=group_info_id) group = get_object_or_404(project.normal_group, name=group_info.group.name) project.normal_group.remove(group) return redirect('project_management_page', project_id=project_id)
def delete_user_from_group(request, *args, **kwargs): # authentication group_info_id, user_info_id = extract_from_GET(request.GET, "group_info_id", "user_info_id") delete_user_info = get_object_or_404(UserInfo, id=user_info_id) group_info = get_object_or_404(GroupInfo, id=group_info_id) # manager can not be remove from group assert_user_not_in_group_manager(delete_user_info.user, group_info) # delete user group_info.group.user_set.remove(delete_user_info.user) return redirect("group_management_page", group_info_id=group_info_id)
def delete_group_from_project(request): project_id, group_info_id = map(int, extract_from_GET( request.GET, 'project_id', 'group_info_id' )) project = get_object_or_404(Project, id=project_id) group_info = get_object_or_404(GroupInfo, id=group_info_id) group = get_object_or_404(project.normal_group, name=group_info.group.name) project.normal_group.remove(group) return redirect('project_management_page', project_id=project_id)
def delete_user_from_group(request, *args, **kwargs): # authentication group_info_id, user_info_id = extract_from_GET(request.GET, 'group_info_id', 'user_info_id') delete_user_info = get_object_or_404(UserInfo, id=user_info_id) group_info = get_object_or_404(GroupInfo, id=group_info_id) # manager can not be remove from group assert_user_not_in_group_manager(delete_user_info.user, group_info) # delete user group_info.group.user_set.remove(delete_user_info.user) return redirect('group_management_page', group_info_id=group_info_id)
def remove_user_from_group_manager(request, *args, **kwargs): # authentication group_info_id, user_info_id = extract_from_GET(request.GET, "group_info_id", "user_info_id") delete_user_info = get_object_or_404(UserInfo, id=user_info_id) group_info = get_object_or_404(GroupInfo, id=group_info_id) # manager can not be remove from group assert_user_in_group_manager(delete_user_info.user, group_info) # remove manager if group_info.manager.count() > 1: group_info.manager.remove(delete_user_info.user) else: raise Http404 return redirect("group_management_page", group_info_id=group_info_id)
def remove_user_from_group_manager(request, *args, **kwargs): # authentication group_info_id, user_info_id = extract_from_GET(request.GET, 'group_info_id', 'user_info_id') delete_user_info = get_object_or_404(UserInfo, id=user_info_id) group_info = get_object_or_404(GroupInfo, id=group_info_id) # manager can not be remove from group assert_user_in_group_manager(delete_user_info.user, group_info) # remove manager if group_info.manager.count() > 1: group_info.manager.remove(delete_user_info.user) else: raise Http404 return redirect('group_management_page', group_info_id=group_info_id)