root/dev/common/class.page.php @ 57

Revision 57, 6.3 KB (checked in by exi, 16 years ago)

Changed http_request to be able to post form data
Edited default/blue stylesheets to strecht the page height to 100% again with standards compliance mode

Line 
1<?php
2require_once("config.php");
3require_once("class.killboard.php");
4require_once("class.session.php");
5
6class Page
7{
8    function Page($title = "", $cachable = true)
9    {
10        $this->title_ = $title;
11        $this->admin_ = false;
12
13        if (substr($_SERVER['HTTP_USER_AGENT'], 0, 15) == "EVE-minibrowser")
14            $this->igb_ = true;
15        else
16            $this->igb_ = false;
17
18        $this->timestart_ = strtok(microtime(), ' ') + strtok('');
19
20        $this->killboard_ = new Killboard(KB_SITE);
21
22        $this->session_ = new Session();
23
24        $this->cachable_ = $cachable;
25        $this->cachetime_ = 5;
26    }
27
28    function setContent($html)
29    {
30        $this->contenthtml_ = $html;
31    }
32
33    function addContext($html)
34    {
35        $this->contexthtml_ .= $html;
36    }
37
38    function generate()
39    {
40        global $config;
41        $html = '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"  "http://www.w3.org/TR/html4/loose.dtd">';
42        $html .= '<html>';
43        $html .= '<head>';
44        $html .= '<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">';
45        $html .= '<title>'.KB_TITLE.' Killboard - '.$this->title_."</title>\n";
46        $html .= "<link rel=\"stylesheet\" type=\"text/css\" href=\"".STYLE_URL."/common.css\">";
47
48        $style = $config->getStyleName();
49        $html .= "<link rel=\"stylesheet\" type=\"text/css\" href=\"".STYLE_URL."/".$style."/style.css\">";
50
51        if (!$this->igb_)
52            $html .= "<script language=javascript src=\"".COMMON_URL."/generic.js\"></script>";
53        $html .= "</head>\n";
54        $html .= "<body bgcolor=\"#222222\"";
55        if ($this->onload_)
56            $html .= " onload=\"".$this->onload_."\"";
57
58        $html .= " style=\"height: 100%\">\n";
59        // header
60        $html .= "<table class=\"main-table\" height=\"100%\" align=\"center\" bgcolor=\"#111111\" border=\"0\" cellspacing=\"1\" style=\"height: 100%\"><tr style=\"height: 100%\"><td valign=\"top\" height=\"100%\" style=\"height: 100%\">\n";
61        if (!$this->igb_)
62        {
63            $html .= "<div id=header>\n";
64            $html .= "<img src=\"";
65            $banner = $config->getStyleBanner();
66            if ($banner != "custom")
67                $html .= IMG_URL . "/banners/" . $banner . ".jpg";
68            else
69                $html .= "kb-banner.jpg";
70
71            $html .= "\" border=\"0\">";
72
73            $html .= "</div>\n";
74            $contracts = $this->killboard_->hasContracts();
75            $campaigns = $this->killboard_->hasCampaigns();
76            $w = "\"10%\"";
77            if ($contracts || $campaigns) $w = "\"9%\"";
78            if ($contracts && $campaigns) $w = "\"8%\"";
79            $html .= "<table class=navigation width=\"100%\" height=\"25\" border=\"0\" cellspacing=\"1\"><tr class=kb-table-row-odd>\n";
80            $html .= "<td width=" . $w . " align=\"center\"><a class=link href=\"?a=home\">Home</a></td>";
81
82            if ($contracts)
83                $html .= "<td width=" . $w . " align=\"center\"><a class=link href=\"?a=contracts\">Contracts</a></td>";
84
85            if ($campaigns)
86                $html .= "<td width=" . $w . " align=\"center\"><a class=link href=\"?a=campaigns\">Campaigns</a></td>";
87
88            $html .= "<td width=" . $w . " align=\"center\"><a class=link href=\"?a=kills\">Kills</a></td>";
89            $html .= "<td width=" . $w . " align=\"center\"><a class=link href=\"?a=losses\">Losses</a></td>";
90            $html .= "<td width=" . $w . " align=\"center\"><a class=link href=\"?a=post\">Post mail</a></td>";
91            $html .= "<td width=" . $w . " align=\"center\"><a class=link href=\"";
92
93            if (CORP_ID) $html .= "?a=corp_detail&crp_id=" . CORP_ID;
94            if (ALLIANCE_ID) $html .= "?a=alliance_detail&all_id=" . ALLIANCE_ID;
95
96            $html .= "\">Stats</a></td>";
97
98            $html .= "<td width=" . $w . " align=\"center\"><a class=link href=\"?a=awards\">Awards</a></td>";
99            $html .= "<td width=" . $w . " align=\"center\"><a class=link href=\"?a=search\">Search</a></td>";
100            $html .= "<td width=" . $w . " align=\"center\"><a class=link href=\"?a=admin\">Admin</a></td>";
101            $html .= "<td width=" . $w . " align=\"center\"><a class=link href=\"?a=about\">About</a></td>";
102
103            $html .= "\n</tr></table>\n";
104        }
105        $html .= "<div id=page-title>" . $this->title_ . "</div>";
106        $html .= "<table cellpadding=0 cellspacing=0 width=\"100%\" border=\"0\"><tr>";
107        $html .= "<td valign=top><div id=content>\n";
108        $html .= $this->contenthtml_;
109        $this->timeend_ = strtok(microtime(), ' ') + strtok('');
110        $this->processingtime_ = $this->timeend_ - $this->timestart_;
111        $html .= "</div></td>";
112        if ($this->contexthtml_ != "")
113        {
114            $html .= "<td valign=top align=right><div id=context>\n";
115            $html .= $this->contexthtml_;
116            $html .= "</div></td>\n";
117        }
118        $html .= "</tr></table>";
119
120        if (KB_PROFILE > 0)
121            $html .= "<table class=kb-subtable width=\"99%\" border=0><tr><td height=100% align=right valign=bottom>" . $this->processingtime_ . "s</td></tr></table>\n";
122        else
123            $html .= "<!-- " . $this->processingtime_ . "s -->";
124        $html .= '<div class="counter"></div>';
125        $html .= "</td></tr></table>\n";
126        $html .= "</body></html>\n";
127        // ob_start( "ob_gzhandler" );
128        echo $html;
129        // ob_end_flush();
130    }
131
132    function igb()
133    {
134        return $this->igb_;
135    }
136
137    function setOnLoad($onload)
138    {
139        $this->onload_ = $onload;
140    }
141
142    function setTitle($title)
143    {
144        $this->title_ = $title;
145    }
146
147    function setAdmin()
148    {
149        if (!$this->session_->isAdmin())
150            Header("Location: ?a=login");
151    }
152
153    function isAdmin()
154    {
155        return $this->session_->isAdmin();
156    }
157
158    function isSuperAdmin()
159    {
160        return $this->session_->isSuperAdmin();
161    }
162
163    function setSuperAdmin()
164    {
165        if (!$this->session_->isSuperAdmin())
166            Header("Location: ?a=login");
167    }
168
169    function setCachable($cachable)
170    {
171        $this->cachable_ = $cachable;
172    }
173
174    function setCacheTime($cachetime)
175    {
176        $this->cachetime_ = $cachetime;
177    }
178
179    function error($errormsg)
180    {
181        echo $errormsg;
182        exit;
183    }
184}
185?>
Note: See TracBrowser for help on using the browser.