| | 11 | try: |
|---|
| | 12 | True |
|---|
| | 13 | except: |
|---|
| | 14 | True = 1 |
|---|
| | 15 | False = 0 |
|---|
| | 16 | |
|---|
| | 17 | def setupSkin(self, out, layers): |
|---|
| | 18 | """Setup skins""" |
|---|
| | 19 | skinstool=getToolByName(self, 'portal_skins') |
|---|
| | 20 | addDirectoryViews(skinstool, 'skins', GLOBALS) |
|---|
| | 21 | |
|---|
| | 22 | for skin in skinstool.getSkinSelections(): |
|---|
| | 23 | modified = False |
|---|
| | 24 | path = skinstool.getSkinPath(skin) |
|---|
| | 25 | path = map( string.strip, string.split( path,',' ) ) |
|---|
| | 26 | for layer in layers: |
|---|
| | 27 | if not layer in path: |
|---|
| | 28 | try: |
|---|
| | 29 | path.insert(path.index('custom')+1, layer ) |
|---|
| | 30 | except ValueError: |
|---|
| | 31 | path.append(layer) |
|---|
| | 32 | modified = True |
|---|
| | 33 | out.write(' Layer %s sucessfully installed into skin %s.\n' % (layer,skin)) |
|---|
| | 34 | else: |
|---|
| | 35 | out.write(' Layer %s was already installed into skin %s.\n' % (layer,skin)) |
|---|
| | 36 | if modified: |
|---|
| | 37 | path = string.join( path, ', ' ) |
|---|
| | 38 | skinstool.addSkinSelection( skin, path ) |
|---|
| | 39 | |
|---|
| 20 | | # Checking for presense SKIN_NAME Layer in available skins |
|---|
| 21 | | avail_skin_names = skinsTool.getSkinSelections() |
|---|
| 22 | | if SKIN_NAME in avail_skin_names : |
|---|
| 23 | | out.write("Skipping creation %s skin, %s already set up\n" % (SKIN_NAME) ) |
|---|
| 24 | | return |
|---|
| | 44 | Layers = [] |
|---|
| | 45 | mtool = getToolByName(self, 'portal_migration') |
|---|
| | 46 | plone_version = mtool.getFileSystemVersion() |
|---|
| | 47 | if plone_version.startswith('2.1'): |
|---|
| | 48 | plone_version = '2.1' |
|---|
| | 49 | elif plone_version.startswith('2.0'): |
|---|
| | 50 | plone_version = '2.0.5' |
|---|
| | 51 | else: |
|---|
| | 52 | raise Exception("Error - Unsupported version. Suported versions: Plone 2.0.5-2.1.2") |
|---|
| 26 | | for skin in avail_skin_names: |
|---|
| 27 | | # Get skin's layers |
|---|
| 28 | | skin_layers = skinsTool.getSkinPath(skin) |
|---|
| 29 | | skin_layers_list = map( string.strip, string.split(skin_layers,',') ) |
|---|
| 30 | | if not (SKIN_NAME in skin_layers_list) : |
|---|
| 31 | | # Insert new layer after 'custom' |
|---|
| 32 | | try: |
|---|
| 33 | | skin_layers_list.insert(skin_layers_list.index('custom')+1 \ |
|---|
| 34 | | , string.lower(SKIN_NAME) ) |
|---|
| 35 | | except ValueError: |
|---|
| 36 | | skin_layers_list.append(string.lower(SKIN_NAME) ) |
|---|
| | 54 | product_path = package_home(GLOBALS) |
|---|
| | 55 | versioned_skin = path_join(product_path, 'skins', PROJECTNAME, plone_version) |
|---|
| 38 | | # Add new skin Layer |
|---|
| 39 | | new_skin_layers = string.join(skin_layers_list, ', ') |
|---|
| 40 | | skinsTool.addSkinSelection(skin, new_skin_layers) |
|---|
| 41 | | out.write("%s skin-layer was added to %s skin\n" % (SKIN_NAME, skin) ) |
|---|
| 42 | | else: |
|---|
| 43 | | out.write("Skipping adding %s skin-layer, to %s skin\n" % (SKIN_NAME, skin) ) |
|---|
| | 57 | Layers.append(SKIN_NAME) |
|---|
| | 58 | Layers.append('%s/%s' % (SKIN_NAME, plone_version) ) |
|---|
| | 59 | out.write('Call setupSkin... \n') |
|---|
| | 60 | setupSkin(self, out, Layers) |
|---|