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
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