* Link: http://seemslegit.com
* License: GPLv2
* Description: A mashup of Default, Danbooru, the interface on qwebirc, and
* 	       some other sites, packaged in a light blue color.
*/
class Layout
{
    public function display_page(Page $page)
    {
        global $config, $user;
        $theme_name = $config->get_string('theme', 'lite');
        $site_name = $config->get_string('title');
        $data_href = get_base_href();
        $contact_link = contact_link();
        $header_html = $page->get_all_html_headers();
        $menu = "
";
        
        $left_block_html = "";
        $main_block_html = "";
        $sub_block_html  = "";
        $user_block_html = "";
        foreach ($page->blocks as $block) {
            switch ($block->section) {
                case "left":
                    $left_block_html .= $this->block_to_html($block, true, "left");
                    break;
                case "main":
                    $main_block_html .= $this->block_to_html($block, false, "main");
                    break;
                case "user":
                    $user_block_html .= $block->body;
                    break;
                case "subheading":
                    $sub_block_html .= $this->block_to_html($block, false, "main");
                    break;
                default:
                    print "error: {$block->header} using an unknown section ({$block->section})";
                    break;
            }
        }
        $custom_sublinks = "
";
        // hack
        $username = url_escape($user->name);
        // hack
        $qp = explode("/", ltrim(_get_query(), "/"));
        $cs = "";
        // php sucks
        switch ($qp[0]) {
            default:
                $cs = $user_block_html;
                break;
            case "":
                # FIXME: this assumes that the front page is
                # post/list; in 99% of case it will either be
                # post/list or home, and in the latter case
                # the subnav links aren't shown, but it would
                # be nice to be correct
            case "post":
                if (class_exists("NumericScore")) {
                    $cs .= "
Popular by Day/Month/Year ";
                }
                $cs .= "
All";
                if (class_exists("Favorites")) {
                    $cs .= "
My Favorites";
                }
                if (class_exists("RSS_Images")) {
                    $cs .= "
Feed";
                }
                if (class_exists("Random_Image")) {
                    $cs .= "
Random Image";
                }
                if (class_exists("Wiki")) {
                    $cs .= "
Help";
                } else {
                    $cs .= "
Help";
                }
                break;
            case "comment":
                $cs .= "
All";
                $cs .= "
Feed";
                $cs .= "
Help";
                break;
            case "pool":
                $cs .= "
List";
                $cs .= "
Create";
                $cs .= "
Changes";
                $cs .= "
Help";
                break;
            case "wiki":
                $cs .= "
Index";
                $cs .= "
Rules";
                $cs .= "
Help";
                break;
            case "tags":
            case "alias":
                $cs .= "
Map";
                $cs .= "
Alphabetic";
                $cs .= "
Popularity";
                $cs .= "
Categories";
                $cs .= "
Aliases";
                $cs .= "
Help";
                break;
            case "upload":
                if (class_exists("Wiki")) {
                    $cs .= "
Guidelines";
                }
                break;
            case "random":
                $cs .= "
Shuffle";
                $cs .= "
Download";
                break;
            case "featured":
                $cs .= "
Download";
                break;
        }
        if ($cs == "") {
            $custom_sublinks = "";
        } else {
            $custom_sublinks .= "$cs