Changeset 941

Show
Ignore:
Timestamp:
08/23/07 17:42:43
Author:
mylan
Message:

Prepare new skin skeleton for install new skin with portal_setup. Need for testin yet.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • qPloneSkinDump/branches/plone_3.0/skin_template/Extensions/Install.py.old

    r935 r941  
    103103    portal_js = getToolByName(portal, 'portal_javascripts', None) 
    104104    # Get all properies, saving during installation, for uninstalling 
    105     actual_skin_name = getProperty(pp, 'uninstall_properties', 'q_actual_skin_name',default=SKIN_NAME) 
     105     
     106    actual_skin_name = getProperty(pp, 'uninstall_properties', 'q_actual_skin_name',default=SKIN_NAME) # XXX-1 Removed as overintelligence 
     107 
    106108    initial_skin = getProperty(pp, 'uninstall_properties', 'q_default_skin',default="") 
    107109    original_css_list = getProperty(pp, 'uninstall_properties', 'q_registered_css') 
     
    113115        pp.manage_delObjects(ids=['uninstall_properties',]) 
    114116    # Uninstall skin 
     117     
     118    # [XXX-1] -> uninstallSkin(skinsTool, SKIN_NAME, initial_skin) 
    115119    uninstallSkin(skinsTool, actual_skin_name, initial_skin) 
    116120    # Unregister skin's CSS-es from portal_css. Only for Plone 2.1+ 
  • qPloneSkinDump/branches/plone_3.0/skin_template/Extensions/utils.py

    r935 r941  
    425425        pp.addPropertySheet(id='uninstall_properties', title= 'uninstall_properties') 
    426426        print >> out, "Created 'portal_properties.uninstall_properties' PropertySheet (UP) for backup purpose" 
    427  
     427    return pp.uninstall_properties 
    428428CHECKED_MESSAGE = "The base installation checkings completed." 
    429429 
     
    447447        qi.uninstallProducts(products=installed_skin_products) 
    448448 
     449################################### 
     450## Prepare UNINSTALL 
     451 
     452def prepareUninstallSkin(portal, pp_up, out): # ?? 
     453    # Checking for presense SKIN_NAME in portal_skins directory view or among Skin Names 
     454    skinsTool = getToolByName(portal, 'portal_skins') 
     455    # Get unique product_skin_name and remember it in case of differ from SKIN_NAME. 
     456    default_skin = skinsTool.getDefaultSkin() 
     457    addProperty(pp_up, 'q_default_skin', default_skin, 'string', out) 
  • qPloneSkinDump/branches/plone_3.0/skin_template/profiles/default/import_steps.xml

    r935 r941  
    1212              title="Perform old installation steps (temporary)"> 
    1313  <dependency step="toolset"/> 
    14   <dependency step="skins"/> 
    1514  <dependency step="cssregistry"/> 
    1615  <dependency step="jsregistry"/> 
     
    1817   Perform old installation steps (temporary) 
    1918 </import-step> 
     19 
     20 <import-step id="skins" version="20040630-01" 
     21              handler="Products.CMFCore.exportimport.skins.importSkinsTool" 
     22              title="Skins Tool"> 
     23     <dependency step="toolset"/> 
     24     <dependency step="%(skin_name)s_old_install"/> 
     25     Import skins tool's filesystem directory views and skin path definitions. 
     26 </import-step> 
     27 
     28 
    2029</import-steps> 
  • qPloneSkinDump/branches/plone_3.0/skin_template/setuphandlers.py

    r935 r941  
    7373    # Checking base condition for installation 
    7474    skinsTool = getToolByName(self, 'portal_skins') 
     75    # Checking for absence of SKIN_NAME skin in site 
     76    skin_names = skinsTool.getSkinSelections() 
     77    if SKIN_NAME in skin_names: 
     78        raise AttributeError("Installation aborted due to '%%s' skin already present in your site." %% SKIN_NAME) 
    7579    # Checking for BASE_SKIN_NAME presenting in portal 
    7680    skin_names = skinsTool.getSkinSelections() 
     
    7983    # Checking for presenting lower_SKIN_NAME directory in portal skins 
    8084    lower_SKIN_NAME = string.lower(SKIN_NAME) 
    81     if lower_SKIN_NAME in skinsTool.objectIds(): 
    82         raise AttributeError("%%s skin layer already exist in portal skins. Installation Impossible." %% lower_SKIN_NAME) 
     85    #if lower_SKIN_NAME in skinsTool.objectIds(): 
     86    #    raise AttributeError("%%s skin layer already exist in portal skins. Installation Impossible." %% lower_SKIN_NAME) 
    8387     
    8488    #return CHECKED_MESSAGE 
     
    9296    portal_js = getToolByName(portal, 'portal_javascripts', None) 
    9397    # Make main prepare procedures 
    94     prepareInstallation(portal, pp, out) 
    95     pp_up = pp.uninstall_properties 
     98    pp_up = prepareInstallation(portal, pp, out) # create 'uninstall_properties' propertySheet in portal_properties 
    9699    # Install skin 
    97     installSkin(portal, pp_up, out) 
     100    #installSkin(portal, pp_up, out)    # performed with portal_setup 
     101    prepareUninstallSkin(portal, pp_up, out) 
     102 
    98103    # Register css resources 
    99104    if portal_css and DOES_COSTOMIZE_CSS: 
  • qPloneSkinDump/branches/plone_3.0/utils.py

    r935 r941  
    131131 
    132132    return slot_structure 
     133 
     134def buildSkinLayers(context, zmi_base_skin_name): 
     135    pskins = getToolByName(context,'portal_skins') 
     136    layers = (pskins.getSkinPath(zmi_base_skin_name) or '').split(',') 
     137    return "\n".join(['   <layer name="%s"/>'%l for l in layers]) 
    133138 
    134139def dumpSkin(context, \ 
     
    278283        left_slots = right_slots = None 
    279284        slot_forming = main_column = None 
     285 
     286    # Prepare XML strings for add to skins.xml 
     287    skin_layers = buildSkinLayers(context, zmi_base_skin_name) 
     288 
    280289    # Copy skin_template to SKIN_PRODUCT directory 
    281290    templatePath = ospJoin(products_path, PROJECTNAME, TEMPLATE_PATH) 
     
    299308                ,"product_name" : productName \ 
    300309                ,"skin_name" : productSkinName \ 
     310                ,"skin_name_lowercase" : productSkinName.lower() \ 
    301311                ,"skin_name_capital" : '%s%s' % (productSkinName[0].upper(), productSkinName[1:]) \ 
    302312                ,"product_name_lowercase" : productName.lower() \ 
     
    304314                ,"version1" : time.strftime('%Y%m%d') + '-1' \ 
    305315                ,"version2" : time.strftime('%Y%m%d') + '-2' \ 
    306                 ,"slot_structure" : str(slots) 
    307                
     316                ,"slot_structure" : str(slots) \ 
     317                ,"skin_layers" : skin_layers
    308318    sp_updated_files = ['config.py' \ 
    309319                       ,'README.txt' \ 
     
    316326                       ,ospJoin('browser', 'configure.zcml')\ 
    317327                       ,ospJoin('profiles', 'default', 'import_steps.xml')\ 
     328                       ,ospJoin('profiles', 'default', 'skins.xml')\ 
    318329                       ,ospJoin('browser', 'configure.zcml') 
    319330                       ]