inginious.frontend.pages package¶
Frontend pages (controllers)
Subpackages¶
- inginious.frontend.pages.api package
- inginious.frontend.pages.course_admin package
- Submodules
- inginious.frontend.pages.course_admin.audience_edit module
- inginious.frontend.pages.course_admin.danger_zone module
- inginious.frontend.pages.course_admin.settings module
- inginious.frontend.pages.course_admin.student_list module
- inginious.frontend.pages.course_admin.submission module
- inginious.frontend.pages.course_admin.task_edit module
- inginious.frontend.pages.course_admin.task_edit_file module
- inginious.frontend.pages.course_admin.task_list module
- inginious.frontend.pages.course_admin.utils module
Submodules¶
inginious.frontend.pages.group module¶
Index page
- class inginious.frontend.pages.group.GroupPage[source]¶
Bases:
inginious.frontend.pages.utils.INGIniousAuthPage
Group page
- methods: ClassVar[Optional[Collection[str]]] = {'GET', 'POST'}¶
The methods this view is registered for. Uses the same default (
["GET", "HEAD", "OPTIONS"]
) asroute
andadd_url_rule
by default.
inginious.frontend.pages.course module¶
Course page
- class inginious.frontend.pages.course.CoursePage[source]¶
Bases:
inginious.frontend.pages.utils.INGIniousAuthPage
Course page
- methods: ClassVar[Optional[Collection[str]]] = {'GET', 'POST'}¶
The methods this view is registered for. Uses the same default (
["GET", "HEAD", "OPTIONS"]
) asroute
andadd_url_rule
by default.
Displays the course_unavailable page or the course registration page
inginious.frontend.pages.index module¶
Index page
- class inginious.frontend.pages.index.IndexPage[source]¶
Bases:
inginious.frontend.pages.utils.INGIniousStaticPage
Index page
- methods: ClassVar[Optional[Collection[str]]] = {'GET', 'POST'}¶
The methods this view is registered for. Uses the same default (
["GET", "HEAD", "OPTIONS"]
) asroute
andadd_url_rule
by default.
inginious.frontend.pages.maintenance module¶
Maintenance page
- class inginious.frontend.pages.maintenance.MaintenancePage[source]¶
Bases:
flask.views.MethodView
Maintenance page
- methods: ClassVar[Optional[Collection[str]]] = {'GET', 'POST'}¶
The methods this view is registered for. Uses the same default (
["GET", "HEAD", "OPTIONS"]
) asroute
andadd_url_rule
by default.
inginious.frontend.pages.tasks module¶
Task page
- class inginious.frontend.pages.tasks.BaseTaskPage(calling_page)[source]¶
Bases:
object
Display a task (and allow to reload old submission/file uploaded during a submission)
- class inginious.frontend.pages.tasks.TaskPage[source]¶
Bases:
inginious.frontend.pages.utils.INGIniousAuthPage
- methods: ClassVar[Optional[Collection[str]]] = {'GET', 'POST'}¶
The methods this view is registered for. Uses the same default (
["GET", "HEAD", "OPTIONS"]
) asroute
andadd_url_rule
by default.
- class inginious.frontend.pages.tasks.TaskPageStaticDownload[source]¶
Bases:
inginious.frontend.pages.utils.INGIniousPage
Allow to download files stored in the task folder
- methods: ClassVar[Optional[Collection[str]]] = {'GET', 'POST'}¶
The methods this view is registered for. Uses the same default (
["GET", "HEAD", "OPTIONS"]
) asroute
andadd_url_rule
by default.
inginious.frontend.pages.utils module¶
Some utils for all the pages
- class inginious.frontend.pages.utils.INGIniousAdministratorPage[source]¶
Bases:
inginious.frontend.pages.utils.INGIniousAuthPage
Augmented version of INGIniousAuthPage that checks if user is administrator (superadmin).
- GET(*args, **kwargs)[source]¶
Checks if user is superadmin and calls GET_AUTH or performs logout. Otherwise, returns the login template.
- POST(*args, **kwargs)[source]¶
Checks if user is superadmin and calls POST_AUTH. Otherwise, returns the forbidden template.
- methods: ClassVar[Optional[Collection[str]]] = {'GET', 'POST'}¶
The methods this view is registered for. Uses the same default (
["GET", "HEAD", "OPTIONS"]
) asroute
andadd_url_rule
by default.
- class inginious.frontend.pages.utils.INGIniousAuthPage[source]¶
Bases:
inginious.frontend.pages.utils.INGIniousPage
Augmented version of INGIniousPage that checks if user is authenticated.
- GET(*args, **kwargs)[source]¶
Checks if user is authenticated and calls GET_AUTH or performs logout. Otherwise, returns the login template.
- POST(*args, **kwargs)[source]¶
Checks if user is authenticated and calls POST_AUTH or performs login and calls GET_AUTH. Otherwise, returns the login template.
- methods: ClassVar[Optional[Collection[str]]] = {'GET', 'POST'}¶
The methods this view is registered for. Uses the same default (
["GET", "HEAD", "OPTIONS"]
) asroute
andadd_url_rule
by default.
- class inginious.frontend.pages.utils.INGIniousPage[source]¶
Bases:
flask.views.MethodView
A base for all the pages of the INGInious webapp. Contains references to the PluginManager, the CourseFactory, and the SubmissionManager
- property app¶
Returns the web application singleton
- property backup_dir: str¶
Backup directory
- Return type
str
- property client: inginious.client.client.Client¶
Returns the INGInious client
- Return type
- property course_factory: inginious.frontend.course_factory.CourseFactory¶
Returns the course factory singleton
- Return type
- property database: pymongo.database.Database¶
Returns the database singleton
- Return type
Database
- property default_allowed_file_extensions: List[str]¶
List of allowed file extensions
- Return type
List
[str
]
- property default_max_file_size: int¶
Default maximum file size for upload
- Return type
int
- property environment_types: Dict[str, inginious.frontend.environment_types.env_type.FrontendEnvType]¶
Available environment types
- Return type
Dict
[str
,FrontendEnvType
]
- property environments: Dict[str, List[str]]¶
Available environments
- Return type
Dict
[str
,List
[str
]]
- property gridfs: gridfs.GridFS¶
Returns the GridFS singleton
- Return type
GridFS
- property is_lti_page¶
True if the current page allows LTI sessions. False else.
- property logger: logging.Logger¶
Logger
- Return type
Logger
- property lti_outcome_manager: inginious.frontend.lti_outcome_manager.LTIOutcomeManager¶
Returns the LTIOutcomeManager singleton
- Return type
LTIOutcomeManager
- methods: ClassVar[Optional[Collection[str]]] = {'GET', 'POST'}¶
The methods this view is registered for. Uses the same default (
["GET", "HEAD", "OPTIONS"]
) asroute
andadd_url_rule
by default.
- property plugin_manager: inginious.frontend.plugin_manager.PluginManager¶
Returns the plugin manager singleton
- Return type
- property submission_manager: inginious.frontend.submission_manager.WebAppSubmissionManager¶
Returns the submission manager singleton
- Return type
- property task_factory: inginious.frontend.task_factory.TaskFactory¶
Returns the task factory singleton
- Return type
- property template_helper: inginious.frontend.template_helper.TemplateHelper¶
Returns the Template Helper singleton
- Return type
- property user_manager: inginious.frontend.user_manager.UserManager¶
Returns the user manager singleton
- Return type
- property webdav_host: str¶
True if webdav is available
- Return type
str
- property webterm_link: str¶
Returns the link to the web terminal
- Return type
str
- class inginious.frontend.pages.utils.INGIniousStaticPage[source]¶
Bases:
inginious.frontend.pages.utils.INGIniousPage
- cache = {}¶
- methods: ClassVar[Optional[Collection[str]]] = {'GET', 'POST'}¶
The methods this view is registered for. Uses the same default (
["GET", "HEAD", "OPTIONS"]
) asroute
andadd_url_rule
by default.
- class inginious.frontend.pages.utils.LogOutPage[source]¶
Bases:
inginious.frontend.pages.utils.INGIniousAuthPage
- methods: ClassVar[Optional[Collection[str]]] = {'GET', 'POST'}¶
The methods this view is registered for. Uses the same default (
["GET", "HEAD", "OPTIONS"]
) asroute
andadd_url_rule
by default.
- class inginious.frontend.pages.utils.SignInPage[source]¶
Bases:
inginious.frontend.pages.utils.INGIniousAuthPage
- GET()[source]¶
Checks if user is authenticated and calls GET_AUTH or performs logout. Otherwise, returns the login template.
- methods: ClassVar[Optional[Collection[str]]] = {'GET', 'POST'}¶
The methods this view is registered for. Uses the same default (
["GET", "HEAD", "OPTIONS"]
) asroute
andadd_url_rule
by default.
- inginious.frontend.pages.utils.generate_user_selection_box(user_manager, render_func, current_users, course_id, name, id, placeholder=None, single=False)[source]¶
Returns the HTML for a user selection box. The user using the box must have admin/tutors rights on the course with id course_id.
The box will return, when submitted using a form, a list of usernames separated by commas, under the given name.
NB: this function is available in the templates directly as “$user_selection_box(current_users, course_id, name, id)”. You must ignore the first argument (template_helper) in the templates.
- Parameters
user_manager (
UserManager
) – UserManager instancerender_func – template generator
current_users (
List
[str
]) – a list of usernames currently selectedcourse_id (
str
) – the course idname (
str
) – HTML name given to the boxid (
str
) – HTML id given to the boxsingle – False for multiple user selection, True for single user selection
- Returns
HTML code for the box