May 7, 2012

Additional Requirements

In the last post I did not include everything that was covered by my initial proposal and the discussion on the mailing list.

Context Awareness

In ticket 5768 context awareness is brought up. Some parts of SilverStripe can be run from the command line. The logging/debugging functionality should be aware of this, i.e. no html output in command line mode. This fits well with my idea that the all code that is concerned with formatting / output should be in a central place, either in the logging class or somewhere else

Debugging Fatal Errors

Sometimes we will need to debug fatal errors. Since we cannot send any output after the error occurred, we will need to bypass any caching that we do and dump messages as soon as they come in.

Author Toolbar

This feature is not included in the default blackcandy theme and therefore probably not well known (at least I never heard about it before this project). I should check if any things that I introduce for the developer dashboard can be applied to this toolbar as well.

Additional Features

  • Debugging/Displaying the generated YAML configuration
  • other things

Optional Stuff

FirePHP integration and anything else we come up with if I finish early and get bored.


  1. Hey, completely random thought on the author toolbar - maybe you could do it with Twitter Bootstrap?
    Sounds like an easy way to get it going without too much effort.
    For example, it comes with built-in tab structures, even multilevel (very Firebug-like).

    We'd have to sandbox the toolbar from page styles anyway (most likely iframe), so no problem there. And we can't easily use the CMS CSS either, since its quite complex => hard to extract the bits you'd actually need.

    So to be clear, that's a suggestion to save time, if it turns out to cause more problems than it solves feel free to ignore ;)

  2. If possible, I aim for a look and feel that is consistent with the back end. A button in the developer dashboard should look like a button in the admin back end. I had a quick look at the back end css, I'll see what parts I can reuse and what I will do on my own.