On 6/15/06, Allen Gilliland <[EMAIL PROTECTED]> wrote:


Dave Johnson wrote:
> If we do things right we can completely avoid the problem you mention.
> Here's a slight adjustment to the options I presented before. With the part
> I added about the theme chooser, I don't think there is any room for a
> theme/model mix up here.
>
> 1 - Turn on Atlas, completely turn off old model
> site.macromodel="roller_3.0_only"
> Velocity context loaded with only NEW model stuff
> Create weblog page shows only NEW themes
> *** Theme chooser shows only NEW themes based on website.macroVersion
> This is the default for new installations
>
> 2 - Turn on Atlas, but continue to support old model
> site.macromodel=roller_3.0
> Create weblog page shows NEW themes only, defaults to new model
> Velocity context loaded with either OLD or NEW model stuff,
> website.macromodel
> *** Theme chooser shows OLD or NEW themes based on website.macromodel
> This is the default for upgrades

How do you know if a theme is old or new?  I can imagine a way to hack
some knowledge about what is new/old for themes Roller ships with, but
not custom themes.  If I have a custom theme called "xxx" in my
installation, how do you know if it's old or new?


Hmmm....

All existing weblogs are marked as weblog.macromodel=roller_2.0
And they can only pick old themes.

New weblogs get weblog.macromodel=roller_3.0
And they can only pick new themes.

So there's no quesiton there, we know what type of themes blogs are using.

So how do we know which model a given theme uses?

New themes files are placed in a new directory or we put a marker file
into new theme directories. Perhaps we have a convention that new
themes must contain a preview image file named preview.jpg. Or perhaps
we introduce a theme.xml file that goes into each theme direcory. Or
maybe just a theme.properties file.

<theme>
  <name>ThemeName</name>
  <link>ThemeName</name>
  <description>Theme description, blah</description>
  <content-type>text/html</content-type>
  <page-type>page</page-type>
</theme>

How do you allow users to convert from 2.0 to 3.0? With the
arrangement I've outlined above, they must make a clean break. The
migrate to 3.0 UI must warn them, you will lose all customizations and
you must start fresh with a new theme. Sounds harsh, but If we allow
them to have access to both models, then I bet we'll see lots of
themes stuck half-way between 2.0 and 3.0.

- Dave

Reply via email to