Beispiel #1
0
def get_subtopic_page_from_model(
    subtopic_page_model: subtopic_models.SubtopicPageModel
) -> subtopic_page_domain.SubtopicPage:
    """Returns a domain object for an SubtopicPage given a subtopic page model.

    Args:
        subtopic_page_model: SubtopicPageModel. The subtopic page model to get
            the corresponding domain object.

    Returns:
        SubtopicPage. The domain object corresponding to the given model object.
    """
    versioned_page_contents: (
        subtopic_page_domain.VersionedSubtopicPageContentsDict) = {
            'schema_version': subtopic_page_model.page_contents_schema_version,
            'page_contents': copy.deepcopy(subtopic_page_model.page_contents)
        }
    if (subtopic_page_model.page_contents_schema_version !=
            feconf.CURRENT_SUBTOPIC_PAGE_CONTENTS_SCHEMA_VERSION):
        _migrate_page_contents_to_latest_schema(versioned_page_contents)
    return subtopic_page_domain.SubtopicPage(
        subtopic_page_model.id, subtopic_page_model.topic_id,
        subtopic_page_domain.SubtopicPageContents.from_dict(
            versioned_page_contents['page_contents']),
        versioned_page_contents['schema_version'],
        subtopic_page_model.language_code, subtopic_page_model.version)
Beispiel #2
0
def get_subtopic_page_from_model(subtopic_page_model):
    """Returns a domain object for an SubtopicPage given a subtopic page model.

    Args:
        subtopic_page_model: SubtopicPageModel.

    Returns:
        SubtopicPage.
    """
    versioned_page_contents = {
        'schema_version': subtopic_page_model.page_contents_schema_version,
        'page_contents': copy.deepcopy(subtopic_page_model.page_contents)
    }
    if (subtopic_page_model.page_contents_schema_version !=
            feconf.CURRENT_SUBTOPIC_PAGE_CONTENTS_SCHEMA_VERSION):
        _migrate_page_contents_to_latest_schema(versioned_page_contents)
    return subtopic_page_domain.SubtopicPage(
        subtopic_page_model.id,
        subtopic_page_model.topic_id,
        subtopic_page_domain.SubtopicPageContents.from_dict(
            versioned_page_contents['page_contents']),
        versioned_page_contents['schema_version'],
        subtopic_page_model.language_code,
        subtopic_page_model.version
    )
def get_subtopic_page_from_model(subtopic_page_model):
    """Returns a domain object for an SubtopicPage given a subtopic page model.

    Args:
        subtopic_page_model: SubtopicPageModel.

    Returns:
        SubtopicPage.
    """
    return subtopic_page_domain.SubtopicPage(subtopic_page_model.id,
                                             subtopic_page_model.topic_id,
                                             subtopic_page_model.html_data,
                                             subtopic_page_model.language_code,
                                             subtopic_page_model.version)