Skip to main content

modules

The code contained in modules.py defines several classes that serve as constants or enums to manage different categories and ratings. These classes group related strings that represent various modules, satisfaction levels, yes/no options, English proficiency levels, and other educational-related concepts.

1. DefaultModules

This class holds string constants that represent various modules or categories.

  • Hostfamilies: Refers to the host family allocation module.
  • ShortTerm: Refers to a module for short-term students.
  • InternPlace: Refers to the internship placement module.
  • Groups: Refers to closed groups, possibly for internal organizational purposes.

Feedback-related modules:

  • HostfamiliesFeedBack: Refers to feedback for host families.
  • ErasmusFeedBack: Refers to feedback related to Erasmus programs.
  • PlacementFeedBack: Refers to feedback for internship placements.
  • HybridFeedBack: Refers to feedback for hybrid programs.

2. SatisfactionEnum

This class holds constants representing satisfaction levels in a 5-point scale.

  • poor: "1 - Poor"
  • fair: "2 - Fair"
  • good: "3 - Good"
  • excellent: "4 - Excellent"
  • outstanding: "5 - Outstanding"

3. YesNo

This class holds constants representing simple "Yes" or "No" answers.

  • yes: "Yes"
  • no: "No"

4. LongTermModules

This class defines constants for long-term students.

  • WeeklyReport: Refers to a module for weekly reports.
  • LongTerm: Refers to long-term student programs.
  • Classrooms: Refers to classroom management or information.

5. LongTermPickListSatis

This class defines a satisfaction rating system specific to long-term modules.

  • one: "1 - N/A" (Not Applicable)
  • two: "2 - Needs Improving"
  • three: "3 - Satisfactory"
  • four: "4 - Good"
  • five: "5 - Very Good"

6. EnglishLevels

This class defines constants for various English proficiency levels, often used in language education or testing. These levels are typically found in the Common European Framework of Reference for Languages (CEFR) or similar systems.

  • A0: "A0 - Beginner"
  • A1: "A1 - Elementary"
  • A2: "A2 - Pre-Intermediate"
  • B1: "B1 - Intermediate"
  • B1_plus: "B1+ - Intermediate PLUS"
  • B2: "B2 - Upper Intermediate"
  • C1: "C1 - Advanced"
  • C2: "C2 - Proficiency"
  • IELTS: "IELTS 6.5-7.5" (A specific IELTS score range)

7. EnglishLevelsValues

This class defines integer values for the English proficiency levels, which could be used for sorting or comparison.

  • A0: 0
  • A1: 1
  • A2: 2
  • B1: 3
  • B1_plus: 4
  • B2: 5
  • C1: 6
  • C2: 7
  • IELTS: 8

Key Purpose of These Classes:

  • These classes are used for standardization and validation of various data inputs. For example, when handling user inputs, these constants provide a consistent way to refer to modules, satisfaction levels, and proficiency levels across the codebase.
  • The classes can be used in forms, queries, or reporting systems to ensure that all values are controlled and do not change unexpectedly.
  • They are also used in situations where enums or predefined options are needed to create drop-down lists or selections in a user interface.