intranet/apps/eighth/views/admin/groups.py

Summary

Maintainability
F
6 days
Test Coverage

File groups.py has 654 lines of code (exceeds 250 allowed). Consider refactoring.
Open

import csv
import logging
import re
from typing import List, Optional

Severity: Major
Found in intranet/apps/eighth/views/admin/groups.py - About 1 day to fix

    Function eighth_admin_distribute_action has a Cognitive Complexity of 59 (exceeds 5 allowed). Consider refactoring.
    Open

    def eighth_admin_distribute_action(request):
        block = None
        if "users" in request.POST:
            activity_user_map = {}
            for item in request.POST:
    Severity: Minor
    Found in intranet/apps/eighth/views/admin/groups.py - About 1 day to fix

    Cognitive Complexity

    Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

    A method's cognitive complexity is based on a few simple rules:

    • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
    • Code is considered more complex for each "break in the linear flow of the code"
    • Code is considered more complex when "flow breaking structures are nested"

    Further reading

    Function upload_group_members_view has a Cognitive Complexity of 38 (exceeds 5 allowed). Consider refactoring.
    Open

    def upload_group_members_view(request, group_id):
        try:
            group = Group.objects.get(id=group_id)
        except Group.DoesNotExist as e:
            raise http.Http404 from e
    Severity: Minor
    Found in intranet/apps/eighth/views/admin/groups.py - About 5 hrs to fix

    Cognitive Complexity

    Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

    A method's cognitive complexity is based on a few simple rules:

    • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
    • Code is considered more complex for each "break in the linear flow of the code"
    • Code is considered more complex when "flow breaking structures are nested"

    Further reading

    Function find_users_input has a Cognitive Complexity of 37 (exceeds 5 allowed). Consider refactoring.
    Open

    def find_users_input(lines: List[str]):
        sure_users = []
        unsure_users = []
        for line in lines:
            done = False
    Severity: Minor
    Found in intranet/apps/eighth/views/admin/groups.py - About 5 hrs to fix

    Cognitive Complexity

    Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

    A method's cognitive complexity is based on a few simple rules:

    • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
    • Code is considered more complex for each "break in the linear flow of the code"
    • Code is considered more complex when "flow breaking structures are nested"

    Further reading

    Function get_user_info has a Cognitive Complexity of 32 (exceeds 5 allowed). Consider refactoring.
    Open

    def get_user_info(key: str, val) -> Optional[List[User]]:
        if key in ["username", "id"]:
            try:
                u = get_user_model().objects.filter(**{key: val})
            except ValueError:
    Severity: Minor
    Found in intranet/apps/eighth/views/admin/groups.py - About 4 hrs to fix

    Cognitive Complexity

    Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

    A method's cognitive complexity is based on a few simple rules:

    • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
    • Code is considered more complex for each "break in the linear flow of the code"
    • Code is considered more complex when "flow breaking structures are nested"

    Further reading

    Function edit_group_view has a Cognitive Complexity of 29 (exceeds 5 allowed). Consider refactoring.
    Open

    def edit_group_view(request, group_id):
        try:
            group = Group.objects.get(id=group_id)
        except Group.DoesNotExist as e:
            raise http.Http404 from e
    Severity: Minor
    Found in intranet/apps/eighth/views/admin/groups.py - About 4 hrs to fix

    Cognitive Complexity

    Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

    A method's cognitive complexity is based on a few simple rules:

    • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
    • Code is considered more complex for each "break in the linear flow of the code"
    • Code is considered more complex when "flow breaking structures are nested"

    Further reading

    Cyclomatic complexity is too high in function eighth_admin_distribute_action. (24)
    Open

    @eighth_admin_required
    def eighth_admin_distribute_action(request):
        block = None
        if "users" in request.POST:
            activity_user_map = {}

    Cyclomatic Complexity

    Cyclomatic Complexity corresponds to the number of decisions a block of code contains plus 1. This number (also called McCabe number) is equal to the number of linearly independent paths through the code. This number can be used as a guide when testing conditional logic in blocks.

    Radon analyzes the AST tree of a Python program to compute Cyclomatic Complexity. Statements have the following effects on Cyclomatic Complexity:

    Construct Effect on CC Reasoning
    if +1 An if statement is a single decision.
    elif +1 The elif statement adds another decision.
    else +0 The else statement does not cause a new decision. The decision is at the if.
    for +1 There is a decision at the start of the loop.
    while +1 There is a decision at the while statement.
    except +1 Each except branch adds a new conditional path of execution.
    finally +0 The finally block is unconditionally executed.
    with +1 The with statement roughly corresponds to a try/except block (see PEP 343 for details).
    assert +1 The assert statement internally roughly equals a conditional statement.
    Comprehension +1 A list/set/dict comprehension of generator expression is equivalent to a for loop.
    Boolean Operator +1 Every boolean operator (and, or) adds a decision point.

    Source: http://radon.readthedocs.org/en/latest/intro.html

    Cyclomatic complexity is too high in function edit_group_view. (19)
    Open

    @eighth_admin_required
    def edit_group_view(request, group_id):
        try:
            group = Group.objects.get(id=group_id)
        except Group.DoesNotExist as e:

    Cyclomatic Complexity

    Cyclomatic Complexity corresponds to the number of decisions a block of code contains plus 1. This number (also called McCabe number) is equal to the number of linearly independent paths through the code. This number can be used as a guide when testing conditional logic in blocks.

    Radon analyzes the AST tree of a Python program to compute Cyclomatic Complexity. Statements have the following effects on Cyclomatic Complexity:

    Construct Effect on CC Reasoning
    if +1 An if statement is a single decision.
    elif +1 The elif statement adds another decision.
    else +0 The else statement does not cause a new decision. The decision is at the if.
    for +1 There is a decision at the start of the loop.
    while +1 There is a decision at the while statement.
    except +1 Each except branch adds a new conditional path of execution.
    finally +0 The finally block is unconditionally executed.
    with +1 The with statement roughly corresponds to a try/except block (see PEP 343 for details).
    assert +1 The assert statement internally roughly equals a conditional statement.
    Comprehension +1 A list/set/dict comprehension of generator expression is equivalent to a for loop.
    Boolean Operator +1 Every boolean operator (and, or) adds a decision point.

    Source: http://radon.readthedocs.org/en/latest/intro.html

    Cyclomatic complexity is too high in function upload_group_members_view. (17)
    Open

    @eighth_admin_required
    def upload_group_members_view(request, group_id):
        try:
            group = Group.objects.get(id=group_id)
        except Group.DoesNotExist as e:

    Cyclomatic Complexity

    Cyclomatic Complexity corresponds to the number of decisions a block of code contains plus 1. This number (also called McCabe number) is equal to the number of linearly independent paths through the code. This number can be used as a guide when testing conditional logic in blocks.

    Radon analyzes the AST tree of a Python program to compute Cyclomatic Complexity. Statements have the following effects on Cyclomatic Complexity:

    Construct Effect on CC Reasoning
    if +1 An if statement is a single decision.
    elif +1 The elif statement adds another decision.
    else +0 The else statement does not cause a new decision. The decision is at the if.
    for +1 There is a decision at the start of the loop.
    while +1 There is a decision at the while statement.
    except +1 Each except branch adds a new conditional path of execution.
    finally +0 The finally block is unconditionally executed.
    with +1 The with statement roughly corresponds to a try/except block (see PEP 343 for details).
    assert +1 The assert statement internally roughly equals a conditional statement.
    Comprehension +1 A list/set/dict comprehension of generator expression is equivalent to a for loop.
    Boolean Operator +1 Every boolean operator (and, or) adds a decision point.

    Source: http://radon.readthedocs.org/en/latest/intro.html

    Function add_member_to_group_view has a Cognitive Complexity of 18 (exceeds 5 allowed). Consider refactoring.
    Open

    def add_member_to_group_view(request, group_id):
        if request.method != "POST":
            return http.HttpResponseNotAllowed(["POST"], "HTTP 405: METHOD NOT ALLOWED")
    
        try:
    Severity: Minor
    Found in intranet/apps/eighth/views/admin/groups.py - About 2 hrs to fix

    Cognitive Complexity

    Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

    A method's cognitive complexity is based on a few simple rules:

    • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
    • Code is considered more complex for each "break in the linear flow of the code"
    • Code is considered more complex when "flow breaking structures are nested"

    Further reading

    Cyclomatic complexity is too high in function find_users_input. (14)
    Open

    def find_users_input(lines: List[str]):
        sure_users = []
        unsure_users = []
        for line in lines:
            done = False

    Cyclomatic Complexity

    Cyclomatic Complexity corresponds to the number of decisions a block of code contains plus 1. This number (also called McCabe number) is equal to the number of linearly independent paths through the code. This number can be used as a guide when testing conditional logic in blocks.

    Radon analyzes the AST tree of a Python program to compute Cyclomatic Complexity. Statements have the following effects on Cyclomatic Complexity:

    Construct Effect on CC Reasoning
    if +1 An if statement is a single decision.
    elif +1 The elif statement adds another decision.
    else +0 The else statement does not cause a new decision. The decision is at the if.
    for +1 There is a decision at the start of the loop.
    while +1 There is a decision at the while statement.
    except +1 Each except branch adds a new conditional path of execution.
    finally +0 The finally block is unconditionally executed.
    with +1 The with statement roughly corresponds to a try/except block (see PEP 343 for details).
    assert +1 The assert statement internally roughly equals a conditional statement.
    Comprehension +1 A list/set/dict comprehension of generator expression is equivalent to a for loop.
    Boolean Operator +1 Every boolean operator (and, or) adds a decision point.

    Source: http://radon.readthedocs.org/en/latest/intro.html

    Cyclomatic complexity is too high in function get_user_info. (14)
    Open

    def get_user_info(key: str, val) -> Optional[List[User]]:
        if key in ["username", "id"]:
            try:
                u = get_user_model().objects.filter(**{key: val})
            except ValueError:

    Cyclomatic Complexity

    Cyclomatic Complexity corresponds to the number of decisions a block of code contains plus 1. This number (also called McCabe number) is equal to the number of linearly independent paths through the code. This number can be used as a guide when testing conditional logic in blocks.

    Radon analyzes the AST tree of a Python program to compute Cyclomatic Complexity. Statements have the following effects on Cyclomatic Complexity:

    Construct Effect on CC Reasoning
    if +1 An if statement is a single decision.
    elif +1 The elif statement adds another decision.
    else +0 The else statement does not cause a new decision. The decision is at the if.
    for +1 There is a decision at the start of the loop.
    while +1 There is a decision at the while statement.
    except +1 Each except branch adds a new conditional path of execution.
    finally +0 The finally block is unconditionally executed.
    with +1 The with statement roughly corresponds to a try/except block (see PEP 343 for details).
    assert +1 The assert statement internally roughly equals a conditional statement.
    Comprehension +1 A list/set/dict comprehension of generator expression is equivalent to a for loop.
    Boolean Operator +1 Every boolean operator (and, or) adds a decision point.

    Source: http://radon.readthedocs.org/en/latest/intro.html

    Cyclomatic complexity is too high in function add_member_to_group_view. (13)
    Open

    @eighth_admin_required
    def add_member_to_group_view(request, group_id):
        if request.method != "POST":
            return http.HttpResponseNotAllowed(["POST"], "HTTP 405: METHOD NOT ALLOWED")
    
    

    Cyclomatic Complexity

    Cyclomatic Complexity corresponds to the number of decisions a block of code contains plus 1. This number (also called McCabe number) is equal to the number of linearly independent paths through the code. This number can be used as a guide when testing conditional logic in blocks.

    Radon analyzes the AST tree of a Python program to compute Cyclomatic Complexity. Statements have the following effects on Cyclomatic Complexity:

    Construct Effect on CC Reasoning
    if +1 An if statement is a single decision.
    elif +1 The elif statement adds another decision.
    else +0 The else statement does not cause a new decision. The decision is at the if.
    for +1 There is a decision at the start of the loop.
    while +1 There is a decision at the while statement.
    except +1 Each except branch adds a new conditional path of execution.
    finally +0 The finally block is unconditionally executed.
    with +1 The with statement roughly corresponds to a try/except block (see PEP 343 for details).
    assert +1 The assert statement internally roughly equals a conditional statement.
    Comprehension +1 A list/set/dict comprehension of generator expression is equivalent to a for loop.
    Boolean Operator +1 Every boolean operator (and, or) adds a decision point.

    Source: http://radon.readthedocs.org/en/latest/intro.html

    Function eighth_admin_signup_group_action has a Cognitive Complexity of 13 (exceeds 5 allowed). Consider refactoring.
    Open

    def eighth_admin_signup_group_action(request, group_id, schact_id):
        scheduled_activity = get_object_or_404(EighthScheduledActivity, id=schact_id)
        group = get_object_or_404(Group, id=group_id)
    
        users = group.user_set.all()
    Severity: Minor
    Found in intranet/apps/eighth/views/admin/groups.py - About 1 hr to fix

    Cognitive Complexity

    Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

    A method's cognitive complexity is based on a few simple rules:

    • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
    • Code is considered more complex for each "break in the linear flow of the code"
    • Code is considered more complex when "flow breaking structures are nested"

    Further reading

    Avoid deeply nested control flow statements.
    Open

                        if len(part) == 7:
                            # Try student ID
                            u = get_user_model().objects.user_with_student_id(part)
                            if u:
                                sure_users.append([line, u])
    Severity: Major
    Found in intranet/apps/eighth/views/admin/groups.py - About 45 mins to fix

      Function add_group_view has a Cognitive Complexity of 8 (exceeds 5 allowed). Consider refactoring.
      Open

      def add_group_view(request):
          if request.method == "POST":
              form = QuickGroupForm(request.POST)
              if form.is_valid():
                  if not request.user.can_manage_group(form.cleaned_data["name"]):
      Severity: Minor
      Found in intranet/apps/eighth/views/admin/groups.py - About 45 mins to fix

      Cognitive Complexity

      Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

      A method's cognitive complexity is based on a few simple rules:

      • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
      • Code is considered more complex for each "break in the linear flow of the code"
      • Code is considered more complex when "flow breaking structures are nested"

      Further reading

      Avoid deeply nested control flow statements.
      Open

                          if u:
                              return [u]
              return []
      Severity: Major
      Found in intranet/apps/eighth/views/admin/groups.py - About 45 mins to fix

        Avoid deeply nested control flow statements.
        Open

                            if member.groups.filter(id=group.id).exists():
                                messages.warning(request, "User {} is already in group".format(member.username))
                            else:
                                member.groups.add(group)
                                member.save()
        Severity: Major
        Found in intranet/apps/eighth/views/admin/groups.py - About 45 mins to fix

          Function eighth_admin_perform_group_signup has 5 arguments (exceeds 4 allowed). Consider refactoring.
          Open

          def eighth_admin_perform_group_signup(*, group_id: int, schact_id: int, request: Optional[http.HttpRequest], skip_users: set):
          Severity: Minor
          Found in intranet/apps/eighth/views/admin/groups.py - About 35 mins to fix

            Avoid too many return statements within this function.
            Open

                                return [u]
            Severity: Major
            Found in intranet/apps/eighth/views/admin/groups.py - About 30 mins to fix

              Avoid too many return statements within this function.
              Open

                                      return [u]
              Severity: Major
              Found in intranet/apps/eighth/views/admin/groups.py - About 30 mins to fix

                Avoid too many return statements within this function.
                Open

                        return redirect(next_url + "?error=n")
                Severity: Major
                Found in intranet/apps/eighth/views/admin/groups.py - About 30 mins to fix

                  Avoid too many return statements within this function.
                  Open

                          return render(request, "eighth/admin/possible_students_add_group.html", context)
                  Severity: Major
                  Found in intranet/apps/eighth/views/admin/groups.py - About 30 mins to fix

                    Avoid too many return statements within this function.
                    Open

                        return None
                    Severity: Major
                    Found in intranet/apps/eighth/views/admin/groups.py - About 30 mins to fix

                      Avoid too many return statements within this function.
                      Open

                              return redirect(next_url + "?added=" + str(from_sid.id))
                      Severity: Major
                      Found in intranet/apps/eighth/views/admin/groups.py - About 30 mins to fix

                        Avoid too many return statements within this function.
                        Open

                                return redirect(next_url + "?error=n")
                        Severity: Major
                        Found in intranet/apps/eighth/views/admin/groups.py - About 30 mins to fix

                          Avoid too many return statements within this function.
                          Open

                                      return render(
                          Severity: Major
                          Found in intranet/apps/eighth/views/admin/groups.py - About 30 mins to fix

                            Avoid too many return statements within this function.
                            Open

                                                return [u]
                            Severity: Major
                            Found in intranet/apps/eighth/views/admin/groups.py - About 30 mins to fix

                              Avoid too many return statements within this function.
                              Open

                                  return render(request, "eighth/admin/upload_group.html", context)
                              Severity: Major
                              Found in intranet/apps/eighth/views/admin/groups.py - About 30 mins to fix

                                Avoid too many return statements within this function.
                                Open

                                        return []
                                Severity: Major
                                Found in intranet/apps/eighth/views/admin/groups.py - About 30 mins to fix

                                  Function remove_member_from_group_view has a Cognitive Complexity of 6 (exceeds 5 allowed). Consider refactoring.
                                  Open

                                  def remove_member_from_group_view(request, group_id, user_id):
                                      if request.method != "POST":
                                          return http.HttpResponseNotAllowed(["POST"], "HTTP 405: METHOD NOT ALLOWED")
                                  
                                      try:
                                  Severity: Minor
                                  Found in intranet/apps/eighth/views/admin/groups.py - About 25 mins to fix

                                  Cognitive Complexity

                                  Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

                                  A method's cognitive complexity is based on a few simple rules:

                                  • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
                                  • Code is considered more complex for each "break in the linear flow of the code"
                                  • Code is considered more complex when "flow breaking structures are nested"

                                  Further reading

                                  Function done has a Cognitive Complexity of 6 (exceeds 5 allowed). Consider refactoring.
                                  Open

                                      def done(self, form_list, **kwargs):
                                          form_list = list(form_list)
                                          block = form_list[0].cleaned_data["block"]
                                          activities = form_list[1].cleaned_data["activities"]
                                  
                                  
                                  Severity: Minor
                                  Found in intranet/apps/eighth/views/admin/groups.py - About 25 mins to fix

                                  Cognitive Complexity

                                  Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

                                  A method's cognitive complexity is based on a few simple rules:

                                  • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
                                  • Code is considered more complex for each "break in the linear flow of the code"
                                  • Code is considered more complex when "flow breaking structures are nested"

                                  Further reading

                                  Line too long (98 > 79 characters)
                                  Open

                                              messages.success(request, "Successfully deleted {} members of the group.".format(num))

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (88 > 79 characters)
                                  Open

                                                  messages.warning(request, f"Error signing up user {user} for activity.")

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (90 > 79 characters)
                                  Open

                                              if self.request.resolver_match.url_name == "eighth_admin_distribute_unsigned":

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (86 > 79 characters)
                                  Open

                                          labels = {"block": "Select a block", "activity": "Select multiple activities"}

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (101 > 79 characters)
                                  Open

                                                      Q(scheduled_activity__activity__sticky=True) | Q(scheduled_activity__sticky=True)

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (84 > 79 characters)
                                  Open

                                      return render(request, "eighth/admin/delete_empty_groups.html", context=context)

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (89 > 79 characters)
                                  Open

                                                      messages.error(request, "User with ID {} does not exist".format(uid))

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (123 > 79 characters)
                                  Open

                                  eighth_admin_signup_group = eighth_admin_required(EighthAdminSignUpGroupWizard.as_view(EighthAdminSignUpGroupWizard.FORMS))

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (136 > 79 characters)
                                  Open

                                              eighth_admin_signup_group_task.delay(user_id=request.user.id, group_id=group_id, schact_id=schact_id, skip_users=skip_users)

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (83 > 79 characters)
                                  Open

                                          schact_id: The ID of the EighthScheduledActivity all the users in the group

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (131 > 79 characters)
                                  Open

                                                      schact.add_user(get_user_model().objects.get(id=int(uid)), request=request, force=True, no_after_deadline=True)

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (123 > 79 characters)
                                  Open

                                              unsigned = get_user_model().objects.get_students().exclude(eighthsignup__scheduled_activity__block__id=blockid)

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (96 > 79 characters)
                                  Open

                                                  sticky_users_and_activities[user] = sticky_activity_signup[0].scheduled_activity

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (84 > 79 characters)
                                  Open

                                          return http.HttpResponseNotAllowed(["POST"], "HTTP 405: METHOD NOT ALLOWED")

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (80 > 79 characters)
                                  Open

                                      writer.writerow(["Last Name", "First Name", "Student ID", "Grade", "Email"])

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (107 > 79 characters)
                                  Open

                                      TEMPLATES = {"block": "eighth/admin/sign_up_group.html", "activity": "eighth/admin/sign_up_group.html"}

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (80 > 79 characters)
                                  Open

                                              kwargs.update({"exclude_before_date": get_start_date(self.request)})

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (96 > 79 characters)
                                  Open

                                          scheduled_activity = EighthScheduledActivity.objects.get(block=block, activity=activity)

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (80 > 79 characters)
                                  Open

                                          group_id: The ID of the group that should be signed up for the activity.

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (96 > 79 characters)
                                  Open

                                          messages.success(request, "Successfully completed {} activity signups.".format(changes))

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (103 > 79 characters)
                                  Open

                                              ).filter(Q(scheduled_activity__activity__sticky=True) | Q(scheduled_activity__sticky=True))

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (86 > 79 characters)
                                  Open

                                              messages.success(request, "{} added to group {}".format(num_added, group))

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (106 > 79 characters)
                                  Open

                                              "help_text": "Deleting this group will remove all records " "of it related to eighth period.",

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (110 > 79 characters)
                                  Open

                                              self.group = Group.objects.get(id=self.group_id)  # pylint: disable=attribute-defined-outside-init

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (102 > 79 characters)
                                  Open

                                                      messages.error(request, "ScheduledActivity does not exist with id {}".format(sid))

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (97 > 79 characters)
                                  Open

                                                  "grade": grade.number if user.grade and not user.grade.number == 13 else "Staff",

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (97 > 79 characters)
                                  Open

                                          messages.error(request, "You must be a superuser on Ion to manage administrative groups")

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (93 > 79 characters)
                                  Open

                                              messages.success(request, "Group members are being signed up in the background.")

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (126 > 79 characters)
                                  Open

                                  def eighth_admin_perform_group_signup(*, group_id: int, schact_id: int, request: Optional[http.HttpRequest], skip_users: set):

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (138 > 79 characters)
                                  Open

                                  eighth_admin_distribute_unsigned = eighth_admin_required(EighthAdminDistributeGroupWizard.as_view(EighthAdminDistributeGroupWizard.FORMS))

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (97 > 79 characters)
                                  Open

                                          messages.error(request, "You must be a superuser on Ion to manage administrative groups")

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (103 > 79 characters)
                                  Open

                                          form = GroupForm(instance=group, initial={"student_visible": group.properties.student_visible})

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (98 > 79 characters)
                                  Open

                                                      messages.warning(request, "User {} is already in group".format(user.username))

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (117 > 79 characters)
                                  Open

                                          sticky_users_and_activities = dict(sorted(sticky_users_and_activities.items(), key=lambda x: x[0].last_name))

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (144 > 79 characters)
                                  Open

                                          messages.success(request, "Successfully added {} user{} to the group.".format(len(user_objects), "s" if len(user_objects) != 1 else ""))

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (100 > 79 characters)
                                  Open

                                                  messages.error(request, "The uploaded file is not of the correct type, plain text.")

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (106 > 79 characters)
                                  Open

                                          messages.success(request, 'Successfully added user "{}" to the group.'.format(from_sid.full_name))

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (102 > 79 characters)
                                  Open

                                      messages.success(request, 'Successfully removed user "{}" from the group.'.format(user.full_name))

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (81 > 79 characters)
                                  Open

                                                  import_group = Group.objects.get(id=request.POST["import_group"])

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (104 > 79 characters)
                                  Open

                                                          messages.warning(request, "User {} is already in group".format(member.username))

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (112 > 79 characters)
                                  Open

                                                  messages.success(request, "Added {} users from {} to {}".format(num_users, import_group, group))

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (83 > 79 characters)
                                  Open

                                              messages.success(request, "Successfully signed up group for activity.")

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (97 > 79 characters)
                                  Open

                                          messages.error(request, "You must be a superuser on Ion to manage administrative groups")

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (131 > 79 characters)
                                  Open

                                          sticky_activity_signup = EighthSignup.objects.filter(user=user, scheduled_activity__block=scheduled_activity.block).filter(

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (113 > 79 characters)
                                  Open

                                      sticky_users_and_activities = dict(sorted(sticky_users_and_activities.items(), key=lambda x: x[0].last_name))

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (125 > 79 characters)
                                  Open

                                              eighth_admin_perform_group_signup(group_id=group_id, schact_id=schact_id, request=request, skip_users=skip_users)

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (86 > 79 characters)
                                  Open

                                          if self.request.resolver_match.url_name == "eighth_admin_distribute_unsigned":

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (82 > 79 characters)
                                  Open

                                          skip_users: A list of users that should not be signed up for the activity,

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (87 > 79 characters)
                                  Open

                                                  schact = EighthScheduledActivity.objects.get(block=block, activity=act)

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (97 > 79 characters)
                                  Open

                                          messages.error(request, "You must be a superuser on Ion to manage administrative groups")

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (88 > 79 characters)
                                  Open

                                          return render(request, "eighth/admin/possible_students_add_group.html", context)

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (97 > 79 characters)
                                  Open

                                          messages.error(request, "You must be a superuser on Ion to manage administrative groups")

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (135 > 79 characters)
                                  Open

                                  eighth_admin_distribute_group = eighth_admin_required(EighthAdminDistributeGroupWizard.as_view(EighthAdminDistributeGroupWizard.FORMS))

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (99 > 79 characters)
                                  Open

                                                      sticky_users_and_activities[uid] = sticky_activity_signup[0].scheduled_activity

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (80 > 79 characters)
                                  Open

                                      next_url = reverse("eighth_admin_edit_group", kwargs={"group_id": group_id})

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (93 > 79 characters)
                                  Open

                                          user_objects = get_user_model().objects.filter(id__in=user_ids).exclude(groups=group)

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (84 > 79 characters)
                                  Open

                                          return http.HttpResponseNotAllowed(["POST"], "HTTP 405: METHOD NOT ALLOWED")

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (127 > 79 characters)
                                  Open

                                                  sticky_activity_signup = EighthSignup.objects.filter(user=user, scheduled_activity__block=schact.block).filter(

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (108 > 79 characters)
                                  Open

                                                  user=user, scheduled_activity__block=block if users_type == "unsigned" else schacts[0].block

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (84 > 79 characters)
                                  Open

                                          next_url = reverse("eighth_admin_edit_group", kwargs={"group_id": group_id})

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (93 > 79 characters)
                                  Open

                                  from ...forms.admin.activities import ActivitySelectionForm, ScheduledActivityMultiSelectForm

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (88 > 79 characters)
                                  Open

                                  from ...models import EighthActivity, EighthBlock, EighthScheduledActivity, EighthSignup

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (98 > 79 characters)
                                  Open

                                              scheduled_activity.add_user(user, request=request, force=True, no_after_deadline=True)

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (81 > 79 characters)
                                  Open

                                                      "admin_page_title": "Import Group Members: {}".format(group),

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (88 > 79 characters)
                                  Open

                                      response["Content-Disposition"] = 'attachment; filename="{}.csv"'.format(group.name)

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (80 > 79 characters)
                                  Open

                                      FORMS = [("block", BlockSelectionForm), ("activity", ActivitySelectionForm)]

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (81 > 79 characters)
                                  Open

                                      scheduled_activity = get_object_or_404(EighthScheduledActivity, id=schact_id)

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (91 > 79 characters)
                                  Open

                                      FORMS = [("block", BlockSelectionForm), ("activity", ScheduledActivityMultiSelectForm)]

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (81 > 79 characters)
                                  Open

                                          return redirect("/eighth/admin/groups/distribute_action?{}".format(args))

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (84 > 79 characters)
                                  Open

                                      empty_groups = [g for g in Group.objects.all() if g.user_set.all().count() == 0]

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (93 > 79 characters)
                                  Open

                                              Q(scheduled_activity__activity__sticky=True) | Q(scheduled_activity__sticky=True)

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (105 > 79 characters)
                                  Open

                                                  messages.error(request, "You must be a superuser on Ion to manage administrative groups")

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (108 > 79 characters)
                                  Open

                                          return redirect(reverse("eighth_admin_signup_group_action", args=[group.id, scheduled_activity.id]))

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (92 > 79 characters)
                                  Open

                                              sticky_users_and_activities[user] = sticky_activity_signup[0].scheduled_activity

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (102 > 79 characters)
                                  Open

                                          self.group_id = kwargs.get("group_id", None)  # pylint: disable=attribute-defined-outside-init

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (84 > 79 characters)
                                  Open

                                                  self.group = False  # pylint: disable=attribute-defined-outside-init

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (80 > 79 characters)
                                  Open

                                              kwargs.update({"exclude_before_date": get_start_date(self.request)})

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (86 > 79 characters)
                                  Open

                                          if self.request.resolver_match.url_name == "eighth_admin_distribute_unsigned":

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (89 > 79 characters)
                                  Open

                                          context.update({"admin_page_title": "Distribute Group Members Among Activities"})

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  Line too long (110 > 79 characters)
                                  Open

                                          context = {"query": query, "users": users, "group": group, "admin_page_title": "Add Members to Group"}

                                  Limit all lines to a maximum of 79 characters.

                                  There are still many devices around that are limited to 80 character
                                  lines; plus, limiting windows to 80 characters makes it possible to
                                  have several windows side-by-side.  The default wrapping on such
                                  devices looks ugly.  Therefore, please limit all lines to a maximum
                                  of 79 characters. For flowing long blocks of text (docstrings or
                                  comments), limiting the length to 72 characters is recommended.
                                  
                                  Reports error E501.

                                  There are no issues that match your filters.

                                  Category
                                  Status