project.php 9.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224
  1. <?php
  2. session_start();
  3. $http_host = $_SERVER["HTTP_HOST"];
  4. $doc_root = $_SERVER["DOCUMENT_ROOT"] . "/";
  5. include $doc_root . "functions.php";
  6. $proto = get_protocol();
  7. $con = start_db();
  8. $server = $proto . $http_host;
  9. $lang = select_language($con);
  10. $lserver = $server . "/" . $lang;
  11. // Get project data
  12. $permalink = mysqli_real_escape_string($con, $_GET["permalink"]);
  13. $q_project = mysqli_query($con, "SELECT * FROM project WHERE permalink = '$permalink' AND visible = 1;");
  14. if (mysqli_num_rows($q_project) == 0){
  15. header("Location: $lserver/project/");
  16. exit(-1);
  17. }
  18. $r_project = mysqli_fetch_array($q_project);
  19. $id = $r_project["id"];
  20. $title = text($con, $r_project["title"], $lang);
  21. $summary = text($con, $r_project["header"], $lang);
  22. $cur_section = "project";
  23. $cur_entry = $id;
  24. ?>
  25. <!DOCTYPE html>
  26. <html lang='<?=$lang?>'>
  27. <head>
  28. <meta content="text/html; charset=utf-8" http-equiv="content-type"/>
  29. <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1"/>
  30. <title><?=$title?> - <?=text($con, "USER_NAME", $lang);?></title>
  31. <?php
  32. if (strlen($r_project["logo"]) > 0){
  33. ?>
  34. <link rel="shortcut icon" href="<?=$lserver?>/img/logo/x2/favicon.ico"/>
  35. <?php
  36. }
  37. else{
  38. ?>
  39. <link rel="shortcut icon" href="<?=$lserver?>/img/project/x2/<?=$r_project["logo"]?>"/>
  40. <?php
  41. }
  42. ?>
  43. <!-- CSS files -->
  44. <style>
  45. <?php
  46. include $doc_root . "css/ui.css";
  47. include $doc_root . "css/project.css";
  48. ?>
  49. </style>
  50. <!-- CSS for mobile version -->
  51. <style media="(max-width : 990px)">
  52. <?php
  53. include $doc_root . "css/m/ui.css";
  54. include $doc_root . "css/m/project.css";
  55. ?>
  56. </style>
  57. <!-- Script files -->
  58. <script type="text/javascript">
  59. <?php
  60. include $doc_root . "script/ui.js";
  61. include $doc_root . "script/project.js";
  62. ?>
  63. </script>
  64. <!-- Meta tags -->
  65. <link rel="canonical" href="<?=$lserver?>/project/<?=$r_project["permalink"]?>"/>
  66. <link rel="author" href="<?=$lserver?>"/>
  67. <link rel="publisher" href="<?=$lserver?>"/>
  68. <meta name="description" content="<?=$summary?>"/>
  69. <meta property="og:title" content="<?=$title?> - <?=text($con, "USER_NAME", $lang);?>"/>
  70. <meta property="og:url" content="<?=$lserver?>/project/<?=$r_project["permalink"]?>"/>
  71. <meta property="og:description" content="<?=$summary?>"/>
  72. <?php
  73. if (strlen($r_project["logo"]) == 0){
  74. ?>
  75. <meta property="og:image" content="<?=$lserver?>/img/logo/x3/favicon.ico"/>
  76. <?php
  77. }
  78. else{
  79. ?>
  80. <meta property="og:image" content="<?=$lserver?>/img/project/x3/<?=$r_project["logo"]?>"/>
  81. <?php
  82. }
  83. ?>
  84. <meta property="og:site_name" content="<?=text($con, "USER_NAME", $lang);?>"/>
  85. <meta property="og:type" content="website"/>
  86. <meta property="og:locale" content="<?=$lang?>"/>
  87. <meta name="twitter:card" content="summary"/>
  88. <meta name="twitter:title" content="<?=$title?> - <?=text($con, "USER_NAME", $lang);?>"/>
  89. <meta name="twitter:description" content="<?=$summary?>"/>
  90. <?php
  91. if (strlen($r_project["logo"]) == 0){
  92. ?>
  93. <meta name="twitter:image" content="<?=$lserver?>/img/logo/x3/favicon.ico"/>
  94. <?php
  95. }
  96. else{
  97. ?>
  98. <meta name="twitter:image" content="<?=$lserver?>/img/project/x3/<?=$r_project["logo"]?>"/>
  99. <?php
  100. }
  101. ?>
  102. <meta name="twitter:url" content="<?=$lserver?>/project/<?=$r_project["permalink"]?>"/>
  103. <meta name="robots" content="index follow"/>
  104. </head>
  105. <body>
  106. <?php
  107. include $doc_root . "header.php";
  108. ?>
  109. <div id='content'>
  110. <div id='content_row'>
  111. <div class='content_cell' id='content_cell_main'>
  112. <div class='section' id='main_column'>
  113. <h3 class='section_title'><?=$title?></h3>
  114. <div class='entry'>
  115. <h4><?=$summary?></h4>
  116. <?=text($con, $r_project["text"], $lang)?>
  117. <?php
  118. $q_image = mysqli_query($con, "SELECT * FROM project_image WHERE project = $id ORDER BY idx");
  119. if (mysqli_num_rows($q_image) > 0){
  120. ?>
  121. <div id='image_reel'>
  122. <table>
  123. <tr>
  124. <?php
  125. while ($r_image = mysqli_fetch_array($q_image)){
  126. ?>
  127. <td>
  128. <img title='<?=$title?>' alt='<?=$title?>' src='<?=$lserver?>/img/project/x4/<?=$r_image["image"]?>'/>
  129. </td>
  130. <?php
  131. } // while ($r_image = mysqli_fetch_array($q_image))
  132. ?>
  133. </tr>
  134. </table>
  135. </div> <!-- #image_reel -->
  136. <?php
  137. } // if (mysqli_num_rows($q_image) > 0)
  138. $q_embed = mysqli_query($con, "SELECT * FROM project_url WHERE type = 'E' AND project = $id;");
  139. while ($r_embed = mysqli_fetch_array($q_embed)){
  140. ?>
  141. <br/><br/>
  142. <div class='iframe_container'>
  143. <iframe class='project_embed' onload='resizeIframe(this);' src='<?=$lserver?>/project/embed/<?=$r_embed["url"]?>'></iframe>
  144. </div>
  145. <?php
  146. }
  147. ?>
  148. </div> <!-- .entry -->
  149. </div> <!-- #main_column -->
  150. </div> <!-- #content_cell_main -->
  151. <div class='content_cell' id='content_cell_right'>
  152. <div class='section' id='right_column'>
  153. <h3 class='section_title'><?=text($con, "PROJECT_DETAILS", $lang);?></h3>
  154. <div class='entry'>
  155. <?php
  156. $q_url = mysqli_query($con, "SELECT url, title, summary, logo FROM project_url, project_url_type WHERE project_url_type.id = project_url.type AND project = $id AND type <> 'E';");
  157. while ($r_url = mysqli_fetch_array($q_url)){
  158. ?>
  159. <div class='url'>
  160. <a target='_blank' title='<?=text($con, $r_url["title"], $lang);?>' href='<?=text($con, $r_url["url"], $lang);?>'>
  161. <?php
  162. if (strlen($r_url["logo"]) > 0){
  163. ?>
  164. <img title='<?=text($con, $r_url["title"], $lang);?>' alt='<?=text($con, $r_url["title"], $lang);?>' src='<?=$lserver?>/img/url/x2/<?=$r_url["logo"]?>'/>
  165. <?php
  166. }
  167. ?>
  168. <?=text($con, $r_url["summary"], $lang);?>
  169. </a>
  170. </div> <!-- .url -->
  171. <?php
  172. }
  173. ?>
  174. </div> <!-- .entry -->
  175. <div class='entry'>
  176. <?php
  177. $q_license = mysqli_query($con, "SELECT * FROM license WHERE id = '$r_project[license]';");
  178. $r_license = mysqli_fetch_array($q_license);
  179. ?>
  180. <span class='fakelink pointer' onClick='showLicense(true);'>
  181. <img id='img_license' title='<?=$r_license["id"]?>' alt='<?=$r_license["id"]?>' src='<?=$lserver?>/img/license/x2/<?=$r_license["logo"]?>' />
  182. </span>
  183. <br/>
  184. <br/>
  185. <?php
  186. $q_version = mysqli_query($con, "SELECT version_name, project_version.summary AS summary, dtime, title, project_version_type.summary AS vsummary, color FROM project_version, project_version_type WHERE type = id AND visible = 1 AND project = $id ORDER BY dtime DESC LIMIT 1;");
  187. $r_version = mysqli_fetch_array($q_version);
  188. ?>
  189. <?=text($con, 'PROJECT_VERSION', $lang)?> <?=$r_version["version_name"]?>
  190. <span class='version_type' style='background-color: <?=$r_version["color"]?>'>
  191. <?=text($con, $r_version["title"], $lang)?>
  192. </span>
  193. </div>
  194. </div> <!-- #right_column -->
  195. </div> <!-- #content_cell_right -->
  196. </div> <!-- #content_row -->
  197. <div id='cover'>
  198. </div> <!-- #cover -->
  199. <div id='license' class='section'>
  200. <h3 class='section_title'>
  201. <?=$r_license["id"]?>
  202. <img alt='<?=text($con, "PROJECT_CLOSE", $lang)?>' title='<?=text($con, "PROJECT_CLOSE", $lang)?>' class='fakelink pointer' onClick='showLicense(false);' src='<?=$lserver?>/img/misc/x1/slid-close.png'>
  203. </h3>
  204. <div class='entry'>
  205. <h4><?=text($con, "PROJECT_LICENSE_SUMMARY", $lang)?></h4>
  206. <div class='license_text'><?=close_tags(text($con, $r_license["summary"], $lang))?></div>
  207. </div>
  208. <div class='entry'>
  209. <h4><?=text($con, "PROJECT_LICENSE_LEGAL", $lang)?></h4>
  210. <div id='license_legal' class='license_text'><?=text($con, $r_license["legal"], $lang)?></div>
  211. </div>
  212. </div> <!-- #license -->
  213. </div> <!-- #content -->
  214. <?php
  215. //Footer
  216. include $doc_root . "footer.php";
  217. stats($con, $cur_section, $cur_entry);
  218. ?>
  219. </body>
  220. </html>