July 30th, 2002

  • brad

Stock theme with admin-defined colors

You can now define the colors for the stock BML theme in your etc/fbconfig.pl file.

For example:
    $STOCK_BGCOLOR = "ffffff";
    $STOCK_TEXTCOLOR = "000000";
    $STOCK_BARCOLOR = "7f74fc";
    $STOCK_BARCOLOR_LIGHT = "b1aaff";


An off-shoot of this project was remapping a palette range on a gradient.

Lot of misc cleanup & enhancements along the way, too. Better HTTP compliance everywhere.

Mart, unforunately I did this before merging your CSS/HTML cleanup .... but I kinda did that on purpose because I couldn't generate dynamic CSS if it's in a separate file, and I didn't know the best way to do it. I do want to remove all those font tags, though, so if you can send me a modified version that still works with theming, that'd rock. I don't care so much about putting the CSS in an external file.
  • brad

Status: CSS cleanup, style editor

mart revised my changes to whitaker's BML scheme of niko's site template. It's in CVS & live now. I'm happy with it now, so I think we can all focus our energy elsewhere again.

My next project is the web-based style editor.

When you create an account, the system will create a new style for you, which is a copy of a style defined in etc/fbconfig.pl (or, failing that, built-in).

The /manage/styles will let you pick your default style for your entire account. Initially there will only be one row there... the style created when you made your account (named the same as your account name).

But, you can create new ones. And if you have more than 1, then the /manage/gal page will let you select which style a gallery is, or "(default)" for styleid 0, which falls back to your accont default one.

A style consists of:

-- A layout.
-- An optional theme for that layout.
-- A language.
-- An optional "user layer" which the user sees as a big HTML form letting them tweak any properties which the upper layers reflect.

mart, want to start feeding me small core1.s2 patches with explanations? I'm starting to understand some of the things you did with it before, and I know you're generally on the right track, but I get confused. For instance, I now see why we need a GalleryPicturePage ... so we can have next/previous buttons on a picture page to cycle within the current gallery.

We need to decide the URL format for picture pages in a specific gallery. Just append /000a2 to it? (No need for the 3 digit auth, since we already have the pic auth before it)
  • brad


I cleaned the S2-running code today a ton ... merging all the common and tedious stuff from the *Page.pm files into the main library.

All a new view has to do now is:

FB::s2_run($r, [ $u->{'styleid'} ], "IndexPage::print()", $indexpage);

(where $r is the Apache request object)

My debugging of that led to tons of improvements in S2's error reporting.

I implemented the S2 builtin set_content_type() function, using some trickery for speed of prints from S2.

There is now a hashref called $FB::DEFAULT_STYLE that determines which layers are used by default when the user doesn't have a default style set.

I started using lib/fbdefaults.pl which was previously an empty file. I moved the default color stuff from the stock BML scheme into there.

I started working on the Manage Styles page.

In the process I had to do the userprop loading/setting.

So much infrastructure work ... pretty boring.

It'll get exciting soon here, especially as Mart and I slowly lean towards understanding each other more....

I'll try to have the style editor done soon here, so we can easily work with more than one style at a time.