actividad.php 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329
  1. <?php
  2. session_start();
  3. $http_host = $_SERVER["HTTP_HOST"];
  4. include("../functions.php");
  5. $con = startdb();
  6. $proto = getProtocol();
  7. $server = "$proto$http_host";
  8. //Language
  9. $lang = selectLanguage();
  10. include("../lang/lang_$lang.php");
  11. $cur_section = $lng["section_activities"];
  12. // Get current activity id. Redirect if inexistent or invisible
  13. $perm = mysqli_real_escape_string($con, $_GET["perm"]);
  14. $q = mysqli_query($con, "SELECT id, permalink, title_$lang AS title, text_$lang AS text, after_$lang AS after, price, inscription, people, max_people, user, date, DATE_FORMAT(date, '%Y-%m-%d %T') AS cdate, DATE_FORMAT(date, '%Y-%m-%d') AS isodate, DATE_FORMAT(date,'%b %d, %Y') as fdate, dtime, comments, city FROM activity WHERE permalink = '$perm' AND visible = 1;");
  15. if (mysqli_num_rows($q) == 0){
  16. header("Location: $server/actividades/");
  17. exit(-1);
  18. }
  19. $r = mysqli_fetch_array($q);
  20. $id = $r["id"];
  21. ?>
  22. <!DOCTYPE html>
  23. <html>
  24. <head>
  25. <meta content="text/html; charset=windows-1252" http-equiv="content-type"/>
  26. <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1">
  27. <title><?=$r["title"]?> - Gasteizko Margolariak</title>
  28. <link rel="shortcut icon" href="<?=$server?>/img/logo/favicon.ico">
  29. <!-- CSS files -->
  30. <style>
  31. <?php
  32. include("../css/ui.css");
  33. include("../css/actividades.css");
  34. ?>
  35. </style>
  36. <!-- CSS for mobile version -->
  37. <style media="(max-width : 990px)">
  38. <?php
  39. include("../css/m/ui.css");
  40. include("../css/m/actividades.css");
  41. ?>
  42. </style>
  43. <!-- Script files -->
  44. <script type="text/javascript">
  45. <?php
  46. include("../script/ui.js");
  47. include("../script/actividades.js");
  48. ?>
  49. </script>
  50. <!-- Meta tags -->
  51. <link rel="canonical" href="<?=$server?>/actividades/<?=$r["permalink"]?>"/>
  52. <link rel="author" href="<?=$server?>"/>
  53. <link rel="publisher" href="<?=$server?>"/>
  54. <meta name="description" content="<?=strip_tags($r["text"])?>"/>
  55. <meta property="og:title" content="<?=$r["title"]?> - Gasteizko Margolariak"/>
  56. <meta property="og:url" content="<?=$server?>/actividades/<?=$r["permalink"]?>"/>
  57. <meta property="og:description" content="<?=strip_tags($r["text"])?>?>"/>
  58. <?php
  59. $q_i = mysqli_query($con, "SELECT image FROM activity_image WHERE activity = $id ORDER BY idx;");
  60. if (mysqli_num_rows($q_i) == 0){
  61. $img = "$server/img/logo/cover.png";
  62. }
  63. else{
  64. $r_i = mysqli_fetch_array($q_i);
  65. $img = "$server/img/actividades/preview/" . $r_i["image"];
  66. }
  67. ?>
  68. <meta property="og:image" content="<?=$img?>"/>
  69. <meta property="og:site_name" content="Gasteizko Margolariak"/>
  70. <meta property="og:type" content="article"/>
  71. <meta property="og:locale" content="<?=$lang?>"/>
  72. <meta property="article:section" content=""/>
  73. <!-- TODO: Review time format -->
  74. <meta property="article:published-time" content="<?=$r["dtime"]?>"/>
  75. <meta property="article:modified-time" content="<?=$r["dtime"]?>"/>
  76. <meta property="article:author" content="Gasteizko Margolariak"/>
  77. <?php
  78. $res_tag = mysqli_query($con, "SELECT tag FROM activity_tag WHERE activity = $id;");
  79. $tag_string = "vitoria cuadrilla gasteizko margolariak ";
  80. while ($row_tag = mysqli_fetch_array($res_tag)){
  81. $tag_string = $tag_string . " " . $row_tag["tag"];
  82. }
  83. ?>
  84. <meta property="article:tag" content="<?=$tag_string?>"/>
  85. <meta name="twitter:card" content="summary"/>
  86. <meta name="twitter:title" content="<?=$r["title"]?> - Gasteizko Margolariak"/>
  87. <meta name="twitter:description" content="<?=strip_tags($r["text"])?>"/>
  88. <meta name="twitter:image" content="<?=$img?>"/>
  89. <meta name="twitter:url" content="<?=$server?>/actividades/<?=$r["permalink"]?>"/>
  90. <meta name="robots" content="index follow"/>
  91. </head>
  92. <body>
  93. <?php
  94. include("../header.php");
  95. ?>
  96. <div id="content">
  97. <?php
  98. //Check if it's a past activity or upcoming activity.
  99. $c_date = new Datetime();
  100. $a_date = date_create_from_format('Y-m-d H:i:s', $r["cdate"]);
  101. $future = false;
  102. if (date_format($a_date, 'U') > date_format($c_date, 'U')){
  103. $future = true;
  104. }
  105. ?>
  106. <div id="middle_column">
  107. <div class="section">
  108. <h3 class='section_title' id="activity_title"><?=$r["title"]?> - <?=formatDate($r["date"], $lang, false)?></h3>
  109. <div class="entry" itemscope itemtype='http://schema.org/Event'>
  110. <meta itemprop='url' href='<?=$server?>/actividades/<?=$r["permalink"]?>'/>
  111. <meta itemprop='inLanguage' content='$<?=lang?>'/>
  112. <meta itemprop='name' content='<?=$r["title"]?>'/>
  113. <meta itemprop='description' content='<?=$r["text"]?>'/>
  114. <meta itemprop='startDate endDate' content='<?$r["isodate"]?>'/>
  115. <meta itemprop='location' content='<?=$r["city"]?>'/>
  116. <div class='hidden' itemprop='organizer' itemscope itemtype='http://schema.org/Organization'>
  117. <meta itemprop='legalName' content='Asociaci&oacute;n Cultural Recreativa Gasteizko Margolariak'/>
  118. <meta itemprop='name' content='Gasteizko Margolariak'/>
  119. <meta itemprop='logo' content='<?=$server?>/img/logo/logo.png'/>
  120. <meta itemprop='foundingDate' content='03-02-2013'/>
  121. <meta itemprop='telephone' content='+34637140371'/>
  122. <meta itemprop='url' content='<?=$server?>'/>
  123. </div>
  124. <?php
  125. if (mysqli_num_rows($q_i) > 0){
  126. ?>
  127. <meta itemprop='image' content='</=$server?>/img/actividades/<?=$r_i["image"]?>'/>
  128. <div id='activity_image'>
  129. <img src='<?=$server?>/img/actividades/preview/<?=$r_i["image"]?>'/>
  130. </div>
  131. <?php
  132. }
  133. ?>
  134. <div id='activity_description'>
  135. <p>
  136. <?php
  137. if ($future == false && strlen($r["after"]) > 0){
  138. ?>
  139. <?=$r["after"]?>
  140. <?php
  141. }
  142. else{
  143. ?>
  144. <?=$r["text"]?>
  145. <?php
  146. }
  147. ?>
  148. </p>
  149. </div> <!-- .activity_description -->
  150. <br/>
  151. <?php
  152. if ($future){
  153. ?>
  154. <div itemscope itemtype='http://schema.org/Offer' id='activity_details'>
  155. <table id='activity_details'>
  156. <tr>
  157. <td class='field_name'><?=$lng["activities_date"]?></td>
  158. <td><?=formatDate($r["date"], $lang, false)?></td>
  159. </tr>
  160. <tr>
  161. <td class='field_name'><?=$lng["activities_city"]?></td>
  162. <td><?=$r["city"]?></td>
  163. </tr>
  164. <meta itemprop='priceCurrency' content='EUR'/>
  165. <meta itemprop='price' content='<$r["price"]?>'/>
  166. <?php
  167. if ($r["price"] == 0){
  168. ?>
  169. <tr>
  170. <td class='field_name'><?=$lng["activities_price"]?></td>
  171. <td><?=$lng["activities_price_0"]?></td>
  172. </tr>
  173. <?php
  174. }
  175. else{
  176. ?>
  177. <tr>
  178. <td class='field_name'><?=$lng["activities_price"]?></td>
  179. <td><?=$r["price"]?>€</td>
  180. </tr>
  181. <?php
  182. if ($r["max_people"] != 0){
  183. ?>
  184. <tr>
  185. <td class='field_name'><?=$lng["activities_maxpeople"]?></td>
  186. <td><?=$r["max_people"]?></td>
  187. </tr>
  188. <?php
  189. }
  190. }
  191. ?>
  192. </table> <!-- activity_details -->
  193. </div> <!-- activity_details -->
  194. <?php
  195. ?>
  196. </div> <!-- .entry -->
  197. <br/>
  198. <div class='entry'>
  199. <?php
  200. $q_it = mysqli_query($con, "SELECT activity_itinerary.name_$lang AS name, description_$lang AS description, place.name_$lang AS place_name, place.address_$lang AS place_address, DATE_FORMAT(start, '%H:%i') AS start, DATE_FORMAT(end, '%H:%i') AS end, DATE_FORMAT(start, '%Y-%m-%d') AS isostart, DATE_FORMAT(end, '%Y-%m-%d') AS isoend FROM activity_itinerary, place WHERE place.id = activity_itinerary.place AND activity = $r[id] ORDER BY start;");
  201. if (mysqli_num_rows($q_it) > 0){
  202. ?>
  203. <div id='activity_itinerary'>
  204. <!-- TODO: Routes -->
  205. <h3 class='entry_title'><?=$lng["activity_itinerary"]?></h3>
  206. <table id='activity_itinerary'>
  207. <tr class='th'>
  208. <th><?=$lng["activities_when"]?></th>
  209. <th><?=$lng["activities_what"]?></th>
  210. </tr>
  211. <?php
  212. while ($r_it = mysqli_fetch_array($q_it)){
  213. ?>
  214. <tr>
  215. <div class='hidden' itemprop='subEvent' itemscope itemtype='http://schema.org/Event'>
  216. <meta itemprop='inLanguage' content='<?=$lang?>'/>
  217. <meta itemprop='name' content='<?=$r_it["name"]?>'/>
  218. <meta itemprop='description' content='<?=$r_it["description"]?>'/>
  219. <meta itemprop='startDate' content='<?=$r_it["isostart"]?>'/>
  220. <meta itemprop='location' content='<?=$r_it["place_name"]?>'/>
  221. <?php
  222. if (strlen($r_it["end"]) > 0){
  223. ?>
  224. <meta itemprop='endDate' content='<?=$r_it["place_end"]?>'/>
  225. <?php
  226. }
  227. ?>
  228. </div>
  229. <?php
  230. if (strlen($r_it["end"]) > 0){
  231. ?>
  232. <td><?=$r_it["start"]?> - <?=$r_it["end"]?></td>
  233. <?php
  234. }
  235. else{
  236. ?>
  237. <td class='time'><?=$r_it["start"]?></td>
  238. <?php
  239. }
  240. ?>
  241. <td>
  242. <h5><?=$r_it["name"]?></h5>
  243. <p class='description'><?=$r_it["description"]?></p>
  244. <br/>
  245. <?php
  246. if ($r_it["place_name"] == $r_it["place_address"]){
  247. ?>
  248. <?=$r_it["place_name"]?>
  249. <?php
  250. }
  251. else{
  252. ?>
  253. <?=$r_it["place_name"]?>
  254. <span class='address'>(<?=$r_it["place_address"]?>)</span>
  255. <?php
  256. }
  257. ?>
  258. </td>
  259. </tr>
  260. <?php
  261. } // while ($r_it = mysqli_fetch_array($q_it))
  262. ?>
  263. </table> <!-- #activity_itinerary -->
  264. </div> <!-- #activity_itinerary -->
  265. <?php
  266. } // if (mysqli_num_rows($q_it) > 0)
  267. ?>
  268. </div> <!-- .entry -->
  269. <?php
  270. } // if ($future)
  271. ?>
  272. </div> <!-- .section -->
  273. </div> <!-- .entry -->
  274. </div> <!-- #middle_column -->
  275. <div id="right_column">
  276. <div id="archive" class="section desktop">
  277. <h3 class="section_title"><?=$lng["activities_archive"] ?></h3>
  278. <div class='entry'>
  279. <?php
  280. $res_year = mysqli_query($con, "SELECT year(date) AS year FROM activity WHERE visible = 1 GROUP BY year(date) ORDER BY year DESC;");
  281. while($row_year = mysqli_fetch_array($res_year)){
  282. ?>
  283. <div class='year pointer' onClick='toggleElement("year_<?=$row_year["year"]?>");'>
  284. <img class='slid' id='slid_year_<?=$row_year["year"]?>' src='<?=$server?>/img/misc/slid-right.png' alt='<?=$row_year["year"]?>'/>
  285. <span class='fake_a'><?=$row_year["year"]?></span>
  286. </div>
  287. <div class='list_year pointer' id='list_year_<?=$row_year["year"]?>'>
  288. <?php
  289. $res_month = mysqli_query($con, "SELECT month(date) AS month FROM activity WHERE visible = 1 AND year(date) = $row_year[year] GROUP BY month(date) ORDER BY month DESC;");
  290. while($row_month = mysqli_fetch_array($res_month)){
  291. ?>
  292. <div class='month pointer' onClick='toggleElement("month_<?=$row_year["year"]?>_<?=$row_month["month"]?>");'>
  293. <img class='slid' id='slid_month_<?=$row_year["year"]?>_<?=$row_month["month"]?>' src='<?=$server?>/img/misc/slid-right.png' alt='<?=$row_year["year"]?>_<?=$row_month["month"]?>'/>
  294. <span class='fake_a'><?=$lng["months"][$row_month["month"] - 1]?></span>
  295. </div>
  296. <ul id='list_month_<?=$row_year["year"]?>_<?=$row_month["month"]?>' class='activity_list'>
  297. <?php
  298. $res_title = mysqli_query($con, "SELECT id, permalink, title_$lang AS title FROM activity WHERE visible = 1 AND year(date) = $row_year[year] AND month(date) = '$row_month[month]' ORDER BY date DESC;");
  299. while($row_title = mysqli_fetch_array($res_title)){
  300. ?>
  301. <li>
  302. <a href='<?=$server?>/actividades/<?=$row_title["permalink"]?>'><?=$row_title["title"]?></a>
  303. </li>
  304. <?php
  305. }
  306. ?>
  307. </ul>
  308. <?php
  309. }
  310. ?>
  311. </div> <!-- #list_year_<?=$row_year["year"]?> -->
  312. <?php
  313. }
  314. ?>
  315. </div> <!-- .entry -->
  316. </div> <!-- #archive -->
  317. </div> <!-- #right_column -->
  318. </div> <!-- #content -->
  319. <?php
  320. include("../footer.php");
  321. $ad = ad($con, $lang, $lng);
  322. stats($ad, $ad_static, "actividades", "$id");
  323. ?>
  324. </body>
  325. </html>