Changeset 50
- Timestamp:
- 08/05/09 23:04:04 (3 years ago)
- Location:
- trunk/merengueproj
- Files:
-
- 9 added
- 3 edited
-
apps/base/templates/base.html (added)
-
apps/themes/__init__.py (modified) (1 diff)
-
apps/themes/admin.py (modified) (2 diffs)
-
apps/themes/checker.py (added)
-
apps/themes/models.py (modified) (3 diffs)
-
templates/themes (added)
-
templates/themes/bluesky (added)
-
templates/themes/bluesky/base.html (added)
-
templates/themes/bluesky/inc.footer.html (added)
-
templates/themes/bluesky/theme.info (added)
-
templates/themes/default (added)
-
templates/themes/default/base.html (added)
Legend:
- Unmodified
- Added
- Removed
-
trunk/merengueproj/apps/themes/__init__.py
r42 r50 18 18 for theme_dir in os.listdir(themes_root): 19 19 yield theme_dir, safe_join(themes_root, theme_dir) 20 21 22 def get_theme_path(directory_name=None): 23 for theme_dir, theme_path in get_theme_dirs(): 24 if directory_name == theme_dir: 25 return theme_path -
trunk/merengueproj/apps/themes/admin.py
r42 r50 1 from base.admin import BaseAdmin 1 from base.admin import BaseAdmin, set_field_read_only 2 2 from themes.checker import check_themes 3 3 from themes.models import Theme … … 5 5 6 6 class ThemeAdmin(BaseAdmin): 7 readonly_fields = ('name', 'description', 'directory_name') 8 list_display = ('name', 'directory_name', 'enabled', 'active') 7 readonly_fields = ('name', 'description', 'directory_name', 'installed') 8 list_display = ('name', 'directory_name', 'installed', 'active') 9 10 def get_form(self, request, obj=None): 11 form = super(ThemeAdmin, self).get_form(request, obj) 12 if not obj.installed: 13 set_field_read_only(form.base_fields['active'], 'active', obj) 14 return form 9 15 10 16 def changelist_view(self, request, extra_context=None): -
trunk/merengueproj/apps/themes/models.py
r42 r50 1 import os 2 import ConfigParser 3 1 4 from django.db import models 2 5 from django.db.models import signals 3 6 from django.utils.translation import ugettext_lazy as _ 4 7 8 from themes import get_theme_path 5 9 from themes.managers import ThemeManager 6 10 … … 9 13 name = models.CharField(_('name'), max_length=100) 10 14 description = models.TextField(_('description')) 11 enabled = models.BooleanField(default=False)15 installed = models.BooleanField(default=False) 12 16 active = models.BooleanField(default=False) 13 17 directory_name = models.CharField(_('directory name'), max_length=100) … … 17 21 def __unicode__(self): 18 22 return self.name 23 24 def get_path(self): 25 """ get theme template path """ 26 return get_theme_path(self.directory_name) 27 28 def update_from_fs(self, commit=True): 29 """ update theme info from filesystem """ 30 theme_info_file = os.path.join(self.get_path(), 'theme.info') 31 if os.path.isfile(theme_info_file): 32 config = ConfigParser.ConfigParser() 33 config.read(theme_info_file) 34 theme_name = config.get(ConfigParser.DEFAULTSECT, 'name', self.directory_name) 35 theme_description = config.get(ConfigParser.DEFAULTSECT, 'description', '') 36 else: 37 theme_name = self.directory_name 38 theme_description = '' 39 self.name = theme_name 40 self.description = theme_description 41 if commit: 42 self.save() 19 43 20 44
Note: See TracChangeset
for help on using the changeset viewer.
