diff --git a/cms/djangoapps/contentstore/management/commands/edit_course_tabs.py b/cms/djangoapps/contentstore/management/commands/edit_course_tabs.py index f59dd7bdba2ce5c6749dc6be0742955ecd570698..9cb787be5f901601c4bef6e6d0cbc324f5749ff8 100644 --- a/cms/djangoapps/contentstore/management/commands/edit_course_tabs.py +++ b/cms/djangoapps/contentstore/management/commands/edit_course_tabs.py @@ -12,7 +12,7 @@ from django.core.management.base import BaseCommand, CommandError from opaque_keys.edx.keys import CourseKey from contentstore.views import tabs -from courseware.courses import get_course_by_id +from lms.djangoapps.courseware.courses import get_course_by_id from .prompt import query_yes_no diff --git a/cms/djangoapps/contentstore/tests/test_users_default_role.py b/cms/djangoapps/contentstore/tests/test_users_default_role.py index bcadfde52088a1375831cf3aac2e00b75bb2c436..f4b613a4a0eb2dde9d9e6764fb29ccd922576825 100644 --- a/cms/djangoapps/contentstore/tests/test_users_default_role.py +++ b/cms/djangoapps/contentstore/tests/test_users_default_role.py @@ -6,7 +6,7 @@ from __future__ import absolute_import from contentstore.tests.utils import AjaxEnabledTestClient from contentstore.utils import delete_course, reverse_url -from courseware.tests.factories import UserFactory +from lms.djangoapps.courseware.tests.factories import UserFactory from student.models import CourseEnrollment from xmodule.modulestore.tests.django_utils import ModuleStoreTestCase diff --git a/cms/envs/common.py b/cms/envs/common.py index b2b7dcda2aa317622817f1dfd8177539762287b6..8a7a81b3cac70158330cacb9a6d4f6becde017d7 100644 --- a/cms/envs/common.py +++ b/cms/envs/common.py @@ -1298,7 +1298,7 @@ INSTALLED_APPS = [ # by installed apps. 'openedx.core.djangoapps.oauth_dispatch.apps.OAuthDispatchAppConfig', 'oauth_provider', - 'courseware', + 'lms.djangoapps.courseware', 'coursewarehistoryextended', 'survey.apps.SurveyConfig', 'lms.djangoapps.verify_student.apps.VerifyStudentConfig', diff --git a/common/djangoapps/entitlements/api/v1/permissions.py b/common/djangoapps/entitlements/api/v1/permissions.py index 5fab21245238b79dccb6f37866a5358bf924ed7b..66c41e55a575bcf2ac46d13ea6a2bd6cdec5486d 100644 --- a/common/djangoapps/entitlements/api/v1/permissions.py +++ b/common/djangoapps/entitlements/api/v1/permissions.py @@ -7,7 +7,7 @@ from __future__ import absolute_import from rest_framework.permissions import SAFE_METHODS, BasePermission -from courseware.access import has_access +from lms.djangoapps.courseware.access import has_access class IsAdminOrSupportOrAuthenticatedReadOnly(BasePermission): diff --git a/common/djangoapps/entitlements/api/v1/tests/test_views.py b/common/djangoapps/entitlements/api/v1/tests/test_views.py index 3d6e28d087c9846f55dc835aceaf2c7ae7a0777d..c0475d48ad28e16908f095cd2e91524ccf93d9aa 100644 --- a/common/djangoapps/entitlements/api/v1/tests/test_views.py +++ b/common/djangoapps/entitlements/api/v1/tests/test_views.py @@ -14,7 +14,7 @@ from opaque_keys.edx.locator import CourseKey from course_modes.models import CourseMode from course_modes.tests.factories import CourseModeFactory -from courseware.models import DynamicUpgradeDeadlineConfiguration +from lms.djangoapps.courseware.models import DynamicUpgradeDeadlineConfiguration from openedx.core.djangoapps.content.course_overviews.tests.factories import CourseOverviewFactory from openedx.core.djangoapps.schedules.tests.factories import ScheduleFactory from openedx.core.djangoapps.site_configuration.tests.factories import SiteFactory diff --git a/common/djangoapps/student/models.py b/common/djangoapps/student/models.py index 83a22d2d7e49a6833e641d27cdc6aa25c8de0b9f..3b6bc4c529895a7aac04731ccef9cb1bed92ea7a 100644 --- a/common/djangoapps/student/models.py +++ b/common/djangoapps/student/models.py @@ -56,7 +56,7 @@ from slumber.exceptions import HttpClientError, HttpServerError from user_util import user_util from course_modes.models import CourseMode, get_cosmetic_verified_display_price -from courseware.models import ( +from lms.djangoapps.courseware.models import ( CourseDynamicUpgradeDeadlineConfiguration, DynamicUpgradeDeadlineConfiguration, OrgDynamicUpgradeDeadlineConfiguration diff --git a/common/djangoapps/student/tests/test_models.py b/common/djangoapps/student/tests/test_models.py index e3d83784fdc8fbf3a2f4fd5bc10ab0b78192681a..ae597d926275a988136f5d801e8e3478be461b9f 100644 --- a/common/djangoapps/student/tests/test_models.py +++ b/common/djangoapps/student/tests/test_models.py @@ -17,7 +17,7 @@ from opaque_keys.edx.keys import CourseKey from course_modes.models import CourseMode from course_modes.tests.factories import CourseModeFactory -from courseware.models import DynamicUpgradeDeadlineConfiguration +from lms.djangoapps.courseware.models import DynamicUpgradeDeadlineConfiguration from openedx.core.djangoapps.content.course_overviews.models import CourseOverview from openedx.core.djangoapps.schedules.models import Schedule from openedx.core.djangoapps.schedules.tests.factories import ScheduleFactory diff --git a/common/djangoapps/student/tests/test_roles.py b/common/djangoapps/student/tests/test_roles.py index f74d7d67b10f70c61be96aea024ac4d1df2f58f0..db029afc82b1c3acf4b95a698746f5b71c4bfd92 100644 --- a/common/djangoapps/student/tests/test_roles.py +++ b/common/djangoapps/student/tests/test_roles.py @@ -8,7 +8,7 @@ import six from django.test import TestCase from opaque_keys.edx.keys import CourseKey -from courseware.tests.factories import InstructorFactory, StaffFactory, UserFactory +from lms.djangoapps.courseware.tests.factories import InstructorFactory, StaffFactory, UserFactory from student.roles import ( CourseBetaTesterRole, CourseInstructorRole, diff --git a/common/djangoapps/student/views/dashboard.py b/common/djangoapps/student/views/dashboard.py index 47c921f352c467459152912f805912146dd80c6e..92bb26c3c4ef019763171b6464d66a912594f2e8 100644 --- a/common/djangoapps/student/views/dashboard.py +++ b/common/djangoapps/student/views/dashboard.py @@ -24,7 +24,7 @@ import track.views from bulk_email.api import is_bulk_email_feature_enabled from bulk_email.models import Optout # pylint: disable=import-error from course_modes.models import CourseMode -from courseware.access import has_access +from lms.djangoapps.courseware.access import has_access from edxmako.shortcuts import render_to_response, render_to_string from entitlements.models import CourseEntitlement from lms.djangoapps.commerce.utils import EcommerceService # pylint: disable=import-error diff --git a/common/djangoapps/student/views/management.py b/common/djangoapps/student/views/management.py index 692ade4a28e07d37c6152e8251a371b17215f588..711e766d9a3f02284aed20c7dc73a36cf46e8107 100644 --- a/common/djangoapps/student/views/management.py +++ b/common/djangoapps/student/views/management.py @@ -46,7 +46,7 @@ from six import text_type import track.views from bulk_email.models import Optout from course_modes.models import CourseMode -from courseware.courses import get_courses, sort_by_announcement, sort_by_start_date +from lms.djangoapps.courseware.courses import get_courses, sort_by_announcement, sort_by_start_date from edxmako.shortcuts import marketing_link, render_to_response, render_to_string from entitlements.models import CourseEntitlement from openedx.core.djangoapps.ace_common.template_context import get_base_template_context diff --git a/common/lib/xmodule/xmodule/modulestore/tests/django_utils.py b/common/lib/xmodule/xmodule/modulestore/tests/django_utils.py index a3072f6d8252a4f2401c0aa55394bcfe024cfb86..32952c9304b69bb68b938e61afee5fc9409d7c14 100644 --- a/common/lib/xmodule/xmodule/modulestore/tests/django_utils.py +++ b/common/lib/xmodule/xmodule/modulestore/tests/django_utils.py @@ -17,7 +17,7 @@ from django.test.utils import override_settings from mock import patch from six.moves import range -from courseware.tests.factories import StaffFactory +from lms.djangoapps.courseware.tests.factories import StaffFactory from lms.djangoapps.courseware.field_overrides import OverrideFieldData # pylint: disable=import-error from openedx.core.djangolib.testing.utils import CacheIsolationMixin, CacheIsolationTestCase, FilteredQueryCountMixin from openedx.core.lib.tempdir import mkdtemp_clean diff --git a/lms/djangoapps/branding/tests/test_page.py b/lms/djangoapps/branding/tests/test_page.py index 693ee071bffeccb2f8a345c9886435aa1e505665..7cbda47029ea3804d99df613d90298d5e297fd7c 100644 --- a/lms/djangoapps/branding/tests/test_page.py +++ b/lms/djangoapps/branding/tests/test_page.py @@ -17,7 +17,7 @@ from mock import Mock, patch from pytz import UTC from branding.views import index -from courseware.tests.helpers import LoginEnrollmentTestCase +from lms.djangoapps.courseware.tests.helpers import LoginEnrollmentTestCase from edxmako.shortcuts import render_to_response from openedx.core.djangoapps.site_configuration.tests.mixins import SiteMixin from util.milestones_helpers import set_prerequisite_courses diff --git a/lms/djangoapps/branding/views.py b/lms/djangoapps/branding/views.py index 59bcec7dc2703b4f1464e89a4c043e176428b476..5d262ae0df2ab950f05fdfbfa3bf6b3e339a9243 100644 --- a/lms/djangoapps/branding/views.py +++ b/lms/djangoapps/branding/views.py @@ -17,7 +17,7 @@ from django.views.decorators.cache import cache_control from django.views.decorators.csrf import ensure_csrf_cookie import branding.api as branding_api -import courseware.views.views +import lms.djangoapps.courseware.views.views as courseware_views import student.views from edxmako.shortcuts import marketing_link, render_to_response from openedx.core.djangoapps.lang_pref.api import released_languages @@ -90,7 +90,7 @@ def courses(request): # we do not expect this case to be reached in cases where # marketing is enabled or the courses are not browsable - return courseware.views.views.courses(request) + return courseware_views.courses(request) def _footer_static_url(request, name): diff --git a/lms/djangoapps/bulk_email/tasks.py b/lms/djangoapps/bulk_email/tasks.py index 106d600797d7dfb3f6d120a6b60f979e2cbc2e85..4a512fd9091d287dc7289b67c1b7162b83c82771 100644 --- a/lms/djangoapps/bulk_email/tasks.py +++ b/lms/djangoapps/bulk_email/tasks.py @@ -41,7 +41,7 @@ from markupsafe import escape from six import text_type from bulk_email.models import CourseEmail, Optout -from courseware.courses import get_course +from lms.djangoapps.courseware.courses import get_course from lms.djangoapps.instructor_task.models import InstructorTask from lms.djangoapps.instructor_task.subtasks import ( SubtaskStatus, diff --git a/lms/djangoapps/bulk_email/tests/test_email.py b/lms/djangoapps/bulk_email/tests/test_email.py index 67d50b398c6289dde0794240d6ed64dfa79527c7..a6b526dbfd3bdbe4aee98f956109e019cb8194df 100644 --- a/lms/djangoapps/bulk_email/tests/test_email.py +++ b/lms/djangoapps/bulk_email/tests/test_email.py @@ -24,7 +24,7 @@ from mock import Mock, patch from bulk_email.models import BulkEmailFlag, Optout from bulk_email.tasks import _get_course_email_context, _get_source_address from course_modes.models import CourseMode -from courseware.tests.factories import InstructorFactory, StaffFactory +from lms.djangoapps.courseware.tests.factories import InstructorFactory, StaffFactory from lms.djangoapps.instructor_task.subtasks import update_subtask_status from openedx.core.djangoapps.course_groups.cohorts import add_user_to_cohort from openedx.core.djangoapps.course_groups.models import CourseCohort diff --git a/lms/djangoapps/bulk_enroll/tests/test_views.py b/lms/djangoapps/bulk_enroll/tests/test_views.py index 3b9ee7ee1b2bec36a9dc06876e30c2fd750ca46c..d55dd81353caeb59f836851e655bdfe827fc8144 100644 --- a/lms/djangoapps/bulk_enroll/tests/test_views.py +++ b/lms/djangoapps/bulk_enroll/tests/test_views.py @@ -17,7 +17,7 @@ from rest_framework.test import APIRequestFactory, APITestCase, force_authentica from bulk_enroll.serializers import BulkEnrollmentSerializer from bulk_enroll.views import BulkEnrollView -from courseware.tests.helpers import LoginEnrollmentTestCase +from lms.djangoapps.courseware.tests.helpers import LoginEnrollmentTestCase from openedx.core.djangoapps.course_groups.cohorts import get_cohort_id from openedx.core.djangoapps.course_groups.tests.helpers import config_course_cohorts from openedx.core.djangoapps.site_configuration.helpers import get_value as get_site_value diff --git a/lms/djangoapps/ccx/api/v0/tests/test_views.py b/lms/djangoapps/ccx/api/v0/tests/test_views.py index df8f1aa40963ef01f3abab3ecc372a69ff7c9a91..144186a07a06e8d86442350d97a4d922ee58d131 100644 --- a/lms/djangoapps/ccx/api/v0/tests/test_views.py +++ b/lms/djangoapps/ccx/api/v0/tests/test_views.py @@ -27,7 +27,7 @@ from rest_framework import status from rest_framework.test import APITestCase from six.moves import range, zip -from courseware import courses +from lms.djangoapps.courseware import courses from lms.djangoapps.ccx.api.v0 import views from lms.djangoapps.ccx.models import CcxFieldOverride, CustomCourseForEdX from lms.djangoapps.ccx.overrides import override_field_for_ccx diff --git a/lms/djangoapps/ccx/api/v0/views.py b/lms/djangoapps/ccx/api/v0/views.py index 2549be8ce7e53d317bcd0d10d0b228fa25c95424..f46e100312e1221a0acdb50593ea3d828072bde7 100644 --- a/lms/djangoapps/ccx/api/v0/views.py +++ b/lms/djangoapps/ccx/api/v0/views.py @@ -21,7 +21,7 @@ from rest_framework.generics import GenericAPIView from rest_framework.permissions import IsAuthenticated from rest_framework.response import Response -from courseware import courses +from lms.djangoapps.courseware import courses from lms.djangoapps.ccx.models import CcxFieldOverride, CustomCourseForEdX from lms.djangoapps.ccx.overrides import override_field_for_ccx from lms.djangoapps.ccx.utils import add_master_course_staff_to_ccx, assign_staff_role_to_ccx, is_email diff --git a/lms/djangoapps/ccx/migrations/0003_add_master_course_staff_in_ccx.py b/lms/djangoapps/ccx/migrations/0003_add_master_course_staff_in_ccx.py index 46da286f64fc34a45dce62a7f23c1824b1f10adb..a68b316190228aafa11b1da054faba9b017655c3 100644 --- a/lms/djangoapps/ccx/migrations/0003_add_master_course_staff_in_ccx.py +++ b/lms/djangoapps/ccx/migrations/0003_add_master_course_staff_in_ccx.py @@ -8,7 +8,7 @@ from ccx_keys.locator import CCXLocator from django.db import migrations from django.http import Http404 -from courseware.courses import get_course_by_id +from lms.djangoapps.courseware.courses import get_course_by_id from lms.djangoapps.ccx.utils import add_master_course_staff_to_ccx, remove_master_course_staff_from_ccx log = logging.getLogger("edx.ccx") @@ -83,7 +83,7 @@ class Migration(migrations.Migration): ('ccx', '0001_initial'), ('ccx', '0002_customcourseforedx_structure_json'), ('course_overviews','0010_auto_20160329_2317'), # because we use course overview and are in the same release as that table is modified - ('verified_track_content','0001_initial'), # because we use enrollement code and are in the same release as an enrollement related table is created + ('verified_track_content','0001_initial'), # because we use enrollement code and are in the same release as an enrollement related table is created ] operations = [ diff --git a/lms/djangoapps/ccx/migrations/0004_seed_forum_roles_in_ccx_courses.py b/lms/djangoapps/ccx/migrations/0004_seed_forum_roles_in_ccx_courses.py index c67e28ee51dc83352822acbda88aa50c32fe6106..726b23da544c982b8ccf647994e308ee41211d8a 100644 --- a/lms/djangoapps/ccx/migrations/0004_seed_forum_roles_in_ccx_courses.py +++ b/lms/djangoapps/ccx/migrations/0004_seed_forum_roles_in_ccx_courses.py @@ -8,7 +8,7 @@ from ccx_keys.locator import CCXLocator from django.db import migrations from django.http import Http404 -from courseware.courses import get_course_by_id +from lms.djangoapps.courseware.courses import get_course_by_id from openedx.core.djangoapps.django_comment_common.models import ( FORUM_ROLE_ADMINISTRATOR, FORUM_ROLE_COMMUNITY_TA, diff --git a/lms/djangoapps/ccx/migrations/0005_change_ccx_coach_to_staff.py b/lms/djangoapps/ccx/migrations/0005_change_ccx_coach_to_staff.py index a42d0f0119da961b3c8091f1b999f94cb7fad4a5..f81e52d044743ecd7d3772e73b0bed30ff376abd 100644 --- a/lms/djangoapps/ccx/migrations/0005_change_ccx_coach_to_staff.py +++ b/lms/djangoapps/ccx/migrations/0005_change_ccx_coach_to_staff.py @@ -9,7 +9,7 @@ from django.contrib.auth.models import User from django.db import migrations from django.http import Http404 -from courseware.courses import get_course_by_id +from lms.djangoapps.courseware.courses import get_course_by_id from lms.djangoapps.instructor.access import allow_access, revoke_access log = logging.getLogger("edx.ccx") diff --git a/lms/djangoapps/ccx/migrations/0006_set_display_name_as_override.py b/lms/djangoapps/ccx/migrations/0006_set_display_name_as_override.py index 4fd5d62fdfb5e648c328898d5f7336e8f5403887..28265dd498e98f9644e3632f94b60a1ad9549ce1 100644 --- a/lms/djangoapps/ccx/migrations/0006_set_display_name_as_override.py +++ b/lms/djangoapps/ccx/migrations/0006_set_display_name_as_override.py @@ -9,7 +9,7 @@ from ccx_keys.locator import CCXLocator from django.db import migrations from django.http import Http404 -from courseware.courses import get_course_by_id +from lms.djangoapps.courseware.courses import get_course_by_id log = logging.getLogger(__name__) diff --git a/lms/djangoapps/ccx/permissions.py b/lms/djangoapps/ccx/permissions.py index 252078a089e369faad18d9a6d59f724db933f586..ba36b3cdb26094262438232d0bde3f8f2f03d264 100644 --- a/lms/djangoapps/ccx/permissions.py +++ b/lms/djangoapps/ccx/permissions.py @@ -3,7 +3,7 @@ Permission definitions for the ccx djangoapp """ from bridgekeeper import perms -from courseware.rules import HasAccessRule +from lms.djangoapps.courseware.rules import HasAccessRule VIEW_CCX_COACH_DASHBOARD = 'ccx.view_ccx_coach_dashboard' perms[VIEW_CCX_COACH_DASHBOARD] = HasAccessRule('staff') diff --git a/lms/djangoapps/ccx/plugins.py b/lms/djangoapps/ccx/plugins.py index 5520743f2fff2737e209adf5762ceb04e39a732c..a0b5d67b94d451d7212036bc7b7a7b793ea37be7 100644 --- a/lms/djangoapps/ccx/plugins.py +++ b/lms/djangoapps/ccx/plugins.py @@ -7,7 +7,6 @@ from __future__ import absolute_import from django.conf import settings from django.utils.translation import ugettext_noop -from courseware.access import has_access from student.roles import CourseCcxCoachRole from xmodule.tabs import CourseTab diff --git a/lms/djangoapps/ccx/tests/test_field_override_performance.py b/lms/djangoapps/ccx/tests/test_field_override_performance.py index c8303a415227ae41c3cbc0fcf72b3a5219d6fe99..a9a6f5f707fe7dd3b0965b368b0b49c028cd0cdf 100644 --- a/lms/djangoapps/ccx/tests/test_field_override_performance.py +++ b/lms/djangoapps/ccx/tests/test_field_override_performance.py @@ -23,8 +23,8 @@ from opaque_keys.edx.keys import CourseKey from pytz import UTC from xblock.core import XBlock -from courseware.testutils import FieldOverrideTestMixin -from courseware.views.views import progress +from lms.djangoapps.courseware.testutils import FieldOverrideTestMixin +from lms.djangoapps.courseware.views.views import progress from lms.djangoapps.ccx.tests.factories import CcxFactory from lms.djangoapps.courseware.field_overrides import OverrideFieldData from openedx.core.djangoapps.content.block_structure.api import get_course_in_cache diff --git a/lms/djangoapps/ccx/tests/test_overrides.py b/lms/djangoapps/ccx/tests/test_overrides.py index a3132dd220d20de849fd75ae76610b51c20e8ee4..bb76abc23fd78dae15e4e8c64c99a92749e8ede7 100644 --- a/lms/djangoapps/ccx/tests/test_overrides.py +++ b/lms/djangoapps/ccx/tests/test_overrides.py @@ -13,8 +13,8 @@ from django.test.utils import override_settings from edx_django_utils.cache import RequestCache from six.moves import range -from courseware.courses import get_course_by_id -from courseware.testutils import FieldOverrideTestMixin +from lms.djangoapps.courseware.courses import get_course_by_id +from lms.djangoapps.courseware.testutils import FieldOverrideTestMixin from lms.djangoapps.ccx.models import CustomCourseForEdX from lms.djangoapps.ccx.overrides import override_field_for_ccx from lms.djangoapps.ccx.tests.utils import flatten, iter_blocks diff --git a/lms/djangoapps/ccx/tests/test_views.py b/lms/djangoapps/ccx/tests/test_views.py index 347fd893421d4d6e8b8a25771d327bdb3a734430..9633f6351bb18d02d4cd88cb9bfd7e7f93e11c01 100644 --- a/lms/djangoapps/ccx/tests/test_views.py +++ b/lms/djangoapps/ccx/tests/test_views.py @@ -23,11 +23,11 @@ from opaque_keys.edx.keys import CourseKey from pytz import UTC from capa.tests.response_xml_factory import StringResponseXMLFactory -from courseware.courses import get_course_by_id -from courseware.tabs import get_course_tab_list -from courseware.tests.factories import StudentModuleFactory -from courseware.tests.helpers import LoginEnrollmentTestCase -from courseware.testutils import FieldOverrideTestMixin +from lms.djangoapps.courseware.courses import get_course_by_id +from lms.djangoapps.courseware.tabs import get_course_tab_list +from lms.djangoapps.courseware.tests.factories import StudentModuleFactory +from lms.djangoapps.courseware.tests.helpers import LoginEnrollmentTestCase +from lms.djangoapps.courseware.testutils import FieldOverrideTestMixin from edxmako.shortcuts import render_to_response from lms.djangoapps.ccx.models import CustomCourseForEdX from lms.djangoapps.ccx.overrides import get_override_for_ccx, override_field_for_ccx diff --git a/lms/djangoapps/ccx/utils.py b/lms/djangoapps/ccx/utils.py index 91f55b18f43890b55b7d3c53b505dd67bec343c6..2984dd98af139778840fa52f6565b78c944e0033 100644 --- a/lms/djangoapps/ccx/utils.py +++ b/lms/djangoapps/ccx/utils.py @@ -18,7 +18,7 @@ from django.urls import reverse from django.utils.translation import ugettext as _ from six.moves import map -from courseware.courses import get_course_by_id +from lms.djangoapps.courseware.courses import get_course_by_id from lms.djangoapps.ccx.custom_exception import CCXUserValidationException from lms.djangoapps.ccx.models import CustomCourseForEdX from lms.djangoapps.ccx.overrides import get_override_for_ccx diff --git a/lms/djangoapps/ccx/views.py b/lms/djangoapps/ccx/views.py index fdd77e9708c21a61ffb19607b2bfde32b6d6a0bc..df81662e1d41abb1c61cd402d02934be390c4c7f 100644 --- a/lms/djangoapps/ccx/views.py +++ b/lms/djangoapps/ccx/views.py @@ -26,8 +26,7 @@ from django.views.decorators.cache import cache_control from django.views.decorators.csrf import ensure_csrf_cookie from opaque_keys.edx.keys import CourseKey -from courseware.access import has_access -from courseware.courses import get_course_by_id +from lms.djangoapps.courseware.courses import get_course_by_id from edxmako.shortcuts import render_to_response from lms.djangoapps.ccx.models import CustomCourseForEdX from lms.djangoapps.ccx.overrides import ( diff --git a/lms/djangoapps/certificates/tests/test_api.py b/lms/djangoapps/certificates/tests/test_api.py index 8bcf21287a9de46b82123adcacb99fc56d858e86..f27c767a26fbbb39db7346d4b37c1c911ee250d8 100644 --- a/lms/djangoapps/certificates/tests/test_api.py +++ b/lms/djangoapps/certificates/tests/test_api.py @@ -21,7 +21,7 @@ from opaque_keys.edx.locator import CourseLocator from course_modes.models import CourseMode from course_modes.tests.factories import CourseModeFactory -from courseware.tests.factories import GlobalStaffFactory +from lms.djangoapps.courseware.tests.factories import GlobalStaffFactory from lms.djangoapps.certificates import api as certs_api from lms.djangoapps.certificates.models import ( CertificateGenerationConfiguration, diff --git a/lms/djangoapps/certificates/views/support.py b/lms/djangoapps/certificates/views/support.py index b7b11c2a1ec5afbc40e27e2fecfe2bc97ced3b65..0dc75e158ddebbdbbcd35153f768344e93ec3c52 100644 --- a/lms/djangoapps/certificates/views/support.py +++ b/lms/djangoapps/certificates/views/support.py @@ -22,7 +22,7 @@ from django.views.decorators.http import require_GET, require_POST from opaque_keys import InvalidKeyError from opaque_keys.edx.keys import CourseKey -from courseware.access import has_access +from lms.djangoapps.courseware.access import has_access from lms.djangoapps.certificates import api from lms.djangoapps.certificates.models import CertificateInvalidation from lms.djangoapps.instructor_task.api import generate_certificates_for_students diff --git a/lms/djangoapps/certificates/views/webview.py b/lms/djangoapps/certificates/views/webview.py index de46716523cbbc109a4f9a78e663fe80bf8ff510..fd6f23eec7c6dfd2d5abefae19963b1c6696ccd5 100644 --- a/lms/djangoapps/certificates/views/webview.py +++ b/lms/djangoapps/certificates/views/webview.py @@ -25,8 +25,7 @@ from opaque_keys.edx.keys import CourseKey from badges.events.course_complete import get_completion_badge from badges.utils import badges_enabled -from courseware.access import has_access -from courseware.courses import get_course_by_id +from lms.djangoapps.courseware.courses import get_course_by_id from edxmako.shortcuts import render_to_response from edxmako.template import Template from lms.djangoapps.certificates.api import ( diff --git a/lms/djangoapps/class_dashboard/dashboard_data.py b/lms/djangoapps/class_dashboard/dashboard_data.py index ede9d87170083aa155e6e6cf1bec9934bbc8f10d..a53007b2cc79d4292c9910b5564499d0b2c3b0ba 100644 --- a/lms/djangoapps/class_dashboard/dashboard_data.py +++ b/lms/djangoapps/class_dashboard/dashboard_data.py @@ -11,7 +11,7 @@ from django.utils.translation import ugettext as _ from opaque_keys.edx.locator import BlockUsageLocator from six import text_type -from courseware import models +from lms.djangoapps.courseware import models from lms.djangoapps.instructor_analytics.csvs import create_csv_response from util.json_request import JsonResponse from xmodule.modulestore.django import modulestore diff --git a/lms/djangoapps/class_dashboard/tests/test_dashboard_data.py b/lms/djangoapps/class_dashboard/tests/test_dashboard_data.py index 18ab6f83b54687b070c81947fce6dfd37ab8d5e7..9becffc0f47b7f59df664338ed63b3b97b679138 100644 --- a/lms/djangoapps/class_dashboard/tests/test_dashboard_data.py +++ b/lms/djangoapps/class_dashboard/tests/test_dashboard_data.py @@ -26,7 +26,7 @@ from class_dashboard.dashboard_data import ( get_students_problem_grades ) from class_dashboard.views import has_instructor_access_for_class -from courseware.tests.factories import StudentModuleFactory +from lms.djangoapps.courseware.tests.factories import StudentModuleFactory from student.tests.factories import AdminFactory, CourseEnrollmentFactory, UserFactory from xmodule.modulestore.tests.django_utils import SharedModuleStoreTestCase from xmodule.modulestore.tests.factories import CourseFactory, ItemFactory diff --git a/lms/djangoapps/class_dashboard/views.py b/lms/djangoapps/class_dashboard/views.py index 33cf3754144aec0c562cbed644e070d099f83470..3c21bedb2147908f2030c0164b200248b0f01545 100644 --- a/lms/djangoapps/class_dashboard/views.py +++ b/lms/djangoapps/class_dashboard/views.py @@ -11,8 +11,8 @@ from django.http import HttpResponse from opaque_keys.edx.keys import CourseKey from class_dashboard import dashboard_data -from courseware.access import has_access -from courseware.courses import get_course_overview_with_access +from lms.djangoapps.courseware.access import has_access +from lms.djangoapps.courseware.courses import get_course_overview_with_access log = logging.getLogger(__name__) diff --git a/lms/djangoapps/commerce/api/v0/views.py b/lms/djangoapps/commerce/api/v0/views.py index 5fef2900cac9ef7fd6eb8ad143879b93f3669707..31ce66630a6d1cfb58e8168519c090bb9a00d2c6 100644 --- a/lms/djangoapps/commerce/api/v0/views.py +++ b/lms/djangoapps/commerce/api/v0/views.py @@ -16,7 +16,7 @@ from rest_framework.views import APIView from six import text_type from course_modes.models import CourseMode -from courseware import courses +from lms.djangoapps.courseware import courses from entitlements.models import CourseEntitlement from openedx.core.djangoapps.commerce.utils import ecommerce_api_client from openedx.core.djangoapps.embargo import api as embargo_api diff --git a/lms/djangoapps/course_api/blocks/permissions.py b/lms/djangoapps/course_api/blocks/permissions.py index b8320cf8ed9c762cb1aa5cf1535e138943018151..2951fc3679f0d7ed93b793d58ce97cbb5bc31639 100644 --- a/lms/djangoapps/course_api/blocks/permissions.py +++ b/lms/djangoapps/course_api/blocks/permissions.py @@ -4,7 +4,7 @@ Encapsulates permissions checks for Course Blocks API from __future__ import absolute_import -from courseware.access import has_access +from lms.djangoapps.courseware.access import has_access from student.models import CourseEnrollment from student.roles import CourseStaffRole diff --git a/lms/djangoapps/course_blocks/transformers/library_content.py b/lms/djangoapps/course_blocks/transformers/library_content.py index 4f782c317af109cc5ac8eff83c77d1805c7d802a..6cbaa9ad39ff2d0e6c7d8d3a8fdba3e12af41bf3 100644 --- a/lms/djangoapps/course_blocks/transformers/library_content.py +++ b/lms/djangoapps/course_blocks/transformers/library_content.py @@ -8,7 +8,7 @@ import json import six from eventtracking import tracker -from courseware.models import StudentModule +from lms.djangoapps.courseware.models import StudentModule from openedx.core.djangoapps.content.block_structure.transformer import ( BlockStructureTransformer, FilteringTransformerMixin diff --git a/lms/djangoapps/course_blocks/transformers/load_override_data.py b/lms/djangoapps/course_blocks/transformers/load_override_data.py index f3219583945353126fc892583fe0a384b3e3bea2..468f7d2b048c31f7faecec0b9a7ece5506f283fa 100644 --- a/lms/djangoapps/course_blocks/transformers/load_override_data.py +++ b/lms/djangoapps/course_blocks/transformers/load_override_data.py @@ -5,7 +5,7 @@ from __future__ import absolute_import import json -from courseware.models import StudentFieldOverride +from lms.djangoapps.courseware.models import StudentFieldOverride from openedx.core.djangoapps.content.block_structure.transformer import BlockStructureTransformer # The list of fields are in support of Individual due dates and could be expanded for other use cases. diff --git a/lms/djangoapps/course_blocks/transformers/tests/test_start_date.py b/lms/djangoapps/course_blocks/transformers/tests/test_start_date.py index 5558a72dbd52aaf4522329e3908e7d1d8867a47a..9454f8a3d8f31c1173fd0e57f45ec3ab5b50e27e 100644 --- a/lms/djangoapps/course_blocks/transformers/tests/test_start_date.py +++ b/lms/djangoapps/course_blocks/transformers/tests/test_start_date.py @@ -10,7 +10,7 @@ import six from django.utils.timezone import now from mock import patch -from courseware.tests.factories import BetaTesterFactory +from lms.djangoapps.courseware.tests.factories import BetaTesterFactory from ..start_date import DEFAULT_START_DATE, StartDateTransformer from .helpers import BlockParentsMapTestCase, update_block diff --git a/lms/djangoapps/course_blocks/utils.py b/lms/djangoapps/course_blocks/utils.py index 66c7b62ca34f1f6e5bc0fc33a608855d49cc67a3..6f2e5e87e0b79af217b13c3b7f356b1f737c0892 100644 --- a/lms/djangoapps/course_blocks/utils.py +++ b/lms/djangoapps/course_blocks/utils.py @@ -5,7 +5,7 @@ from __future__ import absolute_import import json -from courseware.models import StudentModule +from lms.djangoapps.courseware.models import StudentModule def get_student_module_as_dict(user, course_key, block_key): diff --git a/lms/djangoapps/course_wiki/middleware.py b/lms/djangoapps/course_wiki/middleware.py index 15bb7354316b5f0dd0bd95e8df6b9649c28fc27b..7903b25f2049af15fc86304d3525a3a8c0bfdd7d 100644 --- a/lms/djangoapps/course_wiki/middleware.py +++ b/lms/djangoapps/course_wiki/middleware.py @@ -9,8 +9,8 @@ from six import text_type from six.moves.urllib.parse import urlparse # pylint: disable=import-error from wiki.models import reverse -from courseware.access import has_access -from courseware.courses import get_course_overview_with_access, get_course_with_access +from lms.djangoapps.courseware.access import has_access +from lms.djangoapps.courseware.courses import get_course_overview_with_access, get_course_with_access from openedx.core.lib.request_utils import course_id_from_url from openedx.features.enterprise_support.api import get_enterprise_consent_url from student.models import CourseEnrollment diff --git a/lms/djangoapps/course_wiki/tab.py b/lms/djangoapps/course_wiki/tab.py index a40944b1824edcf7c92c3f65f1a6e078311b7e26..f39c9ed3ead8dc573575c336d80a4f897e284022 100644 --- a/lms/djangoapps/course_wiki/tab.py +++ b/lms/djangoapps/course_wiki/tab.py @@ -8,7 +8,7 @@ from __future__ import absolute_import from django.conf import settings from django.utils.translation import ugettext_noop -from courseware.tabs import EnrolledTab +from lms.djangoapps.courseware.tabs import EnrolledTab class WikiTab(EnrolledTab): diff --git a/lms/djangoapps/course_wiki/tests/test_access.py b/lms/djangoapps/course_wiki/tests/test_access.py index b4e653ec2d5815814fc27a7529f64b6ac0c935e0..ff7ec85037bb370dab8b927717e47c39d1a968ca 100644 --- a/lms/djangoapps/course_wiki/tests/test_access.py +++ b/lms/djangoapps/course_wiki/tests/test_access.py @@ -9,7 +9,7 @@ from django.contrib.auth.models import Group from course_wiki import settings from course_wiki.utils import course_wiki_slug, user_is_article_course_staff from course_wiki.views import get_or_create_root -from courseware.tests.factories import InstructorFactory, StaffFactory +from lms.djangoapps.courseware.tests.factories import InstructorFactory, StaffFactory from student.tests.factories import UserFactory from wiki.models import URLPath from xmodule.modulestore.tests.django_utils import ModuleStoreTestCase diff --git a/lms/djangoapps/course_wiki/tests/test_comprehensive_theming.py b/lms/djangoapps/course_wiki/tests/test_comprehensive_theming.py index 110927008ef686ca9e6a21227627ae807bd039d8..5519cb9593f3ab0ade93e92d314390679e799021 100644 --- a/lms/djangoapps/course_wiki/tests/test_comprehensive_theming.py +++ b/lms/djangoapps/course_wiki/tests/test_comprehensive_theming.py @@ -8,7 +8,7 @@ from unittest import skip from django.test.client import Client from course_wiki.views import get_or_create_root -from courseware.tests.factories import InstructorFactory +from lms.djangoapps.courseware.tests.factories import InstructorFactory from openedx.core.djangoapps.theming.tests.test_util import with_comprehensive_theme from wiki.models import URLPath from xmodule.modulestore.tests.django_utils import ModuleStoreTestCase diff --git a/lms/djangoapps/course_wiki/tests/test_middleware.py b/lms/djangoapps/course_wiki/tests/test_middleware.py index e6e19db5a98bfa520bcecbff4480b22d52c252e8..687987e3a15776d1b6ac92089b0c70b77ede5b40 100644 --- a/lms/djangoapps/course_wiki/tests/test_middleware.py +++ b/lms/djangoapps/course_wiki/tests/test_middleware.py @@ -7,7 +7,7 @@ from __future__ import absolute_import from django.test.client import Client from course_wiki.views import get_or_create_root -from courseware.tests.factories import InstructorFactory +from lms.djangoapps.courseware.tests.factories import InstructorFactory from wiki.models import URLPath from xmodule.modulestore.tests.django_utils import ModuleStoreTestCase from xmodule.modulestore.tests.factories import CourseFactory diff --git a/lms/djangoapps/course_wiki/tests/test_tab.py b/lms/djangoapps/course_wiki/tests/test_tab.py index aa6eb350663d0e6fb3c34569d69841872a32526d..4a31d505c00c3c2f5c429869c149d6a65f6d9d83 100644 --- a/lms/djangoapps/course_wiki/tests/test_tab.py +++ b/lms/djangoapps/course_wiki/tests/test_tab.py @@ -7,7 +7,7 @@ from __future__ import absolute_import from django.conf import settings from django.test.client import RequestFactory -from courseware.tabs import get_course_tab_list +from lms.djangoapps.courseware.tabs import get_course_tab_list from student.tests.factories import AdminFactory, UserFactory from xmodule.modulestore.tests.django_utils import ModuleStoreTestCase from xmodule.modulestore.tests.factories import CourseFactory diff --git a/lms/djangoapps/course_wiki/tests/tests.py b/lms/djangoapps/course_wiki/tests/tests.py index 23f7c97123de6a0571e9f60e34b6d3c85c52a765..ba57e91cf2734a9fc0aa34fcf7382010ed399719 100644 --- a/lms/djangoapps/course_wiki/tests/tests.py +++ b/lms/djangoapps/course_wiki/tests/tests.py @@ -9,7 +9,7 @@ from django.urls import reverse from mock import patch from six import text_type -from courseware.tests.tests import LoginEnrollmentTestCase +from lms.djangoapps.courseware.tests.tests import LoginEnrollmentTestCase from openedx.features.enterprise_support.tests.mixins.enterprise import EnterpriseTestConsentRequired from xmodule.modulestore.tests.django_utils import ModuleStoreTestCase from xmodule.modulestore.tests.factories import CourseFactory diff --git a/lms/djangoapps/course_wiki/utils.py b/lms/djangoapps/course_wiki/utils.py index fd615520a581fc181ac6f9210570259947780326..1457456c555a661570a16ca95e3513fb8f3a28be 100644 --- a/lms/djangoapps/course_wiki/utils.py +++ b/lms/djangoapps/course_wiki/utils.py @@ -6,7 +6,7 @@ from __future__ import absolute_import from django.core.exceptions import ObjectDoesNotExist -import courseware +import lms.djangoapps.courseware from xmodule import modulestore @@ -47,7 +47,7 @@ def _has_wiki_staff_access(user, wiki_slug, modstore): for course_key in course_keys: course = modstore.get_course(course_key) - if courseware.access.has_access(user, 'staff', course, course_key): + if lms.djangoapps.courseware.access.has_access(user, 'staff', course, course_key): return True return False diff --git a/lms/djangoapps/course_wiki/views.py b/lms/djangoapps/course_wiki/views.py index acf926eaffedb3e9938ea61a36009ce8c4838ebb..8c07c41b2515d73a178fb5e3121edf9d68c44c06 100644 --- a/lms/djangoapps/course_wiki/views.py +++ b/lms/djangoapps/course_wiki/views.py @@ -14,7 +14,7 @@ from wiki.core.exceptions import NoRootURL from wiki.models import Article, URLPath from course_wiki.utils import course_wiki_slug -from courseware.courses import get_course_by_id +from lms.djangoapps.courseware.courses import get_course_by_id from openedx.core.djangoapps.site_configuration import helpers as configuration_helpers from openedx.core.djangolib.markup import Text from openedx.features.enterprise_support.api import data_sharing_consent_required diff --git a/lms/djangoapps/courseware/access.py b/lms/djangoapps/courseware/access.py index a34b86df65fdb5ae4d8f1d46cd0f075c395f7181..d19cc9f6476431164b4d02a2b01aeb92ab7c4c36 100644 --- a/lms/djangoapps/courseware/access.py +++ b/lms/djangoapps/courseware/access.py @@ -23,14 +23,14 @@ from pytz import UTC from six import text_type from xblock.core import XBlock -from courseware.access_response import ( +from lms.djangoapps.courseware.access_response import ( IncorrectPartitionGroupError, MilestoneAccessError, MobileAvailabilityError, NoAllowedPartitionGroupsError, VisibilityError ) -from courseware.access_utils import ( +from lms.djangoapps.courseware.access_utils import ( ACCESS_DENIED, ACCESS_GRANTED, adjust_start_date, @@ -39,7 +39,7 @@ from courseware.access_utils import ( debug, in_preview_mode ) -from courseware.masquerade import get_masquerade_role, is_masquerading_as_student +from lms.djangoapps.courseware.masquerade import get_masquerade_role, is_masquerading_as_student from lms.djangoapps.ccx.custom_exception import CCXLocatorValidationException from lms.djangoapps.ccx.models import CustomCourseForEdX from mobile_api.models import IgnoreMobileAvailableFlagConfig diff --git a/lms/djangoapps/courseware/access_utils.py b/lms/djangoapps/courseware/access_utils.py index f434d6fcaa72fa194a1b3010779464feec2c5c72..d6ad23932dec3073f7fb57cf1bb8ebb0ffb8c12d 100644 --- a/lms/djangoapps/courseware/access_utils.py +++ b/lms/djangoapps/courseware/access_utils.py @@ -12,8 +12,8 @@ from django.conf import settings from django.utils.translation import ugettext as _ from pytz import UTC -from courseware.access_response import AccessResponse, StartDateError -from courseware.masquerade import get_course_masquerade, is_masquerading_as_student +from lms.djangoapps.courseware.access_response import AccessResponse, StartDateError +from lms.djangoapps.courseware.masquerade import get_course_masquerade, is_masquerading_as_student from openedx.core.djangoapps.util.user_messages import PageLevelMessages from openedx.core.djangolib.markup import HTML from openedx.features.course_experience import COURSE_PRE_START_ACCESS_FLAG diff --git a/lms/djangoapps/courseware/admin.py b/lms/djangoapps/courseware/admin.py index 57fa242a69e2ccb872814c3e1f2c191f676ef255..c32fa80dd77bcfdb28907085253fa7a1fbd912cb 100644 --- a/lms/djangoapps/courseware/admin.py +++ b/lms/djangoapps/courseware/admin.py @@ -6,7 +6,7 @@ from __future__ import absolute_import from config_models.admin import ConfigurationModelAdmin, KeyedConfigurationModelAdmin from django.contrib import admin -from courseware import models +from lms.djangoapps.courseware import models admin.site.register(models.DynamicUpgradeDeadlineConfiguration, ConfigurationModelAdmin) admin.site.register(models.OfflineComputedGrade) diff --git a/lms/djangoapps/courseware/course_tools.py b/lms/djangoapps/courseware/course_tools.py index 9d7d7fd2901c27a34e097d31b8a4413bce6035eb..5c4b85dfb76e97fbc4a829dd0864957fcf1044c9 100644 --- a/lms/djangoapps/courseware/course_tools.py +++ b/lms/djangoapps/courseware/course_tools.py @@ -11,7 +11,7 @@ from crum import get_current_request from django.utils.translation import ugettext as _ from course_modes.models import CourseMode -from courseware.date_summary import verified_upgrade_deadline_link +from lms.djangoapps.courseware.date_summary import verified_upgrade_deadline_link from openedx.features.course_experience.course_tools import CourseTool from student.models import CourseEnrollment diff --git a/lms/djangoapps/courseware/courses.py b/lms/djangoapps/courseware/courses.py index 506a4b6f4c8d397e075a3334d1674518c06e1e8b..cb6e786eb00546201d44b2a1201bd2d36b0d41af 100644 --- a/lms/djangoapps/courseware/courses.py +++ b/lms/djangoapps/courseware/courses.py @@ -22,9 +22,9 @@ from six import text_type import branding from course_modes.models import CourseMode -from courseware.access import has_access -from courseware.access_response import MilestoneAccessError, StartDateError -from courseware.date_summary import ( +from lms.djangoapps.courseware.access import has_access +from lms.djangoapps.courseware.access_response import MilestoneAccessError, StartDateError +from lms.djangoapps.courseware.date_summary import ( CertificateAvailableDate, CourseEndDate, CourseStartDate, @@ -32,9 +32,9 @@ from courseware.date_summary import ( VerificationDeadlineDate, VerifiedUpgradeDeadlineDate ) -from courseware.masquerade import check_content_start_date_for_masquerade_user -from courseware.model_data import FieldDataCache -from courseware.module_render import get_module +from lms.djangoapps.courseware.masquerade import check_content_start_date_for_masquerade_user +from lms.djangoapps.courseware.model_data import FieldDataCache +from lms.djangoapps.courseware.module_render import get_module from edxmako.shortcuts import render_to_string from lms.djangoapps.certificates import api as certs_api from lms.djangoapps.courseware.courseware_access_exception import CoursewareAccessException diff --git a/lms/djangoapps/courseware/entrance_exams.py b/lms/djangoapps/courseware/entrance_exams.py index 5427e00af50845e4766f1da07df178bd0a9b7ad9..8c51c53d68cb32eab5aaa369e096cdc11f93dea0 100644 --- a/lms/djangoapps/courseware/entrance_exams.py +++ b/lms/djangoapps/courseware/entrance_exams.py @@ -6,7 +6,7 @@ from __future__ import absolute_import from opaque_keys.edx.keys import UsageKey -from courseware.access import has_access +from lms.djangoapps.courseware.access import has_access from student.models import EntranceExamConfiguration from util.milestones_helpers import get_required_content, is_entrance_exams_enabled from xmodule.modulestore.django import modulestore diff --git a/lms/djangoapps/courseware/migrations/0005_orgdynamicupgradedeadlineconfiguration.py b/lms/djangoapps/courseware/migrations/0005_orgdynamicupgradedeadlineconfiguration.py index 43dbdff62de5451fadb8cbb4afc9d1f34c205b6f..48872de823b0ec95d8b09cf2259b625c4d0dd671 100644 --- a/lms/djangoapps/courseware/migrations/0005_orgdynamicupgradedeadlineconfiguration.py +++ b/lms/djangoapps/courseware/migrations/0005_orgdynamicupgradedeadlineconfiguration.py @@ -5,7 +5,7 @@ import django.db.models.deletion from django.conf import settings from django.db import migrations, models -import courseware.models +import lms.djangoapps.courseware.models class Migration(migrations.Migration): @@ -31,7 +31,7 @@ class Migration(migrations.Migration): 'ordering': ('-change_date',), 'abstract': False, }, - bases=(courseware.models.OptOutDynamicUpgradeDeadlineMixin, models.Model), + bases=(lms.djangoapps.courseware.models.OptOutDynamicUpgradeDeadlineMixin, models.Model), ), migrations.AlterModelOptions( name='coursedynamicupgradedeadlineconfiguration', diff --git a/lms/djangoapps/courseware/migrations/0011_csm_id_bigint.py b/lms/djangoapps/courseware/migrations/0011_csm_id_bigint.py index 54ab08f77ee3c3ea2d7e3779cec7b6f77ddee6eb..6a7d6572f4f73b4bcf45185306b517362f6085b4 100644 --- a/lms/djangoapps/courseware/migrations/0011_csm_id_bigint.py +++ b/lms/djangoapps/courseware/migrations/0011_csm_id_bigint.py @@ -2,7 +2,8 @@ # Generated by Django 1.11.23 on 2019-08-28 15:50 from __future__ import unicode_literals -import courseware.fields +import lms.djangoapps.courseware.fields + from django.conf import settings from django.db import migrations from django.db.migrations import AlterField @@ -36,6 +37,6 @@ class Migration(migrations.Migration): CsmBigInt( model_name='studentmodule', name='id', - field=courseware.fields.UnsignedBigIntAutoField(primary_key=True, serialize=False), + field=lms.djangoapps.courseware.fields.UnsignedBigIntAutoField(primary_key=True, serialize=False), ) ] diff --git a/lms/djangoapps/courseware/model_data.py b/lms/djangoapps/courseware/model_data.py index 7c8c092c676a98464d3404469123fc47f0a4922b..1fcf5468e5de4a62ef5cd07060ab0eba8223472d 100644 --- a/lms/djangoapps/courseware/model_data.py +++ b/lms/djangoapps/courseware/model_data.py @@ -39,7 +39,7 @@ from xblock.exceptions import InvalidScopeError, KeyValueMultiSaveError from xblock.fields import Scope, UserScope from xblock.runtime import KeyValueStore -from courseware.user_state_client import DjangoXBlockUserStateClient +from lms.djangoapps.courseware.user_state_client import DjangoXBlockUserStateClient from xmodule.modulestore.django import modulestore from .models import StudentModule, XModuleStudentInfoField, XModuleStudentPrefsField, XModuleUserStateSummaryField diff --git a/lms/djangoapps/courseware/models.py b/lms/djangoapps/courseware/models.py index 0dfa1b892e5edc562205ed7fd0a05c0c9d9e7044..84838b61d1edf0fb1025d95377af28faf0c7e1ec 100644 --- a/lms/djangoapps/courseware/models.py +++ b/lms/djangoapps/courseware/models.py @@ -27,7 +27,7 @@ from django.utils.encoding import python_2_unicode_compatible from django.utils.translation import ugettext_lazy as _ from model_utils.models import TimeStampedModel from opaque_keys.edx.django.models import BlockTypeKeyField, CourseKeyField, LearningContextKeyField, UsageKeyField -from courseware.fields import UnsignedBigIntAutoField +from lms.djangoapps.courseware.fields import UnsignedBigIntAutoField from six import text_type from six.moves import range @@ -447,6 +447,9 @@ class CourseDynamicUpgradeDeadlineConfiguration(OptOutDynamicUpgradeDeadlineMixi .. no_pii: """ + class Meta(object): + app_label = "courseware" + KEY_FIELDS = ('course_id',) course_id = CourseKeyField(max_length=255, db_index=True) @@ -471,6 +474,9 @@ class OrgDynamicUpgradeDeadlineConfiguration(OptOutDynamicUpgradeDeadlineMixin, .. no_pii: """ + class Meta(object): + app_label = "courseware" + KEY_FIELDS = ('org_id',) org_id = models.CharField(max_length=255, db_index=True) diff --git a/lms/djangoapps/courseware/module_render.py b/lms/djangoapps/courseware/module_render.py index 84a9f60cc30ca7836dd3b7e3909060e6442332cb..43c5ae8fc0165fcae3ad1909a943efbc6613374d 100644 --- a/lms/djangoapps/courseware/module_render.py +++ b/lms/djangoapps/courseware/module_render.py @@ -46,15 +46,15 @@ from xblock.runtime import KvsFieldData import static_replace from capa.xqueue_interface import XQueueInterface -from courseware.access import get_user_role, has_access -from courseware.entrance_exams import user_can_skip_entrance_exam, user_has_passed_entrance_exam -from courseware.masquerade import ( +from lms.djangoapps.courseware.access import get_user_role, has_access +from lms.djangoapps.courseware.entrance_exams import user_can_skip_entrance_exam, user_has_passed_entrance_exam +from lms.djangoapps.courseware.masquerade import ( MasqueradingKeyValueStore, filter_displayed_blocks, is_masquerading_as_specific_student, setup_masquerade ) -from courseware.model_data import DjangoKeyValueStore, FieldDataCache +from lms.djangoapps.courseware.model_data import DjangoKeyValueStore, FieldDataCache from edxmako.shortcuts import render_to_string from lms.djangoapps.courseware.field_overrides import OverrideFieldData from lms.djangoapps.grades.api import GradesUtilService diff --git a/lms/djangoapps/courseware/student_field_overrides.py b/lms/djangoapps/courseware/student_field_overrides.py index 40c938477a3b5f4899ca50d32e093ae215f45ead..7b20e772c6fa452a0eb73e999ed2526464d9b8e9 100644 --- a/lms/djangoapps/courseware/student_field_overrides.py +++ b/lms/djangoapps/courseware/student_field_overrides.py @@ -6,7 +6,7 @@ from __future__ import absolute_import import json -from courseware.models import StudentFieldOverride +from lms.djangoapps.courseware.models import StudentFieldOverride from openedx.core.lib.xblock_utils import is_xblock_aside from .field_overrides import FieldOverrideProvider diff --git a/lms/djangoapps/courseware/tabs.py b/lms/djangoapps/courseware/tabs.py index c8a8f86192dfe86226712a1dec449e45de64e518..bf7869011d33f6d74423d93b77a235ab8df02550 100644 --- a/lms/djangoapps/courseware/tabs.py +++ b/lms/djangoapps/courseware/tabs.py @@ -9,8 +9,8 @@ from django.conf import settings from django.utils.translation import ugettext as _ from django.utils.translation import ugettext_noop -from courseware.access import has_access -from courseware.entrance_exams import user_can_skip_entrance_exam +from lms.djangoapps.courseware.access import has_access +from lms.djangoapps.courseware.entrance_exams import user_can_skip_entrance_exam from openedx.core.lib.course_tabs import CourseTabPluginManager from openedx.features.course_experience import UNIFIED_COURSE_TAB_FLAG, default_course_url_name from student.models import CourseEnrollment diff --git a/lms/djangoapps/courseware/tests/factories.py b/lms/djangoapps/courseware/tests/factories.py index 171f564701f54b3cb8213eeaedd855a9f17f8f6f..76e7d8e785773c785bec107a3d65c04b8b1552c9 100644 --- a/lms/djangoapps/courseware/tests/factories.py +++ b/lms/djangoapps/courseware/tests/factories.py @@ -11,7 +11,7 @@ from factory.django import DjangoModelFactory from opaque_keys.edx.keys import CourseKey from opaque_keys.edx.locator import CourseLocator -from courseware.models import ( +from lms.djangoapps.courseware.models import ( StudentModule, XModuleStudentInfoField, XModuleStudentPrefsField, diff --git a/lms/djangoapps/courseware/tests/helpers.py b/lms/djangoapps/courseware/tests/helpers.py index 19241f16da8a28e6ccb8d419b572fa9650f228ed..e1aab364d4f6476cf3e3bd2929cec90690406ab8 100644 --- a/lms/djangoapps/courseware/tests/helpers.py +++ b/lms/djangoapps/courseware/tests/helpers.py @@ -17,8 +17,8 @@ from six import text_type from six.moves import range from xblock.field_data import DictFieldData -from courseware.access import has_access -from courseware.masquerade import handle_ajax, setup_masquerade +from lms.djangoapps.courseware.access import has_access +from lms.djangoapps.courseware.masquerade import handle_ajax, setup_masquerade from edxmako.shortcuts import render_to_string from lms.djangoapps.courseware.date_summary import verified_upgrade_deadline_link from lms.djangoapps.lms_xblock.field_data import LmsFieldData diff --git a/lms/djangoapps/courseware/tests/test_access.py b/lms/djangoapps/courseware/tests/test_access.py index 78473c6d5ae2f833b00d158eeb6851598b46bf0f..cb13e48e277b205d21c665d33724fc60813de5c6 100644 --- a/lms/djangoapps/courseware/tests/test_access.py +++ b/lms/djangoapps/courseware/tests/test_access.py @@ -19,17 +19,17 @@ from milestones.tests.utils import MilestonesTestCaseMixin from mock import Mock, patch from opaque_keys.edx.locator import CourseLocator -import courseware.access as access -import courseware.access_response as access_response -from courseware.masquerade import CourseMasquerade -from courseware.tests.factories import ( +import lms.djangoapps.courseware.access as access +import lms.djangoapps.courseware.access_response as access_response +from lms.djangoapps.courseware.masquerade import CourseMasquerade +from lms.djangoapps.courseware.tests.factories import ( BetaTesterFactory, GlobalStaffFactory, InstructorFactory, StaffFactory, UserFactory ) -from courseware.tests.helpers import LoginEnrollmentTestCase, masquerade_as_group_member +from lms.djangoapps.courseware.tests.helpers import LoginEnrollmentTestCase, masquerade_as_group_member from lms.djangoapps.ccx.models import CustomCourseForEdX from openedx.core.djangoapps.content.course_overviews.models import CourseOverview from openedx.core.djangoapps.waffle_utils.testutils import WAFFLE_TABLES diff --git a/lms/djangoapps/courseware/tests/test_context_processor.py b/lms/djangoapps/courseware/tests/test_context_processor.py index 1ab44b91b6189d5235e3a3e63c2cd5bb62bc6455..539d7938f64c197c3614e25b08a28cedaf129371 100644 --- a/lms/djangoapps/courseware/tests/test_context_processor.py +++ b/lms/djangoapps/courseware/tests/test_context_processor.py @@ -6,7 +6,7 @@ from __future__ import absolute_import from django.contrib.auth.models import AnonymousUser from mock import Mock -from courseware.context_processor import user_timezone_locale_prefs +from lms.djangoapps.courseware.context_processor import user_timezone_locale_prefs from openedx.core.djangoapps.user_api.preferences.api import set_user_preference from student.tests.factories import UserFactory from xmodule.modulestore.tests.django_utils import ModuleStoreTestCase diff --git a/lms/djangoapps/courseware/tests/test_course_survey.py b/lms/djangoapps/courseware/tests/test_course_survey.py index dd9069384e1458f0fcfd7919ee5eea858f41288c..2e419d53e9a8b09f7288ab08ee6179d2299dc2c2 100644 --- a/lms/djangoapps/courseware/tests/test_course_survey.py +++ b/lms/djangoapps/courseware/tests/test_course_survey.py @@ -13,7 +13,7 @@ from django.urls import reverse from six.moves import range from common.test.utils import XssTestMixin -from courseware.tests.helpers import LoginEnrollmentTestCase +from lms.djangoapps.courseware.tests.helpers import LoginEnrollmentTestCase from survey.models import SurveyAnswer, SurveyForm from xmodule.modulestore.tests.django_utils import SharedModuleStoreTestCase from xmodule.modulestore.tests.factories import CourseFactory diff --git a/lms/djangoapps/courseware/tests/test_course_tools.py b/lms/djangoapps/courseware/tests/test_course_tools.py index 836e2546900508edaf366c79207b03d841b8f309..9a2f17e4e2cee3bf560c5b8e4db2b403c7c4598f 100644 --- a/lms/djangoapps/courseware/tests/test_course_tools.py +++ b/lms/djangoapps/courseware/tests/test_course_tools.py @@ -13,8 +13,8 @@ from mock import patch from course_modes.models import CourseMode from course_modes.tests.factories import CourseModeFactory -from courseware.course_tools import VerifiedUpgradeTool -from courseware.models import DynamicUpgradeDeadlineConfiguration +from lms.djangoapps.courseware.course_tools import VerifiedUpgradeTool +from lms.djangoapps.courseware.models import DynamicUpgradeDeadlineConfiguration from openedx.core.djangoapps.content.course_overviews.models import CourseOverview from openedx.core.djangoapps.schedules.config import CREATE_SCHEDULE_WAFFLE_FLAG from openedx.core.djangoapps.site_configuration.tests.factories import SiteFactory diff --git a/lms/djangoapps/courseware/tests/test_courses.py b/lms/djangoapps/courseware/tests/test_courses.py index d0e682e56ea987fd94dc10062e32ef7e27292709..095c87a712b38e8e72cd483f545bc84124467eb7 100644 --- a/lms/djangoapps/courseware/tests/test_courses.py +++ b/lms/djangoapps/courseware/tests/test_courses.py @@ -20,7 +20,7 @@ from opaque_keys.edx.keys import CourseKey from six import text_type from six.moves import range -from courseware.courses import ( +from lms.djangoapps.courseware.courses import ( course_open_for_self_enrollment, get_cms_block_link, get_cms_course_link, @@ -33,8 +33,8 @@ from courseware.courses import ( get_courses, get_current_child ) -from courseware.model_data import FieldDataCache -from courseware.module_render import get_module_for_descriptor +from lms.djangoapps.courseware.model_data import FieldDataCache +from lms.djangoapps.courseware.module_render import get_module_for_descriptor from lms.djangoapps.courseware.courseware_access_exception import CoursewareAccessException from openedx.core.djangolib.testing.utils import get_mock_request from openedx.core.lib.courses import course_image_url diff --git a/lms/djangoapps/courseware/tests/test_date_summary.py b/lms/djangoapps/courseware/tests/test_date_summary.py index ecb56191533624b8c9145904801df7591773f18a..6466636de177b4dfea86932c28ed9112c21a304c 100644 --- a/lms/djangoapps/courseware/tests/test_date_summary.py +++ b/lms/djangoapps/courseware/tests/test_date_summary.py @@ -15,8 +15,8 @@ from pytz import utc from course_modes.models import CourseMode from course_modes.tests.factories import CourseModeFactory -from courseware.courses import get_course_date_blocks -from courseware.date_summary import ( +from lms.djangoapps.courseware.courses import get_course_date_blocks +from lms.djangoapps.courseware.date_summary import ( CertificateAvailableDate, CourseEndDate, CourseStartDate, @@ -24,7 +24,7 @@ from courseware.date_summary import ( VerificationDeadlineDate, VerifiedUpgradeDeadlineDate ) -from courseware.models import ( +from lms.djangoapps.courseware.models import ( CourseDynamicUpgradeDeadlineConfiguration, DynamicUpgradeDeadlineConfiguration, OrgDynamicUpgradeDeadlineConfiguration diff --git a/lms/djangoapps/courseware/tests/test_discussion_xblock.py b/lms/djangoapps/courseware/tests/test_discussion_xblock.py index b48cec6c11960b26caf761ca6ad695fb9e095548..c570edf09d5730eeca7a3704af9e2893315426fe 100644 --- a/lms/djangoapps/courseware/tests/test_discussion_xblock.py +++ b/lms/djangoapps/courseware/tests/test_discussion_xblock.py @@ -20,7 +20,7 @@ from web_fragments.fragment import Fragment from xblock.field_data import DictFieldData from course_api.blocks.tests.helpers import deserialize_usage_key -from courseware.module_render import get_module_for_descriptor_internal +from lms.djangoapps.courseware.module_render import get_module_for_descriptor_internal from lms.djangoapps.courseware.tests.helpers import XModuleRenderingTestBase from student.tests.factories import CourseEnrollmentFactory, UserFactory from xblock_discussion import DiscussionXBlock, loader diff --git a/lms/djangoapps/courseware/tests/test_entrance_exam.py b/lms/djangoapps/courseware/tests/test_entrance_exam.py index 619c350f4a521399a8205ef346373e5d09b20759..3d688d6bbfe332b4a9c3e1ea259dd3a263cdc0e5 100644 --- a/lms/djangoapps/courseware/tests/test_entrance_exam.py +++ b/lms/djangoapps/courseware/tests/test_entrance_exam.py @@ -10,16 +10,16 @@ from milestones.tests.utils import MilestonesTestCaseMixin from mock import Mock, patch from capa.tests.response_xml_factory import MultipleChoiceResponseXMLFactory -from courseware.entrance_exams import ( +from lms.djangoapps.courseware.entrance_exams import ( course_has_entrance_exam, get_entrance_exam_content, user_can_skip_entrance_exam, user_has_passed_entrance_exam ) -from courseware.model_data import FieldDataCache -from courseware.module_render import get_module, handle_xblock_callback, toc_for_course -from courseware.tests.factories import InstructorFactory, RequestFactoryNoCsrf, StaffFactory, UserFactory -from courseware.tests.helpers import LoginEnrollmentTestCase +from lms.djangoapps.courseware.model_data import FieldDataCache +from lms.djangoapps.courseware.module_render import get_module, handle_xblock_callback, toc_for_course +from lms.djangoapps.courseware.tests.factories import InstructorFactory, RequestFactoryNoCsrf, StaffFactory, UserFactory +from lms.djangoapps.courseware.tests.helpers import LoginEnrollmentTestCase from openedx.core.djangoapps.waffle_utils.testutils import override_waffle_flag from openedx.core.djangolib.testing.utils import get_mock_request from openedx.features.course_experience import COURSE_OUTLINE_PAGE_FLAG, UNIFIED_COURSE_TAB_FLAG diff --git a/lms/djangoapps/courseware/tests/test_field_overrides.py b/lms/djangoapps/courseware/tests/test_field_overrides.py index bca92598bfda082d08f500d028c756a13c30a1ff..c8df052a3b61c7ea5e419cc40918f8f194219dae 100644 --- a/lms/djangoapps/courseware/tests/test_field_overrides.py +++ b/lms/djangoapps/courseware/tests/test_field_overrides.py @@ -133,7 +133,7 @@ class OverrideFieldDataTests(OverrideFieldBase): @override_settings( - MODULESTORE_FIELD_OVERRIDE_PROVIDERS=['courseware.tests.test_field_overrides.TestOverrideProvider'] + MODULESTORE_FIELD_OVERRIDE_PROVIDERS=['lms.djangoapps.courseware.tests.test_field_overrides.TestOverrideProvider'] ) class OverrideModulestoreFieldDataTests(FieldOverrideTestMixin, OverrideFieldDataTests): def make_one(self): diff --git a/lms/djangoapps/courseware/tests/test_group_access.py b/lms/djangoapps/courseware/tests/test_group_access.py index 4fd55a78cca7667ec57605f665af0fd223f6380c..11c10b72dd6e5d71b31fbfe995b083dcdf8fd93b 100644 --- a/lms/djangoapps/courseware/tests/test_group_access.py +++ b/lms/djangoapps/courseware/tests/test_group_access.py @@ -8,8 +8,8 @@ from __future__ import absolute_import import ddt from stevedore.extension import Extension, ExtensionManager -import courseware.access as access -from courseware.tests.factories import StaffFactory, UserFactory +import lms.djangoapps.courseware.access as access +from lms.djangoapps.courseware.tests.factories import StaffFactory, UserFactory from xmodule.modulestore.django import modulestore from xmodule.modulestore.tests.django_utils import ModuleStoreTestCase from xmodule.modulestore.tests.factories import CourseFactory, ItemFactory diff --git a/lms/djangoapps/courseware/tests/test_lti_integration.py b/lms/djangoapps/courseware/tests/test_lti_integration.py index 7baeb6e89241109600d80a103381e3d12cb184e6..94bed42e03b5071ab2d5222860c409088faca9ab 100644 --- a/lms/djangoapps/courseware/tests/test_lti_integration.py +++ b/lms/djangoapps/courseware/tests/test_lti_integration.py @@ -14,8 +14,8 @@ from django.conf import settings from django.urls import reverse from six import text_type -from courseware.tests.helpers import BaseTestXmodule -from courseware.views.views import get_course_lti_endpoints +from lms.djangoapps.courseware.tests.helpers import BaseTestXmodule +from lms.djangoapps.courseware.views.views import get_course_lti_endpoints from openedx.core.lib.url_utils import quote_slashes from xmodule.modulestore.tests.django_utils import SharedModuleStoreTestCase from xmodule.modulestore.tests.factories import CourseFactory, ItemFactory diff --git a/lms/djangoapps/courseware/tests/test_masquerade.py b/lms/djangoapps/courseware/tests/test_masquerade.py index a6ce93ff17fcdbd3b7f1e22e8d74c18856d0ac3d..f0bae1c137afe9787fab912809683e05d2f5e2e2 100644 --- a/lms/djangoapps/courseware/tests/test_masquerade.py +++ b/lms/djangoapps/courseware/tests/test_masquerade.py @@ -18,10 +18,12 @@ from pytz import UTC from xblock.runtime import DictKeyValueStore from capa.tests.response_xml_factory import OptionResponseXMLFactory -from courseware.masquerade import CourseMasquerade, MasqueradingKeyValueStore, get_masquerading_user_group -from courseware.tests.factories import StaffFactory -from courseware.tests.helpers import LoginEnrollmentTestCase, masquerade_as_group_member -from courseware.tests.test_submitting_problems import ProblemSubmissionTestMixin +from lms.djangoapps.courseware.masquerade import ( + CourseMasquerade, MasqueradingKeyValueStore, get_masquerading_user_group, +) +from lms.djangoapps.courseware.tests.factories import StaffFactory +from lms.djangoapps.courseware.tests.helpers import LoginEnrollmentTestCase, masquerade_as_group_member +from lms.djangoapps.courseware.tests.test_submitting_problems import ProblemSubmissionTestMixin from openedx.core.djangoapps.lang_pref import LANGUAGE_KEY from openedx.core.djangoapps.self_paced.models import SelfPacedConfiguration from openedx.core.djangoapps.user_api.preferences.api import get_user_preference, set_user_preference diff --git a/lms/djangoapps/courseware/tests/test_model_data.py b/lms/djangoapps/courseware/tests/test_model_data.py index c12557194ed58007c047ef68404731baec414fa2..bb66ca772e83f6d1a7bffe42b7c247d0452078d7 100644 --- a/lms/djangoapps/courseware/tests/test_model_data.py +++ b/lms/djangoapps/courseware/tests/test_model_data.py @@ -13,16 +13,16 @@ from xblock.core import XBlock from xblock.exceptions import KeyValueMultiSaveError from xblock.fields import BlockScope, Scope, ScopeIds -from courseware.model_data import DjangoKeyValueStore, FieldDataCache, InvalidScopeError -from courseware.models import ( +from lms.djangoapps.courseware.model_data import DjangoKeyValueStore, FieldDataCache, InvalidScopeError +from lms.djangoapps.courseware.models import ( StudentModule, XModuleStudentInfoField, XModuleStudentPrefsField, XModuleUserStateSummaryField ) -from courseware.tests.factories import StudentInfoFactory -from courseware.tests.factories import StudentModuleFactory as cmfStudentModuleFactory -from courseware.tests.factories import StudentPrefsFactory, UserStateSummaryFactory, course_id, location +from lms.djangoapps.courseware.tests.factories import StudentInfoFactory +from lms.djangoapps.courseware.tests.factories import StudentModuleFactory as cmfStudentModuleFactory +from lms.djangoapps.courseware.tests.factories import StudentPrefsFactory, UserStateSummaryFactory, course_id, location from student.tests.factories import UserFactory diff --git a/lms/djangoapps/courseware/tests/test_module_render.py b/lms/djangoapps/courseware/tests/test_module_render.py index 4ee1b6ca1d1a34ac208be48fe30b33c183acb901..dad40d99f8162a0436aa624336980e0013bbd51f 100644 --- a/lms/djangoapps/courseware/tests/test_module_render.py +++ b/lms/djangoapps/courseware/tests/test_module_render.py @@ -45,16 +45,18 @@ from xblock.test.tools import TestRuntime from capa.tests.response_xml_factory import OptionResponseXMLFactory from course_modes.models import CourseMode -from courseware import module_render as render -from courseware.access_response import AccessResponse -from courseware.courses import get_course_info_section, get_course_with_access -from courseware.masquerade import CourseMasquerade -from courseware.model_data import FieldDataCache -from courseware.models import StudentModule -from courseware.module_render import get_module_for_descriptor, hash_resource -from courseware.tests.factories import GlobalStaffFactory, RequestFactoryNoCsrf, StudentModuleFactory, UserFactory -from courseware.tests.test_submitting_problems import TestSubmittingProblems -from courseware.tests.tests import LoginEnrollmentTestCase +from lms.djangoapps.courseware import module_render as render +from lms.djangoapps.courseware.access_response import AccessResponse +from lms.djangoapps.courseware.courses import get_course_info_section, get_course_with_access +from lms.djangoapps.courseware.masquerade import CourseMasquerade +from lms.djangoapps.courseware.model_data import FieldDataCache +from lms.djangoapps.courseware.models import StudentModule +from lms.djangoapps.courseware.module_render import get_module_for_descriptor, hash_resource +from lms.djangoapps.courseware.tests.factories import ( + GlobalStaffFactory, RequestFactoryNoCsrf, StudentModuleFactory, UserFactory, +) +from lms.djangoapps.courseware.tests.test_submitting_problems import TestSubmittingProblems +from lms.djangoapps.courseware.tests.tests import LoginEnrollmentTestCase from lms.djangoapps.courseware.field_overrides import OverrideFieldData from lms.djangoapps.lms_xblock.field_data import LmsFieldData from openedx.core.djangoapps.credit.api import set_credit_requirement_status, set_credit_requirements diff --git a/lms/djangoapps/courseware/tests/test_navigation.py b/lms/djangoapps/courseware/tests/test_navigation.py index b07889c2d879fce2741cb1ac4981a2562ca5acc0..ad20a5c94de5bc1d058a3c1bb4a9b697a2014797 100644 --- a/lms/djangoapps/courseware/tests/test_navigation.py +++ b/lms/djangoapps/courseware/tests/test_navigation.py @@ -12,8 +12,8 @@ from mock import patch from six import text_type from six.moves import range -from courseware.tests.factories import GlobalStaffFactory -from courseware.tests.helpers import LoginEnrollmentTestCase +from lms.djangoapps.courseware.tests.factories import GlobalStaffFactory +from lms.djangoapps.courseware.tests.helpers import LoginEnrollmentTestCase from openedx.core.djangoapps.waffle_utils.testutils import override_waffle_flag from openedx.features.course_experience import COURSE_OUTLINE_PAGE_FLAG from student.tests.factories import UserFactory diff --git a/lms/djangoapps/courseware/tests/test_password_reset.py b/lms/djangoapps/courseware/tests/test_password_reset.py index a0fc597e2e96f18ac2150e7980c77aba868eb409..e603c862692e27c017eb2b43121ef86124eb0da0 100644 --- a/lms/djangoapps/courseware/tests/test_password_reset.py +++ b/lms/djangoapps/courseware/tests/test_password_reset.py @@ -11,7 +11,7 @@ from django.contrib.auth.tokens import default_token_generator from django.test.utils import override_settings from django.utils.http import int_to_base36 -from courseware.tests.helpers import LoginEnrollmentTestCase +from lms.djangoapps.courseware.tests.helpers import LoginEnrollmentTestCase from util.password_policy_validators import create_validator_config diff --git a/lms/djangoapps/courseware/tests/test_self_paced_overrides.py b/lms/djangoapps/courseware/tests/test_self_paced_overrides.py index f4fbeb32afabb9c5838ba7de9b1ace43545f7670..4769fd7278a17754ad7e6825ec1362e02c250b6f 100644 --- a/lms/djangoapps/courseware/tests/test_self_paced_overrides.py +++ b/lms/djangoapps/courseware/tests/test_self_paced_overrides.py @@ -8,8 +8,8 @@ import pytz from django.test.utils import override_settings from mock import patch -from courseware.access import has_access -from courseware.tests.factories import BetaTesterFactory +from lms.djangoapps.courseware.access import has_access +from lms.djangoapps.courseware.tests.factories import BetaTesterFactory from lms.djangoapps.ccx.tests.test_overrides import inject_field_overrides from lms.djangoapps.courseware.field_overrides import OverrideFieldData, OverrideModulestoreFieldData from lms.djangoapps.discussion.django_comment_client.utils import get_accessible_discussion_xblocks @@ -19,7 +19,9 @@ from xmodule.modulestore.tests.factories import CourseFactory, ItemFactory @override_settings( XBLOCK_FIELD_DATA_WRAPPERS=['lms.djangoapps.courseware.field_overrides:OverrideModulestoreFieldData.wrap'], - MODULESTORE_FIELD_OVERRIDE_PROVIDERS=['courseware.self_paced_overrides.SelfPacedDateOverrideProvider'], + MODULESTORE_FIELD_OVERRIDE_PROVIDERS=[ + 'lms.djangoapps.courseware.self_paced_overrides.SelfPacedDateOverrideProvider' + ], ) class SelfPacedDateOverrideTest(ModuleStoreTestCase): """ diff --git a/lms/djangoapps/courseware/tests/test_split_module.py b/lms/djangoapps/courseware/tests/test_split_module.py index ddb7ff41e64b15d646b9c317c4ac2ce38da51b08..06c22aa0f8e76c591187c0a40ae991b2ff7943f5 100644 --- a/lms/djangoapps/courseware/tests/test_split_module.py +++ b/lms/djangoapps/courseware/tests/test_split_module.py @@ -8,8 +8,8 @@ from django.urls import reverse from mock import MagicMock from six import text_type -from courseware.model_data import FieldDataCache -from courseware.module_render import get_module_for_descriptor +from lms.djangoapps.courseware.model_data import FieldDataCache +from lms.djangoapps.courseware.module_render import get_module_for_descriptor from openedx.core.djangoapps.user_api.tests.factories import UserCourseTagFactory from student.tests.factories import CourseEnrollmentFactory, UserFactory from xmodule.modulestore.tests.django_utils import SharedModuleStoreTestCase diff --git a/lms/djangoapps/courseware/tests/test_submitting_problems.py b/lms/djangoapps/courseware/tests/test_submitting_problems.py index 6b690fa8dab13fc21a3d3d7262bdf271e013291d..243d1bb51e5f8d2624525bcfcfa261e004d44f53 100644 --- a/lms/djangoapps/courseware/tests/test_submitting_problems.py +++ b/lms/djangoapps/courseware/tests/test_submitting_problems.py @@ -30,8 +30,8 @@ from capa.tests.response_xml_factory import ( SchematicResponseXMLFactory ) from course_modes.models import CourseMode -from courseware.models import BaseStudentModuleHistory, StudentModule -from courseware.tests.helpers import LoginEnrollmentTestCase +from lms.djangoapps.courseware.models import BaseStudentModuleHistory, StudentModule +from lms.djangoapps.courseware.tests.helpers import LoginEnrollmentTestCase from lms.djangoapps.grades.api import CourseGradeFactory, task_compute_all_grades_for_course from openedx.core.djangoapps.credit.api import get_credit_requirement_status, set_credit_requirements from openedx.core.djangoapps.credit.models import CreditCourse, CreditProvider diff --git a/lms/djangoapps/courseware/tests/test_tabs.py b/lms/djangoapps/courseware/tests/test_tabs.py index 394c519b0d09a2565fdfc3865bdf90dcccf32813..a26aebfd9e30ae7287385e16ce121b0ac22b415a 100644 --- a/lms/djangoapps/courseware/tests/test_tabs.py +++ b/lms/djangoapps/courseware/tests/test_tabs.py @@ -13,8 +13,8 @@ from mock import MagicMock, Mock, patch from six import text_type from six.moves import range -from courseware.courses import get_course_by_id -from courseware.tabs import ( +from lms.djangoapps.courseware.courses import get_course_by_id +from lms.djangoapps.courseware.tabs import ( CourseInfoTab, CoursewareTab, ExternalDiscussionCourseTab, @@ -22,9 +22,9 @@ from courseware.tabs import ( ProgressTab, get_course_tab_list ) -from courseware.tests.factories import InstructorFactory, StaffFactory -from courseware.tests.helpers import LoginEnrollmentTestCase -from courseware.views.views import StaticCourseTabView, get_static_tab_fragment +from lms.djangoapps.courseware.tests.factories import InstructorFactory, StaffFactory +from lms.djangoapps.courseware.tests.helpers import LoginEnrollmentTestCase +from lms.djangoapps.courseware.views.views import StaticCourseTabView, get_static_tab_fragment from openedx.core.djangoapps.waffle_utils.testutils import override_waffle_flag from openedx.core.djangolib.testing.utils import get_mock_request from openedx.features.course_experience import UNIFIED_COURSE_TAB_FLAG diff --git a/lms/djangoapps/courseware/tests/test_user_state_client.py b/lms/djangoapps/courseware/tests/test_user_state_client.py index b12b8069328cba8a0aed165f04f8031e01ac305c..a220dbd77da797e316aea0c150737d3851bf7ae4 100644 --- a/lms/djangoapps/courseware/tests/test_user_state_client.py +++ b/lms/djangoapps/courseware/tests/test_user_state_client.py @@ -9,8 +9,8 @@ from collections import defaultdict from edx_user_state_client.tests import UserStateClientTestBase -from courseware.tests.factories import UserFactory -from courseware.user_state_client import DjangoXBlockUserStateClient +from lms.djangoapps.courseware.tests.factories import UserFactory +from lms.djangoapps.courseware.user_state_client import DjangoXBlockUserStateClient from xmodule.modulestore.tests.django_utils import ModuleStoreTestCase diff --git a/lms/djangoapps/courseware/tests/test_view_authentication.py b/lms/djangoapps/courseware/tests/test_view_authentication.py index 6892397fa268de5fdc28782c12e88217a1dc9700..21bbe53f24a8fae6256a868341548e2b66decd52 100644 --- a/lms/djangoapps/courseware/tests/test_view_authentication.py +++ b/lms/djangoapps/courseware/tests/test_view_authentication.py @@ -12,8 +12,8 @@ from mock import patch from six import text_type from six.moves import range -from courseware.access import has_access -from courseware.tests.factories import ( +from lms.djangoapps.courseware.access import has_access +from lms.djangoapps.courseware.tests.factories import ( BetaTesterFactory, GlobalStaffFactory, InstructorFactory, @@ -21,7 +21,7 @@ from courseware.tests.factories import ( OrgStaffFactory, StaffFactory ) -from courseware.tests.helpers import CourseAccessTestMixin, LoginEnrollmentTestCase +from lms.djangoapps.courseware.tests.helpers import CourseAccessTestMixin, LoginEnrollmentTestCase from openedx.features.enterprise_support.tests.mixins.enterprise import EnterpriseTestConsentRequired from student.tests.factories import CourseEnrollmentFactory, UserFactory from xmodule.modulestore.django import modulestore diff --git a/lms/djangoapps/courseware/tests/test_views.py b/lms/djangoapps/courseware/tests/test_views.py index e27aa3c173711de553071f1ecf22c1d591ba70bf..7cb2876f4f0d072521cddcc8ae1d88715cfc0768 100644 --- a/lms/djangoapps/courseware/tests/test_views.py +++ b/lms/djangoapps/courseware/tests/test_views.py @@ -36,20 +36,20 @@ from web_fragments.fragment import Fragment from xblock.core import XBlock from xblock.fields import Scope, String -import courseware.views.views as views +import lms.djangoapps.courseware.views.views as views import shoppingcart from capa.tests.response_xml_factory import MultipleChoiceResponseXMLFactory from course_modes.models import CourseMode from course_modes.tests.factories import CourseModeFactory -from courseware.access_utils import check_course_open_for_learner -from courseware.model_data import FieldDataCache, set_score -from courseware.module_render import get_module, handle_xblock_callback -from courseware.tests.factories import GlobalStaffFactory, RequestFactoryNoCsrf, StudentModuleFactory -from courseware.tests.helpers import get_expiration_banner_text -from courseware.testutils import RenderXBlockTestMixin -from courseware.url_helpers import get_redirect_url -from courseware.user_state_client import DjangoXBlockUserStateClient +from lms.djangoapps.courseware.access_utils import check_course_open_for_learner +from lms.djangoapps.courseware.model_data import FieldDataCache, set_score +from lms.djangoapps.courseware.module_render import get_module, handle_xblock_callback +from lms.djangoapps.courseware.tests.factories import GlobalStaffFactory, RequestFactoryNoCsrf, StudentModuleFactory +from lms.djangoapps.courseware.tests.helpers import get_expiration_banner_text +from lms.djangoapps.courseware.testutils import RenderXBlockTestMixin +from lms.djangoapps.courseware.url_helpers import get_redirect_url +from lms.djangoapps.courseware.user_state_client import DjangoXBlockUserStateClient from lms.djangoapps.certificates import api as certs_api from lms.djangoapps.certificates.models import ( CertificateGenerationConfiguration, diff --git a/lms/djangoapps/courseware/tests/tests.py b/lms/djangoapps/courseware/tests/tests.py index 947b77e9a7224140e36ece5d922bf0e107952ad1..0645c4e7f501648b9e1b843c6801f56a2c7bd0c9 100644 --- a/lms/djangoapps/courseware/tests/tests.py +++ b/lms/djangoapps/courseware/tests/tests.py @@ -11,7 +11,7 @@ from django.urls import reverse from opaque_keys.edx.keys import CourseKey from six import text_type -from courseware.tests.helpers import LoginEnrollmentTestCase +from lms.djangoapps.courseware.tests.helpers import LoginEnrollmentTestCase from lms.djangoapps.lms_xblock.field_data import LmsFieldData from xmodule.error_module import ErrorDescriptor from xmodule.modulestore.django import modulestore diff --git a/lms/djangoapps/courseware/user_state_client.py b/lms/djangoapps/courseware/user_state_client.py index 156ee52db2fc2baaa4c97e26eccc1ba963c499a1..422dfe0e76f1c89c7833651a10bb856a49ceac60 100644 --- a/lms/djangoapps/courseware/user_state_client.py +++ b/lms/djangoapps/courseware/user_state_client.py @@ -20,7 +20,7 @@ from edx_django_utils import monitoring as monitoring_utils from edx_user_state_client.interface import XBlockUserState, XBlockUserStateClient from xblock.fields import Scope -from courseware.models import BaseStudentModuleHistory, StudentModule +from lms.djangoapps.courseware.models import BaseStudentModuleHistory, StudentModule try: import simplejson as json diff --git a/lms/djangoapps/courseware/views/views.py b/lms/djangoapps/courseware/views/views.py index c6fe2f06d851f3cd640edae7beb4ccb6f5715c23..ee6baf91acd22d29fe529ad1693f18ac7dc185f5 100644 --- a/lms/djangoapps/courseware/views/views.py +++ b/lms/djangoapps/courseware/views/views.py @@ -51,9 +51,9 @@ from web_fragments.fragment import Fragment import shoppingcart import survey.views from course_modes.models import CourseMode, get_course_prices -from courseware.access import has_access, has_ccx_coach_role -from courseware.access_utils import check_course_open_for_learner -from courseware.courses import ( +from lms.djangoapps.courseware.access import has_access, has_ccx_coach_role +from lms.djangoapps.courseware.access_utils import check_course_open_for_learner +from lms.djangoapps.courseware.courses import ( can_self_enroll_in_course, course_open_for_self_enrollment, get_course, @@ -66,12 +66,14 @@ from courseware.courses import ( sort_by_announcement, sort_by_start_date ) -from courseware.masquerade import setup_masquerade -from courseware.model_data import FieldDataCache -from courseware.models import BaseStudentModuleHistory, StudentModule -from courseware.permissions import MASQUERADE_AS_STUDENT, VIEW_COURSE_HOME, VIEW_COURSEWARE, VIEW_XQA_INTERFACE -from courseware.url_helpers import get_redirect_url -from courseware.user_state_client import DjangoXBlockUserStateClient +from lms.djangoapps.courseware.masquerade import setup_masquerade +from lms.djangoapps.courseware.model_data import FieldDataCache +from lms.djangoapps.courseware.models import BaseStudentModuleHistory, StudentModule +from lms.djangoapps.courseware.permissions import ( + MASQUERADE_AS_STUDENT, VIEW_COURSE_HOME, VIEW_COURSEWARE, VIEW_XQA_INTERFACE, +) +from lms.djangoapps.courseware.url_helpers import get_redirect_url +from lms.djangoapps.courseware.user_state_client import DjangoXBlockUserStateClient from edxmako.shortcuts import marketing_link, render_to_response, render_to_string from lms.djangoapps.ccx.custom_exception import CCXLocatorValidationException from lms.djangoapps.certificates import api as certs_api diff --git a/lms/djangoapps/coursewarehistoryextended/migrations/0001_initial.py b/lms/djangoapps/coursewarehistoryextended/migrations/0001_initial.py index 851584fbec178db3e6097abc5d86fa729b7b01bb..c01336ccd2edcafd6ebcb680a3bbe9eb1610ad7b 100644 --- a/lms/djangoapps/coursewarehistoryextended/migrations/0001_initial.py +++ b/lms/djangoapps/coursewarehistoryextended/migrations/0001_initial.py @@ -4,7 +4,7 @@ from __future__ import unicode_literals from __future__ import absolute_import from django.db import migrations, models import django.db.models.deletion -from courseware.fields import UnsignedBigIntAutoField +from lms.djangoapps.courseware.fields import UnsignedBigIntAutoField from django.conf import settings def bump_pk_start(apps, schema_editor): diff --git a/lms/djangoapps/coursewarehistoryextended/models.py b/lms/djangoapps/coursewarehistoryextended/models.py index b9347f8ec41bcbf58417830106e4560c516acd4a..d5ee483d7608b8141d5e9045ef30c2c40b877e3c 100644 --- a/lms/djangoapps/coursewarehistoryextended/models.py +++ b/lms/djangoapps/coursewarehistoryextended/models.py @@ -20,8 +20,8 @@ from django.db.models.signals import post_delete, post_save from django.dispatch import receiver from django.utils.encoding import python_2_unicode_compatible -from courseware.models import BaseStudentModuleHistory, StudentModule -from courseware.fields import UnsignedBigIntAutoField +from lms.djangoapps.courseware.models import BaseStudentModuleHistory, StudentModule +from lms.djangoapps.courseware.fields import UnsignedBigIntAutoField @python_2_unicode_compatible diff --git a/lms/djangoapps/coursewarehistoryextended/tests.py b/lms/djangoapps/coursewarehistoryextended/tests.py index e97317f85085755b774ec1c1b94111d91d5118b5..868afae1417e492f1ce6675f9f1f00cfbfb6a1d0 100644 --- a/lms/djangoapps/coursewarehistoryextended/tests.py +++ b/lms/djangoapps/coursewarehistoryextended/tests.py @@ -14,8 +14,8 @@ from django.conf import settings from django.test import TestCase from mock import patch -from courseware.models import BaseStudentModuleHistory, StudentModule, StudentModuleHistory -from courseware.tests.factories import StudentModuleFactory, course_id, location +from lms.djangoapps.courseware.models import BaseStudentModuleHistory, StudentModule, StudentModuleHistory +from lms.djangoapps.courseware.tests.factories import StudentModuleFactory, course_id, location @skipUnless(settings.FEATURES["ENABLE_CSMH_EXTENDED"], "CSMH Extended needs to be enabled") diff --git a/lms/djangoapps/dashboard/sysadmin.py b/lms/djangoapps/dashboard/sysadmin.py index 08930c32b247f2cfd9b5bd156a4a2f9b1b7bd0ea..f09b6b311eb09f3e6fe65ff7552bd6f894603d5e 100644 --- a/lms/djangoapps/dashboard/sysadmin.py +++ b/lms/djangoapps/dashboard/sysadmin.py @@ -31,7 +31,7 @@ from six import text_type import dashboard.git_import as git_import import track.views -from courseware.courses import get_course_by_id +from lms.djangoapps.courseware.courses import get_course_by_id from dashboard.git_import import GitImportError from dashboard.models import CourseImportLog from edxmako.shortcuts import render_to_response diff --git a/lms/djangoapps/discussion/django_comment_client/base/views.py b/lms/djangoapps/discussion/django_comment_client/base/views.py index 113dce95ead8dc465bb435e01e442b33828da8f0..06a4770c9074cedecbd9b2fcd3702d2b66111595 100644 --- a/lms/djangoapps/discussion/django_comment_client/base/views.py +++ b/lms/djangoapps/discussion/django_comment_client/base/views.py @@ -25,8 +25,8 @@ from six import text_type import lms.djangoapps.discussion.django_comment_client.settings as cc_settings import openedx.core.djangoapps.django_comment_common.comment_client as cc -from courseware.access import has_access -from courseware.courses import get_course_by_id, get_course_overview_with_access, get_course_with_access +from lms.djangoapps.courseware.access import has_access +from lms.djangoapps.courseware.courses import get_course_by_id, get_course_overview_with_access, get_course_with_access from lms.djangoapps.courseware.exceptions import CourseAccessRedirect from lms.djangoapps.discussion.django_comment_client.permissions import ( check_permissions_by_view, diff --git a/lms/djangoapps/discussion/django_comment_client/tests/test_utils.py b/lms/djangoapps/discussion/django_comment_client/tests/test_utils.py index 64f08952599c6c732fde902c20959c2695ba86c8..dc095c5dabd1bfa6909dbd69b7e641062a623078 100644 --- a/lms/djangoapps/discussion/django_comment_client/tests/test_utils.py +++ b/lms/djangoapps/discussion/django_comment_client/tests/test_utils.py @@ -18,8 +18,8 @@ from six import text_type import lms.djangoapps.discussion.django_comment_client.utils as utils from course_modes.models import CourseMode from course_modes.tests.factories import CourseModeFactory -from courseware.tabs import get_course_tab_list -from courseware.tests.factories import InstructorFactory +from lms.djangoapps.courseware.tabs import get_course_tab_list +from lms.djangoapps.courseware.tests.factories import InstructorFactory from lms.djangoapps.discussion.django_comment_client.constants import TYPE_ENTRY, TYPE_SUBCATEGORY from lms.djangoapps.discussion.django_comment_client.tests.factories import RoleFactory from lms.djangoapps.discussion.django_comment_client.tests.unicode import UnicodeTestMixin diff --git a/lms/djangoapps/discussion/django_comment_client/utils.py b/lms/djangoapps/discussion/django_comment_client/utils.py index ffc994769a04208d2ed0682a01e8e4bfe913d584..d09195116a276e9ccca972597782fbd1fea62a2a 100644 --- a/lms/djangoapps/discussion/django_comment_client/utils.py +++ b/lms/djangoapps/discussion/django_comment_client/utils.py @@ -18,8 +18,8 @@ from pytz import UTC from six import text_type from six.moves import map -from courseware import courses -from courseware.access import has_access +from lms.djangoapps.courseware import courses +from lms.djangoapps.courseware.access import has_access from lms.djangoapps.discussion.django_comment_client.constants import TYPE_ENTRY, TYPE_SUBCATEGORY from lms.djangoapps.discussion.django_comment_client.permissions import ( check_permissions_by_view, diff --git a/lms/djangoapps/discussion/management/commands/get_discussion_link.py b/lms/djangoapps/discussion/management/commands/get_discussion_link.py index f275ecdfb3feba7a9bc9bf9c8c73fa5dfd117a2a..99b6b690e00406d29983dca520d92be371781ffa 100644 --- a/lms/djangoapps/discussion/management/commands/get_discussion_link.py +++ b/lms/djangoapps/discussion/management/commands/get_discussion_link.py @@ -4,7 +4,7 @@ from __future__ import absolute_import from django.core.management.base import BaseCommand, CommandError from opaque_keys.edx.keys import CourseKey -from courseware.courses import get_course +from lms.djangoapps.courseware.courses import get_course class Command(BaseCommand): diff --git a/lms/djangoapps/discussion/plugins.py b/lms/djangoapps/discussion/plugins.py index e66de9b8d8ab00b008e4791215366986727cabbb..c64d409763eea74054d65ab443e2fa69d0adbb9e 100644 --- a/lms/djangoapps/discussion/plugins.py +++ b/lms/djangoapps/discussion/plugins.py @@ -8,7 +8,7 @@ from django.conf import settings from django.utils.translation import ugettext_noop import lms.djangoapps.discussion.django_comment_client.utils as utils -from courseware.tabs import EnrolledTab +from lms.djangoapps.courseware.tabs import EnrolledTab from xmodule.tabs import TabFragmentViewMixin from .config import USE_BOOTSTRAP_FLAG diff --git a/lms/djangoapps/discussion/rest_api/forms.py b/lms/djangoapps/discussion/rest_api/forms.py index fd25459c1873c69d7219bf86412d8032713a504e..d0a995473e3d259bd3e7f202793746cc38cf8b39 100644 --- a/lms/djangoapps/discussion/rest_api/forms.py +++ b/lms/djangoapps/discussion/rest_api/forms.py @@ -13,7 +13,7 @@ from opaque_keys.edx.keys import CourseKey from opaque_keys.edx.locator import CourseLocator from six import text_type -from courseware.courses import get_course_with_access +from lms.djangoapps.courseware.courses import get_course_with_access from openedx.core.djangoapps.django_comment_common.models import ( FORUM_ROLE_COMMUNITY_TA, FORUM_ROLE_GROUP_MODERATOR, diff --git a/lms/djangoapps/discussion/rest_api/tests/test_api.py b/lms/djangoapps/discussion/rest_api/tests/test_api.py index 17746205dd805f42f1550694fdb22a309e2e566f..ee8d7486e14d9f692d3002fe6af275adc299c3fa 100644 --- a/lms/djangoapps/discussion/rest_api/tests/test_api.py +++ b/lms/djangoapps/discussion/rest_api/tests/test_api.py @@ -19,7 +19,7 @@ from six.moves import range from six.moves.urllib.parse import parse_qs, urlencode, urlparse, urlunparse # pylint: disable=import-error from common.test.utils import MockSignalHandlerMixin, disable_signal -from courseware.tests.factories import BetaTesterFactory, StaffFactory +from lms.djangoapps.courseware.tests.factories import BetaTesterFactory, StaffFactory from lms.djangoapps.discussion.django_comment_client.tests.utils import ForumsEnableMixin from lms.djangoapps.discussion.rest_api import api from lms.djangoapps.discussion.rest_api.api import ( diff --git a/lms/djangoapps/discussion/views.py b/lms/djangoapps/discussion/views.py index a82c279631303917b2d9aafdad064ca44410dcea..92838fcc1074be88d9dd40e818f1724d7886f9f7 100644 --- a/lms/djangoapps/discussion/views.py +++ b/lms/djangoapps/discussion/views.py @@ -26,9 +26,9 @@ from web_fragments.fragment import Fragment import lms.djangoapps.discussion.django_comment_client.utils as utils import openedx.core.djangoapps.django_comment_common.comment_client as cc -from courseware.access import has_access -from courseware.courses import get_course_with_access -from courseware.views.views import CourseTabView +from lms.djangoapps.courseware.access import has_access +from lms.djangoapps.courseware.courses import get_course_with_access +from lms.djangoapps.courseware.views.views import CourseTabView from lms.djangoapps.discussion.django_comment_client.base.views import track_thread_viewed_event from lms.djangoapps.discussion.django_comment_client.constants import TYPE_ENTRY from lms.djangoapps.discussion.django_comment_client.permissions import get_team, has_permission diff --git a/lms/djangoapps/edxnotes/helpers.py b/lms/djangoapps/edxnotes/helpers.py index 835c0f1364345aca53a03c92e23023ee9a65c8cc..fb8de803af6ba945d2a998f675fe79cf8a979329 100644 --- a/lms/djangoapps/edxnotes/helpers.py +++ b/lms/djangoapps/edxnotes/helpers.py @@ -21,8 +21,8 @@ from oauth2_provider.models import Application from opaque_keys.edx.keys import UsageKey from requests.exceptions import RequestException -from courseware.access import has_access -from courseware.courses import get_current_child +from lms.djangoapps.courseware.access import has_access +from lms.djangoapps.courseware.courses import get_current_child from edxnotes.exceptions import EdxNotesParseError, EdxNotesServiceUnavailable from edxnotes.plugins import EdxNotesTab from lms.lib.utils import get_parent_unit diff --git a/lms/djangoapps/edxnotes/plugins.py b/lms/djangoapps/edxnotes/plugins.py index ef94555fecfb07e2d2e7d65d29828ff3081da0c8..87e60fd3d7473f0c7e6fe42fdfcd71ee61bbdc82 100644 --- a/lms/djangoapps/edxnotes/plugins.py +++ b/lms/djangoapps/edxnotes/plugins.py @@ -6,7 +6,7 @@ from __future__ import absolute_import from django.conf import settings from django.utils.translation import ugettext_noop -from courseware.tabs import EnrolledTab +from lms.djangoapps.courseware.tabs import EnrolledTab class EdxNotesTab(EnrolledTab): diff --git a/lms/djangoapps/edxnotes/tests.py b/lms/djangoapps/edxnotes/tests.py index dc6d9a80857c692d1ecccdff44c5951d70582a30..44a45fbfcb1436a4efa1c3daf7813529630d36d5 100644 --- a/lms/djangoapps/edxnotes/tests.py +++ b/lms/djangoapps/edxnotes/tests.py @@ -22,9 +22,9 @@ from django.urls import reverse from mock import MagicMock, patch from oauth2_provider.models import Application -from courseware.model_data import FieldDataCache -from courseware.module_render import get_module_for_descriptor -from courseware.tabs import get_course_tab_list +from lms.djangoapps.courseware.model_data import FieldDataCache +from lms.djangoapps.courseware.module_render import get_module_for_descriptor +from lms.djangoapps.courseware.tabs import get_course_tab_list from edxmako.shortcuts import render_to_string from edxnotes import helpers from edxnotes.decorators import edxnotes diff --git a/lms/djangoapps/edxnotes/views.py b/lms/djangoapps/edxnotes/views.py index 6833f19be42065aff00122fc9dd0960cf180566c..818b34cd7d673b52e48d0890029c3110570e9ea7 100644 --- a/lms/djangoapps/edxnotes/views.py +++ b/lms/djangoapps/edxnotes/views.py @@ -18,9 +18,9 @@ from rest_framework.response import Response from rest_framework.views import APIView from six import text_type -from courseware.courses import get_course_with_access -from courseware.model_data import FieldDataCache -from courseware.module_render import get_module_for_descriptor +from lms.djangoapps.courseware.courses import get_course_with_access +from lms.djangoapps.courseware.model_data import FieldDataCache +from lms.djangoapps.courseware.module_render import get_module_for_descriptor from edxmako.shortcuts import render_to_response from edxnotes.exceptions import EdxNotesParseError, EdxNotesServiceUnavailable from edxnotes.helpers import ( diff --git a/lms/djangoapps/experiments/utils.py b/lms/djangoapps/experiments/utils.py index 29dca2073a4556b6494dc722cc397261707676d5..4026ec9b97718a86ddd689cbfe0525174181aa04 100644 --- a/lms/djangoapps/experiments/utils.py +++ b/lms/djangoapps/experiments/utils.py @@ -13,8 +13,8 @@ from opaque_keys import InvalidKeyError from opaque_keys.edx.keys import CourseKey from course_modes.models import format_course_price, get_cosmetic_verified_display_price, CourseMode -from courseware.access import has_staff_access_to_preview_mode -from courseware.date_summary import verified_upgrade_deadline_link, verified_upgrade_link_is_valid +from lms.djangoapps.courseware.access import has_staff_access_to_preview_mode +from lms.djangoapps.courseware.date_summary import verified_upgrade_deadline_link, verified_upgrade_link_is_valid from entitlements.models import CourseEntitlement from lms.djangoapps.commerce.utils import EcommerceService from openedx.core.djangoapps.catalog.utils import get_programs diff --git a/lms/djangoapps/gating/tests/test_api.py b/lms/djangoapps/gating/tests/test_api.py index 7afc104298258802c9eb81e8f7762b5fb8c7fa04..02f8cb4299a0554f4ff80c1bae3c4d4c0b1b8285 100644 --- a/lms/djangoapps/gating/tests/test_api.py +++ b/lms/djangoapps/gating/tests/test_api.py @@ -8,7 +8,7 @@ from milestones import api as milestones_api from milestones.tests.utils import MilestonesTestCaseMixin from mock import Mock, patch -from courseware.tests.helpers import LoginEnrollmentTestCase +from lms.djangoapps.courseware.tests.helpers import LoginEnrollmentTestCase from gating.api import evaluate_prerequisite from openedx.core.lib.gating import api as gating_api from xmodule.modulestore.tests.django_utils import ModuleStoreTestCase diff --git a/lms/djangoapps/grades/management/commands/recalculate_subsection_grades.py b/lms/djangoapps/grades/management/commands/recalculate_subsection_grades.py index e4f7895297eade0c4dc1012cae3211443581c78f..a1f6948c11aaa4b748002275ad45c83c7327dde4 100644 --- a/lms/djangoapps/grades/management/commands/recalculate_subsection_grades.py +++ b/lms/djangoapps/grades/management/commands/recalculate_subsection_grades.py @@ -13,7 +13,7 @@ from django.core.management.base import BaseCommand, CommandError from pytz import utc from submissions.models import Submission -from courseware.models import StudentModule +from lms.djangoapps.courseware.models import StudentModule from lms.djangoapps.grades.constants import ScoreDatabaseTableEnum from lms.djangoapps.grades.events import PROBLEM_SUBMITTED_EVENT_TYPE from lms.djangoapps.grades.tasks import recalculate_subsection_grade_v3 diff --git a/lms/djangoapps/grades/migrations/0001_initial.py b/lms/djangoapps/grades/migrations/0001_initial.py index 47842aa377f2bbca73e97a41fca9511195bd26be..6ad43b0df7f2f35ba82033e6a179f01e54b12570 100644 --- a/lms/djangoapps/grades/migrations/0001_initial.py +++ b/lms/djangoapps/grades/migrations/0001_initial.py @@ -6,7 +6,7 @@ import model_utils.fields from django.db import migrations, models from opaque_keys.edx.django.models import CourseKeyField, UsageKeyField -from courseware.fields import UnsignedBigIntAutoField +from lms.djangoapps.courseware.fields import UnsignedBigIntAutoField class Migration(migrations.Migration): diff --git a/lms/djangoapps/grades/migrations/0006_persistent_course_grades.py b/lms/djangoapps/grades/migrations/0006_persistent_course_grades.py index 0ea85675d69bf1c631664e5a9f9aa6ef9b5cb7d3..f5b1534932dcbbd4af5cb70000376325d2260517 100644 --- a/lms/djangoapps/grades/migrations/0006_persistent_course_grades.py +++ b/lms/djangoapps/grades/migrations/0006_persistent_course_grades.py @@ -6,7 +6,7 @@ import model_utils.fields from django.db import migrations, models from opaque_keys.edx.django.models import CourseKeyField -from courseware.fields import UnsignedBigIntAutoField +from lms.djangoapps.courseware.fields import UnsignedBigIntAutoField class Migration(migrations.Migration): diff --git a/lms/djangoapps/grades/migrations/0013_persistentsubsectiongradeoverride.py b/lms/djangoapps/grades/migrations/0013_persistentsubsectiongradeoverride.py index 28f5ed61e0d5ca1108a27a98b3703e26494d3a27..ecd104e45e3a298e32b0a69971cadbb59907bea1 100644 --- a/lms/djangoapps/grades/migrations/0013_persistentsubsectiongradeoverride.py +++ b/lms/djangoapps/grades/migrations/0013_persistentsubsectiongradeoverride.py @@ -3,7 +3,7 @@ from __future__ import absolute_import, unicode_literals from django.db import migrations, models -from courseware.fields import UnsignedBigIntOneToOneField +from lms.djangoapps.courseware.fields import UnsignedBigIntOneToOneField class Migration(migrations.Migration): diff --git a/lms/djangoapps/grades/models.py b/lms/djangoapps/grades/models.py index dc412594feaf38536461a3e991978e759910a573..9411712c291960cae4e49f086d2f97a73604131f 100644 --- a/lms/djangoapps/grades/models.py +++ b/lms/djangoapps/grades/models.py @@ -29,7 +29,7 @@ from opaque_keys.edx.keys import CourseKey, UsageKey from simple_history.models import HistoricalRecords from six.moves import map -from courseware.fields import UnsignedBigIntAutoField, UnsignedBigIntOneToOneField +from lms.djangoapps.courseware.fields import UnsignedBigIntAutoField, UnsignedBigIntOneToOneField from lms.djangoapps.grades import constants, events from openedx.core.lib.cache_utils import get_cache diff --git a/lms/djangoapps/grades/rest_api/v1/gradebook_views.py b/lms/djangoapps/grades/rest_api/v1/gradebook_views.py index 1266172b0ecb6f0e59cb02786d6a0c65ceb8f050..3a13719f30468793fc05381be13a865b01d4df16 100644 --- a/lms/djangoapps/grades/rest_api/v1/gradebook_views.py +++ b/lms/djangoapps/grades/rest_api/v1/gradebook_views.py @@ -20,7 +20,7 @@ from rest_framework.response import Response from rest_framework.views import APIView from six import text_type -from courseware.courses import get_course_by_id +from lms.djangoapps.courseware.courses import get_course_by_id from lms.djangoapps.grades.api import CourseGradeFactory, clear_prefetched_course_and_subsection_grades from lms.djangoapps.grades.api import constants as grades_constants from lms.djangoapps.grades.api import context as grades_context diff --git a/lms/djangoapps/grades/signals/handlers.py b/lms/djangoapps/grades/signals/handlers.py index bb5bf19b98db94af37bb8f77b42a0a298e0fd6fc..a59643d7127f50cf67698d432073b8cc83ad0867 100644 --- a/lms/djangoapps/grades/signals/handlers.py +++ b/lms/djangoapps/grades/signals/handlers.py @@ -12,7 +12,7 @@ from opaque_keys.edx.keys import LearningContextKey from submissions.models import score_reset, score_set from xblock.scorable import ScorableXBlockMixin, Score -from courseware.model_data import get_score, set_score +from lms.djangoapps.courseware.model_data import get_score, set_score from openedx.core.djangoapps.course_groups.signals.signals import COHORT_MEMBERSHIP_UPDATED from openedx.core.lib.grade_utils import is_score_higher_or_equal from student.models import user_by_anonymous_id diff --git a/lms/djangoapps/grades/subsection_grade_factory.py b/lms/djangoapps/grades/subsection_grade_factory.py index ac47cc6149faa7132d107351a7168514b14d7447..c7f89b8cc527be3f41a8080210e18e9bb130c141 100644 --- a/lms/djangoapps/grades/subsection_grade_factory.py +++ b/lms/djangoapps/grades/subsection_grade_factory.py @@ -10,7 +10,7 @@ from logging import getLogger from lazy import lazy from submissions import api as submissions_api -from courseware.model_data import ScoresClient +from lms.djangoapps.courseware.model_data import ScoresClient from lms.djangoapps.grades.config import assume_zero_if_absent, should_persist_grades from lms.djangoapps.grades.models import PersistentSubsectionGrade from lms.djangoapps.grades.scores import possibly_scored diff --git a/lms/djangoapps/grades/tasks.py b/lms/djangoapps/grades/tasks.py index ccf6f0edecb29728381291e82686f0c38e6b9780..5c715537bc025923d7b420a5a051b3dded036de4 100644 --- a/lms/djangoapps/grades/tasks.py +++ b/lms/djangoapps/grades/tasks.py @@ -18,7 +18,7 @@ from opaque_keys.edx.keys import CourseKey, UsageKey from opaque_keys.edx.locator import CourseLocator from submissions import api as sub_api -from courseware.model_data import get_score +from lms.djangoapps.courseware.model_data import get_score from lms.djangoapps.course_blocks.api import get_course_blocks from lms.djangoapps.grades.config.models import ComputeGradesSetting from openedx.core.djangoapps.content.course_overviews.models import CourseOverview diff --git a/lms/djangoapps/grades/tests/integration/test_access.py b/lms/djangoapps/grades/tests/integration/test_access.py index 923705507f65ae04edb9137e4bfd28ad2b588860..08c5653b59a7b4953c396802e324afa70c0d4800 100644 --- a/lms/djangoapps/grades/tests/integration/test_access.py +++ b/lms/djangoapps/grades/tests/integration/test_access.py @@ -6,7 +6,7 @@ from __future__ import absolute_import from crum import set_current_request from capa.tests.response_xml_factory import MultipleChoiceResponseXMLFactory -from courseware.tests.test_submitting_problems import ProblemSubmissionTestMixin +from lms.djangoapps.courseware.tests.test_submitting_problems import ProblemSubmissionTestMixin from lms.djangoapps.course_blocks.api import get_course_blocks from openedx.core.djangolib.testing.utils import get_mock_request from student.models import CourseEnrollment diff --git a/lms/djangoapps/grades/tests/integration/test_events.py b/lms/djangoapps/grades/tests/integration/test_events.py index 829e37a9fa1d1089b9db9bf60ee71a4b6019ecf2..68a6d7f4c6ff4a72e2ce07fce7517643eb05dcf0 100644 --- a/lms/djangoapps/grades/tests/integration/test_events.py +++ b/lms/djangoapps/grades/tests/integration/test_events.py @@ -10,7 +10,7 @@ from mock import call as mock_call from mock import patch from capa.tests.response_xml_factory import MultipleChoiceResponseXMLFactory -from courseware.tests.test_submitting_problems import ProblemSubmissionTestMixin +from lms.djangoapps.courseware.tests.test_submitting_problems import ProblemSubmissionTestMixin from lms.djangoapps.instructor.enrollment import reset_student_attempts from lms.djangoapps.instructor_task.api import submit_rescore_problem_for_student from openedx.core.djangolib.testing.utils import get_mock_request diff --git a/lms/djangoapps/grades/tests/integration/test_problems.py b/lms/djangoapps/grades/tests/integration/test_problems.py index c52afb99c420db27a11abb8bacee3bd0a26b9a88..3c2984353e93ea970f835ae7a75f788441d93018 100644 --- a/lms/djangoapps/grades/tests/integration/test_problems.py +++ b/lms/djangoapps/grades/tests/integration/test_problems.py @@ -10,7 +10,7 @@ from crum import set_current_request from six.moves import range from capa.tests.response_xml_factory import MultipleChoiceResponseXMLFactory -from courseware.tests.test_submitting_problems import ProblemSubmissionTestMixin +from lms.djangoapps.courseware.tests.test_submitting_problems import ProblemSubmissionTestMixin from lms.djangoapps.course_blocks.api import get_course_blocks from openedx.core.djangolib.testing.utils import get_mock_request from student.models import CourseEnrollment diff --git a/lms/djangoapps/grades/tests/test_course_grade_factory.py b/lms/djangoapps/grades/tests/test_course_grade_factory.py index b64ddee3e316571a158d888e1f8bdc2b22f35316..8bba6c151c730ce1026252ad5505978383d9534a 100644 --- a/lms/djangoapps/grades/tests/test_course_grade_factory.py +++ b/lms/djangoapps/grades/tests/test_course_grade_factory.py @@ -10,7 +10,7 @@ from django.conf import settings from mock import patch from six import text_type -from courseware.access import has_access +from lms.djangoapps.courseware.access import has_access from lms.djangoapps.grades.config.tests.utils import persistent_grades_feature_flags from openedx.core.djangoapps.content.block_structure.factory import BlockStructureFactory from student.tests.factories import UserFactory diff --git a/lms/djangoapps/grades/tests/test_subsection_grade_factory.py b/lms/djangoapps/grades/tests/test_subsection_grade_factory.py index 93aa98998434b728fd02471054a67875fa859a12..53068d855d1eca56fe503a0c947f662999664015 100644 --- a/lms/djangoapps/grades/tests/test_subsection_grade_factory.py +++ b/lms/djangoapps/grades/tests/test_subsection_grade_factory.py @@ -7,7 +7,7 @@ import ddt from django.conf import settings from mock import patch -from courseware.tests.test_submitting_problems import ProblemSubmissionTestMixin +from lms.djangoapps.courseware.tests.test_submitting_problems import ProblemSubmissionTestMixin from lms.djangoapps.grades.config.tests.utils import persistent_grades_feature_flags from student.tests.factories import UserFactory diff --git a/lms/djangoapps/grades/tests/utils.py b/lms/djangoapps/grades/tests/utils.py index a0b97b8ab190c8bc3cae7dc48eaa4d35ede7909d..996fbe88f3291a765af5256e22469874593ab289 100644 --- a/lms/djangoapps/grades/tests/utils.py +++ b/lms/djangoapps/grades/tests/utils.py @@ -9,8 +9,8 @@ from datetime import datetime import pytz from mock import MagicMock, patch -from courseware.model_data import FieldDataCache -from courseware.module_render import get_module +from lms.djangoapps.courseware.model_data import FieldDataCache +from lms.djangoapps.courseware.module_render import get_module from xmodule.graders import ProblemScore diff --git a/lms/djangoapps/instructor/enrollment.py b/lms/djangoapps/instructor/enrollment.py index a6a57cee4f92ec3dbf309938d6d14800e7d46ab3..dc70eaff24343a454b1ffae961df1dd0a8092072 100644 --- a/lms/djangoapps/instructor/enrollment.py +++ b/lms/djangoapps/instructor/enrollment.py @@ -26,7 +26,7 @@ from submissions import api as sub_api # installed from the edx-submissions rep from submissions.models import score_set from course_modes.models import CourseMode -from courseware.models import StudentModule +from lms.djangoapps.courseware.models import StudentModule from lms.djangoapps.grades.api import constants as grades_constants from lms.djangoapps.grades.api import disconnect_submissions_signal_receiver from lms.djangoapps.grades.api import events as grades_events diff --git a/lms/djangoapps/instructor/paidcourse_enrollment_report.py b/lms/djangoapps/instructor/paidcourse_enrollment_report.py index 479761b2fff449d69b7aaa9b517468bc05b630ea..d4b67f30b1eb3d0492f659028d1cd28f4dd85024 100644 --- a/lms/djangoapps/instructor/paidcourse_enrollment_report.py +++ b/lms/djangoapps/instructor/paidcourse_enrollment_report.py @@ -9,8 +9,8 @@ import collections from django.conf import settings from django.utils.translation import ugettext as _ -from courseware.access import has_access -from courseware.courses import get_course_by_id +from lms.djangoapps.courseware.access import has_access +from lms.djangoapps.courseware.courses import get_course_by_id from lms.djangoapps.instructor.enrollment_report import BaseAbstractEnrollmentReportProvider from openedx.core.djangoapps.site_configuration import helpers as configuration_helpers from shoppingcart.models import ( diff --git a/lms/djangoapps/instructor/permissions.py b/lms/djangoapps/instructor/permissions.py index d47a4b28f108bc4548913d9cc3bdd92373d07e4e..e1d75a235b6fe12b5e81b4ac021fe8122c77edde 100644 --- a/lms/djangoapps/instructor/permissions.py +++ b/lms/djangoapps/instructor/permissions.py @@ -4,7 +4,7 @@ Permissions for the instructor dashboard and associated actions from bridgekeeper import perms from bridgekeeper.rules import is_staff -from courseware.rules import HasAccessRule +from lms.djangoapps.courseware.rules import HasAccessRule ALLOW_STUDENT_TO_BYPASS_ENTRANCE_EXAM = 'instructor.allow_student_to_bypass_entrance_exam' ASSIGN_TO_COHORTS = 'instructor.assign_to_cohorts' diff --git a/lms/djangoapps/instructor/services.py b/lms/djangoapps/instructor/services.py index b20208eaab2815e51dd22b012db52d6b5a94c8d3..200eafa27ec84b7c59eb5eccf5cf8d4de6ee2875 100644 --- a/lms/djangoapps/instructor/services.py +++ b/lms/djangoapps/instructor/services.py @@ -12,7 +12,7 @@ from opaque_keys import InvalidKeyError from opaque_keys.edx.keys import CourseKey, UsageKey import lms.djangoapps.instructor.enrollment as enrollment -from courseware.models import StudentModule +from lms.djangoapps.courseware.models import StudentModule from lms.djangoapps.commerce.utils import create_zendesk_ticket from lms.djangoapps.instructor.views.tools import get_student_from_identifier from student import auth diff --git a/lms/djangoapps/instructor/tests/test_api.py b/lms/djangoapps/instructor/tests/test_api.py index 122f60910f5ffcd864827dade8a7c168bee33e64..40b5759ca4e0bf927c5a790db9cdd4d9fa1f1292 100644 --- a/lms/djangoapps/instructor/tests/test_api.py +++ b/lms/djangoapps/instructor/tests/test_api.py @@ -38,15 +38,15 @@ from testfixtures import LogCapture from bulk_email.models import BulkEmailFlag, CourseEmail, CourseEmailTemplate from course_modes.models import CourseMode from course_modes.tests.factories import CourseModeFactory -from courseware.models import StudentModule -from courseware.tests.factories import ( +from lms.djangoapps.courseware.models import StudentModule +from lms.djangoapps.courseware.tests.factories import ( BetaTesterFactory, GlobalStaffFactory, InstructorFactory, StaffFactory, UserProfileFactory ) -from courseware.tests.helpers import LoginEnrollmentTestCase +from lms.djangoapps.courseware.tests.helpers import LoginEnrollmentTestCase from lms.djangoapps.certificates.api import generate_user_certificates from lms.djangoapps.certificates.models import CertificateStatuses from lms.djangoapps.certificates.tests.factories import GeneratedCertificateFactory diff --git a/lms/djangoapps/instructor/tests/test_api_email_localization.py b/lms/djangoapps/instructor/tests/test_api_email_localization.py index b818358bdec775c011ee599bb2ccdc87326c7adc..248b9b051025929dacbd87c048ff97b17e1a89ab 100644 --- a/lms/djangoapps/instructor/tests/test_api_email_localization.py +++ b/lms/djangoapps/instructor/tests/test_api_email_localization.py @@ -10,7 +10,7 @@ from django.test.utils import override_settings from django.urls import reverse from six import text_type -from courseware.tests.factories import InstructorFactory +from lms.djangoapps.courseware.tests.factories import InstructorFactory from openedx.core.djangoapps.lang_pref import LANGUAGE_KEY from openedx.core.djangoapps.user_api.preferences.api import delete_user_preference, set_user_preference from student.models import CourseEnrollment diff --git a/lms/djangoapps/instructor/tests/test_certificates.py b/lms/djangoapps/instructor/tests/test_certificates.py index 6d3104823d577f840932783740e5baa331f0bb2a..af5113cdd5f008b15ff4e20de8749471d47d3f8b 100644 --- a/lms/djangoapps/instructor/tests/test_certificates.py +++ b/lms/djangoapps/instructor/tests/test_certificates.py @@ -19,7 +19,7 @@ from django.urls import reverse from capa.xqueue_interface import XQueueInterface from course_modes.models import CourseMode -from courseware.tests.factories import GlobalStaffFactory, InstructorFactory, UserFactory +from lms.djangoapps.courseware.tests.factories import GlobalStaffFactory, InstructorFactory, UserFactory from lms.djangoapps.certificates import api as certs_api from lms.djangoapps.certificates.models import ( CertificateGenerationConfiguration, diff --git a/lms/djangoapps/instructor/tests/test_enrollment.py b/lms/djangoapps/instructor/tests/test_enrollment.py index 721604dddf452c31a98920f513af6af99e8738c1..e037c848121f4e42f0cce9f4b091c13c951ad5d2 100644 --- a/lms/djangoapps/instructor/tests/test_enrollment.py +++ b/lms/djangoapps/instructor/tests/test_enrollment.py @@ -20,7 +20,7 @@ from six import text_type from submissions import api as sub_api from capa.tests.response_xml_factory import MultipleChoiceResponseXMLFactory -from courseware.models import StudentModule +from lms.djangoapps.courseware.models import StudentModule from grades.subsection_grade_factory import SubsectionGradeFactory from grades.tests.utils import answer_problem from lms.djangoapps.ccx.tests.factories import CcxFactory diff --git a/lms/djangoapps/instructor/tests/test_registration_codes.py b/lms/djangoapps/instructor/tests/test_registration_codes.py index 15967584db73c8a222579e04fa39682d8ec0843b..29a0416ec17708f913a2ba935c5208d6bceeed92 100644 --- a/lms/djangoapps/instructor/tests/test_registration_codes.py +++ b/lms/djangoapps/instructor/tests/test_registration_codes.py @@ -14,7 +14,7 @@ from six.moves import range from course_modes.models import CourseMode from course_modes.tests.factories import CourseModeFactory -from courseware.tests.factories import InstructorFactory +from lms.djangoapps.courseware.tests.factories import InstructorFactory from shoppingcart.models import ( CourseRegCodeItem, CourseRegistrationCode, diff --git a/lms/djangoapps/instructor/tests/test_services.py b/lms/djangoapps/instructor/tests/test_services.py index ee2723051d52b9128e66b182d969090519b00469..970624854cd204032046d48934c1d503f2d38f92 100644 --- a/lms/djangoapps/instructor/tests/test_services.py +++ b/lms/djangoapps/instructor/tests/test_services.py @@ -9,7 +9,7 @@ import json import mock import six -from courseware.models import StudentModule +from lms.djangoapps.courseware.models import StudentModule from lms.djangoapps.instructor.access import allow_access from lms.djangoapps.instructor.services import InstructorService from lms.djangoapps.instructor.tests.test_tools import msk_from_problem_urlname diff --git a/lms/djangoapps/instructor/tests/test_spoc_gradebook.py b/lms/djangoapps/instructor/tests/test_spoc_gradebook.py index e335d18569a7770112faf5755585657ad08d0874..f4c0036bc1714efab27c78677e7739ce8baa4da2 100644 --- a/lms/djangoapps/instructor/tests/test_spoc_gradebook.py +++ b/lms/djangoapps/instructor/tests/test_spoc_gradebook.py @@ -9,7 +9,7 @@ from six import text_type from six.moves import range from capa.tests.response_xml_factory import StringResponseXMLFactory -from courseware.tests.factories import StudentModuleFactory +from lms.djangoapps.courseware.tests.factories import StudentModuleFactory from lms.djangoapps.grades.api import task_compute_all_grades_for_course from student.tests.factories import AdminFactory, CourseEnrollmentFactory, UserFactory from xmodule.modulestore.tests.django_utils import SharedModuleStoreTestCase diff --git a/lms/djangoapps/instructor/tests/views/test_instructor_dashboard.py b/lms/djangoapps/instructor/tests/views/test_instructor_dashboard.py index fe8a7d1cb8923aa884adaa8670aea1461deafc6c..229bf43300f73485a9a84b28a576af116490d56e 100644 --- a/lms/djangoapps/instructor/tests/views/test_instructor_dashboard.py +++ b/lms/djangoapps/instructor/tests/views/test_instructor_dashboard.py @@ -20,9 +20,9 @@ from six.moves import range from common.test.utils import XssTestMixin from course_modes.models import CourseMode -from courseware.tabs import get_course_tab_list -from courseware.tests.factories import StaffFactory, StudentModuleFactory, UserFactory -from courseware.tests.helpers import LoginEnrollmentTestCase +from lms.djangoapps.courseware.tabs import get_course_tab_list +from lms.djangoapps.courseware.tests.factories import StaffFactory, StudentModuleFactory, UserFactory +from lms.djangoapps.courseware.tests.helpers import LoginEnrollmentTestCase from edxmako.shortcuts import render_to_response from lms.djangoapps.grades.config.waffle import WRITABLE_GRADEBOOK, waffle_flags from lms.djangoapps.instructor.views.gradebook_api import calculate_page_info diff --git a/lms/djangoapps/instructor/utils.py b/lms/djangoapps/instructor/utils.py index 752d969916ae26f8bd009dcb09f1d781faca0ba5..c17213d7ea770c4a736045654d642a780867eda9 100644 --- a/lms/djangoapps/instructor/utils.py +++ b/lms/djangoapps/instructor/utils.py @@ -4,8 +4,8 @@ Helpers for instructor app. from __future__ import absolute_import -from courseware.model_data import FieldDataCache -from courseware.module_render import get_module +from lms.djangoapps.courseware.model_data import FieldDataCache +from lms.djangoapps.courseware.module_render import get_module from xmodule.modulestore.django import modulestore diff --git a/lms/djangoapps/instructor/views/api.py b/lms/djangoapps/instructor/views/api.py index 6e9b65055e6a71fd6509909d5ccb2c45fe094c5f..df483f74697b3c4802481a8e07cf5505f4cfeffe 100644 --- a/lms/djangoapps/instructor/views/api.py +++ b/lms/djangoapps/instructor/views/api.py @@ -50,9 +50,9 @@ import instructor_analytics.csvs import instructor_analytics.distributions from bulk_email.api import is_bulk_email_feature_enabled from bulk_email.models import CourseEmail -from courseware.access import has_access -from courseware.courses import get_course_by_id, get_course_with_access -from courseware.models import StudentModule +from lms.djangoapps.courseware.access import has_access +from lms.djangoapps.courseware.courses import get_course_by_id, get_course_with_access +from lms.djangoapps.courseware.models import StudentModule from edxmako.shortcuts import render_to_string from lms.djangoapps.certificates import api as certs_api from lms.djangoapps.certificates.models import ( diff --git a/lms/djangoapps/instructor/views/gradebook_api.py b/lms/djangoapps/instructor/views/gradebook_api.py index 6e6fe7bd7255bf56873cf2a23e0076417ca9631b..532180f54d127fd9dbeeecf2d87b93f9633cd9ec 100644 --- a/lms/djangoapps/instructor/views/gradebook_api.py +++ b/lms/djangoapps/instructor/views/gradebook_api.py @@ -13,7 +13,7 @@ from django.urls import reverse from django.views.decorators.cache import cache_control from opaque_keys.edx.keys import CourseKey -from courseware.courses import get_course_with_access +from lms.djangoapps.courseware.courses import get_course_with_access from edxmako.shortcuts import render_to_response from lms.djangoapps.grades.api import CourseGradeFactory from lms.djangoapps.instructor.views.api import require_level diff --git a/lms/djangoapps/instructor/views/instructor_dashboard.py b/lms/djangoapps/instructor/views/instructor_dashboard.py index 93da9f22d7570a6ee5c7bc388b0a8595686cc2b2..712bf4f12fa984db2882a2b9edf1315031a4ac5b 100644 --- a/lms/djangoapps/instructor/views/instructor_dashboard.py +++ b/lms/djangoapps/instructor/views/instructor_dashboard.py @@ -32,8 +32,8 @@ from xblock.fields import ScopeIds from bulk_email.api import is_bulk_email_feature_enabled from class_dashboard.dashboard_data import get_array_section_has_problem, get_section_display_name from course_modes.models import CourseMode, CourseModesArchive -from courseware.access import has_access -from courseware.courses import get_course_by_id, get_studio_url +from lms.djangoapps.courseware.access import has_access +from lms.djangoapps.courseware.courses import get_course_by_id, get_studio_url from edxmako.shortcuts import render_to_response from lms.djangoapps.certificates import api as certs_api from lms.djangoapps.certificates.models import ( diff --git a/lms/djangoapps/instructor/views/registration_codes.py b/lms/djangoapps/instructor/views/registration_codes.py index 063802b4f9a0c6ec546f48338693c122e19865e0..01e199f4d512c6629202514b7ac8fbaf65387485 100644 --- a/lms/djangoapps/instructor/views/registration_codes.py +++ b/lms/djangoapps/instructor/views/registration_codes.py @@ -12,7 +12,7 @@ from django.views.decorators.cache import cache_control from django.views.decorators.http import require_GET, require_POST from opaque_keys.edx.locator import CourseKey -from courseware.courses import get_course_by_id +from lms.djangoapps.courseware.courses import get_course_by_id from lms.djangoapps.instructor.enrollment import get_email_params, send_mail_to_student from lms.djangoapps.instructor.views.api import require_level from shoppingcart.models import CourseRegistrationCode, RegistrationCodeRedemption diff --git a/lms/djangoapps/instructor_analytics/basic.py b/lms/djangoapps/instructor_analytics/basic.py index d4eedf2680370aace388c9de420d44293b734ea8..d45d792446fa8fd582070f6a8a5939cac2d2ec55 100644 --- a/lms/djangoapps/instructor_analytics/basic.py +++ b/lms/djangoapps/instructor_analytics/basic.py @@ -21,7 +21,7 @@ from opaque_keys.edx.keys import CourseKey, UsageKey from six import text_type import xmodule.graders as xmgraders -from courseware.models import StudentModule +from lms.djangoapps.courseware.models import StudentModule from lms.djangoapps.certificates.models import CertificateStatuses, GeneratedCertificate from lms.djangoapps.grades.api import context as grades_context from lms.djangoapps.verify_student.services import IDVerificationService diff --git a/lms/djangoapps/instructor_analytics/tests/test_basic.py b/lms/djangoapps/instructor_analytics/tests/test_basic.py index aab5aab07698d86df657488f1e1e3d256776a423..eebfaec3df1bf07f05735336ff65b251f2f22d28 100644 --- a/lms/djangoapps/instructor_analytics/tests/test_basic.py +++ b/lms/djangoapps/instructor_analytics/tests/test_basic.py @@ -20,7 +20,7 @@ from six.moves import range, zip from course_modes.models import CourseMode from course_modes.tests.factories import CourseModeFactory -from courseware.tests.factories import InstructorFactory +from lms.djangoapps.courseware.tests.factories import InstructorFactory from lms.djangoapps.instructor_analytics.basic import ( AVAILABLE_FEATURES, PROFILE_FEATURES, diff --git a/lms/djangoapps/instructor_task/api_helper.py b/lms/djangoapps/instructor_task/api_helper.py index 349ec1e6b1ad2f25b5dbf001bc95cee665c957fc..bf49deda9d6f88049e6e864e3811a4c7df8588cf 100644 --- a/lms/djangoapps/instructor_task/api_helper.py +++ b/lms/djangoapps/instructor_task/api_helper.py @@ -17,8 +17,8 @@ from opaque_keys.edx.keys import UsageKey import six from six import text_type -from courseware.courses import get_problems_in_section -from courseware.module_render import get_xqueue_callback_url_prefix +from lms.djangoapps.courseware.courses import get_problems_in_section +from lms.djangoapps.courseware.module_render import get_xqueue_callback_url_prefix from lms.djangoapps.instructor_task.models import PROGRESS, InstructorTask from util.db import outer_atomic from xmodule.modulestore.django import modulestore diff --git a/lms/djangoapps/instructor_task/tasks_helper/enrollments.py b/lms/djangoapps/instructor_task/tasks_helper/enrollments.py index f23d3d66308dfb4a1c9ca293e3731333c9f40ad6..5e06cc68edc9046094a50ca9fefc460854365b2f 100644 --- a/lms/djangoapps/instructor_task/tasks_helper/enrollments.py +++ b/lms/djangoapps/instructor_task/tasks_helper/enrollments.py @@ -12,7 +12,7 @@ from django.conf import settings from django.utils.translation import ugettext as _ from pytz import UTC -from courseware.courses import get_course_by_id +from lms.djangoapps.courseware.courses import get_course_by_id from edxmako.shortcuts import render_to_string from lms.djangoapps.instructor_analytics.basic import enrolled_students_features, list_may_enroll from lms.djangoapps.instructor_analytics.csvs import format_dictlist diff --git a/lms/djangoapps/instructor_task/tasks_helper/grades.py b/lms/djangoapps/instructor_task/tasks_helper/grades.py index 5ca6f833f2af574b6a0089dab2a7e8a350bb4245..dc4026b0366b8ce7ec4e620da2e0000c036c17c2 100644 --- a/lms/djangoapps/instructor_task/tasks_helper/grades.py +++ b/lms/djangoapps/instructor_task/tasks_helper/grades.py @@ -20,8 +20,8 @@ from six import text_type from six.moves import zip, zip_longest from course_blocks.api import get_course_blocks -from courseware.courses import get_course_by_id -from courseware.user_state_client import DjangoXBlockUserStateClient +from lms.djangoapps.courseware.courses import get_course_by_id +from lms.djangoapps.courseware.user_state_client import DjangoXBlockUserStateClient from lms.djangoapps.instructor_analytics.basic import list_problem_responses from lms.djangoapps.instructor_analytics.csvs import format_dictlist from lms.djangoapps.certificates.models import CertificateWhitelist, GeneratedCertificate, certificate_info_for_user diff --git a/lms/djangoapps/instructor_task/tasks_helper/module_state.py b/lms/djangoapps/instructor_task/tasks_helper/module_state.py index 39cb7581e1651e9bab49c5a55fbb636fddf53033..d1c1461bcc57d097e5fc285cb99dc5947644a746 100644 --- a/lms/djangoapps/instructor_task/tasks_helper/module_state.py +++ b/lms/djangoapps/instructor_task/tasks_helper/module_state.py @@ -14,10 +14,10 @@ from xblock.runtime import KvsFieldData from xblock.scorable import Score from capa.responsetypes import LoncapaProblemError, ResponseError, StudentInputError -from courseware.courses import get_course_by_id, get_problems_in_section -from courseware.model_data import DjangoKeyValueStore, FieldDataCache -from courseware.models import StudentModule -from courseware.module_render import get_module_for_descriptor_internal +from lms.djangoapps.courseware.courses import get_course_by_id, get_problems_in_section +from lms.djangoapps.courseware.model_data import DjangoKeyValueStore, FieldDataCache +from lms.djangoapps.courseware.models import StudentModule +from lms.djangoapps.courseware.module_render import get_module_for_descriptor_internal from lms.djangoapps.grades.api import events as grades_events from student.models import get_user_by_username_or_email from track.event_transaction_utils import create_new_event_transaction_id, set_event_transaction_type diff --git a/lms/djangoapps/instructor_task/tests/test_api.py b/lms/djangoapps/instructor_task/tests/test_api.py index eae423d5b0750870e5b18fa91fa4457b8af1419d..b7041397b5d787f0bff4c5b4eaa5cc01394bc444 100644 --- a/lms/djangoapps/instructor_task/tests/test_api.py +++ b/lms/djangoapps/instructor_task/tests/test_api.py @@ -10,7 +10,7 @@ from six.moves import range from bulk_email.models import SEND_TO_LEARNERS, SEND_TO_MYSELF, SEND_TO_STAFF, CourseEmail from common.test.utils import normalize_repr -from courseware.tests.factories import UserFactory +from lms.djangoapps.courseware.tests.factories import UserFactory from lms.djangoapps.certificates.models import CertificateGenerationHistory, CertificateStatuses from lms.djangoapps.instructor_task.api import ( SpecificStudentIdMissingError, diff --git a/lms/djangoapps/instructor_task/tests/test_base.py b/lms/djangoapps/instructor_task/tests/test_base.py index 24fd6915e3aeb7ee22738a88387a2bad2622a838..53205f6dfeff1f46d86e308578fc1e36b3e8c2c8 100644 --- a/lms/djangoapps/instructor_task/tests/test_base.py +++ b/lms/djangoapps/instructor_task/tests/test_base.py @@ -22,8 +22,8 @@ from opaque_keys.edx.locations import Location from six import text_type from capa.tests.response_xml_factory import OptionResponseXMLFactory -from courseware.model_data import StudentModule -from courseware.tests.tests import LoginEnrollmentTestCase +from lms.djangoapps.courseware.model_data import StudentModule +from lms.djangoapps.courseware.tests.tests import LoginEnrollmentTestCase from lms.djangoapps.instructor_task.api_helper import encode_problem_and_student_input from lms.djangoapps.instructor_task.models import PROGRESS, QUEUING, ReportStore from lms.djangoapps.instructor_task.tests.factories import InstructorTaskFactory diff --git a/lms/djangoapps/instructor_task/tests/test_integration.py b/lms/djangoapps/instructor_task/tests/test_integration.py index a0137041f5960900768b8e7412189b5797189907..d77532f3fe345b311984eea615572e5692e69afb 100644 --- a/lms/djangoapps/instructor_task/tests/test_integration.py +++ b/lms/djangoapps/instructor_task/tests/test_integration.py @@ -23,7 +23,7 @@ from six.moves import range from capa.responsetypes import StudentInputError from capa.tests.response_xml_factory import CodeResponseXMLFactory, CustomResponseXMLFactory -from courseware.model_data import StudentModule +from lms.djangoapps.courseware.model_data import StudentModule from lms.djangoapps.grades.api import CourseGradeFactory from lms.djangoapps.instructor_task.api import ( submit_delete_problem_state_for_all_students, diff --git a/lms/djangoapps/instructor_task/tests/test_tasks.py b/lms/djangoapps/instructor_task/tests/test_tasks.py index 603d6acfbd0b1a27c9f359e0974ffb95a0500bd1..0ed37069821f95bb92d0dbb26ad84baa676d2a73 100644 --- a/lms/djangoapps/instructor_task/tests/test_tasks.py +++ b/lms/djangoapps/instructor_task/tests/test_tasks.py @@ -19,8 +19,8 @@ from opaque_keys.edx.locations import i4xEncoder from six.moves import range from course_modes.models import CourseMode -from courseware.models import StudentModule -from courseware.tests.factories import StudentModuleFactory +from lms.djangoapps.courseware.models import StudentModule +from lms.djangoapps.courseware.tests.factories import StudentModuleFactory from lms.djangoapps.instructor_task.exceptions import UpdateProblemModuleStateError from lms.djangoapps.instructor_task.models import InstructorTask from lms.djangoapps.instructor_task.tasks import ( diff --git a/lms/djangoapps/instructor_task/tests/test_tasks_helper.py b/lms/djangoapps/instructor_task/tests/test_tasks_helper.py index 2eab66f088ea041c2e40ea54c23901f4d37bf1b4..8468e2730189ce730381f421e090ed1b14ec04f0 100644 --- a/lms/djangoapps/instructor_task/tests/test_tasks_helper.py +++ b/lms/djangoapps/instructor_task/tests/test_tasks_helper.py @@ -32,7 +32,7 @@ import openedx.core.djangoapps.user_api.course_tag.api as course_tag_api from capa.tests.response_xml_factory import MultipleChoiceResponseXMLFactory from course_modes.models import CourseMode from course_modes.tests.factories import CourseModeFactory -from courseware.tests.factories import InstructorFactory +from lms.djangoapps.courseware.tests.factories import InstructorFactory from lms.djangoapps.certificates.models import CertificateStatuses, GeneratedCertificate from lms.djangoapps.certificates.tests.factories import CertificateWhitelistFactory, GeneratedCertificateFactory from lms.djangoapps.grades.models import PersistentCourseGrade diff --git a/lms/djangoapps/lti_provider/tests/test_views.py b/lms/djangoapps/lti_provider/tests/test_views.py index 430eb5ba40ddbd1d4928cdc14e5f6ac8a5724b70..5ad29b7930a77386d5129a6dcc3ec0d87b3dc055 100644 --- a/lms/djangoapps/lti_provider/tests/test_views.py +++ b/lms/djangoapps/lti_provider/tests/test_views.py @@ -11,7 +11,7 @@ from django.urls import reverse from mock import MagicMock, patch from opaque_keys.edx.locator import BlockUsageLocator, CourseLocator -from courseware.testutils import RenderXBlockTestMixin +from lms.djangoapps.courseware.testutils import RenderXBlockTestMixin from lti_provider import models, views from student.tests.factories import UserFactory from xmodule.modulestore.tests.django_utils import ModuleStoreTestCase diff --git a/lms/djangoapps/lti_provider/views.py b/lms/djangoapps/lti_provider/views.py index ec80bcfaebb7ca0ac0a6417bc3b1e34f9916d355..d67e16ab1c726e3a2d39021e78d75e3ac03003c0 100644 --- a/lms/djangoapps/lti_provider/views.py +++ b/lms/djangoapps/lti_provider/views.py @@ -146,7 +146,7 @@ def render_courseware(request, usage_key): context to render the courseware. """ # return an HttpResponse object that contains the template and necessary context to render the courseware. - from courseware.views.views import render_xblock + from lms.djangoapps.courseware.views.views import render_xblock return render_xblock(request, six.text_type(usage_key), check_if_enrolled=False) diff --git a/lms/djangoapps/mobile_api/course_info/views.py b/lms/djangoapps/mobile_api/course_info/views.py index 7e8d5271959952cd257000bffa7a081ee69834f1..ab66f7853e90d6739b4a0cb3b6a5b7c2a2fd3ff4 100644 --- a/lms/djangoapps/mobile_api/course_info/views.py +++ b/lms/djangoapps/mobile_api/course_info/views.py @@ -7,7 +7,7 @@ from __future__ import absolute_import from rest_framework import generics from rest_framework.response import Response -from courseware.courses import get_course_info_section_module +from lms.djangoapps.courseware.courses import get_course_info_section_module from openedx.core.lib.xblock_utils import get_course_update_items from static_replace import make_static_urls_absolute diff --git a/lms/djangoapps/mobile_api/tests/test_milestones.py b/lms/djangoapps/mobile_api/tests/test_milestones.py index 9515a25460895d5ad311ed76de45c19778a207f5..7aab67c34fb7ed28850c2d79cc889e95bae8d8ca 100644 --- a/lms/djangoapps/mobile_api/tests/test_milestones.py +++ b/lms/djangoapps/mobile_api/tests/test_milestones.py @@ -8,8 +8,8 @@ from crum import set_current_request from django.conf import settings from mock import patch -from courseware.access_response import MilestoneAccessError -from courseware.tests.test_entrance_exam import add_entrance_exam_milestone, answer_entrance_exam_problem +from lms.djangoapps.courseware.access_response import MilestoneAccessError +from lms.djangoapps.courseware.tests.test_entrance_exam import add_entrance_exam_milestone, answer_entrance_exam_problem from openedx.core.djangolib.testing.utils import get_mock_request from util.milestones_helpers import add_prerequisite_course, fulfill_course_milestone from xmodule.modulestore.tests.factories import CourseFactory, ItemFactory diff --git a/lms/djangoapps/mobile_api/testutils.py b/lms/djangoapps/mobile_api/testutils.py index e056d5035bf82ddbe9391175d4acd72e3a0588af..50bf949e415faed612ebdee9a390cfe54b183cdf 100644 --- a/lms/djangoapps/mobile_api/testutils.py +++ b/lms/djangoapps/mobile_api/testutils.py @@ -25,8 +25,8 @@ from mock import patch from opaque_keys.edx.keys import CourseKey from rest_framework.test import APITestCase -from courseware.access_response import MobileAvailabilityError, StartDateError, VisibilityError -from courseware.tests.factories import UserFactory +from lms.djangoapps.courseware.access_response import MobileAvailabilityError, StartDateError, VisibilityError +from lms.djangoapps.courseware.tests.factories import UserFactory from mobile_api.models import IgnoreMobileAvailableFlagConfig from mobile_api.tests.test_milestones import MobileAPIMilestonesMixin from mobile_api.utils import API_V1 diff --git a/lms/djangoapps/mobile_api/users/serializers.py b/lms/djangoapps/mobile_api/users/serializers.py index 45f9f96779c8ba541b8d4c3aa1f5d49fed3ea679..c985dfba9b1d513cabc6d1b9e96abf97fc872606 100644 --- a/lms/djangoapps/mobile_api/users/serializers.py +++ b/lms/djangoapps/mobile_api/users/serializers.py @@ -8,7 +8,7 @@ import six from rest_framework import serializers from rest_framework.reverse import reverse -from courseware.access import has_access +from lms.djangoapps.courseware.access import has_access from lms.djangoapps.certificates.api import certificate_downloadable_status from openedx.features.course_duration_limits.access import get_user_course_expiration_date from openedx.features.course_duration_limits.models import CourseDurationLimitConfig diff --git a/lms/djangoapps/mobile_api/users/tests.py b/lms/djangoapps/mobile_api/users/tests.py index 8eb2dbdee1bb81cdd2ac96353fab828ef577cf03..ee6eeba9655c4e46d95e0d5a6fceaa7dfd5f55a6 100644 --- a/lms/djangoapps/mobile_api/users/tests.py +++ b/lms/djangoapps/mobile_api/users/tests.py @@ -19,7 +19,7 @@ from six.moves import range from six.moves.urllib.parse import parse_qs # pylint: disable=import-error from course_modes.models import CourseMode -from courseware.access_response import MilestoneAccessError, StartDateError, VisibilityError +from lms.djangoapps.courseware.access_response import MilestoneAccessError, StartDateError, VisibilityError from lms.djangoapps.certificates.api import generate_user_certificates from lms.djangoapps.certificates.models import CertificateStatuses from lms.djangoapps.certificates.tests.factories import GeneratedCertificateFactory diff --git a/lms/djangoapps/mobile_api/users/views.py b/lms/djangoapps/mobile_api/users/views.py index 9c89da99e014de2a063dd7bb4f1d859f020a0d48..70f879f17746a7983a9bf1d79243a0852a9ba2ca 100644 --- a/lms/djangoapps/mobile_api/users/views.py +++ b/lms/djangoapps/mobile_api/users/views.py @@ -15,11 +15,11 @@ from rest_framework.response import Response from xblock.fields import Scope from xblock.runtime import KeyValueStore -from courseware.access import is_mobile_available_for_user -from courseware.courses import get_current_child -from courseware.model_data import FieldDataCache -from courseware.module_render import get_module_for_descriptor -from courseware.views.index import save_positions_recursively_up +from lms.djangoapps.courseware.access import is_mobile_available_for_user +from lms.djangoapps.courseware.courses import get_current_child +from lms.djangoapps.courseware.model_data import FieldDataCache +from lms.djangoapps.courseware.module_render import get_module_for_descriptor +from lms.djangoapps.courseware.views.index import save_positions_recursively_up from lms.djangoapps.courseware.access_utils import ACCESS_GRANTED from mobile_api.utils import API_V05 from openedx.features.course_duration_limits.access import check_course_expired diff --git a/lms/djangoapps/oauth2_handler/handlers.py b/lms/djangoapps/oauth2_handler/handlers.py index c8b8ad9211f4787337d274652cf572b538b87d73..85bf6cedf517d85498cb49d8c6fe4eeebc632c0c 100644 --- a/lms/djangoapps/oauth2_handler/handlers.py +++ b/lms/djangoapps/oauth2_handler/handlers.py @@ -6,7 +6,7 @@ import six from django.conf import settings from django.core.cache import cache -from courseware.access import has_access +from lms.djangoapps.courseware.access import has_access from openedx.core.djangoapps.content.course_overviews.models import CourseOverview from openedx.core.djangoapps.lang_pref import LANGUAGE_KEY from openedx.core.djangoapps.user_api.models import UserPreference diff --git a/lms/djangoapps/shoppingcart/models.py b/lms/djangoapps/shoppingcart/models.py index a3669f830834296dd641e502f5ec6e91a3c69806..f49c9ff72859329daac8c1620f3793cc344d38b7 100644 --- a/lms/djangoapps/shoppingcart/models.py +++ b/lms/djangoapps/shoppingcart/models.py @@ -35,7 +35,7 @@ from six import text_type from six.moves import range from course_modes.models import CourseMode -from courseware.courses import get_course_by_id +from lms.djangoapps.courseware.courses import get_course_by_id from edxmako.shortcuts import render_to_string from openedx.core.djangoapps.site_configuration import helpers as configuration_helpers from openedx.core.djangolib.markup import HTML, Text diff --git a/lms/djangoapps/shoppingcart/reports.py b/lms/djangoapps/shoppingcart/reports.py index 15b30a664e9bf945dba550e87b03b5e37f5d5a9d..322903c5e7bb6ba13d639e98947940bd84cfb79c 100644 --- a/lms/djangoapps/shoppingcart/reports.py +++ b/lms/djangoapps/shoppingcart/reports.py @@ -11,7 +11,7 @@ import six from six import text_type from course_modes.models import CourseMode -from courseware.courses import get_course_by_id +from lms.djangoapps.courseware.courses import get_course_by_id from shoppingcart.models import CertificateItem, OrderItem from student.models import CourseEnrollment from util.query import use_read_replica_if_available diff --git a/lms/djangoapps/shoppingcart/tests/test_views.py b/lms/djangoapps/shoppingcart/tests/test_views.py index 43dc7c01dea5c045cae7fb9a13a9ee4fba2fc76b..db448838ce5a74c7029fa18e4a3fc67bec5b53e4 100644 --- a/lms/djangoapps/shoppingcart/tests/test_views.py +++ b/lms/djangoapps/shoppingcart/tests/test_views.py @@ -31,7 +31,7 @@ from six.moves.urllib.parse import urlparse # pylint: disable=import-error from common.test.utils import XssTestMixin from course_modes.models import CourseMode from course_modes.tests.factories import CourseModeFactory -from courseware.tests.factories import InstructorFactory +from lms.djangoapps.courseware.tests.factories import InstructorFactory from edxmako.shortcuts import render_to_response from openedx.core.djangoapps.embargo.test_utils import restrict_course from shoppingcart.admin import SoftDeleteCouponAdmin diff --git a/lms/djangoapps/shoppingcart/views.py b/lms/djangoapps/shoppingcart/views.py index 1295341e3bf9baf396917c8c686354e9c88e6a62..645ffb0a6c266b93c9360662669c5d6d5a1e8085 100644 --- a/lms/djangoapps/shoppingcart/views.py +++ b/lms/djangoapps/shoppingcart/views.py @@ -33,7 +33,7 @@ from opaque_keys.edx.keys import CourseKey from opaque_keys.edx.locator import CourseLocator from course_modes.models import CourseMode -from courseware.courses import get_course_by_id +from lms.djangoapps.courseware.courses import get_course_by_id from edxmako.shortcuts import render_to_response from openedx.core.djangoapps.embargo import api as embargo_api from openedx.core.djangoapps.site_configuration import helpers as configuration_helpers diff --git a/lms/djangoapps/staticbook/views.py b/lms/djangoapps/staticbook/views.py index 2e0e33198b5fe9c26aec218c86c84e6f55198dcc..d184bfe1e40beccc54561390328f3e2bbbc87e09 100644 --- a/lms/djangoapps/staticbook/views.py +++ b/lms/djangoapps/staticbook/views.py @@ -9,8 +9,8 @@ from django.http import Http404 from django.views.decorators.clickjacking import xframe_options_exempt from opaque_keys.edx.keys import CourseKey -from courseware.access import has_access -from courseware.courses import get_course_with_access +from lms.djangoapps.courseware.access import has_access +from lms.djangoapps.courseware.courses import get_course_with_access from edxmako.shortcuts import render_to_response from static_replace import replace_static_urls diff --git a/lms/djangoapps/support/decorators.py b/lms/djangoapps/support/decorators.py index 7bf63b60412b6ed70009ecab02bec7a6ecfd4902..a1971e218ee6863bd43f7e85d175ba9bf27d0fe5 100644 --- a/lms/djangoapps/support/decorators.py +++ b/lms/djangoapps/support/decorators.py @@ -8,7 +8,7 @@ from functools import wraps from django.contrib.auth.decorators import login_required from django.http import HttpResponseForbidden -from courseware.access import has_access +from lms.djangoapps.courseware.access import has_access def require_support_permission(func): diff --git a/lms/djangoapps/survey/utils.py b/lms/djangoapps/survey/utils.py index a8ebf60b14d428d7f5d3cb588b06fd9f7b7695e9..5cc90a574ef0f8ae15a52c9622dd9ac4a72210ce 100644 --- a/lms/djangoapps/survey/utils.py +++ b/lms/djangoapps/survey/utils.py @@ -3,7 +3,7 @@ Utilities for determining whether or not a survey needs to be completed. """ from __future__ import absolute_import -from courseware.access import has_access +from lms.djangoapps.courseware.access import has_access from survey.models import SurveyAnswer, SurveyForm diff --git a/lms/djangoapps/teams/plugins.py b/lms/djangoapps/teams/plugins.py index 15ca141de69e871879c673afb97556164b6faba1..3aefdd4b47ddeece14965834f4069b69a5758256 100644 --- a/lms/djangoapps/teams/plugins.py +++ b/lms/djangoapps/teams/plugins.py @@ -5,7 +5,7 @@ from __future__ import absolute_import from django.utils.translation import ugettext_noop -from courseware.tabs import EnrolledTab +from lms.djangoapps.courseware.tabs import EnrolledTab from . import is_feature_enabled diff --git a/lms/djangoapps/teams/tests/test_views.py b/lms/djangoapps/teams/tests/test_views.py index 566ff6a0cd3b2106b88000a2188fbfbdf6814ab9..0e65314ba5ceacd2f59afddbed27eda21bcb7dac 100644 --- a/lms/djangoapps/teams/tests/test_views.py +++ b/lms/djangoapps/teams/tests/test_views.py @@ -20,7 +20,7 @@ from search.search_engine_base import SearchEngine from six.moves import range from common.test.utils import skip_signal -from courseware.tests.factories import StaffFactory +from lms.djangoapps.courseware.tests.factories import StaffFactory from openedx.core.djangoapps.django_comment_common.models import FORUM_ROLE_COMMUNITY_TA, Role from openedx.core.djangoapps.django_comment_common.utils import seed_permissions_roles from student.models import CourseEnrollment diff --git a/lms/djangoapps/teams/views.py b/lms/djangoapps/teams/views.py index 95668815f781ef9f7619c1ec5d3b4bce9dbc62fa..bf95e1a5329f00c88ea07c1c16899bab5442fd6e 100644 --- a/lms/djangoapps/teams/views.py +++ b/lms/djangoapps/teams/views.py @@ -25,7 +25,7 @@ from rest_framework.reverse import reverse from rest_framework.views import APIView from rest_framework_oauth.authentication import OAuth2Authentication -from courseware.courses import get_course_with_access, has_access +from lms.djangoapps.courseware.courses import get_course_with_access, has_access from lms.djangoapps.discussion.django_comment_client.utils import has_discussion_privileges from lms.djangoapps.teams.models import CourseTeam, CourseTeamMembership from openedx.core.lib.api.parsers import MergePatchParser diff --git a/lms/envs/common.py b/lms/envs/common.py index fd14163cf2a720064b331730486b440194172e82..6dd24088cf52fa525fa76b3b0d80944305607725 100644 --- a/lms/envs/common.py +++ b/lms/envs/common.py @@ -669,7 +669,7 @@ CONTEXT_PROCESSORS = [ 'shoppingcart.context_processor.user_has_cart_context_processor', # Timezone processor (sends language and time_zone preference) - 'courseware.context_processor.user_timezone_locale_prefs', + 'lms.djangoapps.courseware.context_processor.user_timezone_locale_prefs', # Online contextual help 'help_tokens.context_processor', @@ -1498,8 +1498,8 @@ MIDDLEWARE_CLASSES = [ 'django.middleware.clickjacking.XFrameOptionsMiddleware', # to redirected unenrolled students to the course info page - 'courseware.middleware.CacheCourseIdMiddleware', - 'courseware.middleware.RedirectMiddleware', + 'lms.djangoapps.courseware.middleware.CacheCourseIdMiddleware', + 'lms.djangoapps.courseware.middleware.RedirectMiddleware', 'course_wiki.middleware.WikiAccessMiddleware', @@ -2272,7 +2272,7 @@ INSTALLED_APPS = [ 'openedx.core.djangoapps.video_pipeline', # Our courseware - 'courseware', + 'lms.djangoapps.courseware', 'coursewarehistoryextended', 'student.apps.StudentConfig', diff --git a/lms/envs/production.py b/lms/envs/production.py index 0652f11dcee89c68daeefe72098dca0b63b284c4..ad69fc733d06eef66a5cfab10b45146ceadcff42 100644 --- a/lms/envs/production.py +++ b/lms/envs/production.py @@ -859,7 +859,7 @@ XBLOCK_FIELD_DATA_WRAPPERS += ( ) MODULESTORE_FIELD_OVERRIDE_PROVIDERS += ( - 'courseware.self_paced_overrides.SelfPacedDateOverrideProvider', + 'lms.djangoapps.courseware.self_paced_overrides.SelfPacedDateOverrideProvider', ) # PROFILE IMAGE CONFIG diff --git a/lms/lib/courseware_search/lms_search_initializer.py b/lms/lib/courseware_search/lms_search_initializer.py index f668cd245ef8514590337ed0dbafe531d1da499c..fc5ed25af4c5976b5aeed6e90833efb6858a3051 100644 --- a/lms/lib/courseware_search/lms_search_initializer.py +++ b/lms/lib/courseware_search/lms_search_initializer.py @@ -8,8 +8,8 @@ from __future__ import absolute_import from opaque_keys.edx.keys import CourseKey from search.initializer import SearchInitializer -from courseware.access import has_access -from courseware.masquerade import setup_masquerade +from lms.djangoapps.courseware.access import has_access +from lms.djangoapps.courseware.masquerade import setup_masquerade class LmsSearchInitializer(SearchInitializer): diff --git a/lms/lib/courseware_search/test/test_lms_result_processor.py b/lms/lib/courseware_search/test/test_lms_result_processor.py index b55b7238aaa4b270e863fdd3862eafa62067dce2..4731bbbe122825126f1d2ea09dace0d525df2e60 100644 --- a/lms/lib/courseware_search/test/test_lms_result_processor.py +++ b/lms/lib/courseware_search/test/test_lms_result_processor.py @@ -5,7 +5,7 @@ from __future__ import absolute_import import six -from courseware.tests.factories import UserFactory +from lms.djangoapps.courseware.tests.factories import UserFactory from lms.lib.courseware_search.lms_result_processor import LmsSearchResultProcessor from xmodule.modulestore.tests.django_utils import ModuleStoreTestCase from xmodule.modulestore.tests.factories import CourseFactory, ItemFactory diff --git a/lms/templates/courseware/course_about.html b/lms/templates/courseware/course_about.html index 3eea1aedc5b355c73898be69d73cce2a9b5fce94..cb999d85463f27e97c6ec1ee925b92014f8c9ab7 100644 --- a/lms/templates/courseware/course_about.html +++ b/lms/templates/courseware/course_about.html @@ -4,7 +4,7 @@ from django.utils.translation import ugettext as _ from django.utils.translation import pgettext from django.urls import reverse -from courseware.courses import get_course_about_section +from lms.djangoapps.courseware.courses import get_course_about_section from django.conf import settings from six import text_type from edxmako.shortcuts import marketing_link diff --git a/lms/templates/courseware/course_navigation.html b/lms/templates/courseware/course_navigation.html index 44958122af806a28994d815136488e3801d64fac..5946d7319b3c6c800910670e5b33a504d2de9c94 100644 --- a/lms/templates/courseware/course_navigation.html +++ b/lms/templates/courseware/course_navigation.html @@ -4,7 +4,7 @@ <%namespace name='static' file='/static_content.html'/> <%! -from courseware.tabs import get_course_tab_list +from lms.djangoapps.courseware.tabs import get_course_tab_list from django.conf import settings from django.urls import reverse from django.utils.translation import ugettext as _ diff --git a/lms/templates/courseware/info.html b/lms/templates/courseware/info.html index 29067cfecbffcd8318e567d28767ac83bf23dba0..4fea8989a9cddb736929db54d09ce0cef8b0022a 100644 --- a/lms/templates/courseware/info.html +++ b/lms/templates/courseware/info.html @@ -9,7 +9,7 @@ from pytz import timezone, utc from django.urls import reverse from django.utils.translation import ugettext as _ -from courseware.courses import get_course_info_section, get_course_date_blocks +from lms.djangoapps.courseware.courses import get_course_info_section, get_course_date_blocks from openedx.core.djangoapps.self_paced.models import SelfPacedConfiguration from openedx.core.djangolib.markup import HTML, Text %> diff --git a/lms/templates/courseware/syllabus.html b/lms/templates/courseware/syllabus.html index e4c05cf6faa9a7b6f1510c7d7f1fd858e47f5a3d..f2cff56fb0308ac33875a4da10f732bc4d9bfd9d 100644 --- a/lms/templates/courseware/syllabus.html +++ b/lms/templates/courseware/syllabus.html @@ -3,7 +3,7 @@ <%namespace name='static' file='/static_content.html'/> <%! from django.utils.translation import ugettext as _ -from courseware.courses import get_course_syllabus_section +from lms.djangoapps.courseware.courses import get_course_syllabus_section %> <%block name="headextra"> diff --git a/lms/templates/enroll_staff.html b/lms/templates/enroll_staff.html index 3a5a093d5ef058926964a35f0e709a9618dea3f0..9a2e534769c4530716c8f74cc326ad8a05daef1f 100644 --- a/lms/templates/enroll_staff.html +++ b/lms/templates/enroll_staff.html @@ -4,7 +4,7 @@ <%! from django.utils.translation import ugettext as _ from django.utils.translation import pgettext - from courseware.courses import get_course_about_section + from lms.djangoapps.courseware.courses import get_course_about_section %> <%block name="headextra"> diff --git a/lms/templates/instructor/instructor_dashboard_2/cohort_management.html b/lms/templates/instructor/instructor_dashboard_2/cohort_management.html index 9aa5c6c863f1cc2a7d9140524891d7f96bf6658d..bcdb171c3f41f30bc006372a6d24c137a77df2ca 100644 --- a/lms/templates/instructor/instructor_dashboard_2/cohort_management.html +++ b/lms/templates/instructor/instructor_dashboard_2/cohort_management.html @@ -4,7 +4,7 @@ <%! from django.utils.translation import ugettext as _ from openedx.core.djangolib.js_utils import js_escaped_string, dump_js_escaped_json -from courseware.courses import get_studio_url +from lms.djangoapps.courseware.courses import get_studio_url from openedx.core.djangoapps.course_groups.partition_scheme import get_cohorted_user_partition %> diff --git a/lms/templates/instructor/instructor_dashboard_2/discussions_management.html b/lms/templates/instructor/instructor_dashboard_2/discussions_management.html index 326bd8ea8c1e0ad05b4f5f429263efce0612d861..5b90141bb11fdeefbf008be5c6e740e1e00eb987 100644 --- a/lms/templates/instructor/instructor_dashboard_2/discussions_management.html +++ b/lms/templates/instructor/instructor_dashboard_2/discussions_management.html @@ -4,7 +4,7 @@ <%! from django.utils.translation import ugettext as _ from openedx.core.djangolib.js_utils import js_escaped_string, dump_js_escaped_json -from courseware.courses import get_studio_url +from lms.djangoapps.courseware.courses import get_studio_url from openedx.core.djangoapps.course_groups.partition_scheme import get_cohorted_user_partition %> diff --git a/lms/templates/video_modal.html b/lms/templates/video_modal.html index be276e4259803008dc7536db5ff3c536e2d4cf05..5ca22b1b41723b60a7bc3f3448440f3c8f6fc7df 100644 --- a/lms/templates/video_modal.html +++ b/lms/templates/video_modal.html @@ -1,5 +1,5 @@ <%! - from courseware.courses import get_course_about_section + from lms.djangoapps.courseware.courses import get_course_about_section %> <%namespace name='static' file='static_content.html'/> diff --git a/lms/urls.py b/lms/urls.py index 6cac692fbfcd27012187817fcbf37dafbb5bc9a7..bb8f2d6c3a7bcf98ef28c47dcdeb029d31ea0503 100644 --- a/lms/urls.py +++ b/lms/urls.py @@ -14,11 +14,13 @@ from django.views.generic.base import RedirectView from ratelimitbackend import admin from branding import views as branding_views -from courseware.masquerade import handle_ajax as courseware_masquerade_handle_ajax -from courseware.module_render import handle_xblock_callback, handle_xblock_callback_noauth, xblock_view, xqueue_callback -from courseware.views import views as courseware_views -from courseware.views.index import CoursewareIndex -from courseware.views.views import CourseTabView, EnrollStaffView, StaticCourseTabView +from lms.djangoapps.courseware.masquerade import handle_ajax as courseware_masquerade_handle_ajax +from lms.djangoapps.courseware.module_render import ( + handle_xblock_callback, handle_xblock_callback_noauth, xblock_view, xqueue_callback, +) +from lms.djangoapps.courseware.views import views as courseware_views +from lms.djangoapps.courseware.views.index import CoursewareIndex +from lms.djangoapps.courseware.views.views import CourseTabView, EnrollStaffView, StaticCourseTabView from debug import views as debug_views from lms.djangoapps.certificates import views as certificates_views from lms.djangoapps.discussion import views as discussion_views diff --git a/openedx/core/djangoapps/content_libraries/tests/test_runtime.py b/openedx/core/djangoapps/content_libraries/tests/test_runtime.py index 365e209caf648395b816ac32631a7818af293cb1..c863e7afa1805657dfeb10bc4272d260ef219863 100644 --- a/openedx/core/djangoapps/content_libraries/tests/test_runtime.py +++ b/openedx/core/djangoapps/content_libraries/tests/test_runtime.py @@ -13,7 +13,7 @@ from rest_framework.test import APIClient from xblock.core import XBlock, Scope from xblock import fields -from courseware.model_data import get_score +from lms.djangoapps.courseware.model_data import get_score from openedx.core.djangoapps.content_libraries import api as library_api from openedx.core.djangoapps.content_libraries.tests.test_content_libraries import ( URL_BLOCK_RENDER_VIEW, diff --git a/openedx/core/djangoapps/course_groups/cohorts.py b/openedx/core/djangoapps/course_groups/cohorts.py index f4d0245b450e4dc79282e4e449f75f9a3a0f3b4b..3b6950704c0d20b68e56685da84911fe550a5164 100644 --- a/openedx/core/djangoapps/course_groups/cohorts.py +++ b/openedx/core/djangoapps/course_groups/cohorts.py @@ -20,7 +20,7 @@ from django.utils.translation import ugettext as _ from edx_django_utils.cache import RequestCache from eventtracking import tracker -from courseware import courses +from lms.djangoapps.courseware import courses from openedx.core.lib.cache_utils import request_cached from student.models import get_user_by_username_or_email diff --git a/openedx/core/djangoapps/course_groups/partition_scheme.py b/openedx/core/djangoapps/course_groups/partition_scheme.py index fc5b062b63b3f617a0136d447555186a15ba7197..2b851971bb6f5ded99dd4d53daf627d10d5ec555 100644 --- a/openedx/core/djangoapps/course_groups/partition_scheme.py +++ b/openedx/core/djangoapps/course_groups/partition_scheme.py @@ -5,7 +5,7 @@ from __future__ import absolute_import import logging -from courseware.masquerade import ( +from lms.djangoapps.courseware.masquerade import ( get_course_masquerade, get_masquerading_user_group, is_masquerading_as_specific_student diff --git a/openedx/core/djangoapps/course_groups/tests/test_partition_scheme.py b/openedx/core/djangoapps/course_groups/tests/test_partition_scheme.py index 3751fe46e6906dc19dd809a85dafa3e4955d12f4..80cc1d324d4a1eae1d520ae32ecb86d47dc9c39d 100644 --- a/openedx/core/djangoapps/course_groups/tests/test_partition_scheme.py +++ b/openedx/core/djangoapps/course_groups/tests/test_partition_scheme.py @@ -8,7 +8,7 @@ import django.test from mock import patch from six.moves import range -from courseware.tests.test_masquerade import StaffMasqueradeTestCase +from lms.djangoapps.courseware.tests.test_masquerade import StaffMasqueradeTestCase from openedx.core.djangoapps.user_api.partition_schemes import RandomUserPartitionScheme from openedx.core.djangolib.testing.utils import skip_unless_lms from student.tests.factories import UserFactory diff --git a/openedx/core/djangoapps/course_groups/views.py b/openedx/core/djangoapps/course_groups/views.py index 696e0fcc469ad18b90c05b0b25d3750548fdc040..10581fc79d01681ce5558ed3b0a1002c54fc3e44 100644 --- a/openedx/core/djangoapps/course_groups/views.py +++ b/openedx/core/djangoapps/course_groups/views.py @@ -26,7 +26,7 @@ from rest_framework.generics import GenericAPIView from rest_framework.response import Response from rest_framework.serializers import Serializer -from courseware.courses import get_course, get_course_with_access +from lms.djangoapps.courseware.courses import get_course, get_course_with_access from edxmako.shortcuts import render_to_response from openedx.core.djangoapps.course_groups.models import CohortMembership from openedx.core.lib.api.authentication import OAuth2AuthenticationAllowInactiveUser diff --git a/openedx/core/djangoapps/enrollments/permissions.py b/openedx/core/djangoapps/enrollments/permissions.py index 85edfca43b35500bc68605a4975b94ee803f7c1d..b4a6754ecc78038758a1e32a150a0b578eb53cd3 100644 --- a/openedx/core/djangoapps/enrollments/permissions.py +++ b/openedx/core/djangoapps/enrollments/permissions.py @@ -3,7 +3,7 @@ Permission definitions for the enrollments djangoapp """ from bridgekeeper import perms -from courseware.rules import HasAccessRule +from lms.djangoapps.courseware.rules import HasAccessRule ENROLL_IN_COURSE = 'enrollment.enroll_in_course' diff --git a/openedx/core/djangoapps/schedules/content_highlights.py b/openedx/core/djangoapps/schedules/content_highlights.py index 1962472325c71975add082ac525d66b8ba88a0c4..c9f47fc2cf7e69577260a09ca57fa03197bb6dd4 100644 --- a/openedx/core/djangoapps/schedules/content_highlights.py +++ b/openedx/core/djangoapps/schedules/content_highlights.py @@ -6,8 +6,8 @@ from __future__ import absolute_import import logging -from courseware.model_data import FieldDataCache -from courseware.module_render import get_module_for_descriptor +from lms.djangoapps.courseware.model_data import FieldDataCache +from lms.djangoapps.courseware.module_render import get_module_for_descriptor from openedx.core.djangoapps.schedules.config import COURSE_UPDATE_WAFFLE_FLAG from openedx.core.djangoapps.schedules.exceptions import CourseUpdateDoesNotExist from openedx.core.lib.request_utils import get_request_or_stub diff --git a/openedx/core/djangoapps/schedules/management/commands/tests/send_email_base.py b/openedx/core/djangoapps/schedules/management/commands/tests/send_email_base.py index e80dae6bdae1b00e631baceef0798d01329c8424..73de50ba80d4d5dd7d62e492f7dc0d0666505607 100644 --- a/openedx/core/djangoapps/schedules/management/commands/tests/send_email_base.py +++ b/openedx/core/djangoapps/schedules/management/commands/tests/send_email_base.py @@ -24,7 +24,7 @@ from six.moves import range from course_modes.models import CourseMode from course_modes.tests.factories import CourseModeFactory -from courseware.models import DynamicUpgradeDeadlineConfiguration +from lms.djangoapps.courseware.models import DynamicUpgradeDeadlineConfiguration from lms.djangoapps.commerce.models import CommerceConfiguration from openedx.core.djangoapps.schedules import resolvers, tasks from openedx.core.djangoapps.schedules.resolvers import _get_datetime_beginning_of_day diff --git a/openedx/core/djangoapps/schedules/management/commands/tests/upsell_base.py b/openedx/core/djangoapps/schedules/management/commands/tests/upsell_base.py index c6d3359ba39f29de00c3b81b9bac2909a068c811..75c27ae0f6c51c5ec5e9825a1c0fa4a4d07f7e96 100644 --- a/openedx/core/djangoapps/schedules/management/commands/tests/upsell_base.py +++ b/openedx/core/djangoapps/schedules/management/commands/tests/upsell_base.py @@ -13,7 +13,7 @@ from edx_ace.utils.date import serialize from freezegun import freeze_time from mock import PropertyMock, patch -from courseware.models import DynamicUpgradeDeadlineConfiguration +from lms.djangoapps.courseware.models import DynamicUpgradeDeadlineConfiguration @ddt.ddt diff --git a/openedx/core/djangoapps/schedules/resolvers.py b/openedx/core/djangoapps/schedules/resolvers.py index 13fda2169701e48ef4c67221447960453a4ae66d..aef414639d7d2eec2c4d05d18e1287efffb5ff07 100644 --- a/openedx/core/djangoapps/schedules/resolvers.py +++ b/openedx/core/djangoapps/schedules/resolvers.py @@ -14,7 +14,7 @@ from edx_ace.recipient import Recipient from edx_ace.recipient_resolver import RecipientResolver from edx_django_utils.monitoring import function_trace, set_custom_metric -from courseware.date_summary import verified_upgrade_deadline_link, verified_upgrade_link_is_valid +from lms.djangoapps.courseware.date_summary import verified_upgrade_deadline_link, verified_upgrade_link_is_valid from openedx.core.djangoapps.ace_common.template_context import get_base_template_context from openedx.core.djangoapps.schedules.content_highlights import get_week_highlights from openedx.core.djangoapps.schedules.exceptions import CourseUpdateDoesNotExist diff --git a/openedx/core/djangoapps/schedules/signals.py b/openedx/core/djangoapps/schedules/signals.py index 8e01b9a79bb2e489cbe56deec2cfc9d3053f6813..96c320ef6f9bb76164c0af87a7de24ba525f6e4d 100644 --- a/openedx/core/djangoapps/schedules/signals.py +++ b/openedx/core/djangoapps/schedules/signals.py @@ -10,7 +10,7 @@ from django.dispatch import receiver from edx_ace.utils import date from course_modes.models import CourseMode -from courseware.models import ( +from lms.djangoapps.courseware.models import ( CourseDynamicUpgradeDeadlineConfiguration, DynamicUpgradeDeadlineConfiguration, OrgDynamicUpgradeDeadlineConfiguration diff --git a/openedx/core/djangoapps/schedules/tests/test_signals.py b/openedx/core/djangoapps/schedules/tests/test_signals.py index e5fe93026847f28ae88d2e0316808ec7db9bdc14..6d94e84feafb866e7d45d4231733fb070c2c1e07 100644 --- a/openedx/core/djangoapps/schedules/tests/test_signals.py +++ b/openedx/core/djangoapps/schedules/tests/test_signals.py @@ -12,7 +12,7 @@ from pytz import utc from course_modes.models import CourseMode from course_modes.tests.factories import CourseModeFactory -from courseware.models import DynamicUpgradeDeadlineConfiguration +from lms.djangoapps.courseware.models import DynamicUpgradeDeadlineConfiguration from openedx.core.djangoapps.schedules.models import ScheduleExperience from openedx.core.djangoapps.schedules.signals import CREATE_SCHEDULE_WAFFLE_FLAG from openedx.core.djangoapps.site_configuration.tests.factories import SiteFactory diff --git a/openedx/core/djangoapps/theming/tests/test_views.py b/openedx/core/djangoapps/theming/tests/test_views.py index e69a0baf468dcefe74b3c7d0abdb696606ad39cf..0da252a511cbc720c19110ba2ef48410021169cd 100644 --- a/openedx/core/djangoapps/theming/tests/test_views.py +++ b/openedx/core/djangoapps/theming/tests/test_views.py @@ -9,7 +9,7 @@ from django.contrib.messages.middleware import MessageMiddleware from django.contrib.sites.models import Site from django.test import TestCase -from courseware.tests.factories import GlobalStaffFactory +from lms.djangoapps.courseware.tests.factories import GlobalStaffFactory from openedx.core.djangoapps.theming.middleware import CurrentSiteThemeMiddleware from student.tests.factories import UserFactory diff --git a/openedx/core/djangoapps/verified_track_content/partition_scheme.py b/openedx/core/djangoapps/verified_track_content/partition_scheme.py index 05d82c7311fae07b803f96d2308fb6a75bf5d686..c0579f71541535f0748e96e634953f2f6c4c1711 100644 --- a/openedx/core/djangoapps/verified_track_content/partition_scheme.py +++ b/openedx/core/djangoapps/verified_track_content/partition_scheme.py @@ -7,7 +7,7 @@ import logging import six from course_modes.models import CourseMode -from courseware.masquerade import ( +from lms.djangoapps.courseware.masquerade import ( get_course_masquerade, get_masquerading_user_group, is_masquerading_as_specific_student diff --git a/openedx/core/djangoapps/xblock/runtime/runtime.py b/openedx/core/djangoapps/xblock/runtime/runtime.py index be68a187847c70315308c1b4f8985ec6695d3af7..e891e9698c39005667201ab090f4c73f7038ee77 100644 --- a/openedx/core/djangoapps/xblock/runtime/runtime.py +++ b/openedx/core/djangoapps/xblock/runtime/runtime.py @@ -18,7 +18,7 @@ from xblock.fields import Scope from xblock.runtime import DictKeyValueStore, KvsFieldData, NullI18nService, MemoryIdManager, Runtime from web_fragments.fragment import Fragment -from courseware.model_data import DjangoKeyValueStore, FieldDataCache +from lms.djangoapps.courseware.model_data import DjangoKeyValueStore, FieldDataCache from lms.djangoapps.grades.api import signals as grades_signals from openedx.core.djangoapps.xblock.apps import get_xblock_app_config from openedx.core.djangoapps.xblock.runtime.blockstore_field_data import BlockstoreFieldData diff --git a/openedx/features/course_bookmarks/plugins.py b/openedx/features/course_bookmarks/plugins.py index 7ec78dca9666139fdade0068e8b0d8a21df30af7..7a73a7ac9d2f8fce65435f83a41834ca732b0516 100644 --- a/openedx/features/course_bookmarks/plugins.py +++ b/openedx/features/course_bookmarks/plugins.py @@ -7,7 +7,7 @@ from __future__ import absolute_import from django.urls import reverse from django.utils.translation import ugettext as _ -from courseware.permissions import EDIT_BOOKMARK +from lms.djangoapps.courseware.permissions import EDIT_BOOKMARK from openedx.features.course_experience.course_tools import CourseTool from student.models import CourseEnrollment diff --git a/openedx/features/course_bookmarks/views/course_bookmarks.py b/openedx/features/course_bookmarks/views/course_bookmarks.py index e8333425ad657d4faacab1f809238e1afe1d8c08..6d27e99a2db90410d44c2b9be12979a256c4dc7c 100644 --- a/openedx/features/course_bookmarks/views/course_bookmarks.py +++ b/openedx/features/course_bookmarks/views/course_bookmarks.py @@ -18,7 +18,7 @@ from django.views.generic import View from opaque_keys.edx.keys import CourseKey from web_fragments.fragment import Fragment -from courseware.courses import get_course_with_access +from lms.djangoapps.courseware.courses import get_course_with_access from openedx.core.djangoapps.plugin_api.views import EdxFragmentView from openedx.core.djangoapps.user_api.models import UserPreference from openedx.features.course_experience import default_course_url_name diff --git a/openedx/features/course_duration_limits/resolvers.py b/openedx/features/course_duration_limits/resolvers.py index d22a36b83e5ec9998d761b62e3330fe8c3e811bb..9d3dfc68edefb1ee45320a2fba55fe21b93041ae 100644 --- a/openedx/features/course_duration_limits/resolvers.py +++ b/openedx/features/course_duration_limits/resolvers.py @@ -14,7 +14,7 @@ from django.utils.translation import ugettext as _ from eventtracking import tracker from course_modes.models import CourseMode -from courseware.date_summary import verified_upgrade_deadline_link +from lms.djangoapps.courseware.date_summary import verified_upgrade_deadline_link from lms.djangoapps.experiments.stable_bucketing import stable_bucketing_hash_group from openedx.core.djangoapps.catalog.utils import get_course_run_details from openedx.core.djangoapps.schedules.resolvers import ( diff --git a/openedx/features/course_duration_limits/tests/test_access.py b/openedx/features/course_duration_limits/tests/test_access.py index bb16792afda53be018e98e9f3a835ff56db20ee1..e870888ea215e6213405cb2b8fe0cba80a9810ac 100644 --- a/openedx/features/course_duration_limits/tests/test_access.py +++ b/openedx/features/course_duration_limits/tests/test_access.py @@ -11,7 +11,7 @@ from pytz import UTC from course_modes.models import CourseMode from course_modes.tests.factories import CourseModeFactory -from courseware.models import DynamicUpgradeDeadlineConfiguration +from lms.djangoapps.courseware.models import DynamicUpgradeDeadlineConfiguration from openedx.core.djangoapps.schedules.tests.factories import ScheduleFactory from openedx.core.djangolib.testing.utils import CacheIsolationTestCase from openedx.features.course_duration_limits.access import ( diff --git a/openedx/features/course_experience/plugins.py b/openedx/features/course_experience/plugins.py index 9b25ada0b1039365d503cd78f27b306925340513..e53d70a1996fcd4f383ae65d3eb558ed820d5dbb 100644 --- a/openedx/features/course_experience/plugins.py +++ b/openedx/features/course_experience/plugins.py @@ -8,7 +8,7 @@ from __future__ import absolute_import from django.urls import reverse from django.utils.translation import ugettext as _ -from courseware.courses import get_course_by_id +from lms.djangoapps.courseware.courses import get_course_by_id from student.models import CourseEnrollment from . import SHOW_REVIEWS_TOOL_FLAG, UNIFIED_COURSE_TAB_FLAG diff --git a/openedx/features/course_experience/tests/views/test_course_home.py b/openedx/features/course_experience/tests/views/test_course_home.py index 5dc36870dba63e557c899070cc15947d0a3b6e7e..95a6aaeb9706c2c95055ab99c1cc4c856df74b42 100644 --- a/openedx/features/course_experience/tests/views/test_course_home.py +++ b/openedx/features/course_experience/tests/views/test_course_home.py @@ -20,7 +20,7 @@ from waffle.testutils import override_flag from course_modes.models import CourseMode from course_modes.tests.factories import CourseModeFactory -from courseware.tests.helpers import get_expiration_banner_text +from lms.djangoapps.courseware.tests.helpers import get_expiration_banner_text from experiments.models import ExperimentData from lms.djangoapps.commerce.models import CommerceConfiguration from lms.djangoapps.commerce.utils import EcommerceService diff --git a/openedx/features/course_experience/tests/views/test_course_outline.py b/openedx/features/course_experience/tests/views/test_course_outline.py index 6b7266c5c33290f0180a7fe35704bb8b2223702f..bcc2030fc9d43651e1e55cf044beb2a36f9890e4 100644 --- a/openedx/features/course_experience/tests/views/test_course_outline.py +++ b/openedx/features/course_experience/tests/views/test_course_outline.py @@ -22,7 +22,7 @@ from six import text_type from waffle.models import Switch from waffle.testutils import override_switch -from courseware.tests.factories import StaffFactory +from lms.djangoapps.courseware.tests.factories import StaffFactory from gating import api as lms_gating_api from lms.djangoapps.course_api.blocks.transformers.milestones import MilestonesAndSpecialExamsTransformer from openedx.core.lib.gating import api as gating_api diff --git a/openedx/features/course_experience/tests/views/test_course_updates.py b/openedx/features/course_experience/tests/views/test_course_updates.py index 4a00d6c8868f28870ca3315b3c938d7e75355df8..e56705cfa1871378a0ef33fd83aae17d23e22a5b 100644 --- a/openedx/features/course_experience/tests/views/test_course_updates.py +++ b/openedx/features/course_experience/tests/views/test_course_updates.py @@ -8,7 +8,7 @@ from datetime import datetime import six from django.urls import reverse -from courseware.courses import get_course_info_usage_key +from lms.djangoapps.courseware.courses import get_course_info_usage_key from openedx.core.djangoapps.waffle_utils.testutils import WAFFLE_TABLES from openedx.features.content_type_gating.models import ContentTypeGatingConfig from openedx.features.course_experience.views.course_updates import STATUS_VISIBLE diff --git a/openedx/features/course_experience/views/course_dates.py b/openedx/features/course_experience/views/course_dates.py index d272c037daf2d478eb05964b91771f578514fcbc..3fdd70d6c8a93b7dd883690f0be9f8fea81ea9b1 100644 --- a/openedx/features/course_experience/views/course_dates.py +++ b/openedx/features/course_experience/views/course_dates.py @@ -9,7 +9,7 @@ from django.utils.translation import get_language_bidi from opaque_keys.edx.keys import CourseKey from web_fragments.fragment import Fragment -from courseware.courses import get_course_date_blocks, get_course_with_access +from lms.djangoapps.courseware.courses import get_course_date_blocks, get_course_with_access from openedx.core.djangoapps.plugin_api.views import EdxFragmentView diff --git a/openedx/features/course_experience/views/course_home.py b/openedx/features/course_experience/views/course_home.py index 3704918838a7a503a5fd9af53b52d15820ecaba7..aeace743fa78f906459e2e941dac84362bb97f0b 100644 --- a/openedx/features/course_experience/views/course_home.py +++ b/openedx/features/course_experience/views/course_home.py @@ -14,8 +14,8 @@ from django.views.decorators.csrf import ensure_csrf_cookie from opaque_keys.edx.keys import CourseKey from web_fragments.fragment import Fragment -from courseware.access import has_access -from courseware.courses import can_self_enroll_in_course, get_course_info_section, get_course_with_access +from lms.djangoapps.courseware.access import has_access +from lms.djangoapps.courseware.courses import can_self_enroll_in_course, get_course_info_section, get_course_with_access from lms.djangoapps.commerce.utils import EcommerceService from lms.djangoapps.course_goals.api import ( get_course_goal, diff --git a/openedx/features/course_experience/views/course_home_messages.py b/openedx/features/course_experience/views/course_home_messages.py index 655fb1409255e83f01d4c8189e8bd39f3d1a7a93..e89bfd3619b881d60ee1269700c960405b9805a8 100644 --- a/openedx/features/course_experience/views/course_home_messages.py +++ b/openedx/features/course_experience/views/course_home_messages.py @@ -17,7 +17,7 @@ from pytz import UTC from web_fragments.fragment import Fragment from course_modes.models import CourseMode -from courseware.courses import get_course_date_blocks, get_course_with_access +from lms.djangoapps.courseware.courses import get_course_date_blocks, get_course_with_access from lms.djangoapps.course_goals.api import ( get_course_goal, get_course_goal_options, diff --git a/openedx/features/course_experience/views/course_outline.py b/openedx/features/course_experience/views/course_outline.py index 66bf66bb3cfda28c5aaef5c10b7b22ee49d6a91a..7c524bf034a31f4c566dea5838ebe4b81cf9354f 100644 --- a/openedx/features/course_experience/views/course_outline.py +++ b/openedx/features/course_experience/views/course_outline.py @@ -15,7 +15,7 @@ from pytz import UTC from waffle.models import Switch from web_fragments.fragment import Fragment -from courseware.courses import get_course_overview_with_access +from lms.djangoapps.courseware.courses import get_course_overview_with_access from openedx.core.djangoapps.plugin_api.views import EdxFragmentView from student.models import CourseEnrollment from util.milestones_helpers import get_course_content_milestones diff --git a/openedx/features/course_experience/views/course_reviews.py b/openedx/features/course_experience/views/course_reviews.py index 5fac94e7c11433438b6e4a81837d6c8e3da5a922..6a78e5817cbcc06172058462b0f40abf7f70fb44 100644 --- a/openedx/features/course_experience/views/course_reviews.py +++ b/openedx/features/course_experience/views/course_reviews.py @@ -13,7 +13,7 @@ from django.views.decorators.cache import cache_control from opaque_keys.edx.keys import CourseKey from web_fragments.fragment import Fragment -from courseware.courses import get_course_with_access +from lms.djangoapps.courseware.courses import get_course_with_access from lms.djangoapps.courseware.views.views import CourseTabView from openedx.core.djangoapps.plugin_api.views import EdxFragmentView from openedx.features.course_experience import default_course_url_name diff --git a/openedx/features/course_experience/views/course_sock.py b/openedx/features/course_experience/views/course_sock.py index f0ea47f2192f25ab4e0940cde90ca3c331257081..0961521ed537b47c7f0664c279eeffbacb6c821d 100644 --- a/openedx/features/course_experience/views/course_sock.py +++ b/openedx/features/course_experience/views/course_sock.py @@ -6,7 +6,7 @@ from __future__ import absolute_import from django.template.loader import render_to_string from web_fragments.fragment import Fragment -from courseware.date_summary import verified_upgrade_deadline_link, verified_upgrade_link_is_valid +from lms.djangoapps.courseware.date_summary import verified_upgrade_deadline_link, verified_upgrade_link_is_valid from openedx.core.djangoapps.plugin_api.views import EdxFragmentView from openedx.features.discounts.utils import format_strikeout_price from student.models import CourseEnrollment diff --git a/openedx/features/course_experience/views/course_updates.py b/openedx/features/course_experience/views/course_updates.py index e6a417fbc5edb0ae119a383c9356633eef1bd02d..58dcb8108ee785dabd025c8d0b336d505c4d552a 100644 --- a/openedx/features/course_experience/views/course_updates.py +++ b/openedx/features/course_experience/views/course_updates.py @@ -15,7 +15,7 @@ from django.views.decorators.cache import cache_control from opaque_keys.edx.keys import CourseKey from web_fragments.fragment import Fragment -from courseware.courses import get_course_info_section_module, get_course_with_access +from lms.djangoapps.courseware.courses import get_course_info_section_module, get_course_with_access from lms.djangoapps.courseware.views.views import CourseTabView from openedx.core.djangoapps.plugin_api.views import EdxFragmentView from openedx.features.course_experience import default_course_url_name diff --git a/openedx/features/course_experience/views/latest_update.py b/openedx/features/course_experience/views/latest_update.py index c70b154c1582b454a1a4013d6a180ee17b87b51c..b12e8b600f6099a94636d3cfffb95b93c70944af 100644 --- a/openedx/features/course_experience/views/latest_update.py +++ b/openedx/features/course_experience/views/latest_update.py @@ -12,7 +12,7 @@ from django.template.loader import render_to_string from opaque_keys.edx.keys import CourseKey from web_fragments.fragment import Fragment -from courseware.courses import get_course_with_access +from lms.djangoapps.courseware.courses import get_course_with_access from openedx.core.djangoapps.plugin_api.views import EdxFragmentView from openedx.features.course_experience.views.course_updates import get_ordered_updates diff --git a/openedx/features/course_experience/views/welcome_message.py b/openedx/features/course_experience/views/welcome_message.py index 5edcf5d7e246978c8a5bb5bfcce5ff5fe8984b68..2dc4d102f19cdcbf3cfa8bb9e14ebb445d07da4d 100644 --- a/openedx/features/course_experience/views/welcome_message.py +++ b/openedx/features/course_experience/views/welcome_message.py @@ -12,7 +12,7 @@ from django.views.decorators.csrf import ensure_csrf_cookie from opaque_keys.edx.keys import CourseKey from web_fragments.fragment import Fragment -from courseware.courses import get_course_with_access +from lms.djangoapps.courseware.courses import get_course_with_access from openedx.core.djangoapps.plugin_api.views import EdxFragmentView from openedx.core.djangoapps.user_api.course_tag.api import get_course_tag, set_course_tag diff --git a/openedx/features/course_search/views/course_search.py b/openedx/features/course_search/views/course_search.py index 149267fb394e6e8bd7a9edb69b2eeb5ba937f647..2d0414e7daecfaf5c69149bf156fb679e7bb3a9b 100644 --- a/openedx/features/course_search/views/course_search.py +++ b/openedx/features/course_search/views/course_search.py @@ -15,7 +15,7 @@ from django.views.decorators.csrf import ensure_csrf_cookie from opaque_keys.edx.keys import CourseKey from web_fragments.fragment import Fragment -from courseware.courses import get_course_overview_with_access +from lms.djangoapps.courseware.courses import get_course_overview_with_access from lms.djangoapps.courseware.views.views import CourseTabView from openedx.core.djangoapps.plugin_api.views import EdxFragmentView from openedx.features.course_experience import default_course_url_name diff --git a/openedx/tests/settings.py b/openedx/tests/settings.py index 434ee0da83af9dcc0765c18d60ab006d679135a7..c8923e151c67862aee31b074f81f211da2b672c9 100644 --- a/openedx/tests/settings.py +++ b/openedx/tests/settings.py @@ -70,7 +70,7 @@ INSTALLED_APPS = ( 'openedx.core.djangoapps.video_pipeline', 'openedx.core.djangoapps.bookmarks.apps.BookmarksConfig', 'edxval', - 'courseware', + 'lms.djangoapps.courseware', 'student', 'openedx.core.djangoapps.site_configuration', 'lms.djangoapps.grades.apps.GradesConfig', diff --git a/setup.py b/setup.py index 027ba4891d2a9b0ac2d18fd5089447269c51858e..f1dff5cec670a2c9ed1c4505744cbf36f3c4e635 100644 --- a/setup.py +++ b/setup.py @@ -39,7 +39,7 @@ setup( "course_bookmarks = openedx.features.course_bookmarks.plugins:CourseBookmarksTool", "course_updates = openedx.features.course_experience.plugins:CourseUpdatesTool", "course_reviews = openedx.features.course_experience.plugins:CourseReviewsTool", - "verified_upgrade = courseware.course_tools:VerifiedUpgradeTool", + "verified_upgrade = lms.djangoapps.courseware.course_tools:VerifiedUpgradeTool", ], "openedx.user_partition_scheme": [ "random = openedx.core.djangoapps.user_api.partition_schemes:RandomUserPartitionScheme", diff --git a/themes/edx.org/lms/templates/dashboard.html b/themes/edx.org/lms/templates/dashboard.html index 04e2c84cad622cbcb9dd1fc6d6005d16ca948f34..8dbbd82db73d6bd3d34a680cf934258ff4a6d76e 100644 --- a/themes/edx.org/lms/templates/dashboard.html +++ b/themes/edx.org/lms/templates/dashboard.html @@ -6,7 +6,7 @@ import json import pytz import six -from courseware.context_processor import user_timezone_locale_prefs +from lms.djangoapps.courseware.context_processor import user_timezone_locale_prefs from datetime import datetime, timedelta from django.utils import timezone from django.utils.translation import ugettext as _