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

Revision 10, 6.4 KB (checked in by exi, 15 years ago)

Changed portrait generation to cache the pictures from img.eve.is
Changed about-page-spacing
Changed MapView? to use PNG instead of GIF
Added BugCompat? to MapView? for the GD<>imagefilledellipse()-Issue
Added Code for NPC-Corphandling (Corps have to be added manually)
Changed Raw-Killmail Window slightly
Added Killmail-Delete option within the killmail itself
Fixed privilege bug between admin and superadmin
Removed the need to enter the postpassword if you're logged in as admin
Changed coding style to Allman/BSD in all touched files
Various small changes i cant remember

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