Changeset 2066

Show
Ignore:
Timestamp:
06/25/09 11:45:33 (9 months ago)
Author:
JensDiemer
Message:

update save_all_color_cachfiles() and bugfix: if no colorscheme used.

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • branches/0.9/pylucid_project/apps/pylucid/models.py

    r2064 r2066  
    615615    content = models.TextField() 
    616616 
    617     def get_color_filepath(self, colorscheme): 
     617    def get_color_filepath(self, colorscheme=None): 
    618618        """ Colorscheme + filepath """ 
    619         assert isinstance(colorscheme, ColorScheme) 
    620         return os.path.join("ColorScheme_%s" % colorscheme.pk, self.filepath) 
     619        if colorscheme: 
     620            assert isinstance(colorscheme, ColorScheme) 
     621            return os.path.join("ColorScheme_%s" % colorscheme.pk, self.filepath) 
     622        else: 
     623            # The Design used no colorscheme 
     624            return self.filepath 
    621625 
    622626    def get_path(self, colorscheme): 
     
    672676 
    673677    def save_all_color_cachfiles(self): 
    674         """ this headfile was changed: resave all cache files in every existing colors""" 
    675         warnings.warn("TODO") 
    676 #        designs = Design.objects.all().filter(colorscheme=colorscheme) 
    677 #        for design in designs: 
    678 #            print design 
    679 #            headfiles = design.headfiles.all() 
    680 #            for headfile in headfiles: 
    681 #                print headfile 
    682 #                headfile.save_cache_file(colorscheme) 
     678        """ 
     679        this headfile was changed: resave all cache files in every existing colors 
     680        TODO: Update Queyset lookup 
     681        """ 
     682        designs = Design.objects.all() 
     683        for design in designs: 
     684            headfiles = design.headfiles.all() 
     685            for headfile in headfiles: 
     686                if headfile == self: 
     687                    colorscheme = design.colorscheme 
     688                    self.save_cache_file(colorscheme) 
    683689 
    684690    def get_absolute_url(self, colorscheme): 
     
    690696            # not cached into filesystem -> use pylucid.views.send_head_file for it 
    691697            url = reverse('PyLucid-send_head_file', kwargs={"filepath":self.filepath}) 
    692             return url + "?ColorScheme=%s" % colorscheme.pk 
     698            if colorscheme: 
     699                return url + "?ColorScheme=%s" % colorscheme.pk 
     700            else: 
     701                # Design used no colorscheme 
     702                return url 
    693703 
    694704    def get_headfilelink(self, colorscheme):