timApp package
Contents
timApp package#
Subpackages#
- timApp.admin package
- Submodules
- timApp.admin.answer_cli module
- timApp.admin.associate_old_uploads module
- timApp.admin.change_group_email module
- timApp.admin.cli module
- timApp.admin.datetimetype module
- timApp.admin.find_nested_areas module
- timApp.admin.fix_hashes module
- timApp.admin.fix_imagex_freehanddata module
- timApp.admin.fix_missing_multiline_endings module
- timApp.admin.fix_orphan_documents module
- timApp.admin.fix_settings_references module
- timApp.admin.fix_translation_settings module
- timApp.admin.global_notification module
- timApp.admin.import_accounts module
- timApp.admin.import_document module
- timApp.admin.item_cli module
- timApp.admin.language_cli module
- timApp.admin.migrate_to_postgre module
- timApp.admin.replace_in_documents module
- timApp.admin.routes module
- timApp.admin.search_in_documents module
- timApp.admin.sisu_cli module
- timApp.admin.timitemtype module
- timApp.admin.translationservice_cli module
- timApp.admin.user_cli module
- timApp.admin.util module
- Module contents
- timApp.answer package
- timApp.auth package
- Subpackages
- Submodules
- timApp.auth.accesshelper module
- timApp.auth.accesstype module
- timApp.auth.auth_models module
- timApp.auth.get_user_rights_for_item module
- timApp.auth.login module
- timApp.auth.saml module
- timApp.auth.sessioninfo module
- Module contents
- timApp.bookmark package
- timApp.celery_sqlalchemy_scheduler package
- timApp.document package
- Subpackages
- timApp.document.editing package
- Submodules
- timApp.document.editing.clipboard module
- timApp.document.editing.documenteditresult module
- timApp.document.editing.editrequest module
- timApp.document.editing.globalparid module
- timApp.document.editing.proofread module
- timApp.document.editing.routes module
- timApp.document.editing.routes_clipboard module
- Module contents
- timApp.document.minutes package
- timApp.document.translation package
- Submodules
- timApp.document.translation.deepl module
- timApp.document.translation.language module
- timApp.document.translation.reversingtranslator module
- timApp.document.translation.routes module
- timApp.document.translation.synchronize_translations module
- timApp.document.translation.translation module
- timApp.document.translation.translationparser module
- timApp.document.translation.translator module
- Module contents
- timApp.document.editing package
- Submodules
- timApp.document.areainfo module
- timApp.document.attributeparser module
- timApp.document.caching module
- timApp.document.changelog module
- timApp.document.changelogentry module
- timApp.document.create_item module
- timApp.document.docentry module
- timApp.document.docinfo module
- timApp.document.docparagraph module
- timApp.document.docrenderresult module
- timApp.document.docsettings module
- timApp.document.document module
- timApp.document.documentparser module
- timApp.document.documentparseroptions module
- timApp.document.documents module
- timApp.document.documentversion module
- timApp.document.documentwriter module
- timApp.document.docviewparams module
- timApp.document.exceptions module
- timApp.document.hide_names module
- timApp.document.macroinfo module
- timApp.document.par_basic_data module
- timApp.document.post_process module
- timApp.document.preloadoption module
- timApp.document.prepared_par module
- timApp.document.randutils module
- timApp.document.routes module
- timApp.document.specialnames module
- timApp.document.timjsonencoder module
- timApp.document.usercontext module
- timApp.document.validationresult module
- timApp.document.version module
- timApp.document.viewcontext module
- timApp.document.viewparams module
- timApp.document.yamlblock module
- Module contents
- Subpackages
- timApp.folder package
- timApp.gamification package
- timApp.item package
- Submodules
- timApp.item.block module
- timApp.item.blockassociation module
- timApp.item.blockrelevance module
- timApp.item.copy_rights module
- timApp.item.distribute_rights module
- timApp.item.item module
- timApp.item.manage module
- timApp.item.partitioning module
- timApp.item.routes module
- timApp.item.routes_tags module
- timApp.item.scoreboard module
- timApp.item.tag module
- timApp.item.taskblock module
- timApp.item.validation module
- Module contents
- timApp.lecture package
- Submodules
- timApp.lecture.askedjson module
- timApp.lecture.askedquestion module
- timApp.lecture.lecture module
- timApp.lecture.lectureanswer module
- timApp.lecture.lectureusers module
- timApp.lecture.lectureutils module
- timApp.lecture.message module
- timApp.lecture.question module
- timApp.lecture.question_utils module
- timApp.lecture.questionactivity module
- timApp.lecture.routes module
- timApp.lecture.runningquestion module
- timApp.lecture.showpoints module
- timApp.lecture.useractivity module
- Module contents
- timApp.markdown package
- timApp.messaging package
- Subpackages
- timApp.messaging.messagelist package
- Submodules
- timApp.messaging.messagelist.emaillist module
- timApp.messaging.messagelist.listinfo module
- timApp.messaging.messagelist.mailman_events module
- timApp.messaging.messagelist.messagelist_models module
- timApp.messaging.messagelist.messagelist_utils module
- timApp.messaging.messagelist.routes module
- Module contents
- timApp.messaging.timMessage package
- timApp.messaging.messagelist package
- Module contents
- Subpackages
- timApp.modules package
- Subpackages
- timApp.modules.cs package
- Submodules
- timApp.modules.cs.cs module
- timApp.modules.cs.cs_logging module
- timApp.modules.cs.extcheck module
- timApp.modules.cs.extchecklib module
- timApp.modules.cs.file_handler module
- timApp.modules.cs.file_util module
- timApp.modules.cs.geogebra module
- timApp.modules.cs.gitlang module
- timApp.modules.cs.jsframe module
- timApp.modules.cs.languages module
- timApp.modules.cs.loadable module
- timApp.modules.cs.manager module
- timApp.modules.cs.modifiers module
- timApp.modules.cs.points module
- timApp.modules.cs.run module
- timApp.modules.cs.stack module
- timApp.modules.cs.ttype module
- Module contents
- timApp.modules.drag package
- timApp.modules.feedback package
- timApp.modules.fields package
- Submodules
- timApp.modules.fields.cbcountfield module
- timApp.modules.fields.cbfield module
- timApp.modules.fields.dropdown module
- timApp.modules.fields.field module
- timApp.modules.fields.goaltable module
- timApp.modules.fields.multisave module
- timApp.modules.fields.numericfield module
- timApp.modules.fields.rbfield module
- timApp.modules.fields.textfield module
- Module contents
- timApp.modules.imagex package
- timApp.modules.pali package
- timApp.modules.svn package
- timApp.modules.cs package
- Module contents
- Subpackages
- timApp.note package
- timApp.notification package
- timApp.plugin package
- Subpackages
- Submodules
- timApp.plugin.containerLink module
- timApp.plugin.exportdata module
- timApp.plugin.jsrunner module
- timApp.plugin.plugin module
- timApp.plugin.pluginControl module
- timApp.plugin.pluginOutputFormat module
- timApp.plugin.pluginexception module
- timApp.plugin.plugintype module
- timApp.plugin.routes module
- timApp.plugin.save_plugin module
- timApp.plugin.taskid module
- Module contents
- timApp.printing package
- Submodules
- timApp.printing.documentprinter module
- timApp.printing.pandoc_headernumberingfilter module
- timApp.printing.pandoc_imagefilepathsfilter module
- timApp.printing.pandoc_inlinestylesfilter module
- timApp.printing.print module
- timApp.printing.printeddoc module
- timApp.printing.printsettings module
- Module contents
- timApp.readmark package
- timApp.sisu package
- timApp.slide package
- timApp.tests package
- Subpackages
- timApp.tests.browser package
- Submodules
- timApp.tests.browser.browsertest module
- timApp.tests.browser.test_answerbrowser module
- timApp.tests.browser.test_areas module
- timApp.tests.browser.test_csplugin module
- timApp.tests.browser.test_forms module
- timApp.tests.browser.test_imagex module
- timApp.tests.browser.test_jsrunner module
- timApp.tests.browser.test_login module
- timApp.tests.browser.test_pareditor module
- timApp.tests.browser.test_postprogram_fields module
- timApp.tests.browser.test_questions module
- timApp.tests.browser.test_sisu module
- timApp.tests.browser.test_teacher module
- timApp.tests.browser.test_textfield_numericfield_multisave module
- timApp.tests.browser.test_timtable module
- timApp.tests.browser.test_url_jsrunner module
- timApp.tests.browser.test_urlmacros module
- timApp.tests.browser.test_usercontact module
- timApp.tests.browser.test_velps module
- Module contents
- timApp.tests.db package
- Submodules
- timApp.tests.db.test_clipboard module
- timApp.tests.db.test_contacts module
- timApp.tests.db.test_document module
- timApp.tests.db.test_folder_rename module
- timApp.tests.db.test_import_accounts module
- timApp.tests.db.test_import_passwords module
- timApp.tests.db.test_item_create module
- timApp.tests.db.test_markdownconverter module
- timApp.tests.db.test_notify module
- timApp.tests.db.test_personal_folder module
- timApp.tests.db.test_plugin module
- timApp.tests.db.test_references module
- timApp.tests.db.test_safe_yaml module
- timApp.tests.db.test_settings module
- timApp.tests.db.test_users module
- timApp.tests.db.timdbtest module
- Module contents
- timApp.tests.server package
- Submodules
- timApp.tests.server.race module
- timApp.tests.server.test_access_lock module
- timApp.tests.server.test_account_delete module
- timApp.tests.server.test_admin module
- timApp.tests.server.test_answers module
- timApp.tests.server.test_area_behavior module
- timApp.tests.server.test_authors module
- timApp.tests.server.test_autocounters module
- timApp.tests.server.test_bookmarks module
- timApp.tests.server.test_broken_db module
- timApp.tests.server.test_caching module
- timApp.tests.server.test_calendar module
- timApp.tests.server.test_cbcountfield module
- timApp.tests.server.test_clipboard module
- timApp.tests.server.test_comments module
- timApp.tests.server.test_copy_cite module
- timApp.tests.server.test_courses module
- timApp.tests.server.test_create_db module
- timApp.tests.server.test_csplugin module
- timApp.tests.server.test_default_rights module
- timApp.tests.server.test_dist_rights module
- timApp.tests.server.test_doc_html module
- timApp.tests.server.test_doc_partition module
- timApp.tests.server.test_doc_sass module
- timApp.tests.server.test_doc_settings module
- timApp.tests.server.test_duration module
- timApp.tests.server.test_editing module
- timApp.tests.server.test_feedback_report module
- timApp.tests.server.test_folders module
- timApp.tests.server.test_graphviz module
- timApp.tests.server.test_grouplogin module
- timApp.tests.server.test_groups module
- timApp.tests.server.test_hide_names module
- timApp.tests.server.test_importdata module
- timApp.tests.server.test_index module
- timApp.tests.server.test_inlineplugins module
- timApp.tests.server.test_ip_block module
- timApp.tests.server.test_item_create module
- timApp.tests.server.test_jsrunner module
- timApp.tests.server.test_jyu_account module
- timApp.tests.server.test_late_answers module
- timApp.tests.server.test_lecture module
- timApp.tests.server.test_macros module
- timApp.tests.server.test_manage module
- timApp.tests.server.test_math module
- timApp.tests.server.test_messagelist module
- timApp.tests.server.test_minutes module
- timApp.tests.server.test_notify module
- timApp.tests.server.test_oauth2 module
- timApp.tests.server.test_par_diff module
- timApp.tests.server.test_par_visibility module
- timApp.tests.server.test_password_hashing module
- timApp.tests.server.test_peer_review module
- timApp.tests.server.test_permissions module
- timApp.tests.server.test_plugins module
- timApp.tests.server.test_plugins_preamble module
- timApp.tests.server.test_preamble module
- timApp.tests.server.test_preview module
- timApp.tests.server.test_printing module
- timApp.tests.server.test_question module
- timApp.tests.server.test_quicklogin module
- timApp.tests.server.test_random module
- timApp.tests.server.test_readings module
- timApp.tests.server.test_referencing module
- timApp.tests.server.test_relevance module
- timApp.tests.server.test_replace module
- timApp.tests.server.test_sanitize module
- timApp.tests.server.test_scheduled_functions module
- timApp.tests.server.test_scim module
- timApp.tests.server.test_scoreboard module
- timApp.tests.server.test_search module
- timApp.tests.server.test_settings module
- timApp.tests.server.test_showfile module
- timApp.tests.server.test_signup module
- timApp.tests.server.test_slide module
- timApp.tests.server.test_tableform module
- timApp.tests.server.test_tags module
- timApp.tests.server.test_teacher module
- timApp.tests.server.test_templates module
- timApp.tests.server.test_themes module
- timApp.tests.server.test_tim module
- timApp.tests.server.test_tim_message module
- timApp.tests.server.test_translation module
- timApp.tests.server.test_upload module
- timApp.tests.server.test_url_redirect module
- timApp.tests.server.test_user_sessions module
- timApp.tests.server.test_velp module
- timApp.tests.server.test_verification module
- timApp.tests.server.timroutetest module
- Module contents
- timApp.tests.unit package
- Submodules
- timApp.tests.unit.test_attributeparser module
- timApp.tests.unit.test_correct_yaml module
- timApp.tests.unit.test_dataclass_deserialization module
- timApp.tests.unit.test_datefilters module
- timApp.tests.unit.test_dateparsing module
- timApp.tests.unit.test_documentparser module
- timApp.tests.unit.test_find_inline_plugins module
- timApp.tests.unit.test_genfields module
- timApp.tests.unit.test_import_data module
- timApp.tests.unit.test_mailbody_convert module
- timApp.tests.unit.test_question_normalize module
- timApp.tests.unit.test_srange module
- timApp.tests.unit.test_title_to_id module
- timApp.tests.unit.test_translator_generic module
- timApp.tests.unit.test_translator_parser module
- timApp.tests.unit.test_unique_code module
- timApp.tests.unit.test_valid_email module
- timApp.tests.unit.test_widen_fields module
- timApp.tests.unit.test_yamlblock module
- Module contents
- timApp.tests.browser package
- Submodules
- timApp.tests.ci_browser_test_runner module
- timApp.tests.timliveserver module
- Module contents
- Subpackages
- timApp.timdb package
- timApp.upload package
- timApp.user package
- Subpackages
- Submodules
- timApp.user.consentchange module
- timApp.user.contacts module
- timApp.user.groups module
- timApp.user.hakaorganization module
- timApp.user.newuser module
- timApp.user.personaluniquecode module
- timApp.user.preferences module
- timApp.user.scimentity module
- timApp.user.special_group_names module
- timApp.user.user module
- timApp.user.usercontact module
- timApp.user.usergroup module
- timApp.user.usergroupdoc module
- timApp.user.usergroupmember module
- timApp.user.users module
- timApp.user.userutils module
- Module contents
- timApp.util package
- Subpackages
- Submodules
- timApp.util.answerutil module
- timApp.util.filemodehelper module
- timApp.util.get_fields module
- timApp.util.git_utils module
- timApp.util.logger module
- timApp.util.pdftools module
- timApp.util.rndutils module
- timApp.util.secret module
- timApp.util.testing module
- timApp.util.timtiming module
- timApp.util.utils module
- Module contents
- timApp.velp package
Submodules#
timApp.debugconfig module#
timApp.defaultconfig module#
List and defaults for all configuration options in TIM.
Note
Please don’t modify this file directly in your server or local development setup. This avoids merge conflicts. Override the values with prodconfig.py or debugconfig.py instead.
- timApp.defaultconfig.LOG_USER_SELECT_ACTIONS = False#
Log any actions applied via UserSelect component.
- timApp.defaultconfig.SESSIONS_ENABLE = False#
If enabled, session management information will be stored and logged.
- timApp.defaultconfig.SESSIONS_MAX_CONCURRENT_SESSIONS_PER_USER = 1#
How many concurrent sessions are allowed for a single user for a protected document. If this limit is reached, the user is not given an active session which prevents accessing documents.
If None, there is no limit.
- timApp.defaultconfig.SESSION_BLOCK_IGNORE_DOCUMENTS = {}#
Paths of documents that should be ignored when blocking sessions. All users will be able to access the document regardless of the session blocking.
- timApp.defaultconfig.SYNC_USER_GROUPS_HOSTS = []#
Groups to sync user group info to.
- timApp.defaultconfig.SYNC_USER_GROUPS_RECEIVE_SECRET = None#
Secret to check against when syncing group info.
- timApp.defaultconfig.SYNC_USER_GROUPS_SEND_SECRET = None#
Secret to use to when syncing user group info. If None, no user group memberships.
..note: Right now, syncing only is done in UserSelect.
timApp.errorhandlers module#
- timApp.errorhandlers.suppress_wuff(ex_type: type[Exception], details_url: str, message_regex: Optional[str] = None) Callable [source]#
Decorator to prevent sending email errors (“wuffs”) on the specified error.
The decorator is meant to suppress well-known errors that are marked for fixing and are not critical for TIM to function. When decorating a function, it is suggested to include a comment that links to a clear description of the problem.
- Parameters
ex_type – Exception type to suppress
details_url – URL to a page with details about the issue (e.g. issue URL)
message_regex – RegEx to check messages exception messages against. If specified, exception is also matched against the message.
- Returns
Wrapped function
timApp.gunicornconf module#
timApp.launch module#
timApp.profileconfig module#
timApp.testconfig module#
timApp.tim module#
- class timApp.tim.GetProxyModel(url: str, auth_token: str | None = None, raw: bool = False, mimetype: str | None = None, file: bool = False)[source]#
Bases:
object
- auth_token: str | None = None#
- file: bool = False#
- mimetype: str | None = None#
- raw: bool = False#
- url: str#
- timApp.tim.del_g(response)[source]#
For some reason, the g object is not cleared when running browser test, so we do it here.
- timApp.tim.getproxy(m: timApp.tim.GetProxyModel)[source]#
timApp.tim_app module#
Creates the Flask application for TIM.
Insert only configuration-related things in this file. Do NOT define routes here.
- timApp.tim_app.get_home_organization_group() timApp.user.usergroup.UserGroup [source]#
timApp.tim_celery module#
Contains initialization of Celery distributed task queue and task functions. Note: Add new tasks here. For scheduling add parameters to defaultconfig as well.
- timApp.tim_celery.do_run_user_function(user_id: int, task_id: str, plugin_input: dict[str, Any])[source]#
- timApp.tim_celery.handle_exportdata(result: timApp.answer.routes.AnswerRouteResult, u: timApp.user.user.User, wod: timApp.plugin.exportdata.WithOutData) None [source]#
timApp.timtypes module#
Sometimes, using type annotations require imports that would cause circular imports.
To work around it, this module defines aliases for the types that can be imported instead.
TODO: These are broken at the moment after timApp reorganization.