OSDN Git Service

83acceeb2c38a504720f48fa995044fc95023d98
[idb/iDB.git.git] / inc / html5.php
1 <?php
2 /*
3     This program is free software; you can redistribute it and/or modify
4     it under the terms of the Revised BSD License.
5
6     This program is distributed in the hope that it will be useful,
7     but WITHOUT ANY WARRANTY; without even the implied warranty of
8     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
9     Revised BSD License for more details.
10
11     Copyright 2004-2019 iDB Support - https://idb.osdn.jp/support/category.php?act=view&id=1
12     Copyright 2004-2019 Game Maker 2k - https://idb.osdn.jp/support/category.php?act=view&id=2
13
14     $FileInfo: html5.php - Last Update: 4/6/2022 SVN 944 - Author: cooldude2k $
15 */
16 $File3Name = basename($_SERVER['SCRIPT_NAME']);
17 if ($File3Name=="html5.php"||$File3Name=="/html5.php") {
18         require('index.php');
19         exit(); }
20 $XHTML5 = false;
21 // Check to see if we serv the file as html or xhtml
22 // if we do xhtml we also check to see if user's browser 
23 // can dispay if or else fallback to html
24 if($Settings['output_type']=="html") {
25         $ccstart = "//<!--"; $ccend = "//-->"; $XHTML5 = false;
26 header("Content-Type: text/html; charset=".$Settings['charset']); }
27 if($Settings['output_type']=="xhtml") {
28 if(stristr($_SERVER["HTTP_ACCEPT"],"application/xhtml+xml")) {
29         $ccstart = "//<![CDATA["; $ccend = "//]]>"; $XHTML5 = true;
30         header("Content-Type: application/xhtml+xml; charset=".$Settings['charset']); }
31 else { if (stristr($_SERVER["HTTP_USER_AGENT"],"W3C_Validator")) {
32         $ccstart = "//<![CDATA["; $ccend = "//]]>"; $XHTML5 = true;
33    header("Content-Type: application/xhtml+xml; charset=".$Settings['charset']);
34 } else { $ccstart = "//<!--"; $ccend = "//-->"; $XHTML5 = false;
35         header("Content-Type: text/html; charset=".$Settings['charset']); } } }
36 if($Settings['output_type']!="xhtml") {
37         if($Settings['output_type']!="html") {
38                 $ccstart = "//<!--"; $ccend = "//-->"; $XHTML5 = false;
39 header("Content-Type: text/html; charset=".$Settings['charset']); } }
40 if($checklowview===true&&$_GET['act']=="lowview") { 
41    $ThemeSet['CSSType'] = "lowview"; 
42    $ThemeSet['ThemeName'] = $OrgName." Low Theme";
43    $ThemeSet['ThemeMaker'] =$iDB_Author;
44    $ThemeSet['ThemeVersion'] = $VER1[0].".".$VER1[1].".".$VER1[2];
45    $ThemeSet['ThemeVersionType'] = $VER2[0];
46    $ThemeSet['ThemeSubVersion'] = $VER2[2]." ".$SubVerN;
47    $ThemeSet['MakerURL'] = $iDBHome."support/?act=lowview";
48    $ThemeSet['CopyRight'] = $ThemeSet['ThemeName']." was made by <a href=\"".$ThemeSet['MakerURL']."\" title=\"".$ThemeSet['ThemeMaker']."\">".$ThemeSet['ThemeMaker']."</a>";
49    $ThemeInfo['ThemeName'] = $ThemeSet['ThemeName'];
50    $ThemeInfo['ThemeMaker'] = $ThemeSet['ThemeMaker'];
51    $ThemeInfo['ThemeVersion'] = $ThemeSet['ThemeVersion'];
52    $ThemeInfo['ThemeVersionType'] = $ThemeSet['ThemeVersionType'];
53    $ThemeInfo['ThemeSubVersion'] = $ThemeSet['ThemeSubVersion'];
54    $ThemeInfo['MakerURL'] = $ThemeSet['MakerURL'];
55    $ThemeInfo['CopyRight'] = $ThemeSet['CopyRight']; }
56 if($ThemeSet['CSSType']!="import"&&
57    $ThemeSet['CSSType']!="link"&&
58    $ThemeSet['CSSType']!="lowview"&&
59    $ThemeSet['CSSType']!="xml"&&
60    $ThemeSet['CSSType']!="sql") { 
61    $ThemeSet['CSSType'] = "import"; }
62 header("Content-Style-Type: text/css");
63 header("Content-Script-Type: text/javascript");
64 if($Settings['showverinfo']!="on") {
65 $iDBURL1 = "<a href=\"".$iDBHome."\" title=\"".$iDB."\" onclick=\"window.open(this.href);return false;\">"; }
66 if($Settings['showverinfo']=="on") {
67 $iDBURL1 = "<a href=\"".$iDBHome."\" title=\"".$VerInfo['iDB_Ver_Show']."\" onclick=\"window.open(this.href);return false;\">"; }
68 $GM2kURL = "<a href=\"".$GM2kHome."\" title=\"".$GM2k."\" onclick=\"window.open(this.href);return false;\">".$GM2k."</a>";
69 $csryear = "2004"; $cryear = date("Y"); if($cryear<=2004) { $cryear = "2005"; }
70 $BSDL = "<a href=\"".url_maker($exfile['index'],$Settings['file_ext'],"act=bsd",$Settings['qstr'],$Settings['qsep'],$prexqstr['index'],$exqstr['index'])."\" title=\"".$RName." is dual-licensed under the Revised BSD License\">BSDL</a>";
71 $GPL = "<a href=\"".url_maker($exfile['index'],$Settings['file_ext'],"act=bsd",$Settings['qstr'],$Settings['qsep'],$prexqstr['index'],$exqstr['index'])."\" title=\"".$RName." is dual-licensed under the Gnu General Public License\">GPL</a>";
72 $DualLicense = $BSDL." &amp; ".$GPL;
73 $extext = null;
74 if($checklowview!==true) { $extext = "<a href=\"".url_maker($exfile['index'],$Settings['file_ext'],"act=lowview",$Settings['qstr'],$Settings['qsep'],$prexqstr['index'],$exqstr['index'])."\">Low-Version</a>"; }
75 if($checklowview===true&&$_GET['act']!="lowview") { $extext = "<a href=\"".url_maker($exfile['index'],$Settings['file_ext'],"act=lowview",$Settings['qstr'],$Settings['qsep'],$prexqstr['index'],$exqstr['index'])."\">Low-Version</a>"; }
76 if($checklowview===true&&$_GET['act']=="lowview") {  $extext = "<a href=\"".url_maker($exfile['index'],$Settings['file_ext'],"act=view",$Settings['qstr'],$Settings['qsep'],$prexqstr['index'],$exqstr['index'])."\">High-Version</a>"; }
77 $endpagevar = "<div class=\"copyright\">Powered by ".$iDBURL1.$RName."</a> &copy; ".$GM2kURL." @ ".$csryear." - ".$cryear." <br />\n".$ThemeSet['CopyRight']." | ".$extext; 
78 header("Content-Language: en");
79 header("Vary: Accept-Encoding");
80 // Check if we are on a secure HTTP connection
81 if($_SERVER['HTTPS']=="on") { $prehost = "https://"; }
82 if($_SERVER['HTTPS']!="on") { $prehost = "http://"; }
83 // Get the board's url
84 if($Settings['idburl']=="localhost"||$Settings['idburl']==null) {
85         $BoardURL = $prehost.$_SERVER["HTTP_HOST"].$basedir; }
86 if($Settings['idburl']!="localhost"&&$Settings['idburl']!=null) {
87         $BoardURL = $Settings['idburl']; 
88         if($Settings['qstr']!="/") {
89         $AltBoardURL = $BoardURL; } 
90         if($Settings['qstr']=="/") { 
91         $AltBoardURL = preg_replace("/\/$/","",$BoardURL); } }
92 // Get the html level
93 /*if($Settings['html_level']!="Strict") {
94         if($Settings['html_level']!="Transitional") {
95                 $Settings['html_level'] = "Transitional"; } }*/
96 // HTML Document Starts
97 ob_start("idb_suboutput_handler");
98 if($XHTML5===false) { ?>
99 <!DOCTYPE html>
100 <?php // HTML meta tags and other html, head tags ?>
101 <html lang="en">
102 <?php } if($XHTML5===true) { ?>
103 <!DOCTYPE html [
104 <!ENTITY nbsp "&#160;">
105 <!ENTITY copy "&#169;">
106 <!ENTITY reg "&#174;">
107 <!ENTITY Aacute "&#193;">
108 <!ENTITY aacute "&#225;">
109 <!ENTITY Agrave "&#224;">
110 <!ENTITY agrave "&#192;">
111 <!ENTITY Acirc "&#194;">
112 <!ENTITY acirc "&#226;">
113 <!ENTITY Auml "&#196;">
114 <!ENTITY auml "&#228;">
115 <!ENTITY Atilde "&#195;">
116 <!ENTITY atilde "&#227;">
117 <!ENTITY Aring "&#197;">
118 <!ENTITY aring "&#229;">
119 <!ENTITY Aelig "&#198;">
120 <!ENTITY aelig "&#230;">
121 <!ENTITY Ccedil "&#199;">
122 <!ENTITY ccedil "&#231;">
123 <!ENTITY Eth "&#208;">
124 <!ENTITY eth "&#240;">
125 <!ENTITY Eacute "&#201;">
126 <!ENTITY eacute "&#233;">
127 <!ENTITY Egrave "&#200;">
128 <!ENTITY egrave "&#232;">
129 <!ENTITY Ecirc "&#202;">
130 <!ENTITY ecirc "&#234;">
131 <!ENTITY Euml "&#203;">
132 <!ENTITY euml "&#235;">
133 <!ENTITY Iacute "&#205;">
134 <!ENTITY iacute "&#237;">
135 <!ENTITY Igrave "&#204;">
136 <!ENTITY igrave "&#236;">
137 <!ENTITY Icirc "&#206;">
138 <!ENTITY icirc "&#238;">
139 <!ENTITY Iuml "&#207;">
140 <!ENTITY iuml "&#239;">
141 <!ENTITY Ntilde "&#209;">
142 <!ENTITY ntilde "&#241;">
143 <!ENTITY Oacute "&#211;">
144 <!ENTITY oacute "&#243;">
145 <!ENTITY Ograve "&#210;">
146 <!ENTITY ograve "&#242;">
147 <!ENTITY Ocirc "&#212;">
148 <!ENTITY ocirc "&#244;">
149 <!ENTITY Ouml "&#214;">
150 <!ENTITY ouml "&#246;">
151 <!ENTITY Otilde "&#213;">
152 <!ENTITY otilde "&#245;">
153 <!ENTITY Oslash "&#216;">
154 <!ENTITY oslash "&#248;">
155 <!ENTITY szlig "&#223;">
156 <!ENTITY Thorn "&#222;">
157 <!ENTITY thorn "&#254;">
158 <!ENTITY Uacute "&#218;">
159 <!ENTITY uacute "&#250;">
160 <!ENTITY Ugrave "&#217;">
161 <!ENTITY ugrave "&#249;">
162 <!ENTITY Ucirc "&#219;">
163 <!ENTITY ucirc "&#251;">
164 <!ENTITY Uuml "&#220;">
165 <!ENTITY uuml "&#252;">
166 <!ENTITY Yacute "&#221;">
167 <!ENTITY yacute "&#253;">
168 <!ENTITY yuml "&#255;">
169 ]>
170 <html lang="en" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml">
171 <?php } ?>
172 <head>
173 <?php $iWrappers['HTMLSTART'] = ob_get_clean();
174 ob_start("idb_suboutput_handler");
175 if($XHTML5===false) { ?>
176 <meta charset="<?php echo $Settings['charset']; ?>">
177 <meta http-equiv="Content-Type" content="text/html; charset=<?php echo $Settings['charset']; ?>">
178 <meta name="language" content="english">
179 <?php 
180 if(!isset($_SERVER['HTTP_USER_AGENT'])) {
181         $_SERVER['HTTP_USER_AGENT'] = ""; }
182 if(strpos($_SERVER['HTTP_USER_AGENT'], "msie") && 
183         !strpos($_SERVER['HTTP_USER_AGENT'], "opera")){ ?>
184 <meta http-equiv="X-UA-Compatible" content="IE=Edge">
185 <?php } if(strpos($_SERVER['HTTP_USER_AGENT'], "chromeframe")) { ?>
186 <meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1">
187 <?php } } if($XHTML5===true) { ?>
188 <meta charset="<?php echo $Settings['charset']; ?>" />
189 <meta http-equiv="Content-Type" content="text/html; charset=<?php echo $Settings['charset']; ?>" />
190 <meta name="language" content="english" />
191 <?php 
192 if(!isset($_SERVER['HTTP_USER_AGENT'])) {
193         $_SERVER['HTTP_USER_AGENT'] = ""; }
194 if(strpos($_SERVER['HTTP_USER_AGENT'], "msie") && 
195         !strpos($_SERVER['HTTP_USER_AGENT'], "opera")){ ?>
196 <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
197 <?php } if(strpos($_SERVER['HTTP_USER_AGENT'], "chromeframe")) { ?>
198 <meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1" />
199 <?php } } $iWrappers['HTTPEQUIV'] = ob_get_clean(); 
200 ob_start("idb_suboutput_handler"); ?>
201 <meta itemprop="url" property="og:url" content="<?php echo $BoardURL; ?>" />
202 <base href="<?php echo $BoardURL; ?>" />
203 <?php if($Settings['showverinfo']=="on") { ?>
204 <meta name="Generator" content="<?php echo $VerInfo['iDB_Ver_Show']; ?>" />
205 <?php } if($Settings['showverinfo']!="on") { ?>
206 <meta name="Generator" content="<?php echo $iDB; ?>" />
207 <?php } ?>
208 <meta name="Author" content="<?php echo $SettInfo['Author']; ?>" />
209 <meta name="web_author" content="<?php echo $SettInfo['Author']; ?>" />
210 <meta name="rating" content="general" />
211 <meta name="Designer" content="<?php echo $ThemeSet['ThemeMaker']; ?>" />
212 <meta name="Publisher" content="<?php echo $GM2k; ?>" />
213 <meta name="Keywords" content="<?php echo $SettInfo['Keywords']; ?>" />
214 <meta name="Description" content="<?php echo $SettInfo['Description']; ?>" />
215 <meta itemprop="description" property="og:description" content="<?php echo $SettInfo['Description']; ?>" />
216 <meta itemprop="description" property="twitter:description" content="<?php echo $SettInfo['Description']; ?>" />
217 <meta name="viewport" content="width=device-width, initial-scale=1.0" />
218 <meta name="HandheldFriendly" content="true" />
219 <meta name="ROBOTS" content="Index, FOLLOW" />
220 <meta name="GOOGLEBOT" content="Index, FOLLOW" />
221 <meta name="revisit-after" content="7 days" />
222 <meta name="distribution" content="web" />
223 <meta itemprop="type" property="og:type" content="forum" />
224 <meta itemprop="card" property="twitter:card" content="summary_large_image" />
225 <?php if($Settings['showverinfo']=="on") { ?>
226 <!-- generator="<?php echo $VerInfo['iDB_Ver_Show']; ?>" -->
227 <?php } if($Settings['showverinfo']!="on") { ?>
228 <!-- generator="<?php echo $iDB; ?>" -->
229 <?php } $iWrappers['METATAGS'] = ob_get_clean(); 
230 ob_start("idb_suboutput_handler"); ?>
231 <link rel="preload" as="script" href="<?php echo url_maker($exfilejs['javascript'],$Settings['js_ext'],null,$Settings['qstr'],$Settings['qsep'],$prexqstrjs['javascript'],$exqstrjs['javascript']); ?>" />
232 <script type="text/javascript" src="<?php echo url_maker($exfilejs['javascript'],$Settings['js_ext'],null,$Settings['qstr'],$Settings['qsep'],$prexqstrjs['javascript'],$exqstrjs['javascript']); ?>"></script>
233 <script type="text/javascript">
234  var tzname=Intl.DateTimeFormat().resolvedOptions().timeZone;
235  document.cookie = "getusertz="+tzname;
236 </script>
237 <?php echo "\n"; $iWrappers['JAVASCRIPT'] = ob_get_clean(); 
238 ob_start("idb_suboutput_handler"); ?>
239 <link rel="Start" href="<?php echo $AltBoardURL.url_maker($exfile['index'],$Settings['file_ext'],"act=view",$Settings['qstr'],$Settings['qsep'],$prexqstr['index'],$exqstr['index']); ?>" title="<?php echo $Settings['board_name'].$idbpowertitle; ?>" />
240 <link rel="Copyright" href="<?php echo $AltBoardURL.url_maker($exfile['index'],$Settings['file_ext'],"act=bsd",$Settings['qstr'],$Settings['qsep'],$prexqstr['index'],$exqstr['index']); ?>" title="Copyright Notice" />
241 <?php echo "\n"; $iWrappers['LINKTAGS'] = ob_get_clean(); 
242 ob_start("idb_suboutput_handler");
243 if($ThemeSet['CSSType']=="import") { ?>
244 <style type="text/css">
245 /* Import the theme css file */
246 <?php echo "\n@import url(\"".$ThemeSet['CSS']."\");\n"; ?>
247 </style>
248 <?php } if($ThemeSet['CSSType']=="sql") { ?>
249 <style type="text/css">
250 <?php echo $ThemeSet['CSS']; ?>
251 </style>
252 <?php } if($ThemeSet['CSSType']=="link") { ?>
253 <link rel="preload" as="style" href="<?php echo $ThemeSet['CSS']; ?>" />
254 <link rel="prefetch alternate stylesheet" href="<?php echo $ThemeSet['CSS']; ?>" />
255 <link rel="stylesheet" type="text/css" href="<?php echo $ThemeSet['CSS']; ?>" />
256 <?php } if($ThemeSet['CSSType']=="lowview") { ?>
257 <style type="text/css">
258 /* (Low View / Lo-Fi ) version start */
259 body {
260 background-color: #FFFFFF;
261 color: #000000;
262 font-family: Verdana, Tahoma, Arial, Trebuchet MS, Sans-Serif, Georgia, Courier, Times New Roman, Serif;
263 font-size: 16px;
264 margin: 20px;
265 padding: 0px;
266 }
267 .copyright {
268 text-align: center;
269 font-family: Sans-Serif;
270 font-size: 12px;
271 line-height: 11px;
272 color: #000000;
273 }
274 .EditReply {
275 color: #000000;
276 font-size: 9px;
277 }
278 </style>
279 <?php } $iWrappers['CSSTHEME'] = ob_get_clean();
280 ob_start("idb_suboutput_handler");
281 if($ThemeSet['FavIcon']!=null) { ?>
282 <link rel="preload" as="image" href="<?php echo $ThemeSet['FavIcon']; ?>" />
283 <link rel="icon" href="<?php echo $ThemeSet['FavIcon']; ?>" />
284 <link rel="shortcut icon" href="<?php echo $ThemeSet['FavIcon']; ?>" />
285 <!--<link rel="preload" as="image" href="<?php echo $BoardURL.$ThemeSet['OpenGraph']; ?>" />
286 <link rel="preload" as="image" href="<?php echo $BoardURL.$ThemeSet['OpenGraph']; ?>" />-->
287 <meta itemprop="image" property="og:image" content="<?php echo $BoardURL.$ThemeSet['OpenGraph']; ?>" />
288 <meta itemprop="image" property="twitter:image" content="<?php echo $BoardURL.$ThemeSet['OpenGraph']; ?>" />
289 <?php } $iWrappers['FAVICON'] = ob_get_clean(); ?>