rapid-router 7.6.7__tar.gz → 7.6.9__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {rapid_router-7.6.7/rapid_router.egg-info → rapid_router-7.6.9}/PKG-INFO +33 -33
- rapid_router-7.6.9/game/__init__.py +1 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/messages.py +12 -1
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/tests/test_scoreboard.py +31 -36
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/views/scoreboard.py +9 -1
- {rapid_router-7.6.7 → rapid_router-7.6.9/rapid_router.egg-info}/PKG-INFO +33 -33
- {rapid_router-7.6.7 → rapid_router-7.6.9}/rapid_router.egg-info/requires.txt +36 -32
- rapid_router-7.6.7/game/__init__.py +0 -1
- {rapid_router-7.6.7 → rapid_router-7.6.9}/LICENSE.md +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/MANIFEST.in +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/README.md +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/example_project/__init__.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/example_project/rapid_router_test_settings.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/example_project/settings.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/example_project/urls.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/example_project/wsgi.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/admin.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/app_settings.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/cache.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/character.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/decor.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/end_to_end_tests/__init__.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/end_to_end_tests/base_game_test.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/end_to_end_tests/custom_handler.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/end_to_end_tests/editor_page.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/end_to_end_tests/game_page.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/end_to_end_tests/selenium_test_case.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/end_to_end_tests/test_cow_crashes.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/end_to_end_tests/test_language_dropdown.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/end_to_end_tests/test_level_editor.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/end_to_end_tests/test_level_failures.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/end_to_end_tests/test_level_selection.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/end_to_end_tests/test_level_win.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/end_to_end_tests/test_play_through.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/end_to_end_tests/test_python_levels.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/end_to_end_tests/test_regressions.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/end_to_end_tests/test_saving_workspace.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/end_to_end_tests/test_turning_around.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/forms.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/level_management.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0001_squashed_0025_levels_ordering_pt1.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0026_levels_pt2.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0027_change_level_order.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0028_level_disable_route_score.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0029_disable_route_scores.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0029_level_pythonviewenabled.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0030_merge.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0031_python_view.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0032_cannot_turn_left_level.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0033_recursion_level.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0034_joes_level.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0035_disable_route_score_level_70.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0036_level_score_73.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0037_level_score_79.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0038_level_score_40.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0039_second_episodes_release.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0040_auto_20150128_2019.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0041_level_episode_refs.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0042_level_score_73.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0043_auto_20150615_1155.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0044_auto_20150615_1156.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0045_decor_z_index.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0046_set_img_order.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0047_level_70_is_unsolveable.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0048_add_cow_field_and_blocks.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0049_level_score_34.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0050_level_score_40.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0051_level_score_49.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0052_attempt_night_mode.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0053_level_70_is_unsolveable_again.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0054_disable_route_score_for_levels_69_and_74.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0055_support_multiple_attempts.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0056_mark_all_attempts_as_best.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0057_workspace_language_enabled.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0058_level_theme_name.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0059_theme_name_data.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0060_auto_20160208_2144.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0061_auto_20160208_2144.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0062_rm_old_theme_decor_models.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0063_level_character_name.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0064_character_name_data.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0065_rename_old_character_field.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0066_rm_character_model.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0067_level_score_27.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0068_fix_episodes_order.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0069_remove_user_levels_from_episodes.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0070_update_strings_unicode.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0071_use_common_models.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0072_level_50_solution.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0073_level_75_solution.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0074_level_74_solution.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0075_level_48_houses.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0076_level_locked_for_class.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0077_alter_level_next_level.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0078_add_block_types.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0079_populate_block_type_add_cow_blocks.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0080_level_disable_algorithm_score.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0081_first_12_levels_no_algo_score.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0082_level_43_solution.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0083_add_cows_to_existing_levels.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0084_alter_block_block_type.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0085_add_new_blocks.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0086_loop_levels.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0087_workspace_python_view_enabled.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0088_rename_episodes.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0089_episodes_in_development.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0090_add_missing_model_solutions.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0091_disable_algo_score_if_no_model_solution.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0092_disable_algo_score_in_custom_levels.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0093_alter_level_character_name.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0094_add_hint_lesson_subtitle_to_levels.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0095_level_commands.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0096_alter_level_commands.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0097_add_python_den_levels.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0098_add_episode_link_fields.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0099_python_episodes_links.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0100_reorder_python_levels.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0101_rename_episodes.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0102_reoder_episodes_13_14.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0103_level_1015_solution.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0104_remove_level_direct_drive.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0105_delete_invalid_attempts.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0106_fields_to_snake_case.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0107_rename_worksheet_link_episode_student_worksheet_link.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0108_episode_indy_worksheet_link.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0109_create_episodes_23_and_24.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0110_remove_episode_indy_worksheet_link_and_more.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0111_create_worksheets.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0112_worksheet_locked_classes.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0113_level_needs_approval.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0114_default_and_non_student_levels_no_approval.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0115_level_level__default_does_not_need_approval.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0116_update_worksheet_video_links.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/0117_update_solutions_to_if_else.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/migrations/__init__.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/models.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/permissions.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/pipeline_compilers/__init__.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/pipeline_compilers/libsass_compiler.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/python_den_urls.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/random_road.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/serializers.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/django_reverse_js/js/reverse.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/css/LilitaOne-Regular.ttf +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/css/backgrounds.css +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/css/dataTables.custom.css +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/css/dataTables.fixedColumns.css +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/css/dataTables.jqueryui.css +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/css/dropdown.css +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/css/editor.css +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/css/game.css +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/css/game_screen.css +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/css/input.css +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/css/jquery.dataTables.css +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/css/level_editor.css +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/css/level_moderation.css +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/css/level_selection.css +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/css/level_share.css +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/css/logged_students.css +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/css/pqselect.min.css +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/css/pqselect.multiselect.css +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/css/scoreboard.css +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/css/settings.css +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/css/skulpt/codemirror.css +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/css/skulpt/eclipse.css +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/css/skulpt/solarized.css +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/Clarice.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/Clarice_Jersey.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/Clarice_Jersey_uncropped.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/Clarice_uncropped.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/Clarice_v1.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/Clarice_v2.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/OcadoCFC.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/OcadoCFC_no_road.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/Python_Den_hero_student.png +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/Python_levels_page.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/RR-title.png +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/RapidRouter_logo_type_only.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/RapidRouter_logo_w_BG.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/RapidRouter_logo_wo_BG.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/actions/btn_zoom_in.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/actions/btn_zoom_out.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/actions/deliver.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/actions/forward.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/actions/left.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/actions/right.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/actions/turn_around.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/actions/wait.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/asc.gif +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/avatars/default-avatar.jpeg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/bg.gif +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/btnMute.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/btnReset.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/characters/front_view/Dee.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/characters/front_view/Electric_van.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/characters/front_view/Kirsty.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/characters/front_view/Nigel.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/characters/front_view/Phil.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/characters/front_view/Van.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/characters/front_view/Wes.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/characters/top_view/Dee.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/characters/top_view/Electric_van.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/characters/top_view/Kirsty.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/characters/top_view/Nigel.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/characters/top_view/Phil.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/characters/top_view/Sleigh.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/characters/top_view/Van.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/characters/top_view/Van_wreckage.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/characters/top_view/Wes.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/coins/coin_5050_dots.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/coins/coin_5050_transparent.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/coins/coin_copper.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/coins/coin_empty_dots.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/coins/coin_empty_transparent.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/coins/coin_gold.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/coins/coin_silver.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/dataTables/Sorting icons.psd +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/dataTables/sort_asc.png +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/dataTables/sort_asc_disabled.png +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/dataTables/sort_both.png +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/dataTables/sort_desc.png +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/dataTables/sort_desc_disabled.png +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/decor/city/bush.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/decor/city/hospital.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/decor/city/house.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/decor/city/pavementTile.png +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/decor/city/school.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/decor/city/shop.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/decor/city/solar_panel.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/decor/farm/bush.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/decor/farm/cfc.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/decor/farm/cfc_black.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/decor/farm/crops.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/decor/farm/house1.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/decor/farm/house2.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/decor/farm/solar_panel.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/decor/farm/tile1.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/decor/farm/tree1.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/decor/farm/tree2.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/decor/grass/bush.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/decor/grass/cfc.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/decor/grass/house.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/decor/grass/pond.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/decor/grass/solar_panel.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/decor/grass/tile1.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/decor/grass/tree1.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/decor/grass/tree2.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/decor/snow/barn.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/decor/snow/bush.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/decor/snow/cfc.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/decor/snow/crops.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/decor/snow/hospital.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/decor/snow/house.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/decor/snow/house1.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/decor/snow/house2.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/decor/snow/pond.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/decor/snow/school.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/decor/snow/shop.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/decor/snow/solar_panel.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/decor/snow/tile1.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/decor/snow/tile2.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/decor/snow/tree1.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/decor/snow/tree2.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/desc.gif +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/electric_van.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/empty.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/fruit/apple.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/fruit/apple1.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/fruit/apple2.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/fruit/banana.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/fruit/banana1.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/fruit/banana2.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/fruit/orange.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/fuelGauge.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/fuelGaugePointer.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/icons/add.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/icons/add_house.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/icons/add_road.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/icons/big_code_mode.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/icons/blockly.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/icons/character.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/icons/clear.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/icons/day.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/icons/decor.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/icons/delete_decor.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/icons/delete_house.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/icons/delete_road.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/icons/description.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/icons/fast.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/icons/help.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/icons/hide.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/icons/hide_button.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/icons/hint.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/icons/if_else.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/icons/load.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/icons/map.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/icons/muted.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/icons/night.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/icons/origin.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/icons/pause.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/icons/play.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/icons/print.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/icons/python.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/icons/quit.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/icons/random.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/icons/save.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/icons/share.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/icons/show.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/icons/slow.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/icons/solve.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/icons/step.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/icons/stop.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/icons/unmuted.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/if_else_example.png +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/key.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/ocadoVan_big.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/package.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/pigeon.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/python_den_header.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/sp_cow.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/speedoFuel1.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/speedoFuel1_fuel_pointer.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/speedoFuel1_meter.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/speedoFuel1_speed_pointer.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/speedoFuel2.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/speedoFuel2_fuel_pointer.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/speedoFuel2_meter.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/speedoFuel2_speed_pointer.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/speedoFuel_v2.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/trafficLight_green.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/trafficLight_red.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/trashcan.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/trashcan_lid_closed.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/trashcan_lid_open.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/van.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/van_small.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/van_small2.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/image/zebraCrossing.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/animation.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/blockly_compressed.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/blockly_uncompressed.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/blocks_compressed.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/javascript_compressed.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/media/1x1.gif +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/media/click.mp3 +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/media/click.ogg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/media/click.wav +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/media/delete.mp3 +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/media/delete.ogg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/media/delete.wav +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/media/disconnect.mp3 +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/media/disconnect.ogg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/media/disconnect.wav +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/media/handclosed.cur +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/media/handdelete.cur +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/media/handopen.cur +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/media/quote0.png +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/media/quote1.png +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/media/sprites.png +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/media/sprites.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/ab.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/ar.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/az.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/ba.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/bcc.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/be-tarask.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/be.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/bg.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/bn.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/br.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/ca.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/cs.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/da.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/de.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/diq.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/dty.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/el.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/en-gb.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/en.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/eo.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/es.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/et.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/eu.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/fa.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/fi.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/fr.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/gl.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/gor.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/ha.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/he.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/hi.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/hrx.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/hu.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/hy.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/ia.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/id.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/ig.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/is.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/it.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/ja.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/kab.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/ko.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/lb.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/lki.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/lo.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/lrc.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/lt.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/lv.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/mk.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/mnw.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/ms.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/nb.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/nl.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/oc.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/pl.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/pms.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/pt-br.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/pt.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/ro.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/ru.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/sc.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/sd.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/shn.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/sk.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/skr-arab.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/sl.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/sq.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/sr-latn.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/sr.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/sv.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/ta.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/tcy.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/te.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/th.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/tl.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/tlh.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/tr.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/ug-arab.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/uk.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/ur.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/vi.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/xmf.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/yo.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/zh-hans.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/js/zh-hant.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/ab.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/ar.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/az.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/ba.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/bcc.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/be-tarask.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/be.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/bg.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/bn.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/br.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/ca.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/constants.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/cs.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/da.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/de.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/diq.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/dty.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/el.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/en-gb.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/en.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/eo.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/es.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/et.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/eu.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/fa.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/fi.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/fr.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/gl.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/gor.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/ha.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/he.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/hi.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/hrx.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/hu.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/hy.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/ia.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/id.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/ig.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/is.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/it.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/ja.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/kab.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/ko.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/lb.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/lki.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/lo.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/lrc.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/lt.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/lv.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/mk.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/mnw.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/ms.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/nb.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/nl.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/oc.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/pl.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/pms.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/pt-br.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/pt.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/qqq.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/ro.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/ru.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/sc.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/sd.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/shn.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/sk.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/skr-arab.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/sl.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/sq.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/sr-latn.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/sr.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/sv.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/synonyms.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/ta.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/tcy.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/te.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/th.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/tl.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/tlh.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/tr.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/ug-arab.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/uk.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/ur.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/vi.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/xmf.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/yo.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/zh-hans.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/json/zh-hant.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/msg/messages.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/python_compressed.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blockly/version.txt +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blocklyCompiler.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blocklyControl.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blocklyCustomBlocks.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blocklyCustomisations.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/blocklyMessages.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/button.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/character.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/coordinate.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/cow.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/dataTables.fixedColumns.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/destination.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/drawing.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/drawingConstants.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/editor.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/event.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/foundation/foundation/foundation.abide.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/foundation/foundation/foundation.accordion.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/foundation/foundation/foundation.alert.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/foundation/foundation/foundation.clearing.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/foundation/foundation/foundation.dropdown.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/foundation/foundation/foundation.equalizer.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/foundation/foundation/foundation.interchange.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/foundation/foundation/foundation.joyride.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/foundation/foundation/foundation.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/foundation/foundation/foundation.magellan.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/foundation/foundation/foundation.offcanvas.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/foundation/foundation/foundation.orbit.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/foundation/foundation/foundation.reveal.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/foundation/foundation/foundation.slider.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/foundation/foundation/foundation.tab.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/foundation/foundation/foundation.tooltip.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/foundation/foundation/foundation.topbar.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/foundation/foundation.min.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/foundation/vendor/fastclick.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/foundation/vendor/jquery.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/foundation/vendor/js.cookie.min.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/foundation/vendor/modernizr.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/foundation/vendor/placeholder.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/fpsmeter.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/game.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/handlebars.runtime-v4.7.7.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/howler.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/jquery.dataTables.min.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/jquery.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/jquery.outerhtml.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/jquery.touchy.min.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/level_editor/level_save_state.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/level_editor/owned_levels.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/level_editor.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/level_moderation.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/level_selection.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/loadLanguages.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/map.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/messages.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/mobile-detect.min.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/model.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/node.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/pathFinder.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/program.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/pythonControl.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/raphael.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/saving.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/scoreboard.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/scoreboardSharedLevels.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/sharing.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/skulpt/codemirror.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/skulpt/python.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/skulpt/skulpt-stdlib.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/skulpt/skulpt.min.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/sound.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/svginnerhtml.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/tab.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/templates.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/trafficLight.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/utils.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/js/van.js +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/Clarice.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/Clarice_Jersey.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/Clarice_v1.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/Clarice_v2.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/characters/top_view/Dee.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/characters/top_view/Electric_van.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/characters/top_view/Kirsty.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/characters/top_view/Nigel.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/characters/top_view/Phil.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/characters/top_view/Sleigh.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/characters/top_view/Van.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/characters/top_view/Van2.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/characters/top_view/Van_wreckage.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/characters/top_view/VeilOfNight.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/characters/top_view/Wes.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/decor/city/bush.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/decor/city/hospital.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/decor/city/house.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/decor/city/pavementTile.png +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/decor/city/school.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/decor/city/shop.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/decor/city/solar_panel.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/decor/farm/bush.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/decor/farm/cfc.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/decor/farm/cfc_black.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/decor/farm/crops.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/decor/farm/house1.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/decor/farm/house2.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/decor/farm/solar_panel.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/decor/farm/tile1.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/decor/farm/tree1.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/decor/farm/tree2.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/decor/grass/bush.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/decor/grass/cfc.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/decor/grass/house.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/decor/grass/pond.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/decor/grass/solar_panel.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/decor/grass/tile1.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/decor/grass/tree1.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/decor/grass/tree2.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/decor/snow/barn.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/decor/snow/bush.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/decor/snow/cfc.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/decor/snow/crops.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/decor/snow/hospital.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/decor/snow/house.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/decor/snow/house1.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/decor/snow/house2.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/decor/snow/pond.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/decor/snow/school.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/decor/snow/shop.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/decor/snow/solar_panel.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/decor/snow/tile1.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/decor/snow/tile2.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/decor/snow/tree1.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/decor/snow/tree2.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/fire.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/pigeon.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/road_tiles/path/crossroads.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/road_tiles/path/dead_end.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/road_tiles/path/straight.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/road_tiles/path/t_junction.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/road_tiles/path/turn.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/road_tiles/road/crossroads.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/road_tiles/road/dead_end.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/road_tiles/road/straight.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/road_tiles/road/t_junction.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/road_tiles/road/turn.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/sleigh_wreckage.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/smoke.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/sp_cow.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/trafficLight_green.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/trafficLight_red.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/raphael_image/van_wreckage.svg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/_foundation_overrides.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/_mixins.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/_styles.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/_variables.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation/_functions.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation/_settings.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation/components/_accordion.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation/components/_alert-boxes.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation/components/_block-grid.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation/components/_breadcrumbs.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation/components/_button-groups.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation/components/_buttons.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation/components/_clearing.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation/components/_dropdown-buttons.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation/components/_dropdown.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation/components/_flex-video.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation/components/_forms.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation/components/_global.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation/components/_grid.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation/components/_icon-bar.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation/components/_inline-lists.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation/components/_joyride.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation/components/_keystrokes.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation/components/_labels.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation/components/_magellan.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation/components/_offcanvas.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation/components/_orbit.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation/components/_pagination.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation/components/_panels.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation/components/_pricing-tables.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation/components/_progress-bars.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation/components/_range-slider.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation/components/_reveal.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation/components/_side-nav.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation/components/_split-buttons.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation/components/_sub-nav.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation/components/_switch.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation/components/_switches.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation/components/_tables.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation/components/_tabs.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation/components/_thumbs.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation/components/_toolbar.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation/components/_tooltips.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation/components/_top-bar.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation/components/_type.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation/components/_visibility.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/foundation.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sass/game.scss +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sound/clown_horn.mp3 +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sound/clown_horn.ogg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sound/cow.mp3 +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sound/cow.ogg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sound/cow_original.mp3 +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sound/cow_original.ogg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sound/crash.mp3 +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sound/crash.ogg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sound/delivery.mp3 +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sound/delivery.ogg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sound/electric_van_starting.mp3 +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sound/electric_van_starting.ogg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sound/failure.mp3 +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sound/failure.ogg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sound/horn.mp3 +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sound/horn.ogg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sound/moving.mp3 +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sound/moving.ogg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sound/pigeon.mp3 +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sound/pigeon.ogg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sound/sleigh_bells.mp3 +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sound/sleigh_bells.ogg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sound/sleigh_crash.mp3 +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sound/sleigh_crash.ogg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sound/starting.mp3 +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sound/starting.ogg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sound/tension.mp3 +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sound/tension.ogg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sound/win.mp3 +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/game/sound/win.ogg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/icons/dee-192x192.png +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/icons/dee-384x384.png +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/icons/dee-512x512.png +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/static/manifest.json +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/templates/game/base.html +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/templates/game/basenonav.html +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/templates/game/crowdin.html +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/templates/game/error.html +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/templates/game/game.html +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/templates/game/level_editor.html +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/templates/game/level_moderation.html +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/templates/game/level_selection.html +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/templates/game/logged_students.html +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/templates/game/python_den_level_selection.html +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/templates/game/python_den_worksheet.html +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/templates/game/scoreboard.html +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/templatetags/__init__.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/templatetags/game/__init__.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/templatetags/game/utils.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/tests/__init__.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/tests/migrations/__init__.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/tests/migrations/test_migration_fix_episodes_order.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/tests/test_api.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/tests/test_level_editor.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/tests/test_level_moderation.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/tests/test_level_selection.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/tests/test_models.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/tests/test_python_den_worksheet.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/tests/test_random_road.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/tests/utils/__init__.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/tests/utils/attempt.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/tests/utils/episode.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/tests/utils/level.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/tests/utils/locale.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/tests/utils/teacher.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/tests/utils/user.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/theme.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/urls.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/views/__init__.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/views/api.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/views/helper.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/views/language_code_conversions.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/views/level.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/views/level_editor.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/views/level_moderation.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/views/level_selection.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/views/level_solutions.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/views/scoreboard_csv.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/game/views/worksheet.py +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/pyproject.toml +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/rapid_router.egg-info/SOURCES.txt +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/rapid_router.egg-info/dependency_links.txt +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/rapid_router.egg-info/not-zip-safe +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/rapid_router.egg-info/top_level.txt +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/setup.cfg +0 -0
- {rapid_router-7.6.7 → rapid_router-7.6.9}/setup.py +0 -0
|
@@ -1,47 +1,47 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: rapid-router
|
|
3
|
-
Version: 7.6.
|
|
3
|
+
Version: 7.6.9
|
|
4
4
|
Classifier: Programming Language :: Python
|
|
5
5
|
Classifier: Programming Language :: Python :: 3.12
|
|
6
6
|
Classifier: Framework :: Django
|
|
7
7
|
License-File: LICENSE.md
|
|
8
|
-
Requires-Dist: asgiref==3.
|
|
8
|
+
Requires-Dist: asgiref==3.10.0; python_version >= "3.9"
|
|
9
9
|
Requires-Dist: asttokens==3.0.0; python_version >= "3.8"
|
|
10
|
-
Requires-Dist: certifi==2025.
|
|
11
|
-
Requires-Dist: cffi==
|
|
12
|
-
Requires-Dist: cfl-common==8.9.
|
|
13
|
-
Requires-Dist: charset-normalizer==3.4.
|
|
10
|
+
Requires-Dist: certifi==2025.10.5; python_version >= "3.7"
|
|
11
|
+
Requires-Dist: cffi==2.0.0; platform_python_implementation != "PyPy"
|
|
12
|
+
Requires-Dist: cfl-common==8.9.8
|
|
13
|
+
Requires-Dist: charset-normalizer==3.4.4; python_version >= "3.7"
|
|
14
14
|
Requires-Dist: cryptography==44.0.1; python_version >= "3.7" and python_full_version not in "3.9.0, 3.9.1"
|
|
15
15
|
Requires-Dist: decorator==5.2.1; python_version >= "3.8"
|
|
16
16
|
Requires-Dist: diff-match-patch==20241021; python_version >= "3.7"
|
|
17
|
-
Requires-Dist: django==5.1.
|
|
17
|
+
Requires-Dist: django==5.1.14; python_version >= "3.10"
|
|
18
18
|
Requires-Dist: django-countries==7.6.1
|
|
19
19
|
Requires-Dist: django-csp==3.8
|
|
20
20
|
Requires-Dist: django-formtools==2.5.1; python_version >= "3.8"
|
|
21
21
|
Requires-Dist: django-import-export==4.2.0; python_version >= "3.9"
|
|
22
|
-
Requires-Dist: django-otp==1.6.
|
|
23
|
-
Requires-Dist: django-phonenumber-field==8.
|
|
22
|
+
Requires-Dist: django-otp==1.6.3; python_version >= "3.7"
|
|
23
|
+
Requires-Dist: django-phonenumber-field==8.3.0; python_version >= "3.9"
|
|
24
24
|
Requires-Dist: django-pipeline==4.0.0; python_version >= "3.9"
|
|
25
25
|
Requires-Dist: django-reverse-js==0.1.8; python_version >= "3.10"
|
|
26
26
|
Requires-Dist: django-two-factor-auth==1.17.0; python_version >= "3.8"
|
|
27
27
|
Requires-Dist: djangorestframework==3.16.0; python_version >= "3.9"
|
|
28
28
|
Requires-Dist: executing==2.2.1; python_version >= "3.8"
|
|
29
|
-
Requires-Dist: idna==3.
|
|
30
|
-
Requires-Dist: ipython==9.
|
|
29
|
+
Requires-Dist: idna==3.11; python_version >= "3.8"
|
|
30
|
+
Requires-Dist: ipython==9.7.0; python_version >= "3.11"
|
|
31
31
|
Requires-Dist: ipython-pygments-lexers==1.1.1; python_version >= "3.8"
|
|
32
32
|
Requires-Dist: jedi==0.19.2; python_version >= "3.6"
|
|
33
33
|
Requires-Dist: libsass==0.23.0; python_version >= "3.8"
|
|
34
34
|
Requires-Dist: matplotlib-inline==0.2.1; python_version >= "3.9"
|
|
35
35
|
Requires-Dist: more-itertools==8.7.0; python_version >= "3.5"
|
|
36
|
-
Requires-Dist: numpy==2.3.
|
|
37
|
-
Requires-Dist: pandas==2.3.
|
|
36
|
+
Requires-Dist: numpy==2.3.4; python_version >= "3.11"
|
|
37
|
+
Requires-Dist: pandas==2.3.3; python_version >= "3.9"
|
|
38
38
|
Requires-Dist: parso==0.8.5; python_version >= "3.6"
|
|
39
39
|
Requires-Dist: pexpect==4.9.0; sys_platform != "win32" and sys_platform != "emscripten"
|
|
40
40
|
Requires-Dist: pgeocode==0.4.0; python_version >= "3.8"
|
|
41
41
|
Requires-Dist: prompt-toolkit==3.0.52; python_version >= "3.8"
|
|
42
42
|
Requires-Dist: ptyprocess==0.7.0
|
|
43
43
|
Requires-Dist: pure-eval==0.2.3
|
|
44
|
-
Requires-Dist: pycparser==2.
|
|
44
|
+
Requires-Dist: pycparser==2.23; implementation_name != "PyPy"
|
|
45
45
|
Requires-Dist: pygments==2.19.2; python_version >= "3.8"
|
|
46
46
|
Requires-Dist: pyhamcrest==2.0.2; python_version >= "3.5"
|
|
47
47
|
Requires-Dist: pyjwt==2.6.0; python_version >= "3.7"
|
|
@@ -63,33 +63,33 @@ Requires-Dist: wcwidth==0.2.14; python_version >= "3.6"
|
|
|
63
63
|
Requires-Dist: wheel==0.45.1; python_version >= "3.8"
|
|
64
64
|
Provides-Extra: dev
|
|
65
65
|
Requires-Dist: amqp==5.3.1; python_version >= "3.6" and extra == "dev"
|
|
66
|
-
Requires-Dist: asgiref==3.
|
|
66
|
+
Requires-Dist: asgiref==3.10.0; python_version >= "3.9" and extra == "dev"
|
|
67
67
|
Requires-Dist: attrs==25.4.0; python_version >= "3.9" and extra == "dev"
|
|
68
68
|
Requires-Dist: billiard==4.2.2; python_version >= "3.7" and extra == "dev"
|
|
69
|
-
Requires-Dist: black==25.
|
|
69
|
+
Requires-Dist: black==25.11.0; python_version >= "3.9" and extra == "dev"
|
|
70
70
|
Requires-Dist: boto3==1.36.14; python_version >= "3.8" and extra == "dev"
|
|
71
71
|
Requires-Dist: botocore==1.36.26; python_version >= "3.8" and extra == "dev"
|
|
72
72
|
Requires-Dist: celery[sqs]==5.4.0; python_version >= "3.8" and extra == "dev"
|
|
73
|
-
Requires-Dist: certifi==2025.
|
|
74
|
-
Requires-Dist: cffi==
|
|
75
|
-
Requires-Dist: cfl-common==8.9.
|
|
76
|
-
Requires-Dist: charset-normalizer==3.4.
|
|
73
|
+
Requires-Dist: certifi==2025.10.5; python_version >= "3.7" and extra == "dev"
|
|
74
|
+
Requires-Dist: cffi==2.0.0; platform_python_implementation != "PyPy" and extra == "dev"
|
|
75
|
+
Requires-Dist: cfl-common==8.9.8; extra == "dev"
|
|
76
|
+
Requires-Dist: charset-normalizer==3.4.4; python_version >= "3.7" and extra == "dev"
|
|
77
77
|
Requires-Dist: click==8.3.0; python_version >= "3.10" and extra == "dev"
|
|
78
78
|
Requires-Dist: click-didyoumean==0.3.1; python_full_version >= "3.6.2" and extra == "dev"
|
|
79
79
|
Requires-Dist: click-plugins==1.1.1.2; extra == "dev"
|
|
80
80
|
Requires-Dist: click-repl==0.3.0; python_version >= "3.6" and extra == "dev"
|
|
81
|
-
Requires-Dist: codeforlife-portal==8.9.
|
|
81
|
+
Requires-Dist: codeforlife-portal==8.9.8; extra == "dev"
|
|
82
82
|
Requires-Dist: cryptography==44.0.1; (python_version >= "3.7" and python_full_version not in "3.9.0, 3.9.1") and extra == "dev"
|
|
83
83
|
Requires-Dist: diff-match-patch==20241021; python_version >= "3.7" and extra == "dev"
|
|
84
|
-
Requires-Dist: django==5.1.
|
|
84
|
+
Requires-Dist: django==5.1.14; python_version >= "3.10" and extra == "dev"
|
|
85
85
|
Requires-Dist: django-classy-tags==4.1.0; python_version >= "3.8" and extra == "dev"
|
|
86
86
|
Requires-Dist: django-countries==7.6.1; extra == "dev"
|
|
87
87
|
Requires-Dist: django-csp==3.8; extra == "dev"
|
|
88
88
|
Requires-Dist: django-extensions==4.1; python_version >= "3.9" and extra == "dev"
|
|
89
89
|
Requires-Dist: django-formtools==2.5.1; python_version >= "3.8" and extra == "dev"
|
|
90
90
|
Requires-Dist: django-import-export==4.2.0; python_version >= "3.9" and extra == "dev"
|
|
91
|
-
Requires-Dist: django-otp==1.6.
|
|
92
|
-
Requires-Dist: django-phonenumber-field==8.
|
|
91
|
+
Requires-Dist: django-otp==1.6.3; python_version >= "3.7" and extra == "dev"
|
|
92
|
+
Requires-Dist: django-phonenumber-field==8.3.0; python_version >= "3.9" and extra == "dev"
|
|
93
93
|
Requires-Dist: django-pipeline==4.0.0; python_version >= "3.9" and extra == "dev"
|
|
94
94
|
Requires-Dist: django-preventconcurrentlogins==0.8.2; extra == "dev"
|
|
95
95
|
Requires-Dist: django-ratelimit==3.0.1; python_version >= "3.4" and extra == "dev"
|
|
@@ -103,29 +103,29 @@ Requires-Dist: djangorestframework==3.16.0; python_version >= "3.9" and extra ==
|
|
|
103
103
|
Requires-Dist: execnet==2.1.1; python_version >= "3.8" and extra == "dev"
|
|
104
104
|
Requires-Dist: gunicorn==23.0.0; python_version >= "3.7" and extra == "dev"
|
|
105
105
|
Requires-Dist: h11==0.16.0; python_version >= "3.8" and extra == "dev"
|
|
106
|
-
Requires-Dist: idna==3.
|
|
106
|
+
Requires-Dist: idna==3.11; python_version >= "3.8" and extra == "dev"
|
|
107
107
|
Requires-Dist: importlib-metadata==4.13.0; python_version >= "3.7" and extra == "dev"
|
|
108
108
|
Requires-Dist: iniconfig==2.3.0; python_version >= "3.10" and extra == "dev"
|
|
109
109
|
Requires-Dist: isort==7.0.0; python_full_version >= "3.10.0" and extra == "dev"
|
|
110
110
|
Requires-Dist: jmespath==1.0.1; python_version >= "3.7" and extra == "dev"
|
|
111
|
-
Requires-Dist: kombu[sqs]==5.
|
|
111
|
+
Requires-Dist: kombu[sqs]==5.6.0; python_version >= "3.9" and extra == "dev"
|
|
112
112
|
Requires-Dist: libsass==0.23.0; python_version >= "3.8" and extra == "dev"
|
|
113
113
|
Requires-Dist: markupsafe==3.0.3; python_version >= "3.9" and extra == "dev"
|
|
114
114
|
Requires-Dist: more-itertools==8.7.0; python_version >= "3.5" and extra == "dev"
|
|
115
115
|
Requires-Dist: mypy-extensions==1.1.0; python_version >= "3.8" and extra == "dev"
|
|
116
|
-
Requires-Dist: numpy==2.3.
|
|
116
|
+
Requires-Dist: numpy==2.3.4; python_version >= "3.11" and extra == "dev"
|
|
117
117
|
Requires-Dist: outcome==1.3.0.post0; python_version >= "3.7" and extra == "dev"
|
|
118
118
|
Requires-Dist: packaging==25.0; python_version >= "3.8" and extra == "dev"
|
|
119
|
-
Requires-Dist: pandas==2.3.
|
|
119
|
+
Requires-Dist: pandas==2.3.3; python_version >= "3.9" and extra == "dev"
|
|
120
120
|
Requires-Dist: pathspec==0.12.1; python_version >= "3.8" and extra == "dev"
|
|
121
121
|
Requires-Dist: pgeocode==0.4.0; python_version >= "3.8" and extra == "dev"
|
|
122
122
|
Requires-Dist: phonenumbers==8.12.12; extra == "dev"
|
|
123
|
-
Requires-Dist: pillow==
|
|
123
|
+
Requires-Dist: pillow==12.0.0; python_version >= "3.10" and extra == "dev"
|
|
124
124
|
Requires-Dist: platformdirs==4.5.0; python_version >= "3.10" and extra == "dev"
|
|
125
125
|
Requires-Dist: pluggy==1.6.0; python_version >= "3.9" and extra == "dev"
|
|
126
126
|
Requires-Dist: prompt-toolkit==3.0.52; python_version >= "3.8" and extra == "dev"
|
|
127
127
|
Requires-Dist: psycopg2-binary==2.9.9; python_version >= "3.7" and extra == "dev"
|
|
128
|
-
Requires-Dist: pycparser==2.
|
|
128
|
+
Requires-Dist: pycparser==2.23; implementation_name != "PyPy" and extra == "dev"
|
|
129
129
|
Requires-Dist: pycurl==7.45.7; python_version >= "3.5" and extra == "dev"
|
|
130
130
|
Requires-Dist: pygments==2.19.2; python_version >= "3.8" and extra == "dev"
|
|
131
131
|
Requires-Dist: pyjwt==2.6.0; python_version >= "3.7" and extra == "dev"
|
|
@@ -138,7 +138,7 @@ Requires-Dist: pytest-order==1.3.0; python_version >= "3.7" and extra == "dev"
|
|
|
138
138
|
Requires-Dist: pytest-xdist==3.8.0; python_version >= "3.9" and extra == "dev"
|
|
139
139
|
Requires-Dist: python-dateutil==2.9.0.post0; (python_version >= "2.7" and python_version not in "3.0, 3.1, 3.2, 3.3") and extra == "dev"
|
|
140
140
|
Requires-Dist: python-dotenv==1.0.1; python_version >= "3.8" and extra == "dev"
|
|
141
|
-
Requires-Dist: pytokens==0.
|
|
141
|
+
Requires-Dist: pytokens==0.3.0; python_version >= "3.8" and extra == "dev"
|
|
142
142
|
Requires-Dist: pytz==2025.2; extra == "dev"
|
|
143
143
|
Requires-Dist: pyyaml==6.0.2; python_version >= "3.8" and extra == "dev"
|
|
144
144
|
Requires-Dist: qrcode==7.4.2; python_version >= "3.7" and extra == "dev"
|
|
@@ -153,12 +153,12 @@ Requires-Dist: sniffio==1.3.1; python_version >= "3.7" and extra == "dev"
|
|
|
153
153
|
Requires-Dist: sortedcontainers==2.4.0; extra == "dev"
|
|
154
154
|
Requires-Dist: sqlparse==0.5.3; python_version >= "3.8" and extra == "dev"
|
|
155
155
|
Requires-Dist: tablib==3.7.0; python_version >= "3.9" and extra == "dev"
|
|
156
|
-
Requires-Dist: trio==0.
|
|
156
|
+
Requires-Dist: trio==0.32.0; python_version >= "3.10" and extra == "dev"
|
|
157
157
|
Requires-Dist: trio-websocket==0.12.2; python_version >= "3.8" and extra == "dev"
|
|
158
158
|
Requires-Dist: typing-extensions==4.15.0; python_version >= "3.9" and extra == "dev"
|
|
159
159
|
Requires-Dist: tzdata==2025.2; python_version >= "2" and extra == "dev"
|
|
160
160
|
Requires-Dist: urllib3==2.5.0; python_version >= "3.9" and extra == "dev"
|
|
161
|
-
Requires-Dist: uvicorn==0.
|
|
161
|
+
Requires-Dist: uvicorn==0.38.0; python_version >= "3.9" and extra == "dev"
|
|
162
162
|
Requires-Dist: uvicorn-worker==0.2.0; python_version >= "3.8" and extra == "dev"
|
|
163
163
|
Requires-Dist: vine==5.1.0; python_version >= "3.6" and extra == "dev"
|
|
164
164
|
Requires-Dist: wcwidth==0.2.14; python_version >= "3.6" and extra == "dev"
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "7.6.9"
|
|
@@ -47,11 +47,22 @@ def no_permission_title():
|
|
|
47
47
|
|
|
48
48
|
def no_permission_scoreboard():
|
|
49
49
|
return (
|
|
50
|
-
"
|
|
50
|
+
"The scoreboard is only visible to school students and teachers. Log in if you "
|
|
51
51
|
"think you should be able to see it."
|
|
52
52
|
)
|
|
53
53
|
|
|
54
54
|
|
|
55
|
+
def no_classes_title():
|
|
56
|
+
return "No classes"
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
def no_classes_scoreboard():
|
|
60
|
+
return (
|
|
61
|
+
"The scoreboard can only be used by teachers who have classes assigned to them. "
|
|
62
|
+
"It seems you don't have any classes, please create one so you can use this feature."
|
|
63
|
+
)
|
|
64
|
+
|
|
65
|
+
|
|
55
66
|
""" Strings used on the level moderation page. """
|
|
56
67
|
|
|
57
68
|
|
|
@@ -5,7 +5,10 @@ from datetime import datetime, timedelta
|
|
|
5
5
|
|
|
6
6
|
from common.models import Class, Teacher, Student
|
|
7
7
|
from common.tests.utils.classes import create_class_directly
|
|
8
|
-
from common.tests.utils.organisation import
|
|
8
|
+
from common.tests.utils.organisation import (
|
|
9
|
+
create_organisation_directly,
|
|
10
|
+
join_teacher_to_organisation,
|
|
11
|
+
)
|
|
9
12
|
from common.tests.utils.student import (
|
|
10
13
|
create_school_student_directly,
|
|
11
14
|
create_independent_student_directly,
|
|
@@ -39,8 +42,7 @@ class ScoreboardTestCase(TestCase):
|
|
|
39
42
|
episode1 = Episode.objects.get(id=1)
|
|
40
43
|
episode2 = Episode.objects.get(id=2)
|
|
41
44
|
level_ids = [
|
|
42
|
-
f"{x}"
|
|
43
|
-
for x in range(1, len(episode1.levels) + len(episode2.levels) + 1)
|
|
45
|
+
f"{x}" for x in range(1, len(episode1.levels) + len(episode2.levels) + 1)
|
|
44
46
|
]
|
|
45
47
|
level1 = Level.objects.get(name="1")
|
|
46
48
|
level13 = Level.objects.get(name="13")
|
|
@@ -119,9 +121,7 @@ class ScoreboardTestCase(TestCase):
|
|
|
119
121
|
|
|
120
122
|
# Check data for custom levels matches
|
|
121
123
|
assert shared_headers == SharedHeaders
|
|
122
|
-
assert shared_level_headers == [
|
|
123
|
-
f"{shared_level.name} ({shared_level.owner})"
|
|
124
|
-
]
|
|
124
|
+
assert shared_level_headers == [f"{shared_level.name} ({shared_level.owner})"]
|
|
125
125
|
|
|
126
126
|
assert len(shared_student_data) == 1
|
|
127
127
|
|
|
@@ -234,9 +234,7 @@ class ScoreboardTestCase(TestCase):
|
|
|
234
234
|
)
|
|
235
235
|
|
|
236
236
|
c = Client()
|
|
237
|
-
c.login(
|
|
238
|
-
username=admin_teacher.user.user.email, password="secretpa$sword2"
|
|
239
|
-
)
|
|
237
|
+
c.login(username=admin_teacher.user.user.email, password="secretpa$sword2")
|
|
240
238
|
|
|
241
239
|
url = reverse("scoreboard")
|
|
242
240
|
response = c.get(url)
|
|
@@ -306,8 +304,22 @@ class ScoreboardTestCase(TestCase):
|
|
|
306
304
|
url = reverse("scoreboard")
|
|
307
305
|
response = c.get(url)
|
|
308
306
|
|
|
307
|
+
assert "The scoreboard is only visible to school students and teachers" in str(
|
|
308
|
+
response.content
|
|
309
|
+
)
|
|
310
|
+
|
|
311
|
+
def test_teacher_without_classes_cannot_see_scoreboard(self):
|
|
312
|
+
email, password = signup_teacher_directly()
|
|
313
|
+
create_organisation_directly(email)
|
|
314
|
+
|
|
315
|
+
c = Client()
|
|
316
|
+
c.login(username=email, password=password)
|
|
317
|
+
|
|
318
|
+
url = reverse("scoreboard")
|
|
319
|
+
response = c.get(url)
|
|
320
|
+
|
|
309
321
|
assert (
|
|
310
|
-
"
|
|
322
|
+
"The scoreboard can only be used by teachers who have classes assigned to them."
|
|
311
323
|
in str(response.content)
|
|
312
324
|
)
|
|
313
325
|
|
|
@@ -332,18 +344,11 @@ class ScoreboardCsvTestCase(TestCase):
|
|
|
332
344
|
shared_levels = [shared_level1, shared_level2]
|
|
333
345
|
|
|
334
346
|
shared_levels_headers = list(
|
|
335
|
-
[
|
|
336
|
-
shared_level_to_name(level, level.owner)
|
|
337
|
-
for level in shared_levels
|
|
338
|
-
]
|
|
347
|
+
[shared_level_to_name(level, level.owner) for level in shared_levels]
|
|
339
348
|
)
|
|
340
349
|
|
|
341
|
-
shared_level_rows[0] = self.shared_student_row(
|
|
342
|
-
|
|
343
|
-
)
|
|
344
|
-
shared_level_rows[1] = self.shared_student_row(
|
|
345
|
-
students[1], shared_levels
|
|
346
|
-
)
|
|
350
|
+
shared_level_rows[0] = self.shared_student_row(students[0], shared_levels)
|
|
351
|
+
shared_level_rows[1] = self.shared_student_row(students[1], shared_levels)
|
|
347
352
|
|
|
348
353
|
# Create students' improvement table data
|
|
349
354
|
improvement_data = []
|
|
@@ -369,13 +374,10 @@ class ScoreboardCsvTestCase(TestCase):
|
|
|
369
374
|
) = self.actual_data(response.content.decode("utf-8"), len(students))
|
|
370
375
|
|
|
371
376
|
# Check the headers and the number or rows match expectations
|
|
372
|
-
assert actual_scoreboard_header == self.expected_scoreboard_header(
|
|
373
|
-
levels
|
|
374
|
-
)
|
|
377
|
+
assert actual_scoreboard_header == self.expected_scoreboard_header(levels)
|
|
375
378
|
assert len(actual_scoreboard_rows) == len(student_rows)
|
|
376
|
-
assert (
|
|
377
|
-
|
|
378
|
-
== self.expected_shared_levels_header(shared_levels)
|
|
379
|
+
assert actual_shared_levels_header == self.expected_shared_levels_header(
|
|
380
|
+
shared_levels
|
|
379
381
|
)
|
|
380
382
|
assert len(actual_shared_levels_rows) == len(shared_level_rows)
|
|
381
383
|
|
|
@@ -491,18 +493,13 @@ class ScoreboardCsvTestCase(TestCase):
|
|
|
491
493
|
|
|
492
494
|
def expected_scoreboard_header(self, levels):
|
|
493
495
|
level_strings = list(map(str, levels))
|
|
494
|
-
all_header_strings =
|
|
495
|
-
CSVHeaders + level_strings + ["Areas for improvement"]
|
|
496
|
-
)
|
|
496
|
+
all_header_strings = CSVHeaders + level_strings + ["Areas for improvement"]
|
|
497
497
|
joined = ",".join(all_header_strings)
|
|
498
498
|
return joined
|
|
499
499
|
|
|
500
500
|
def expected_shared_levels_header(self, shared_levels):
|
|
501
501
|
level_strings = list(
|
|
502
|
-
[
|
|
503
|
-
shared_level_to_name(level, level.owner)
|
|
504
|
-
for level in shared_levels
|
|
505
|
-
]
|
|
502
|
+
[shared_level_to_name(level, level.owner) for level in shared_levels]
|
|
506
503
|
)
|
|
507
504
|
all_header_strings = CSVSharedHeaders + level_strings
|
|
508
505
|
joined = ",".join(all_header_strings)
|
|
@@ -524,9 +521,7 @@ class ScoreboardCsvTestCase(TestCase):
|
|
|
524
521
|
scoreboard_header = split[scoreboard_header_row]
|
|
525
522
|
scoreboard_rows = split[scoreboard_rows_start:scoreboard_rows_end]
|
|
526
523
|
shared_levels_header = split[shared_levels_header_row]
|
|
527
|
-
shared_levels_rows = split[
|
|
528
|
-
shared_levels_rows_start:shared_levels_rows_end
|
|
529
|
-
]
|
|
524
|
+
shared_levels_rows = split[shared_levels_rows_start:shared_levels_rows_end]
|
|
530
525
|
|
|
531
526
|
return (
|
|
532
527
|
scoreboard_header,
|
|
@@ -313,7 +313,7 @@ def scoreboard(request, language):
|
|
|
313
313
|
episode_ids = set(all_episode_ids)
|
|
314
314
|
|
|
315
315
|
if is_teacher_with_no_classes_assigned(user, users_classes):
|
|
316
|
-
return
|
|
316
|
+
return render_no_classes_error(request)
|
|
317
317
|
|
|
318
318
|
if not is_valid_request(user, class_ids):
|
|
319
319
|
raise Http404
|
|
@@ -430,6 +430,14 @@ def render_no_permission_error(request):
|
|
|
430
430
|
)
|
|
431
431
|
|
|
432
432
|
|
|
433
|
+
def render_no_classes_error(request):
|
|
434
|
+
return renderError(
|
|
435
|
+
request,
|
|
436
|
+
messages.no_classes_title(),
|
|
437
|
+
messages.no_classes_scoreboard(),
|
|
438
|
+
)
|
|
439
|
+
|
|
440
|
+
|
|
433
441
|
def is_teacher_with_no_classes_assigned(user, users_classes):
|
|
434
442
|
return user.is_teacher() and len(users_classes) == 0
|
|
435
443
|
|
|
@@ -1,47 +1,47 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: rapid-router
|
|
3
|
-
Version: 7.6.
|
|
3
|
+
Version: 7.6.9
|
|
4
4
|
Classifier: Programming Language :: Python
|
|
5
5
|
Classifier: Programming Language :: Python :: 3.12
|
|
6
6
|
Classifier: Framework :: Django
|
|
7
7
|
License-File: LICENSE.md
|
|
8
|
-
Requires-Dist: asgiref==3.
|
|
8
|
+
Requires-Dist: asgiref==3.10.0; python_version >= "3.9"
|
|
9
9
|
Requires-Dist: asttokens==3.0.0; python_version >= "3.8"
|
|
10
|
-
Requires-Dist: certifi==2025.
|
|
11
|
-
Requires-Dist: cffi==
|
|
12
|
-
Requires-Dist: cfl-common==8.9.
|
|
13
|
-
Requires-Dist: charset-normalizer==3.4.
|
|
10
|
+
Requires-Dist: certifi==2025.10.5; python_version >= "3.7"
|
|
11
|
+
Requires-Dist: cffi==2.0.0; platform_python_implementation != "PyPy"
|
|
12
|
+
Requires-Dist: cfl-common==8.9.8
|
|
13
|
+
Requires-Dist: charset-normalizer==3.4.4; python_version >= "3.7"
|
|
14
14
|
Requires-Dist: cryptography==44.0.1; python_version >= "3.7" and python_full_version not in "3.9.0, 3.9.1"
|
|
15
15
|
Requires-Dist: decorator==5.2.1; python_version >= "3.8"
|
|
16
16
|
Requires-Dist: diff-match-patch==20241021; python_version >= "3.7"
|
|
17
|
-
Requires-Dist: django==5.1.
|
|
17
|
+
Requires-Dist: django==5.1.14; python_version >= "3.10"
|
|
18
18
|
Requires-Dist: django-countries==7.6.1
|
|
19
19
|
Requires-Dist: django-csp==3.8
|
|
20
20
|
Requires-Dist: django-formtools==2.5.1; python_version >= "3.8"
|
|
21
21
|
Requires-Dist: django-import-export==4.2.0; python_version >= "3.9"
|
|
22
|
-
Requires-Dist: django-otp==1.6.
|
|
23
|
-
Requires-Dist: django-phonenumber-field==8.
|
|
22
|
+
Requires-Dist: django-otp==1.6.3; python_version >= "3.7"
|
|
23
|
+
Requires-Dist: django-phonenumber-field==8.3.0; python_version >= "3.9"
|
|
24
24
|
Requires-Dist: django-pipeline==4.0.0; python_version >= "3.9"
|
|
25
25
|
Requires-Dist: django-reverse-js==0.1.8; python_version >= "3.10"
|
|
26
26
|
Requires-Dist: django-two-factor-auth==1.17.0; python_version >= "3.8"
|
|
27
27
|
Requires-Dist: djangorestframework==3.16.0; python_version >= "3.9"
|
|
28
28
|
Requires-Dist: executing==2.2.1; python_version >= "3.8"
|
|
29
|
-
Requires-Dist: idna==3.
|
|
30
|
-
Requires-Dist: ipython==9.
|
|
29
|
+
Requires-Dist: idna==3.11; python_version >= "3.8"
|
|
30
|
+
Requires-Dist: ipython==9.7.0; python_version >= "3.11"
|
|
31
31
|
Requires-Dist: ipython-pygments-lexers==1.1.1; python_version >= "3.8"
|
|
32
32
|
Requires-Dist: jedi==0.19.2; python_version >= "3.6"
|
|
33
33
|
Requires-Dist: libsass==0.23.0; python_version >= "3.8"
|
|
34
34
|
Requires-Dist: matplotlib-inline==0.2.1; python_version >= "3.9"
|
|
35
35
|
Requires-Dist: more-itertools==8.7.0; python_version >= "3.5"
|
|
36
|
-
Requires-Dist: numpy==2.3.
|
|
37
|
-
Requires-Dist: pandas==2.3.
|
|
36
|
+
Requires-Dist: numpy==2.3.4; python_version >= "3.11"
|
|
37
|
+
Requires-Dist: pandas==2.3.3; python_version >= "3.9"
|
|
38
38
|
Requires-Dist: parso==0.8.5; python_version >= "3.6"
|
|
39
39
|
Requires-Dist: pexpect==4.9.0; sys_platform != "win32" and sys_platform != "emscripten"
|
|
40
40
|
Requires-Dist: pgeocode==0.4.0; python_version >= "3.8"
|
|
41
41
|
Requires-Dist: prompt-toolkit==3.0.52; python_version >= "3.8"
|
|
42
42
|
Requires-Dist: ptyprocess==0.7.0
|
|
43
43
|
Requires-Dist: pure-eval==0.2.3
|
|
44
|
-
Requires-Dist: pycparser==2.
|
|
44
|
+
Requires-Dist: pycparser==2.23; implementation_name != "PyPy"
|
|
45
45
|
Requires-Dist: pygments==2.19.2; python_version >= "3.8"
|
|
46
46
|
Requires-Dist: pyhamcrest==2.0.2; python_version >= "3.5"
|
|
47
47
|
Requires-Dist: pyjwt==2.6.0; python_version >= "3.7"
|
|
@@ -63,33 +63,33 @@ Requires-Dist: wcwidth==0.2.14; python_version >= "3.6"
|
|
|
63
63
|
Requires-Dist: wheel==0.45.1; python_version >= "3.8"
|
|
64
64
|
Provides-Extra: dev
|
|
65
65
|
Requires-Dist: amqp==5.3.1; python_version >= "3.6" and extra == "dev"
|
|
66
|
-
Requires-Dist: asgiref==3.
|
|
66
|
+
Requires-Dist: asgiref==3.10.0; python_version >= "3.9" and extra == "dev"
|
|
67
67
|
Requires-Dist: attrs==25.4.0; python_version >= "3.9" and extra == "dev"
|
|
68
68
|
Requires-Dist: billiard==4.2.2; python_version >= "3.7" and extra == "dev"
|
|
69
|
-
Requires-Dist: black==25.
|
|
69
|
+
Requires-Dist: black==25.11.0; python_version >= "3.9" and extra == "dev"
|
|
70
70
|
Requires-Dist: boto3==1.36.14; python_version >= "3.8" and extra == "dev"
|
|
71
71
|
Requires-Dist: botocore==1.36.26; python_version >= "3.8" and extra == "dev"
|
|
72
72
|
Requires-Dist: celery[sqs]==5.4.0; python_version >= "3.8" and extra == "dev"
|
|
73
|
-
Requires-Dist: certifi==2025.
|
|
74
|
-
Requires-Dist: cffi==
|
|
75
|
-
Requires-Dist: cfl-common==8.9.
|
|
76
|
-
Requires-Dist: charset-normalizer==3.4.
|
|
73
|
+
Requires-Dist: certifi==2025.10.5; python_version >= "3.7" and extra == "dev"
|
|
74
|
+
Requires-Dist: cffi==2.0.0; platform_python_implementation != "PyPy" and extra == "dev"
|
|
75
|
+
Requires-Dist: cfl-common==8.9.8; extra == "dev"
|
|
76
|
+
Requires-Dist: charset-normalizer==3.4.4; python_version >= "3.7" and extra == "dev"
|
|
77
77
|
Requires-Dist: click==8.3.0; python_version >= "3.10" and extra == "dev"
|
|
78
78
|
Requires-Dist: click-didyoumean==0.3.1; python_full_version >= "3.6.2" and extra == "dev"
|
|
79
79
|
Requires-Dist: click-plugins==1.1.1.2; extra == "dev"
|
|
80
80
|
Requires-Dist: click-repl==0.3.0; python_version >= "3.6" and extra == "dev"
|
|
81
|
-
Requires-Dist: codeforlife-portal==8.9.
|
|
81
|
+
Requires-Dist: codeforlife-portal==8.9.8; extra == "dev"
|
|
82
82
|
Requires-Dist: cryptography==44.0.1; (python_version >= "3.7" and python_full_version not in "3.9.0, 3.9.1") and extra == "dev"
|
|
83
83
|
Requires-Dist: diff-match-patch==20241021; python_version >= "3.7" and extra == "dev"
|
|
84
|
-
Requires-Dist: django==5.1.
|
|
84
|
+
Requires-Dist: django==5.1.14; python_version >= "3.10" and extra == "dev"
|
|
85
85
|
Requires-Dist: django-classy-tags==4.1.0; python_version >= "3.8" and extra == "dev"
|
|
86
86
|
Requires-Dist: django-countries==7.6.1; extra == "dev"
|
|
87
87
|
Requires-Dist: django-csp==3.8; extra == "dev"
|
|
88
88
|
Requires-Dist: django-extensions==4.1; python_version >= "3.9" and extra == "dev"
|
|
89
89
|
Requires-Dist: django-formtools==2.5.1; python_version >= "3.8" and extra == "dev"
|
|
90
90
|
Requires-Dist: django-import-export==4.2.0; python_version >= "3.9" and extra == "dev"
|
|
91
|
-
Requires-Dist: django-otp==1.6.
|
|
92
|
-
Requires-Dist: django-phonenumber-field==8.
|
|
91
|
+
Requires-Dist: django-otp==1.6.3; python_version >= "3.7" and extra == "dev"
|
|
92
|
+
Requires-Dist: django-phonenumber-field==8.3.0; python_version >= "3.9" and extra == "dev"
|
|
93
93
|
Requires-Dist: django-pipeline==4.0.0; python_version >= "3.9" and extra == "dev"
|
|
94
94
|
Requires-Dist: django-preventconcurrentlogins==0.8.2; extra == "dev"
|
|
95
95
|
Requires-Dist: django-ratelimit==3.0.1; python_version >= "3.4" and extra == "dev"
|
|
@@ -103,29 +103,29 @@ Requires-Dist: djangorestframework==3.16.0; python_version >= "3.9" and extra ==
|
|
|
103
103
|
Requires-Dist: execnet==2.1.1; python_version >= "3.8" and extra == "dev"
|
|
104
104
|
Requires-Dist: gunicorn==23.0.0; python_version >= "3.7" and extra == "dev"
|
|
105
105
|
Requires-Dist: h11==0.16.0; python_version >= "3.8" and extra == "dev"
|
|
106
|
-
Requires-Dist: idna==3.
|
|
106
|
+
Requires-Dist: idna==3.11; python_version >= "3.8" and extra == "dev"
|
|
107
107
|
Requires-Dist: importlib-metadata==4.13.0; python_version >= "3.7" and extra == "dev"
|
|
108
108
|
Requires-Dist: iniconfig==2.3.0; python_version >= "3.10" and extra == "dev"
|
|
109
109
|
Requires-Dist: isort==7.0.0; python_full_version >= "3.10.0" and extra == "dev"
|
|
110
110
|
Requires-Dist: jmespath==1.0.1; python_version >= "3.7" and extra == "dev"
|
|
111
|
-
Requires-Dist: kombu[sqs]==5.
|
|
111
|
+
Requires-Dist: kombu[sqs]==5.6.0; python_version >= "3.9" and extra == "dev"
|
|
112
112
|
Requires-Dist: libsass==0.23.0; python_version >= "3.8" and extra == "dev"
|
|
113
113
|
Requires-Dist: markupsafe==3.0.3; python_version >= "3.9" and extra == "dev"
|
|
114
114
|
Requires-Dist: more-itertools==8.7.0; python_version >= "3.5" and extra == "dev"
|
|
115
115
|
Requires-Dist: mypy-extensions==1.1.0; python_version >= "3.8" and extra == "dev"
|
|
116
|
-
Requires-Dist: numpy==2.3.
|
|
116
|
+
Requires-Dist: numpy==2.3.4; python_version >= "3.11" and extra == "dev"
|
|
117
117
|
Requires-Dist: outcome==1.3.0.post0; python_version >= "3.7" and extra == "dev"
|
|
118
118
|
Requires-Dist: packaging==25.0; python_version >= "3.8" and extra == "dev"
|
|
119
|
-
Requires-Dist: pandas==2.3.
|
|
119
|
+
Requires-Dist: pandas==2.3.3; python_version >= "3.9" and extra == "dev"
|
|
120
120
|
Requires-Dist: pathspec==0.12.1; python_version >= "3.8" and extra == "dev"
|
|
121
121
|
Requires-Dist: pgeocode==0.4.0; python_version >= "3.8" and extra == "dev"
|
|
122
122
|
Requires-Dist: phonenumbers==8.12.12; extra == "dev"
|
|
123
|
-
Requires-Dist: pillow==
|
|
123
|
+
Requires-Dist: pillow==12.0.0; python_version >= "3.10" and extra == "dev"
|
|
124
124
|
Requires-Dist: platformdirs==4.5.0; python_version >= "3.10" and extra == "dev"
|
|
125
125
|
Requires-Dist: pluggy==1.6.0; python_version >= "3.9" and extra == "dev"
|
|
126
126
|
Requires-Dist: prompt-toolkit==3.0.52; python_version >= "3.8" and extra == "dev"
|
|
127
127
|
Requires-Dist: psycopg2-binary==2.9.9; python_version >= "3.7" and extra == "dev"
|
|
128
|
-
Requires-Dist: pycparser==2.
|
|
128
|
+
Requires-Dist: pycparser==2.23; implementation_name != "PyPy" and extra == "dev"
|
|
129
129
|
Requires-Dist: pycurl==7.45.7; python_version >= "3.5" and extra == "dev"
|
|
130
130
|
Requires-Dist: pygments==2.19.2; python_version >= "3.8" and extra == "dev"
|
|
131
131
|
Requires-Dist: pyjwt==2.6.0; python_version >= "3.7" and extra == "dev"
|
|
@@ -138,7 +138,7 @@ Requires-Dist: pytest-order==1.3.0; python_version >= "3.7" and extra == "dev"
|
|
|
138
138
|
Requires-Dist: pytest-xdist==3.8.0; python_version >= "3.9" and extra == "dev"
|
|
139
139
|
Requires-Dist: python-dateutil==2.9.0.post0; (python_version >= "2.7" and python_version not in "3.0, 3.1, 3.2, 3.3") and extra == "dev"
|
|
140
140
|
Requires-Dist: python-dotenv==1.0.1; python_version >= "3.8" and extra == "dev"
|
|
141
|
-
Requires-Dist: pytokens==0.
|
|
141
|
+
Requires-Dist: pytokens==0.3.0; python_version >= "3.8" and extra == "dev"
|
|
142
142
|
Requires-Dist: pytz==2025.2; extra == "dev"
|
|
143
143
|
Requires-Dist: pyyaml==6.0.2; python_version >= "3.8" and extra == "dev"
|
|
144
144
|
Requires-Dist: qrcode==7.4.2; python_version >= "3.7" and extra == "dev"
|
|
@@ -153,12 +153,12 @@ Requires-Dist: sniffio==1.3.1; python_version >= "3.7" and extra == "dev"
|
|
|
153
153
|
Requires-Dist: sortedcontainers==2.4.0; extra == "dev"
|
|
154
154
|
Requires-Dist: sqlparse==0.5.3; python_version >= "3.8" and extra == "dev"
|
|
155
155
|
Requires-Dist: tablib==3.7.0; python_version >= "3.9" and extra == "dev"
|
|
156
|
-
Requires-Dist: trio==0.
|
|
156
|
+
Requires-Dist: trio==0.32.0; python_version >= "3.10" and extra == "dev"
|
|
157
157
|
Requires-Dist: trio-websocket==0.12.2; python_version >= "3.8" and extra == "dev"
|
|
158
158
|
Requires-Dist: typing-extensions==4.15.0; python_version >= "3.9" and extra == "dev"
|
|
159
159
|
Requires-Dist: tzdata==2025.2; python_version >= "2" and extra == "dev"
|
|
160
160
|
Requires-Dist: urllib3==2.5.0; python_version >= "3.9" and extra == "dev"
|
|
161
|
-
Requires-Dist: uvicorn==0.
|
|
161
|
+
Requires-Dist: uvicorn==0.38.0; python_version >= "3.9" and extra == "dev"
|
|
162
162
|
Requires-Dist: uvicorn-worker==0.2.0; python_version >= "3.8" and extra == "dev"
|
|
163
163
|
Requires-Dist: vine==5.1.0; python_version >= "3.6" and extra == "dev"
|
|
164
164
|
Requires-Dist: wcwidth==0.2.14; python_version >= "3.6" and extra == "dev"
|