Ejemplo n.º 1
0
def to50rc1(context):
    """5.0beta4 -> 5.0rc1"""
    loadMigrationProfile(context, 'profile-plone.app.upgrade.v50:to50rc1')
    portal = getSite()
    # install plone.app.linkintegrity and its dependencies
    qi = getToolByName(portal, 'portal_quickinstaller')
    if not qi.isProductInstalled('plone.app.linkintegrity'):
        qi.installProduct('plone.app.linkintegrity')
    migrate_linkintegrity_relations(portal)

    upgrade_usergroups_controlpanel_settings(context)
    migrate_displayPublicationDateInByline(context)

    # Migrate settings from portal_properties to the configuration registry
    pprop = getToolByName(portal, 'portal_properties')
    site_properties = pprop['site_properties']

    if site_properties.hasProperty('icon_visibility'):
        registry = getUtility(IRegistry)
        settings = registry.forInterface(ISiteSchema, prefix='plone')
        value = site_properties.getProperty('icon_visibility', 'false')
        settings.icon_visiblity = value

    # These have been migrated in previous upgrade steps. Safe to remove.
    properties_to_remove = ['allowAnonymousViewAbout',
                            'available_editors',
                            'default_contenttype',
                            'default_language',
                            'default_editor',
                            'disable_folder_sections',
                            'disable_nonfolderish_sections',
                            'enable_inline_editing',
                            'enable_link_integrity_checks',
                            'enable_livesearch',
                            'enable_sitemap',
                            'enable_wf_state_filtering',
                            'exposeDCMetaTags',
                            'ext_editor',
                            'forbidden_contenttypes',
                            'icon_visibility',
                            'lock_on_ttw_edit',
                            'many_groups',
                            'many_users',
                            'number_of_days_to_keep',
                            'search_collapse_options',
                            'search_enable_batch_size',
                            'search_enable_description_search',
                            'search_review_state_for_anon',
                            'search_enable_sort_on',
                            'search_enable_title_search',
                            'types_not_searched',
                            'use_email_as_login',
                            'use_folder_contents',
                            'use_uuid_as_userid',
                            'user_registration_fields',
                            'visible_ids',
                            'webstats_js']
    for p in properties_to_remove:
        if site_properties.hasProperty(p):
            site_properties._delProperty(p)
Ejemplo n.º 2
0
 def test_upgrade(self):
     doc3 = self.portal['doc3']
     doc1 = self.portal['doc1']
     self.assertTrue(IReferenceable.providedBy(doc3))
     doc3.setText('<a href="doc1">doc1</a>', mimetype='text/html')
     doc3.addReference(doc1, relationship=referencedRelationship)
     self.assertFalse(hasIncomingLinks(doc1))
     self.assertFalse(hasIncomingLinks(doc3))
     migrate_linkintegrity_relations(self.portal)
     self.assertTrue(hasIncomingLinks(doc1))
     self.assertFalse(hasIncomingLinks(doc3))
Ejemplo n.º 3
0
 def test_upgrade(self):
     doc3 = self.portal['doc3']
     doc1 = self.portal['doc1']
     self.assertTrue(IReferenceable.providedBy(doc3))
     doc3.setText('<a href="doc1">doc1</a>', mimetype='text/html')
     doc3.addReference(doc1, relationship=referencedRelationship)
     self.assertFalse(hasIncomingLinks(doc1))
     self.assertFalse(hasIncomingLinks(doc3))
     migrate_linkintegrity_relations(self.portal)
     self.assertTrue(hasIncomingLinks(doc1))
     self.assertFalse(hasIncomingLinks(doc3))
Ejemplo n.º 4
0
def to50rc1(context):
    """5.0beta4 -> 5.0rc1"""
    loadMigrationProfile(context, 'profile-plone.app.upgrade.v50:to50rc1')
    portal = getSite()
    # install plone.app.linkintegrity and its dependencies
    qi = getToolByName(portal, 'portal_quickinstaller')
    if not qi.isProductInstalled('plone.app.linkintegrity'):
        qi.installProduct('plone.app.linkintegrity')
    migrate_linkintegrity_relations(portal)

    upgrade_usergroups_controlpanel_settings(context)
    migrate_displayPublicationDateInByline(context)

    # Migrate settings from portal_properties to the configuration registry
    pprop = getToolByName(portal, 'portal_properties')
    site_properties = pprop['site_properties']

    if site_properties.hasProperty('icon_visibility'):
        registry = getUtility(IRegistry)
        settings = registry.forInterface(ISiteSchema, prefix='plone')
        value = site_properties.getProperty('icon_visibility', 'false')
        settings.icon_visiblity = value

    # These have been migrated in previous upgrade steps. Safe to remove.
    properties_to_remove = [
        'allowAnonymousViewAbout', 'available_editors', 'default_contenttype',
        'default_language', 'default_editor', 'disable_folder_sections',
        'disable_nonfolderish_sections', 'enable_inline_editing',
        'enable_link_integrity_checks', 'enable_livesearch', 'enable_sitemap',
        'enable_wf_state_filtering', 'exposeDCMetaTags', 'ext_editor',
        'forbidden_contenttypes', 'icon_visibility', 'lock_on_ttw_edit',
        'many_groups', 'many_users', 'number_of_days_to_keep',
        'search_collapse_options', 'search_enable_batch_size',
        'search_enable_description_search', 'search_review_state_for_anon',
        'search_enable_sort_on', 'search_enable_title_search',
        'types_not_searched', 'use_email_as_login', 'use_folder_contents',
        'use_uuid_as_userid', 'user_registration_fields', 'visible_ids',
        'webstats_js'
    ]
    for p in properties_to_remove:
        if site_properties.hasProperty(p):
            site_properties._delProperty(p)
Ejemplo n.º 5
0
def to50rc1(context):
    """5.0beta4 -> 5.0rc1"""
    loadMigrationProfile(context, 'profile-plone.app.upgrade.v50:to50rc1')
    portal = getSite()
    # install plone.app.linkintegrity and its dependencies
    try:
        from Products.CMFPlone.utils import get_installer
    except ImportError:
        # BBB For Plone 5.0 and lower.
        qi = getToolByName(portal, 'portal_quickinstaller')
        if not qi.isProductInstalled('plone.app.linkintegrity'):
            qi.installProduct('plone.app.linkintegrity')
    else:
        qi = get_installer(portal)
        if not qi.is_product_installed('plone.app.linkintegrity'):
            qi.install_product('plone.app.linkintegrity')

    # If Products.PortalTransforms is >= 3.0.1.dev0 it has the new safe_html.
    # Register and migrate the registry settings needed for it.
    # Linkintegrity calls the transform when retrieving links from html-fields.
    pt = pkg_resources.get_distribution('Products.PortalTransforms')
    if pt.version >= '3.0.1.dev0':
        from plone.app.upgrade.v51.betas import move_safe_html_settings_to_registry  # noqa: E501
        from Products.CMFPlone.interfaces import IFilterSchema
        registry = getUtility(IRegistry)
        registry.registerInterface(IFilterSchema, prefix='plone')
        move_safe_html_settings_to_registry(context)

    migrate_linkintegrity_relations(portal)

    upgrade_usergroups_controlpanel_settings(context)
    migrate_displayPublicationDateInByline(context)

    # Migrate settings from portal_properties to the configuration registry
    pprop = getToolByName(portal, 'portal_properties')
    site_properties = pprop['site_properties']

    if site_properties.hasProperty('icon_visibility'):
        registry = getUtility(IRegistry)
        settings = registry.forInterface(ISiteSchema, prefix='plone')
        value = site_properties.getProperty('icon_visibility', 'false')
        settings.icon_visiblity = value

    # These have been migrated in previous upgrade steps. Safe to remove.
    properties_to_remove = [
        'allowAnonymousViewAbout', 'available_editors', 'default_contenttype',
        'default_language', 'default_editor', 'disable_folder_sections',
        'disable_nonfolderish_sections', 'enable_inline_editing',
        'enable_link_integrity_checks', 'enable_livesearch', 'enable_sitemap',
        'enable_wf_state_filtering', 'exposeDCMetaTags', 'ext_editor',
        'forbidden_contenttypes', 'icon_visibility', 'lock_on_ttw_edit',
        'many_groups', 'many_users', 'number_of_days_to_keep',
        'search_collapse_options', 'search_enable_batch_size',
        'search_enable_description_search', 'search_review_state_for_anon',
        'search_enable_sort_on', 'search_enable_title_search',
        'types_not_searched', 'use_email_as_login', 'use_folder_contents',
        'use_uuid_as_userid', 'user_registration_fields', 'visible_ids',
        'webstats_js'
    ]
    for p in properties_to_remove:
        if site_properties.hasProperty(p):
            site_properties._delProperty(p)
Ejemplo n.º 6
0
def to50rc1(context):
    """5.0beta4 -> 5.0rc1"""
    loadMigrationProfile(context, 'profile-plone.app.upgrade.v50:to50rc1')
    portal = getSite()
    # install plone.app.linkintegrity and its dependencies
    try:
        from Products.CMFPlone.utils import get_installer
    except ImportError:
        # BBB For Plone 5.0 and lower.
        qi = getToolByName(portal, 'portal_quickinstaller')
        if not qi.isProductInstalled('plone.app.linkintegrity'):
            qi.installProduct('plone.app.linkintegrity')
    else:
        qi = get_installer(portal)
        if not qi.is_product_installed('plone.app.linkintegrity'):
            qi.install_product('plone.app.linkintegrity')

    # If Products.PortalTransforms is >= 3.0.1.dev0 it has the new safe_html.
    # Register and migrate the registry settings needed for it.
    # Linkintegrity calls the transform when retrieving links from html-fields.
    pt = pkg_resources.get_distribution('Products.PortalTransforms')
    if pt.version >= '3.0.1.dev0':
        from plone.app.upgrade.v51.betas import move_safe_html_settings_to_registry  # noqa: E501
        from Products.CMFPlone.interfaces import IFilterSchema
        registry = getUtility(IRegistry)
        registry.registerInterface(IFilterSchema, prefix='plone')
        move_safe_html_settings_to_registry(context)

    migrate_linkintegrity_relations(portal)

    upgrade_usergroups_controlpanel_settings(context)
    migrate_displayPublicationDateInByline(context)

    # Migrate settings from portal_properties to the configuration registry
    pprop = getToolByName(portal, 'portal_properties')
    site_properties = pprop['site_properties']

    if site_properties.hasProperty('icon_visibility'):
        registry = getUtility(IRegistry)
        settings = registry.forInterface(ISiteSchema, prefix='plone')
        value = site_properties.getProperty('icon_visibility', 'false')
        settings.icon_visiblity = value

    # These have been migrated in previous upgrade steps. Safe to remove.
    properties_to_remove = ['allowAnonymousViewAbout',
                            'available_editors',
                            'default_contenttype',
                            'default_language',
                            'default_editor',
                            'disable_folder_sections',
                            'disable_nonfolderish_sections',
                            'enable_inline_editing',
                            'enable_link_integrity_checks',
                            'enable_livesearch',
                            'enable_sitemap',
                            'enable_wf_state_filtering',
                            'exposeDCMetaTags',
                            'ext_editor',
                            'forbidden_contenttypes',
                            'icon_visibility',
                            'lock_on_ttw_edit',
                            'many_groups',
                            'many_users',
                            'number_of_days_to_keep',
                            'search_collapse_options',
                            'search_enable_batch_size',
                            'search_enable_description_search',
                            'search_review_state_for_anon',
                            'search_enable_sort_on',
                            'search_enable_title_search',
                            'types_not_searched',
                            'use_email_as_login',
                            'use_folder_contents',
                            'use_uuid_as_userid',
                            'user_registration_fields',
                            'visible_ids',
                            'webstats_js']
    for p in properties_to_remove:
        if site_properties.hasProperty(p):
            site_properties._delProperty(p)