def beta5_beta6(portal):
    """4.0.0beta5 to beta6"""
    out = []

    def modifyModel(article):
        # fix model. Earlier beta6 articles model migration is broken
        model = article.layout
        if model is None:
            article.setLayout('pa_model1')
        elif model.startswith('pa_odel'):
            article.setLayout('pa_model' + model[-1])

    applyArticles(portal, modifyModel)
    out.append("Fix model migration on older articles")

    if 'portal_article' in portal.objectIds():
        portal.manage_delObjects(['portal_article',])
        out.append("Delete old article tool")

    return out
def stable40x_410beta1(portal):

    out = []

    def modifyMetaTypes(article):
        # Change meta_type of xxxinnercontentproxy subobjects
        old_mts_to_news = {
            'FileContentInnerProxy': 'FileInnerContentProxy',
            'ImageContentInnerProxy': 'ImageInnerContentProxy',
            'LinkContentInnerProxy': 'LinkInnerContentProxy'
            }
        old_mts = old_mts_to_news.keys()
        for icc in article.objectValues(spec='InnerContentContainer'):
            for item in icc.objectValues():
                mt = item.meta_type
                if mt in old_mts:
                    item.meta_type = old_mts_to_news[mt]
        return

    applyArticles(portal, modifyMetaTypes)
    out.append("Changed meta_type of inner items")
    return out
def beta3_beta4(portal):
    """4.0.0beta3 to beta4"""
    out = []

    version = getArticleVersionFor('4.0.0-beta4')

    def modifyArticle(article):
        # fix version. Earlier v4 articles don't have one
        # post beta4 should have an integer number (value >= 0)
        if type(article.getPAVersion()) is not IntType:
            article.setPAVersion(version)

        # rename proxy if necessary
        file_proxies = tuple(article.getFiles()) + tuple(article.getImages())
        for proxy in file_proxies:
            proxy.renameFromFileName()

    applyArticles(portal, modifyArticle)

    out.append("Set version information on older articles")
    out.append("Renamed proxy files and images ids to stored filename")
    return out
Exemple #4
0
def stable40x_410beta1(portal):

    out = []

    def modifyMetaTypes(article):
        # Change meta_type of xxxinnercontentproxy subobjects
        old_mts_to_news = {
            'FileContentInnerProxy': 'FileInnerContentProxy',
            'ImageContentInnerProxy': 'ImageInnerContentProxy',
            'LinkContentInnerProxy': 'LinkInnerContentProxy'
        }
        old_mts = old_mts_to_news.keys()
        for icc in article.objectValues(spec='InnerContentContainer'):
            for item in icc.objectValues():
                mt = item.meta_type
                if mt in old_mts:
                    item.meta_type = old_mts_to_news[mt]
        return

    applyArticles(portal, modifyMetaTypes)
    out.append("Changed meta_type of inner items")
    return out
def beta5_beta6(portal):
    """4.0.0beta5 to beta6"""
    out = []

    def modifyModel(article):
        # fix model. Earlier beta6 articles model migration is broken
        model = article.layout
        if model is None:
            article.setLayout('pa_model1')
        elif model.startswith('pa_odel'):
            article.setLayout('pa_model' + model[-1])

    applyArticles(portal, modifyModel)
    out.append("Fix model migration on older articles")

    if 'portal_article' in portal.objectIds():
        portal.manage_delObjects([
            'portal_article',
        ])
        out.append("Delete old article tool")

    return out
def beta3_beta4(portal):
    """4.0.0beta3 to beta4"""
    out = []

    version = getArticleVersionFor('4.0.0-beta4')

    def modifyArticle(article):
        # fix version. Earlier v4 articles don't have one
        # post beta4 should have an integer number (value >= 0)
        if type(article.getPAVersion()) is not IntType:
            article.setPAVersion(version)

        # rename proxy if necessary
        file_proxies = tuple(article.getFiles()) + tuple(article.getImages())
        for proxy in file_proxies:
            proxy.renameFromFileName()

    applyArticles(portal, modifyArticle)

    out.append("Set version information on older articles")
    out.append("Renamed proxy files and images ids to stored filename")
    return out