rapid-router 7.5.22__tar.gz → 7.6.0__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.5.22/rapid_router.egg-info → rapid_router-7.6.0}/PKG-INFO +8 -4
- {rapid_router-7.5.22 → rapid_router-7.6.0}/example_project/settings.py +1 -0
- rapid_router-7.6.0/game/__init__.py +1 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/messages.py +18 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/python_den_urls.py +6 -0
- rapid_router-7.6.0/game/static/game/css/editor.css +47 -0
- rapid_router-7.6.0/game/static/game/js/editor.js +23 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/templates/game/python_den_level_selection.html +3 -3
- rapid_router-7.6.0/game/templates/game/python_den_worksheet.html +101 -0
- rapid_router-7.6.0/game/tests/test_python_den_worksheet.py +85 -0
- rapid_router-7.6.0/game/views/worksheet.py +25 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0/rapid_router.egg-info}/PKG-INFO +8 -4
- {rapid_router-7.5.22 → rapid_router-7.6.0}/rapid_router.egg-info/SOURCES.txt +5 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/rapid_router.egg-info/requires.txt +7 -3
- rapid_router-7.5.22/game/__init__.py +0 -1
- {rapid_router-7.5.22 → rapid_router-7.6.0}/LICENSE.md +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/MANIFEST.in +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/README.md +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/example_project/__init__.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/example_project/rapid_router_test_settings.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/example_project/urls.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/example_project/wsgi.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/admin.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/app_settings.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/cache.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/character.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/decor.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/end_to_end_tests/__init__.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/end_to_end_tests/base_game_test.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/end_to_end_tests/custom_handler.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/end_to_end_tests/editor_page.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/end_to_end_tests/game_page.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/end_to_end_tests/selenium_test_case.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/end_to_end_tests/test_cow_crashes.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/end_to_end_tests/test_language_dropdown.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/end_to_end_tests/test_level_editor.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/end_to_end_tests/test_level_failures.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/end_to_end_tests/test_level_selection.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/end_to_end_tests/test_level_win.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/end_to_end_tests/test_play_through.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/end_to_end_tests/test_python_levels.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/end_to_end_tests/test_regressions.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/end_to_end_tests/test_saving_workspace.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/end_to_end_tests/test_turning_around.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/forms.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/level_management.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0001_squashed_0025_levels_ordering_pt1.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0026_levels_pt2.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0027_change_level_order.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0028_level_disable_route_score.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0029_disable_route_scores.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0029_level_pythonviewenabled.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0030_merge.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0031_python_view.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0032_cannot_turn_left_level.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0033_recursion_level.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0034_joes_level.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0035_disable_route_score_level_70.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0036_level_score_73.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0037_level_score_79.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0038_level_score_40.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0039_second_episodes_release.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0040_auto_20150128_2019.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0041_level_episode_refs.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0042_level_score_73.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0043_auto_20150615_1155.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0044_auto_20150615_1156.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0045_decor_z_index.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0046_set_img_order.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0047_level_70_is_unsolveable.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0048_add_cow_field_and_blocks.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0049_level_score_34.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0050_level_score_40.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0051_level_score_49.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0052_attempt_night_mode.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0053_level_70_is_unsolveable_again.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0054_disable_route_score_for_levels_69_and_74.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0055_support_multiple_attempts.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0056_mark_all_attempts_as_best.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0057_workspace_language_enabled.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0058_level_theme_name.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0059_theme_name_data.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0060_auto_20160208_2144.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0061_auto_20160208_2144.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0062_rm_old_theme_decor_models.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0063_level_character_name.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0064_character_name_data.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0065_rename_old_character_field.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0066_rm_character_model.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0067_level_score_27.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0068_fix_episodes_order.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0069_remove_user_levels_from_episodes.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0070_update_strings_unicode.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0071_use_common_models.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0072_level_50_solution.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0073_level_75_solution.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0074_level_74_solution.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0075_level_48_houses.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0076_level_locked_for_class.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0077_alter_level_next_level.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0078_add_block_types.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0079_populate_block_type_add_cow_blocks.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0080_level_disable_algorithm_score.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0081_first_12_levels_no_algo_score.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0082_level_43_solution.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0083_add_cows_to_existing_levels.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0084_alter_block_block_type.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0085_add_new_blocks.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0086_loop_levels.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0087_workspace_python_view_enabled.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0088_rename_episodes.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0089_episodes_in_development.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0090_add_missing_model_solutions.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0091_disable_algo_score_if_no_model_solution.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0092_disable_algo_score_in_custom_levels.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0093_alter_level_character_name.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0094_add_hint_lesson_subtitle_to_levels.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0095_level_commands.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0096_alter_level_commands.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0097_add_python_den_levels.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0098_add_episode_link_fields.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0099_python_episodes_links.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0100_reorder_python_levels.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0101_rename_episodes.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0102_reoder_episodes_13_14.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0103_level_1015_solution.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0104_remove_level_direct_drive.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0105_delete_invalid_attempts.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0106_fields_to_snake_case.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0107_rename_worksheet_link_episode_student_worksheet_link.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0108_episode_indy_worksheet_link.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0109_create_episodes_23_and_24.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0110_remove_episode_indy_worksheet_link_and_more.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0111_create_worksheets.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0112_worksheet_locked_classes.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0113_level_needs_approval.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0114_default_and_non_student_levels_no_approval.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0115_level_level__default_does_not_need_approval.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0116_update_worksheet_video_links.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/0117_update_solutions_to_if_else.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/migrations/__init__.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/models.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/permissions.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/pipeline_compilers/__init__.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/pipeline_compilers/libsass_compiler.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/random_road.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/serializers.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/django_reverse_js/js/reverse.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/css/LilitaOne-Regular.ttf +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/css/backgrounds.css +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/css/dataTables.custom.css +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/css/dataTables.fixedColumns.css +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/css/dataTables.jqueryui.css +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/css/dropdown.css +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/css/game.css +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/css/game_screen.css +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/css/input.css +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/css/jquery.dataTables.css +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/css/level_editor.css +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/css/level_moderation.css +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/css/level_selection.css +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/css/level_share.css +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/css/logged_students.css +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/css/pqselect.min.css +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/css/pqselect.multiselect.css +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/css/scoreboard.css +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/css/settings.css +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/css/skulpt/codemirror.css +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/css/skulpt/eclipse.css +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/css/skulpt/solarized.css +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/Clarice.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/Clarice_Jersey.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/Clarice_Jersey_uncropped.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/Clarice_uncropped.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/Clarice_v1.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/Clarice_v2.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/OcadoCFC.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/OcadoCFC_no_road.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/Python_Den_hero_student.png +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/Python_levels_page.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/RR-title.png +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/RapidRouter_logo_type_only.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/RapidRouter_logo_w_BG.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/RapidRouter_logo_wo_BG.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/actions/btn_zoom_in.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/actions/btn_zoom_out.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/actions/deliver.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/actions/forward.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/actions/left.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/actions/right.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/actions/turn_around.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/actions/wait.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/asc.gif +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/avatars/default-avatar.jpeg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/bg.gif +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/btnMute.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/btnReset.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/characters/front_view/Dee.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/characters/front_view/Electric_van.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/characters/front_view/Kirsty.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/characters/front_view/Nigel.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/characters/front_view/Phil.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/characters/front_view/Van.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/characters/front_view/Wes.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/characters/top_view/Dee.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/characters/top_view/Electric_van.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/characters/top_view/Kirsty.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/characters/top_view/Nigel.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/characters/top_view/Phil.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/characters/top_view/Sleigh.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/characters/top_view/Van.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/characters/top_view/Van_wreckage.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/characters/top_view/Wes.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/coins/coin_5050_dots.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/coins/coin_5050_transparent.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/coins/coin_copper.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/coins/coin_empty_dots.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/coins/coin_empty_transparent.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/coins/coin_gold.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/coins/coin_silver.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/dataTables/Sorting icons.psd +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/dataTables/sort_asc.png +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/dataTables/sort_asc_disabled.png +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/dataTables/sort_both.png +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/dataTables/sort_desc.png +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/dataTables/sort_desc_disabled.png +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/decor/city/bush.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/decor/city/hospital.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/decor/city/house.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/decor/city/pavementTile.png +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/decor/city/school.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/decor/city/shop.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/decor/city/solar_panel.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/decor/farm/bush.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/decor/farm/cfc.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/decor/farm/cfc_black.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/decor/farm/crops.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/decor/farm/house1.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/decor/farm/house2.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/decor/farm/solar_panel.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/decor/farm/tile1.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/decor/farm/tree1.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/decor/farm/tree2.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/decor/grass/bush.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/decor/grass/cfc.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/decor/grass/house.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/decor/grass/pond.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/decor/grass/solar_panel.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/decor/grass/tile1.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/decor/grass/tree1.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/decor/grass/tree2.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/decor/snow/barn.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/decor/snow/bush.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/decor/snow/cfc.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/decor/snow/crops.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/decor/snow/hospital.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/decor/snow/house.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/decor/snow/house1.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/decor/snow/house2.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/decor/snow/pond.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/decor/snow/school.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/decor/snow/shop.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/decor/snow/solar_panel.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/decor/snow/tile1.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/decor/snow/tile2.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/decor/snow/tree1.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/decor/snow/tree2.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/desc.gif +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/electric_van.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/empty.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/fruit/apple.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/fruit/apple1.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/fruit/apple2.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/fruit/banana.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/fruit/banana1.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/fruit/banana2.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/fruit/orange.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/fuelGauge.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/fuelGaugePointer.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/icons/add.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/icons/add_house.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/icons/add_road.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/icons/big_code_mode.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/icons/blockly.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/icons/character.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/icons/clear.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/icons/day.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/icons/decor.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/icons/delete_decor.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/icons/delete_house.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/icons/delete_road.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/icons/description.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/icons/fast.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/icons/help.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/icons/hide.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/icons/hide_button.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/icons/hint.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/icons/if_else.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/icons/load.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/icons/map.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/icons/muted.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/icons/night.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/icons/origin.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/icons/pause.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/icons/play.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/icons/print.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/icons/python.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/icons/quit.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/icons/random.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/icons/save.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/icons/share.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/icons/show.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/icons/slow.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/icons/solve.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/icons/step.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/icons/stop.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/icons/unmuted.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/if_else_example.png +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/key.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/ocadoVan_big.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/package.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/pigeon.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/python_den_header.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/sp_cow.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/speedoFuel1.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/speedoFuel1_fuel_pointer.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/speedoFuel1_meter.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/speedoFuel1_speed_pointer.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/speedoFuel2.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/speedoFuel2_fuel_pointer.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/speedoFuel2_meter.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/speedoFuel2_speed_pointer.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/speedoFuel_v2.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/trafficLight_green.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/trafficLight_red.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/trashcan.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/trashcan_lid_closed.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/trashcan_lid_open.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/van.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/van_small.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/van_small2.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/image/zebraCrossing.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/animation.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/blockly_compressed.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/blockly_uncompressed.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/blocks_compressed.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/javascript_compressed.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/media/1x1.gif +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/media/click.mp3 +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/media/click.ogg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/media/click.wav +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/media/delete.mp3 +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/media/delete.ogg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/media/delete.wav +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/media/disconnect.mp3 +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/media/disconnect.ogg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/media/disconnect.wav +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/media/handclosed.cur +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/media/handdelete.cur +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/media/handopen.cur +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/media/quote0.png +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/media/quote1.png +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/media/sprites.png +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/media/sprites.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/ab.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/ar.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/az.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/ba.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/bcc.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/be-tarask.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/be.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/bg.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/bn.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/br.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/ca.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/cs.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/da.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/de.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/diq.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/dty.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/el.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/en-gb.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/en.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/eo.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/es.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/et.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/eu.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/fa.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/fi.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/fr.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/gl.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/gor.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/ha.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/he.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/hi.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/hrx.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/hu.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/hy.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/ia.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/id.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/ig.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/is.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/it.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/ja.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/kab.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/ko.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/lb.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/lki.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/lo.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/lrc.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/lt.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/lv.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/mk.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/mnw.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/ms.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/nb.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/nl.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/oc.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/pl.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/pms.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/pt-br.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/pt.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/ro.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/ru.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/sc.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/sd.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/shn.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/sk.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/skr-arab.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/sl.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/sq.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/sr-latn.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/sr.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/sv.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/ta.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/tcy.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/te.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/th.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/tl.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/tlh.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/tr.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/ug-arab.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/uk.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/ur.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/vi.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/xmf.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/yo.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/zh-hans.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/js/zh-hant.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/ab.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/ar.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/az.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/ba.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/bcc.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/be-tarask.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/be.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/bg.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/bn.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/br.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/ca.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/constants.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/cs.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/da.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/de.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/diq.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/dty.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/el.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/en-gb.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/en.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/eo.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/es.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/et.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/eu.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/fa.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/fi.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/fr.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/gl.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/gor.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/ha.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/he.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/hi.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/hrx.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/hu.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/hy.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/ia.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/id.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/ig.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/is.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/it.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/ja.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/kab.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/ko.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/lb.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/lki.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/lo.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/lrc.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/lt.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/lv.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/mk.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/mnw.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/ms.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/nb.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/nl.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/oc.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/pl.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/pms.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/pt-br.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/pt.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/qqq.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/ro.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/ru.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/sc.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/sd.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/shn.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/sk.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/skr-arab.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/sl.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/sq.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/sr-latn.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/sr.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/sv.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/synonyms.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/ta.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/tcy.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/te.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/th.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/tl.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/tlh.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/tr.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/ug-arab.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/uk.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/ur.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/vi.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/xmf.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/yo.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/zh-hans.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/json/zh-hant.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/msg/messages.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/python_compressed.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blockly/version.txt +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blocklyCompiler.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blocklyControl.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blocklyCustomBlocks.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blocklyCustomisations.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/blocklyMessages.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/button.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/character.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/coordinate.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/cow.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/dataTables.fixedColumns.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/destination.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/drawing.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/drawingConstants.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/event.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/foundation/foundation/foundation.abide.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/foundation/foundation/foundation.accordion.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/foundation/foundation/foundation.alert.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/foundation/foundation/foundation.clearing.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/foundation/foundation/foundation.dropdown.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/foundation/foundation/foundation.equalizer.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/foundation/foundation/foundation.interchange.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/foundation/foundation/foundation.joyride.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/foundation/foundation/foundation.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/foundation/foundation/foundation.magellan.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/foundation/foundation/foundation.offcanvas.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/foundation/foundation/foundation.orbit.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/foundation/foundation/foundation.reveal.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/foundation/foundation/foundation.slider.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/foundation/foundation/foundation.tab.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/foundation/foundation/foundation.tooltip.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/foundation/foundation/foundation.topbar.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/foundation/foundation.min.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/foundation/vendor/fastclick.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/foundation/vendor/jquery.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/foundation/vendor/js.cookie.min.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/foundation/vendor/modernizr.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/foundation/vendor/placeholder.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/fpsmeter.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/game.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/handlebars.runtime-v4.7.7.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/howler.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/jquery.dataTables.min.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/jquery.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/jquery.outerhtml.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/jquery.touchy.min.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/level_editor/level_save_state.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/level_editor/owned_levels.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/level_editor.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/level_moderation.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/level_selection.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/loadLanguages.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/map.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/messages.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/mobile-detect.min.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/model.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/node.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/pathFinder.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/program.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/pythonControl.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/raphael.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/saving.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/scoreboard.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/scoreboardSharedLevels.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/sharing.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/skulpt/codemirror.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/skulpt/python.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/skulpt/skulpt-stdlib.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/skulpt/skulpt.min.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/sound.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/svginnerhtml.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/tab.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/templates.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/trafficLight.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/utils.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/js/van.js +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/Clarice.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/Clarice_Jersey.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/Clarice_v1.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/Clarice_v2.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/characters/top_view/Dee.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/characters/top_view/Electric_van.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/characters/top_view/Kirsty.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/characters/top_view/Nigel.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/characters/top_view/Phil.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/characters/top_view/Sleigh.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/characters/top_view/Van.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/characters/top_view/Van2.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/characters/top_view/Van_wreckage.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/characters/top_view/VeilOfNight.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/characters/top_view/Wes.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/decor/city/bush.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/decor/city/hospital.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/decor/city/house.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/decor/city/pavementTile.png +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/decor/city/school.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/decor/city/shop.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/decor/city/solar_panel.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/decor/farm/bush.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/decor/farm/cfc.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/decor/farm/cfc_black.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/decor/farm/crops.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/decor/farm/house1.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/decor/farm/house2.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/decor/farm/solar_panel.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/decor/farm/tile1.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/decor/farm/tree1.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/decor/farm/tree2.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/decor/grass/bush.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/decor/grass/cfc.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/decor/grass/house.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/decor/grass/pond.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/decor/grass/solar_panel.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/decor/grass/tile1.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/decor/grass/tree1.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/decor/grass/tree2.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/decor/snow/barn.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/decor/snow/bush.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/decor/snow/cfc.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/decor/snow/crops.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/decor/snow/hospital.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/decor/snow/house.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/decor/snow/house1.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/decor/snow/house2.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/decor/snow/pond.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/decor/snow/school.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/decor/snow/shop.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/decor/snow/solar_panel.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/decor/snow/tile1.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/decor/snow/tile2.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/decor/snow/tree1.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/decor/snow/tree2.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/fire.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/pigeon.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/road_tiles/path/crossroads.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/road_tiles/path/dead_end.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/road_tiles/path/straight.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/road_tiles/path/t_junction.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/road_tiles/path/turn.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/road_tiles/road/crossroads.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/road_tiles/road/dead_end.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/road_tiles/road/straight.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/road_tiles/road/t_junction.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/road_tiles/road/turn.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/sleigh_wreckage.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/smoke.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/sp_cow.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/trafficLight_green.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/trafficLight_red.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/raphael_image/van_wreckage.svg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/_foundation_overrides.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/_mixins.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/_styles.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/_variables.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation/_functions.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation/_settings.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation/components/_accordion.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation/components/_alert-boxes.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation/components/_block-grid.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation/components/_breadcrumbs.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation/components/_button-groups.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation/components/_buttons.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation/components/_clearing.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation/components/_dropdown-buttons.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation/components/_dropdown.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation/components/_flex-video.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation/components/_forms.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation/components/_global.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation/components/_grid.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation/components/_icon-bar.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation/components/_inline-lists.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation/components/_joyride.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation/components/_keystrokes.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation/components/_labels.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation/components/_magellan.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation/components/_offcanvas.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation/components/_orbit.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation/components/_pagination.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation/components/_panels.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation/components/_pricing-tables.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation/components/_progress-bars.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation/components/_range-slider.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation/components/_reveal.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation/components/_side-nav.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation/components/_split-buttons.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation/components/_sub-nav.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation/components/_switch.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation/components/_switches.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation/components/_tables.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation/components/_tabs.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation/components/_thumbs.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation/components/_toolbar.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation/components/_tooltips.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation/components/_top-bar.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation/components/_type.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation/components/_visibility.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/foundation.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sass/game.scss +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sound/clown_horn.mp3 +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sound/clown_horn.ogg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sound/cow.mp3 +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sound/cow.ogg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sound/cow_original.mp3 +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sound/cow_original.ogg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sound/crash.mp3 +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sound/crash.ogg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sound/delivery.mp3 +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sound/delivery.ogg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sound/electric_van_starting.mp3 +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sound/electric_van_starting.ogg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sound/failure.mp3 +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sound/failure.ogg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sound/horn.mp3 +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sound/horn.ogg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sound/moving.mp3 +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sound/moving.ogg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sound/pigeon.mp3 +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sound/pigeon.ogg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sound/sleigh_bells.mp3 +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sound/sleigh_bells.ogg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sound/sleigh_crash.mp3 +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sound/sleigh_crash.ogg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sound/starting.mp3 +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sound/starting.ogg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sound/tension.mp3 +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sound/tension.ogg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sound/win.mp3 +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/game/sound/win.ogg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/icons/dee-192x192.png +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/icons/dee-384x384.png +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/icons/dee-512x512.png +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/static/manifest.json +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/templates/game/base.html +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/templates/game/basenonav.html +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/templates/game/crowdin.html +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/templates/game/error.html +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/templates/game/game.html +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/templates/game/level_editor.html +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/templates/game/level_moderation.html +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/templates/game/level_selection.html +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/templates/game/logged_students.html +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/templates/game/scoreboard.html +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/templatetags/__init__.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/templatetags/game/__init__.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/templatetags/game/utils.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/tests/__init__.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/tests/migrations/__init__.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/tests/migrations/test_migration_fix_episodes_order.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/tests/test_api.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/tests/test_level_editor.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/tests/test_level_moderation.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/tests/test_level_selection.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/tests/test_models.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/tests/test_random_road.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/tests/test_scoreboard.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/tests/utils/__init__.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/tests/utils/attempt.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/tests/utils/episode.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/tests/utils/level.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/tests/utils/locale.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/tests/utils/teacher.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/tests/utils/user.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/theme.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/urls.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/views/__init__.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/views/api.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/views/helper.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/views/language_code_conversions.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/views/level.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/views/level_editor.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/views/level_moderation.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/views/level_selection.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/views/level_solutions.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/views/scoreboard.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/game/views/scoreboard_csv.py +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/pyproject.toml +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/rapid_router.egg-info/dependency_links.txt +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/rapid_router.egg-info/not-zip-safe +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/rapid_router.egg-info/top_level.txt +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/setup.cfg +0 -0
- {rapid_router-7.5.22 → rapid_router-7.6.0}/setup.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: rapid-router
|
|
3
|
-
Version: 7.
|
|
3
|
+
Version: 7.6.0
|
|
4
4
|
Classifier: Programming Language :: Python
|
|
5
5
|
Classifier: Programming Language :: Python :: 3.12
|
|
6
6
|
Classifier: Framework :: Django
|
|
@@ -9,7 +9,7 @@ Requires-Dist: asgiref==3.9.1; python_version >= "3.9"
|
|
|
9
9
|
Requires-Dist: asttokens==3.0.0; python_version >= "3.8"
|
|
10
10
|
Requires-Dist: certifi==2025.8.3; python_version >= "3.7"
|
|
11
11
|
Requires-Dist: cffi==1.17.1; platform_python_implementation != "PyPy"
|
|
12
|
-
Requires-Dist: cfl-common==8.
|
|
12
|
+
Requires-Dist: cfl-common==8.9.1
|
|
13
13
|
Requires-Dist: charset-normalizer==3.4.3; 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"
|
|
@@ -72,19 +72,20 @@ 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
73
|
Requires-Dist: certifi==2025.8.3; python_version >= "3.7" and extra == "dev"
|
|
74
74
|
Requires-Dist: cffi==1.17.1; platform_python_implementation != "PyPy" and extra == "dev"
|
|
75
|
-
Requires-Dist: cfl-common==8.
|
|
75
|
+
Requires-Dist: cfl-common==8.9.1; extra == "dev"
|
|
76
76
|
Requires-Dist: charset-normalizer==3.4.3; python_version >= "3.7" and extra == "dev"
|
|
77
77
|
Requires-Dist: click==8.2.1; 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.
|
|
81
|
+
Requires-Dist: codeforlife-portal==8.9.1; 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
84
|
Requires-Dist: django==5.1.10; 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
|
+
Requires-Dist: django-extensions==4.1; python_version >= "3.9" and extra == "dev"
|
|
88
89
|
Requires-Dist: django-formtools==2.5.1; python_version >= "3.8" and extra == "dev"
|
|
89
90
|
Requires-Dist: django-import-export==4.2.0; python_version >= "3.9" and extra == "dev"
|
|
90
91
|
Requires-Dist: django-otp==1.6.1; python_version >= "3.7" and extra == "dev"
|
|
@@ -109,6 +110,7 @@ Requires-Dist: isort==6.0.1; python_full_version >= "3.9.0" and extra == "dev"
|
|
|
109
110
|
Requires-Dist: jmespath==1.0.1; python_version >= "3.7" and extra == "dev"
|
|
110
111
|
Requires-Dist: kombu[sqs]==5.5.4; python_version >= "3.8" and extra == "dev"
|
|
111
112
|
Requires-Dist: libsass==0.23.0; python_version >= "3.8" and extra == "dev"
|
|
113
|
+
Requires-Dist: markupsafe==3.0.2; python_version >= "3.9" and extra == "dev"
|
|
112
114
|
Requires-Dist: more-itertools==8.7.0; python_version >= "3.5" and extra == "dev"
|
|
113
115
|
Requires-Dist: mypy-extensions==1.1.0; python_version >= "3.8" and extra == "dev"
|
|
114
116
|
Requires-Dist: numpy==2.3.2; python_version >= "3.11" and extra == "dev"
|
|
@@ -127,6 +129,7 @@ Requires-Dist: pycparser==2.22; python_version >= "3.8" and extra == "dev"
|
|
|
127
129
|
Requires-Dist: pycurl==7.45.6; python_version >= "3.5" and extra == "dev"
|
|
128
130
|
Requires-Dist: pygments==2.19.2; python_version >= "3.8" and extra == "dev"
|
|
129
131
|
Requires-Dist: pyjwt==2.6.0; python_version >= "3.7" and extra == "dev"
|
|
132
|
+
Requires-Dist: pyopenssl==25.1.0; python_version >= "3.7" and extra == "dev"
|
|
130
133
|
Requires-Dist: pypng==0.20220715.0; extra == "dev"
|
|
131
134
|
Requires-Dist: pysocks==1.7.1; extra == "dev"
|
|
132
135
|
Requires-Dist: pytest==8.4.1; python_version >= "3.9" and extra == "dev"
|
|
@@ -159,6 +162,7 @@ Requires-Dist: uvicorn-worker==0.2.0; python_version >= "3.8" and extra == "dev"
|
|
|
159
162
|
Requires-Dist: vine==5.1.0; python_version >= "3.6" and extra == "dev"
|
|
160
163
|
Requires-Dist: wcwidth==0.2.13; extra == "dev"
|
|
161
164
|
Requires-Dist: websocket-client==1.8.0; python_version >= "3.8" and extra == "dev"
|
|
165
|
+
Requires-Dist: werkzeug==3.1.3; python_version >= "3.9" and extra == "dev"
|
|
162
166
|
Requires-Dist: wheel==0.45.1; python_version >= "3.8" and extra == "dev"
|
|
163
167
|
Requires-Dist: whitenoise==6.9.0; python_version >= "3.9" and extra == "dev"
|
|
164
168
|
Requires-Dist: wsproto==1.2.0; python_full_version >= "3.7.0" and extra == "dev"
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "7.6.0"
|
|
@@ -80,6 +80,19 @@ def no_data_to_show_level_moderation():
|
|
|
80
80
|
)
|
|
81
81
|
|
|
82
82
|
|
|
83
|
+
""" Strings used on the Python Den worksheet page. """
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
def no_permission_python_den_worksheet_title():
|
|
87
|
+
return "No permission"
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
def no_permission_python_den_worksheet_page():
|
|
91
|
+
return (
|
|
92
|
+
"This content is only available to logged in users. Please log in to access this page."
|
|
93
|
+
)
|
|
94
|
+
|
|
95
|
+
|
|
83
96
|
""" String messages used as level tips in the game view. """
|
|
84
97
|
|
|
85
98
|
|
|
@@ -2566,6 +2579,11 @@ def hint_level109():
|
|
|
2566
2579
|
|
|
2567
2580
|
# PYTHON DEN
|
|
2568
2581
|
|
|
2582
|
+
# Worksheets starter code
|
|
2583
|
+
|
|
2584
|
+
def worksheet_starter_code():
|
|
2585
|
+
return "# Write your code below"
|
|
2586
|
+
|
|
2569
2587
|
# Episode 12, Levels 110 - 122
|
|
2570
2588
|
(
|
|
2571
2589
|
title_level1001,
|
|
@@ -3,6 +3,7 @@ from django.urls import re_path
|
|
|
3
3
|
from game.views.level import play_default_python_level, start_python_episode
|
|
4
4
|
from game.views.level_selection import python_levels
|
|
5
5
|
from game.views.scoreboard import python_scoreboard
|
|
6
|
+
from game.views.worksheet import worksheet
|
|
6
7
|
|
|
7
8
|
urlpatterns = [
|
|
8
9
|
re_path(r"^$", python_levels, name="python_levels"),
|
|
@@ -16,5 +17,10 @@ urlpatterns = [
|
|
|
16
17
|
start_python_episode,
|
|
17
18
|
name="start_python_episode",
|
|
18
19
|
),
|
|
20
|
+
re_path(
|
|
21
|
+
r"^worksheet/(?P<worksheetId>[0-9]+)/$",
|
|
22
|
+
worksheet,
|
|
23
|
+
name="worksheet",
|
|
24
|
+
),
|
|
19
25
|
re_path(r"^scoreboard/$", python_scoreboard, name="python_scoreboard"),
|
|
20
26
|
]
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
editor-wc {
|
|
2
|
+
display: block;
|
|
3
|
+
width: 66%;
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
video,
|
|
7
|
+
iframe {
|
|
8
|
+
border: 1px solid black;
|
|
9
|
+
border-radius: 5px;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
.tab-pane video,
|
|
13
|
+
.tab-pane iframe {
|
|
14
|
+
border-radius: 0 0 5px 5px;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
.nav-tabs {
|
|
18
|
+
border-bottom: 0;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.nav-tabs > li > a {
|
|
22
|
+
text-decoration: none;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
.nav-tabs > li > a,
|
|
26
|
+
.nav-tabs > li > a:hover,
|
|
27
|
+
.nav-tabs > li > a:focus {
|
|
28
|
+
border: 1px solid grey;
|
|
29
|
+
border-bottom-color: transparent;
|
|
30
|
+
font-weight: normal;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
.nav-tabs > li.active > a,
|
|
34
|
+
.nav-tabs > li.active > a:hover,
|
|
35
|
+
.nav-tabs > li.active > a:focus {
|
|
36
|
+
border: 1px solid black;
|
|
37
|
+
border-bottom-color: transparent;
|
|
38
|
+
font-weight: bold;
|
|
39
|
+
text-decoration: none;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
@media (max-width: 1000px) {
|
|
43
|
+
editor-wc {
|
|
44
|
+
height: 600px;
|
|
45
|
+
width: 100%;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
$(document).ready(function () {
|
|
2
|
+
let shadowRoot = $("editor-wc")[0].shadowRoot;
|
|
3
|
+
|
|
4
|
+
// Set editor height and margin
|
|
5
|
+
$(shadowRoot).find("#root").css("height", "100%");
|
|
6
|
+
$(shadowRoot).find(".proj-container").css("margin", "0 10px 0 0");
|
|
7
|
+
|
|
8
|
+
// Fix project bar height
|
|
9
|
+
$(shadowRoot).find(".project-bar").css("block-size", "auto");
|
|
10
|
+
|
|
11
|
+
// Focus on text output tab
|
|
12
|
+
$(shadowRoot).find(".react-tabs__tab-text").click();
|
|
13
|
+
|
|
14
|
+
// Remove visual output and split view tabs
|
|
15
|
+
$(shadowRoot).find("#react-tabs-4").hide();
|
|
16
|
+
$(shadowRoot).find(".output-view-toggle").hide();
|
|
17
|
+
|
|
18
|
+
// Make editor font size not small
|
|
19
|
+
$(shadowRoot).find(".editor").removeClass("editor--small");
|
|
20
|
+
|
|
21
|
+
// Ensure window doesn't scroll to bottom of page
|
|
22
|
+
window.scrollTo(0, 0);
|
|
23
|
+
});
|
{rapid_router-7.5.22 → rapid_router-7.6.0}/game/templates/game/python_den_level_selection.html
RENAMED
|
@@ -85,7 +85,7 @@
|
|
|
85
85
|
</div>
|
|
86
86
|
{% else %}
|
|
87
87
|
<div class="col-sm-7 python-den-level">
|
|
88
|
-
<a href="
|
|
88
|
+
<a href="{% url 'worksheet' worksheet.id %}">{{episode.name}}{% if episode.worksheets|length > 1 %} pt. {{ worksheet.index }}{% endif %}</a>
|
|
89
89
|
</div>
|
|
90
90
|
{% if user|is_logged_in_as_teacher %}
|
|
91
91
|
<div class="col-sm-3 python-den-level">
|
|
@@ -169,7 +169,7 @@
|
|
|
169
169
|
</div>
|
|
170
170
|
{% else %}
|
|
171
171
|
<div class="col-sm-7 python-den-level">
|
|
172
|
-
<a href="
|
|
172
|
+
<a href="{% url 'worksheet' worksheet.id %}">{{episode.name}}{% if episode.worksheets|length > 1 %} pt. {{ worksheet.index }}{% endif %}</a>
|
|
173
173
|
</div>
|
|
174
174
|
{% if user|is_logged_in_as_teacher %}
|
|
175
175
|
<div class="col-sm-3 python-den-level">
|
|
@@ -251,7 +251,7 @@
|
|
|
251
251
|
</div>
|
|
252
252
|
{% else %}
|
|
253
253
|
<div class="col-sm-7 python-den-level">
|
|
254
|
-
<a href="
|
|
254
|
+
<a href="{% url 'worksheet' worksheet.id %}">{{episode.name}}{% if episode.worksheets|length > 1 %} pt. {{ worksheet.index }}{% endif %}</a>
|
|
255
255
|
</div>
|
|
256
256
|
{% if user|is_logged_in_as_teacher %}
|
|
257
257
|
<div class="col-sm-3 python-den-level">
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
{% extends 'game/base.html' %}
|
|
2
|
+
|
|
3
|
+
{% load static %}
|
|
4
|
+
{% load i18n %}
|
|
5
|
+
{% load app_tags %}
|
|
6
|
+
|
|
7
|
+
{% block scripts %}
|
|
8
|
+
{{block.super}}
|
|
9
|
+
<script type="text/javascript" src="https://editor-static.raspberrypi.org/releases/v0.29.1/web-component.js"></script>
|
|
10
|
+
<script type="text/javascript" src="{% static 'game/js/editor.js' %}"></script>
|
|
11
|
+
|
|
12
|
+
<script>
|
|
13
|
+
var EPISODE = "{{ worksheet.episode.name|escapejs }}"
|
|
14
|
+
</script>
|
|
15
|
+
{% endblock %}
|
|
16
|
+
|
|
17
|
+
{% block css %}
|
|
18
|
+
{{block.super}}
|
|
19
|
+
<link href="{% static 'game/css/level_selection.css' %}" rel="stylesheet" type="text/css">
|
|
20
|
+
<link href="{% static 'game/css/editor.css' %}" rel="stylesheet" type="text/css">
|
|
21
|
+
{% endblock %}
|
|
22
|
+
|
|
23
|
+
{% block header %}
|
|
24
|
+
<section class="banner">
|
|
25
|
+
{% if user|is_logged_in_as_student or user|is_independent_student %}
|
|
26
|
+
<img class="banner--python-den--image" title="Python Den logo" alt="Python Den logo" src="{% static 'game/image/Python_Den_hero_student.png' %}">
|
|
27
|
+
{% else %}
|
|
28
|
+
<img class="banner--python-den--image" title="Python Den logo" alt="Python Den logo" src="{% static 'game/image/Python_levels_page.svg' %}">
|
|
29
|
+
{% endif %}
|
|
30
|
+
</section>
|
|
31
|
+
{% endblock header %}
|
|
32
|
+
|
|
33
|
+
{% block content %}
|
|
34
|
+
<div class="container">
|
|
35
|
+
<h4 class="text-center">{{worksheet.episode.name}}</h4>
|
|
36
|
+
<p>You can write your code and see its output using the code editor below.</p>
|
|
37
|
+
<p>Next to it, you can view your worksheet - you can't write anything in it, but you can copy and paste from it.</p>
|
|
38
|
+
</div>
|
|
39
|
+
|
|
40
|
+
<div>
|
|
41
|
+
<div class="d-flex align-items-stretch justify-content-between m-5 flex-lg-row flex-md-column flex-sm-column">
|
|
42
|
+
<div class="d-flex align-items-stretch justify-content-center">
|
|
43
|
+
<a href="{% if user|is_independent_student %} {{worksheet.indy_worksheet_link}} {% else %} {{worksheet.student_worksheet_link}} {% endif %}"
|
|
44
|
+
class="button button--level button--icon hidden-md hidden-lg mb-5" target="_blank">
|
|
45
|
+
Worksheet<span class="iconify" data-icon="mdi:open-in-new"></span></a>
|
|
46
|
+
{% if not user|is_logged_in_as_student %}
|
|
47
|
+
<a href="{{worksheet.video_link}}" class="button button--level button--icon hidden-md hidden-lg mb-5 ml-5" target="_blank">
|
|
48
|
+
Video<span class="iconify" data-icon="mdi:open-in-new"></span></a>
|
|
49
|
+
{% endif %}
|
|
50
|
+
</div>
|
|
51
|
+
|
|
52
|
+
<editor-wc
|
|
53
|
+
code="{{starter_code}}"
|
|
54
|
+
use_editor_styles="true">
|
|
55
|
+
</editor-wc>
|
|
56
|
+
|
|
57
|
+
<div class="hidden-sm hidden-xs">
|
|
58
|
+
<div class="d-flex flex-column">
|
|
59
|
+
{% if user|is_logged_in_as_student %}
|
|
60
|
+
<iframe height="500" width="600" src="{{worksheet.student_worksheet_link}}"></iframe>
|
|
61
|
+
{% else %}
|
|
62
|
+
<ul class="nav nav-tabs" role="tablist">
|
|
63
|
+
<li role="presentation" class="active">
|
|
64
|
+
{% if user|is_independent_student %}
|
|
65
|
+
<a href="#worksheet" aria-controls="worksheet" role="tab" data-toggle="tab">Worksheet</a>
|
|
66
|
+
{% else %}
|
|
67
|
+
<a href="#student-worksheet" aria-controls="student_worksheet" role="tab" data-toggle="tab">Student Worksheet</a>
|
|
68
|
+
{% endif %}
|
|
69
|
+
</li>
|
|
70
|
+
{% if user|is_logged_in_as_teacher %}
|
|
71
|
+
<li role="presentation">
|
|
72
|
+
<a href="#worksheet" aria-controls="worksheet" role="tab" data-toggle="tab">Lesson plan</a>
|
|
73
|
+
</li>
|
|
74
|
+
{% endif %}
|
|
75
|
+
<li role="presentation">
|
|
76
|
+
<a href="#video" aria-controls="video" role="tab" data-toggle="tab">Video</a>
|
|
77
|
+
</li>
|
|
78
|
+
</ul>
|
|
79
|
+
|
|
80
|
+
<div class="tab-content">
|
|
81
|
+
{% if user|is_logged_in_as_teacher %}
|
|
82
|
+
<div role="tabpanel" class="tab-pane active" id="student-worksheet">
|
|
83
|
+
<iframe height="500" width="600" src="{{worksheet.student_worksheet_link}}"></iframe>
|
|
84
|
+
</div>
|
|
85
|
+
{% endif %}
|
|
86
|
+
<div role="tabpanel" class="tab-pane {% if user|is_independent_student %} active {% endif %}" id="worksheet">
|
|
87
|
+
<iframe height="500" width="600" src="{% if user|is_independent_student %} {{worksheet.indy_worksheet_link}} {% else %} {{worksheet.lesson_plan_link}} {% endif %}"></iframe>
|
|
88
|
+
</div>
|
|
89
|
+
<div role="tabpanel" class="tab-pane" id="video">
|
|
90
|
+
<video height="500" width="600"
|
|
91
|
+
src="{{worksheet.video_link}}" type="video/mp4" controls></video>
|
|
92
|
+
</div>
|
|
93
|
+
</div>
|
|
94
|
+
{% endif %}
|
|
95
|
+
</div>
|
|
96
|
+
</div>
|
|
97
|
+
|
|
98
|
+
</div>
|
|
99
|
+
</div>
|
|
100
|
+
|
|
101
|
+
{% endblock content %}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
from deploy import captcha
|
|
2
|
+
from django.test.client import Client
|
|
3
|
+
from django.test.testcases import TestCase
|
|
4
|
+
from django.urls import reverse
|
|
5
|
+
|
|
6
|
+
from game import messages
|
|
7
|
+
from game.models import Worksheet
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class PythonDenWorksheetTestCase(TestCase):
|
|
11
|
+
@classmethod
|
|
12
|
+
def setUpClass(cls):
|
|
13
|
+
cls.orig_captcha_enabled = captcha.CAPTCHA_ENABLED
|
|
14
|
+
captcha.CAPTCHA_ENABLED = False
|
|
15
|
+
super(PythonDenWorksheetTestCase, cls).setUpClass()
|
|
16
|
+
|
|
17
|
+
@classmethod
|
|
18
|
+
def tearDownClass(cls):
|
|
19
|
+
captcha.CAPTCHA_ENABLED = cls.orig_captcha_enabled
|
|
20
|
+
super(PythonDenWorksheetTestCase, cls).tearDownClass()
|
|
21
|
+
|
|
22
|
+
def setUp(self):
|
|
23
|
+
self.client = Client()
|
|
24
|
+
|
|
25
|
+
def login(self, email, password):
|
|
26
|
+
self.client.post(
|
|
27
|
+
reverse("teacher_login"),
|
|
28
|
+
{
|
|
29
|
+
"auth-username": email,
|
|
30
|
+
"auth-password": password,
|
|
31
|
+
"teacher_login_view-current_step": "auth",
|
|
32
|
+
},
|
|
33
|
+
follow=True,
|
|
34
|
+
)
|
|
35
|
+
|
|
36
|
+
def logout(self):
|
|
37
|
+
self.client.post(reverse("logout_view"), follow=True)
|
|
38
|
+
|
|
39
|
+
def student_login(self, name, access_code, password):
|
|
40
|
+
self.client.post(
|
|
41
|
+
reverse("student_login", kwargs={"access_code": access_code}),
|
|
42
|
+
{"username": name, "password": password},
|
|
43
|
+
follow=True,
|
|
44
|
+
)
|
|
45
|
+
|
|
46
|
+
def independent_student_login(self, email, password):
|
|
47
|
+
self.client.login(username=email, password=password)
|
|
48
|
+
|
|
49
|
+
def test_page_permissions(self):
|
|
50
|
+
response = self.client.get(reverse("worksheet", args="1"))
|
|
51
|
+
|
|
52
|
+
assert response.status_code == 200
|
|
53
|
+
assert (
|
|
54
|
+
response.context["title"]
|
|
55
|
+
== messages.no_permission_python_den_worksheet_title()
|
|
56
|
+
)
|
|
57
|
+
assert (
|
|
58
|
+
response.context["message"]
|
|
59
|
+
== messages.no_permission_python_den_worksheet_page()
|
|
60
|
+
)
|
|
61
|
+
|
|
62
|
+
self.login("alberteinstein@codeforlife.com", "Password1")
|
|
63
|
+
|
|
64
|
+
response = self.client.get(reverse("worksheet", args="1"))
|
|
65
|
+
|
|
66
|
+
assert response.status_code == 200
|
|
67
|
+
assert response.context["worksheet"] == Worksheet.objects.get(pk=1)
|
|
68
|
+
|
|
69
|
+
self.logout()
|
|
70
|
+
self.student_login("Leonardo", "AB123", "Password1")
|
|
71
|
+
|
|
72
|
+
response = self.client.get(reverse("worksheet", args="1"))
|
|
73
|
+
|
|
74
|
+
assert response.status_code == 200
|
|
75
|
+
assert response.context["worksheet"] == Worksheet.objects.get(pk=1)
|
|
76
|
+
|
|
77
|
+
self.logout()
|
|
78
|
+
self.independent_student_login("indianajones@codeforlife.com", "Password1")
|
|
79
|
+
|
|
80
|
+
response = self.client.get(reverse("worksheet", args="1"))
|
|
81
|
+
|
|
82
|
+
assert response.status_code == 200
|
|
83
|
+
assert response.context["worksheet"] == Worksheet.objects.get(pk=1)
|
|
84
|
+
|
|
85
|
+
self.logout()
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
from __future__ import absolute_import, division
|
|
2
|
+
|
|
3
|
+
from django.shortcuts import render
|
|
4
|
+
|
|
5
|
+
from game import messages
|
|
6
|
+
from game.models import Worksheet
|
|
7
|
+
from .helper import renderError
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
def worksheet(request, worksheetId):
|
|
11
|
+
if request.user.is_anonymous:
|
|
12
|
+
return renderError(
|
|
13
|
+
request,
|
|
14
|
+
messages.no_permission_python_den_worksheet_title(),
|
|
15
|
+
messages.no_permission_python_den_worksheet_page(),
|
|
16
|
+
)
|
|
17
|
+
|
|
18
|
+
worksheet = Worksheet.objects.get(pk=worksheetId)
|
|
19
|
+
starter_code = messages.worksheet_starter_code()
|
|
20
|
+
|
|
21
|
+
return render(
|
|
22
|
+
request,
|
|
23
|
+
"game/python_den_worksheet.html",
|
|
24
|
+
context={"worksheet": worksheet, "starter_code": starter_code},
|
|
25
|
+
)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: rapid-router
|
|
3
|
-
Version: 7.
|
|
3
|
+
Version: 7.6.0
|
|
4
4
|
Classifier: Programming Language :: Python
|
|
5
5
|
Classifier: Programming Language :: Python :: 3.12
|
|
6
6
|
Classifier: Framework :: Django
|
|
@@ -9,7 +9,7 @@ Requires-Dist: asgiref==3.9.1; python_version >= "3.9"
|
|
|
9
9
|
Requires-Dist: asttokens==3.0.0; python_version >= "3.8"
|
|
10
10
|
Requires-Dist: certifi==2025.8.3; python_version >= "3.7"
|
|
11
11
|
Requires-Dist: cffi==1.17.1; platform_python_implementation != "PyPy"
|
|
12
|
-
Requires-Dist: cfl-common==8.
|
|
12
|
+
Requires-Dist: cfl-common==8.9.1
|
|
13
13
|
Requires-Dist: charset-normalizer==3.4.3; 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"
|
|
@@ -72,19 +72,20 @@ 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
73
|
Requires-Dist: certifi==2025.8.3; python_version >= "3.7" and extra == "dev"
|
|
74
74
|
Requires-Dist: cffi==1.17.1; platform_python_implementation != "PyPy" and extra == "dev"
|
|
75
|
-
Requires-Dist: cfl-common==8.
|
|
75
|
+
Requires-Dist: cfl-common==8.9.1; extra == "dev"
|
|
76
76
|
Requires-Dist: charset-normalizer==3.4.3; python_version >= "3.7" and extra == "dev"
|
|
77
77
|
Requires-Dist: click==8.2.1; 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.
|
|
81
|
+
Requires-Dist: codeforlife-portal==8.9.1; 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
84
|
Requires-Dist: django==5.1.10; 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
|
+
Requires-Dist: django-extensions==4.1; python_version >= "3.9" and extra == "dev"
|
|
88
89
|
Requires-Dist: django-formtools==2.5.1; python_version >= "3.8" and extra == "dev"
|
|
89
90
|
Requires-Dist: django-import-export==4.2.0; python_version >= "3.9" and extra == "dev"
|
|
90
91
|
Requires-Dist: django-otp==1.6.1; python_version >= "3.7" and extra == "dev"
|
|
@@ -109,6 +110,7 @@ Requires-Dist: isort==6.0.1; python_full_version >= "3.9.0" and extra == "dev"
|
|
|
109
110
|
Requires-Dist: jmespath==1.0.1; python_version >= "3.7" and extra == "dev"
|
|
110
111
|
Requires-Dist: kombu[sqs]==5.5.4; python_version >= "3.8" and extra == "dev"
|
|
111
112
|
Requires-Dist: libsass==0.23.0; python_version >= "3.8" and extra == "dev"
|
|
113
|
+
Requires-Dist: markupsafe==3.0.2; python_version >= "3.9" and extra == "dev"
|
|
112
114
|
Requires-Dist: more-itertools==8.7.0; python_version >= "3.5" and extra == "dev"
|
|
113
115
|
Requires-Dist: mypy-extensions==1.1.0; python_version >= "3.8" and extra == "dev"
|
|
114
116
|
Requires-Dist: numpy==2.3.2; python_version >= "3.11" and extra == "dev"
|
|
@@ -127,6 +129,7 @@ Requires-Dist: pycparser==2.22; python_version >= "3.8" and extra == "dev"
|
|
|
127
129
|
Requires-Dist: pycurl==7.45.6; python_version >= "3.5" and extra == "dev"
|
|
128
130
|
Requires-Dist: pygments==2.19.2; python_version >= "3.8" and extra == "dev"
|
|
129
131
|
Requires-Dist: pyjwt==2.6.0; python_version >= "3.7" and extra == "dev"
|
|
132
|
+
Requires-Dist: pyopenssl==25.1.0; python_version >= "3.7" and extra == "dev"
|
|
130
133
|
Requires-Dist: pypng==0.20220715.0; extra == "dev"
|
|
131
134
|
Requires-Dist: pysocks==1.7.1; extra == "dev"
|
|
132
135
|
Requires-Dist: pytest==8.4.1; python_version >= "3.9" and extra == "dev"
|
|
@@ -159,6 +162,7 @@ Requires-Dist: uvicorn-worker==0.2.0; python_version >= "3.8" and extra == "dev"
|
|
|
159
162
|
Requires-Dist: vine==5.1.0; python_version >= "3.6" and extra == "dev"
|
|
160
163
|
Requires-Dist: wcwidth==0.2.13; extra == "dev"
|
|
161
164
|
Requires-Dist: websocket-client==1.8.0; python_version >= "3.8" and extra == "dev"
|
|
165
|
+
Requires-Dist: werkzeug==3.1.3; python_version >= "3.9" and extra == "dev"
|
|
162
166
|
Requires-Dist: wheel==0.45.1; python_version >= "3.8" and extra == "dev"
|
|
163
167
|
Requires-Dist: whitenoise==6.9.0; python_version >= "3.9" and extra == "dev"
|
|
164
168
|
Requires-Dist: wsproto==1.2.0; python_full_version >= "3.7.0" and extra == "dev"
|
|
@@ -147,6 +147,7 @@ game/static/game/css/dataTables.custom.css
|
|
|
147
147
|
game/static/game/css/dataTables.fixedColumns.css
|
|
148
148
|
game/static/game/css/dataTables.jqueryui.css
|
|
149
149
|
game/static/game/css/dropdown.css
|
|
150
|
+
game/static/game/css/editor.css
|
|
150
151
|
game/static/game/css/game.css
|
|
151
152
|
game/static/game/css/game_screen.css
|
|
152
153
|
game/static/game/css/input.css
|
|
@@ -349,6 +350,7 @@ game/static/game/js/dataTables.fixedColumns.js
|
|
|
349
350
|
game/static/game/js/destination.js
|
|
350
351
|
game/static/game/js/drawing.js
|
|
351
352
|
game/static/game/js/drawingConstants.js
|
|
353
|
+
game/static/game/js/editor.js
|
|
352
354
|
game/static/game/js/event.js
|
|
353
355
|
game/static/game/js/fpsmeter.js
|
|
354
356
|
game/static/game/js/game.js
|
|
@@ -773,6 +775,7 @@ game/templates/game/level_moderation.html
|
|
|
773
775
|
game/templates/game/level_selection.html
|
|
774
776
|
game/templates/game/logged_students.html
|
|
775
777
|
game/templates/game/python_den_level_selection.html
|
|
778
|
+
game/templates/game/python_den_worksheet.html
|
|
776
779
|
game/templates/game/scoreboard.html
|
|
777
780
|
game/templatetags/__init__.py
|
|
778
781
|
game/templatetags/game/__init__.py
|
|
@@ -783,6 +786,7 @@ game/tests/test_level_editor.py
|
|
|
783
786
|
game/tests/test_level_moderation.py
|
|
784
787
|
game/tests/test_level_selection.py
|
|
785
788
|
game/tests/test_models.py
|
|
789
|
+
game/tests/test_python_den_worksheet.py
|
|
786
790
|
game/tests/test_random_road.py
|
|
787
791
|
game/tests/test_scoreboard.py
|
|
788
792
|
game/tests/migrations/__init__.py
|
|
@@ -805,6 +809,7 @@ game/views/level_selection.py
|
|
|
805
809
|
game/views/level_solutions.py
|
|
806
810
|
game/views/scoreboard.py
|
|
807
811
|
game/views/scoreboard_csv.py
|
|
812
|
+
game/views/worksheet.py
|
|
808
813
|
rapid_router.egg-info/PKG-INFO
|
|
809
814
|
rapid_router.egg-info/SOURCES.txt
|
|
810
815
|
rapid_router.egg-info/dependency_links.txt
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
cfl-common==8.
|
|
1
|
+
cfl-common==8.9.1
|
|
2
2
|
django-countries==7.6.1
|
|
3
3
|
django-csp==3.8
|
|
4
4
|
ptyprocess==0.7.0
|
|
@@ -80,9 +80,9 @@ urllib3==2.5.0
|
|
|
80
80
|
pexpect==4.9.0
|
|
81
81
|
|
|
82
82
|
[dev]
|
|
83
|
-
cfl-common==8.
|
|
83
|
+
cfl-common==8.9.1
|
|
84
84
|
click-plugins==1.1.1.2
|
|
85
|
-
codeforlife-portal==8.
|
|
85
|
+
codeforlife-portal==8.9.1
|
|
86
86
|
django-countries==7.6.1
|
|
87
87
|
django-csp==3.8
|
|
88
88
|
django-preventconcurrentlogins==0.8.2
|
|
@@ -147,6 +147,7 @@ jmespath==1.0.1
|
|
|
147
147
|
outcome==1.3.0.post0
|
|
148
148
|
psycopg2-binary==2.9.9
|
|
149
149
|
pyjwt==2.6.0
|
|
150
|
+
pyopenssl==25.1.0
|
|
150
151
|
pytest-order==1.3.0
|
|
151
152
|
qrcode==7.4.2
|
|
152
153
|
sniffio==1.3.1
|
|
@@ -193,10 +194,12 @@ wheel==0.45.1
|
|
|
193
194
|
[dev:python_version >= "3.9"]
|
|
194
195
|
asgiref==3.9.1
|
|
195
196
|
black==25.1.0
|
|
197
|
+
django-extensions==4.1
|
|
196
198
|
django-import-export==4.2.0
|
|
197
199
|
django-phonenumber-field==8.1.0
|
|
198
200
|
django-pipeline==4.0.0
|
|
199
201
|
djangorestframework==3.16.0
|
|
202
|
+
markupsafe==3.0.2
|
|
200
203
|
pandas==2.3.1
|
|
201
204
|
pillow==11.3.0
|
|
202
205
|
platformdirs==4.3.8
|
|
@@ -210,6 +213,7 @@ trio==0.30.0
|
|
|
210
213
|
typing-extensions==4.14.1
|
|
211
214
|
urllib3==2.5.0
|
|
212
215
|
uvicorn==0.35.0
|
|
216
|
+
werkzeug==3.1.3
|
|
213
217
|
whitenoise==6.9.0
|
|
214
218
|
zipp==3.23.0
|
|
215
219
|
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
__version__ = "7.5.22"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|