Forráskód Böngészése

Merge branch 'master' into NotificationV1API

Iñigo Valentin 9 éve
szülő
commit
c4ea3c9d3c
68 módosított fájl, 2907 hozzáadás és 1135 törlés
  1. 60 0
      README.es-ES.md
  2. 60 0
      README.es-EU.md
  3. 14 7
      README.md
  4. 1 1
      www-admin/actividades/add/add.php
  5. 47 32
      www-admin/actividades/add/index.php
  6. 65 42
      www-admin/actividades/add/itinerary.php
  7. 20 7
      www-admin/actividades/index.php
  8. 8 1
      www-admin/actividades/moderate/index.php
  9. 45 28
      www-admin/blog/add/index.php
  10. 53 36
      www-admin/blog/edit/index.php
  11. 5 5
      www-admin/blog/index.php
  12. 8 1
      www-admin/blog/moderate/index.php
  13. 60 71
      www-admin/css/actividades.css
  14. 28 24
      www-admin/css/blog.css
  15. 50 61
      www-admin/css/galeria.css
  16. 9 5
      www-admin/css/lablanca.css
  17. 240 0
      www-admin/css/m/ui.css
  18. 160 58
      www-admin/css/ui.css
  19. 59 0
      www-admin/estadisticas/web.php
  20. 102 1
      www-admin/galeria/add/add.php
  21. 92 0
      www-admin/galeria/add/index.php
  22. 70 4
      www-admin/galeria/index.php
  23. 1 0
      www-admin/index.php
  24. 34 17
      www-admin/lablanca/index.php
  25. 7 11
      www-admin/main.php
  26. 31 1
      www-admin/script/ui.js
  27. 0 12
      www-admin/toolbar.php
  28. 7 0
      www/.htaccess
  29. 311 1
      www/API/v1/comment.php
  30. 82 0
      www/API/v1/location.php
  31. 7 4
      www/API/v1/sync.php
  32. 29 28
      www/actividades/actividad.php
  33. 62 38
      www/actividades/index.php
  34. 3 0
      www/archivo/index.php
  35. 23 12
      www/ayuda/index.php
  36. 27 28
      www/blog/buscar.php
  37. 1 1
      www/blog/common/leftpanel.php
  38. 3 3
      www/blog/common/rightpanel.php
  39. 26 25
      www/blog/index.php
  40. 24 23
      www/blog/post.php
  41. 29 16
      www/css/actividades.css
  42. 6 2
      www/css/blog.css
  43. 5 0
      www/css/galeria.css
  44. 90 15
      www/css/index.css
  45. 80 20
      www/css/lablanca.css
  46. 7 1
      www/css/m/lablanca.css
  47. 4 4
      www/css/m/ui.css
  48. 70 29
      www/css/ui.css
  49. 3 2
      www/error/404.php
  50. 7 7
      www/footer.php
  51. 24 3
      www/functions.php
  52. 25 15
      www/galeria/album.php
  53. 49 36
      www/galeria/index.php
  54. 8 7
      www/galeria/load_photo.php
  55. 40 41
      www/galeria/upload.php
  56. 18 18
      www/header.php
  57. BIN
      www/img/misc/ul.png
  58. 369 231
      www/index.php
  59. 64 46
      www/lablanca/fiestas.php
  60. 16 11
      www/lablanca/index.php
  61. 2 2
      www/lablanca/nofiestas.php
  62. 10 4
      www/lang/lang_en.php
  63. 5 3
      www/lang/lang_es.php
  64. 8 2
      www/lang/lang_eu.php
  65. 12 11
      www/nosotros/index.php
  66. 3 3
      www/script/blog.js
  67. 1 1
      www/script/galeria.js
  68. 18 17
      www/sitemap.php

+ 60 - 0
README.es-ES.md

@@ -0,0 +1,60 @@
+---
+[Information in english](README.md) 
+[Informazioa euskaraz](README.es-EU.md)
+---
+
+# Web Gasteizko Margolariak #
+
+Código fuente de el sitio web de [Gasteizko Margolariak](https://margolariak.com/)
+
+Diseñado sobre Apache+MySQL+PHP.
+
+### Página pública ###
+
+La parte disponible al público es ligera, respetuosa con la privacidad del usuario e incluye:
+
+* Un blog de noticias en el que los usuarios pueden comentar.
+* Una galeria de imágenes con la que los usuarios pueden contribuir.
+* Informacion sobre las próximas actividades.
+* Reseñas de actividades pasadas.
+* Durante las Fiestas, informacion sobre las actividades y el programa de la cuadrilla.
+* Durante las Fiestass, información sobre los precios y las ofertas.
+* Localización en tiempo real de Gasteizko Margolariak.
+* Informacion sobre la cuadrilla.
+* Publicidad personaliza, no intrusiva, de los patrocinadores.
+* Una API para sincronizar aplicaciones propias o de terceros.
+* Recolección respetuosa de estadísticas.
+* Vanity URLs.
+
+
+### Página privada ###
+
+La parte privada del portal, reservada para administradores. Protegida por contraseña.
+
+Por ahora, incluye:
+
+* Un formulario para publicar, editar, borrar y traducir entradas del blog.
+* Un formulario para publicar, editar, borrar y traducir actividades.
+* Gestión de socios.
+* Formulario para confeccionar el programa de Fiestas.
+* Registro de actividad.
+
+Funcionalidades previstas:
+
+* Gestión de cuentas de usuario.
+* Gestión de la galería.
+* Visor de estadísticas.
+* Ajustes del sitio.
+* Borradores.
+* Otros.
+
+
+### Sobre este proyecto ###
+
+Se incluye el código fuente para la parte privada y la pública, así como scripts para construir la base de datos.
+
+
+### Aplicaciones ###
+
+* Tienes un iPhone? [Estamos en ellos!](https://github.com/GasteizkoMargolariak/GasteizkoMargolariakIOSApp) 
+* Android? [Lo tenemos!](https://github.com/GasteizkoMargolariak/GasteizkoMargolariakApp)

+ 60 - 0
README.es-EU.md

@@ -0,0 +1,60 @@
+---
+[Informacion en castellano](README.es-ES.md) 
+[Information in english](README.md)
+---
+
+# Web Gasteizko Margolariak #
+
+Código fuente de el sitio web de [Gasteizko Margolariak](https://margolariak.com/)
+
+Diseñado sobre Apache+MySQL+PHP.
+
+### Página pública ###
+
+La parte disponible al público es ligera, respetuosa con la privacidad del usuario e incluye:
+
+* Un blog de noticias en el que los usuarios pueden comentar.
+* Una galeria de imágenes con la que los usuarios pueden contribuir.
+* Informacion sobre las próximas actividades.
+* Reseñas de actividades pasadas.
+* Durante las Fiestas, informacion sobre las actividades y el programa de la cuadrilla.
+* Durante las Fiestass, información sobre los precios y las ofertas.
+* Localización en tiempo real de Gasteizko Margolariak.
+* Informacion sobre la cuadrilla.
+* Publicidad personaliza, no intrusiva, de los patrocinadores.
+* Una API para sincronizar aplicaciones propias o de terceros.
+* Recolección respetuosa de estadísticas.
+* Vanity URLs.
+
+
+### Página privada ###
+
+La parte privada del portal, reservada para administradores. Protegida por contraseña.
+
+Por ahora, incluye:
+
+* Un formulario para publicar, editar, borrar y traducir entradas del blog.
+* Un formulario para publicar, editar, borrar y traducir actividades.
+* Gestión de socios.
+* Formulario para confeccionar el programa de Fiestas.
+* Registro de actividad.
+
+Funcionalidades previstas:
+
+* Gestión de cuentas de usuario.
+* Gestión de la galería.
+* Visor de estadísticas.
+* Ajustes del sitio.
+* Borradores.
+* Otros.
+
+
+### Sobre este proyecto ###
+
+Se incluye el código fuente para la parte privada y la pública, así como scripts para construir la base de datos.
+
+
+### Aplicaciones ###
+
+* Tienes un iPhone? [Estamos en ellos!](https://github.com/GasteizkoMargolariak/GasteizkoMargolariakIOSApp) 
+* Android? [Lo tenemos!](https://github.com/GasteizkoMargolariak/GasteizkoMargolariakApp)

+ 14 - 7
README.md

@@ -1,11 +1,10 @@
-Gasteizko Margolariak Web
-===
+# Gasteizko Margolariak Web #
 
-Source code of the <a href="http://margolariak.com/">Gasteizko Margolariak</a> Web Portal.
+Source code of the [Gasteizko Margolariak](https://margolariak.com/) Web Portal.
 
 Website designed to work over Apache+MySQL+PHP.
 
-###Public page###
+### Public page ###
 
 The public page is available for anyone to visit, is respectfull with the privacy of the user, lightweight, and it includes:
 
@@ -18,12 +17,12 @@ The public page is available for anyone to visit, is respectfull with the privac
 * Real time location of Gasteizko Margolariak.
 * Information and the History of Gasteizko Margolariak.
 * Custom-made, non intrusive, privacy-awatre advertisment of collaborators.
-* An API to sync the <a href="https://github.com/GasteizkoMargolariak/GasteizkoMargolariakApp">App</a>.
+* An API to sync apps.
 * A respectfull statistics counter.
 * Vanity URLs.
 
 
-###Private page###
+### Private pag e###
 
 The private page includes a private area for the directives of Gasteizko Margolariak. It is designed to be served on a different port and is password protected.
 
@@ -44,6 +43,14 @@ In the future, more functionalities will be added:
 * Drafts.
 * Many more.
 
-###About this project###
+
+### About this project ###
 
 This projets includes the source for both the public and private page, as well as the files required to build the database. Apache configuration is left as an exercice to the reader.
+
+
+### On other devices ###
+
+* Got an iPhone? [We are working on it!](https://github.com/GasteizkoMargolariak/GasteizkoMargolariakIOSApp) 
+* Android? [Got you covered!](https://github.com/GasteizkoMargolariak/GasteizkoMargolariakApp)
+

+ 1 - 1
www-admin/actividades/add/add.php

@@ -121,7 +121,7 @@
 		
 		//Insert into database and get id
 		mysqli_query($con, "INSERT INTO activity (permalink, date, title_es, title_eu, title_en, text_es, text_eu, text_en, price, inscription, max_people, user, visible, comments, city) VALUES('$permalink', $date, '$title_es', '$title_eu', '$title_en', '$text_es', '$text_eu', '$text_en', $price, $inscription, $people, $user, $visible, $comments, '$city');");
-		$q = mysqli_query($con, "SELECT id FROM activity WHERE permalink = '$permalink' ORDER BY time DESC LIMIT 1;");
+		$q = mysqli_query($con, "SELECT id FROM activity WHERE permalink = '$permalink' ORDER BY dtime DESC LIMIT 1;");
 		$r = mysqli_fetch_array($q);
 		$id = $r['id'];
 		

+ 47 - 32
www-admin/actividades/add/index.php

@@ -27,33 +27,46 @@
 		<?php include('../../toolbar.php'); ?>
 		<div id='content'>
 			<div class="section">
-				<h3>Nueva actividad</h3>
-				<form action="add.php" maxlength="120" method="post" enctype="multipart/form-data" onsubmit="return validateActivity();">
-					<span class="tab_selector pointer" id="tab_selector_es" onClick="showTab('es');">Castellano</span>
-					<span class="tab_selector tab_selector_hidden pointer" id="tab_selector_eu" onClick="showTab('eu');">Euskera</span>
-					<span class="tab_selector tab_selector_hidden pointer" id="tab_selector_en" onClick="showTab('en');">Ingles</span>
-					<br/>
-					<div class="section tab_content" id="tab_content_es">
-						<input type="text" id="title_es" name="title_es" placeholder="Titulo (castellano)"/><br/><br/>
-						<textarea name="text_es" id="text_es" placeholder="Texto (castellano)"></textarea>
-						<script>
-							CKEDITOR.replace('text_es');
-						</script>
-					</div>
-					<div class="section tab_content section tab_content_hidden" id="tab_content_eu">
-						<input type="text" id="title_eu" name="title_eu" placeholder="Titulo (euskera)"/><br/><br/>
-						<textarea name="text_eu" id="text_eu" placeholder="Texto (euskera)"></textarea>
-						<script>
-							CKEDITOR.replace('text_eu');
-						</script>
-					</div>
-					<div class="section tab_content section tab_content_hidden" id="tab_content_en">
-						<input type="text" id="title_en" name="title_en" placeholder="Titulo (ingles)"/><br/><br/>
-						<textarea name="text_en" id="text_en" placeholder="Texto (ingles)"></textarea>
-						<script>
-							CKEDITOR.replace('text_en');
-						</script>
-					</div>
+				<h3 class="section_title">Nueva actividad</h3>
+				<form action="/actividades/add/add.php" maxlength="120" method="post" enctype="multipart/form-data" onsubmit="return validateActivity();">
+					<div class="entry">
+						<div id="lang_tabs">
+							<table>
+								<tr>
+									<td class="pointer lang_tabs_active" id="lang_tab_es" onclick="showLanguage('es');">
+										Castellano
+									</td>
+									<td class="pointer" id="lang_tab_eu" onclick="showLanguage('eu');">
+										Euskera
+									</td>
+									<td class="pointer" id="lang_tab_en" onclick="showLanguage('en');">
+										Ingl&eacute;s
+									</td>
+								</tr>
+							</table>
+						</div>
+						<div id="content_lang_es">
+							<input type="text" id="title_es" name="title_es" placeholder="Titulo"/><br/><br/>
+							<textarea name="text_es" id="text_es" placeholder="Texto"></textarea>
+							<script>
+								CKEDITOR.replace('text_es');
+							</script>
+						</div>
+						<div id="content_lang_eu" style="display:none;">
+							<input type="text" id="title_eu" name="title_eu" placeholder="Titulu"/><br/><br/>
+							<textarea name="text_eu" id="text_eu" placeholder="Textua"></textarea>
+							<script>
+								CKEDITOR.replace('text_eu');
+							</script>
+						</div>
+						<div id="content_lang_en" style="display:none;">
+							<input type="text" id="title_en" name="title_en" placeholder="Title"/><br/><br/>
+							<textarea name="text_en" id="text_en" placeholder="Content"></textarea>
+							<script>
+								CKEDITOR.replace('text_en');
+							</script>
+						</div>
+					</div> <!--Entry-->
 					<div class="entry" id="activity_images">
 						<h4>Detalles</h4>
 						Ciudad:<input type="text" name="city" length="30" value="Vitoria-Gasteiz"/><br/><br/>
@@ -66,9 +79,8 @@
 						<input type="text" length="2" name="minute" placeholder="mm"/>-->
 						<br/><br/>Precio (en blanco si es gratuita):
 						<input type="text" length="4" name="price" placeholder="eur"/>
-						<br/><label><input type="checkbox" name="inscription" checked/>Se requiere inscripcion</label>
-						<br/>Numero de plazas (en blanco para ilimitadas): <input type="text" length="4" name="people" placeholder="#"/>
-						
+						<br/><br/><label><input type="checkbox" name="inscription" checked/>Se requiere inscripcion</label>
+						<br/><br/>Numero de plazas (en blanco para ilimitadas): <input type="text" length="4" name="people" placeholder="#"/>
 						
 						<h4>Imagenes</h4>
 						<ul>
@@ -104,8 +116,11 @@
 						<label><input type="checkbox" name="comments" checked/>Permitir comentarios</label><br/><br/>
 						<label><input type="checkbox" name="admin"/>Publicar como Gasteizko Margolariak en lugar de mi nombre</label>
 						<br/><br/><br/><br/>
-						<input type="button" value="Previsualizar" onClick="alert(validateActivity());"/> <!--TODO-->
-						<input type="submit" value="Publicar"/>
+						<div id="button_container">
+							<input type="button" value="Previsualizar" onClick="alert(validateActivity());"/> <!--TODO-->
+							</br>
+							<input type="submit" value="Publicar"/>
+						</div>
 					</div>
 				</form>
 			</div>

+ 65 - 42
www-admin/actividades/add/itinerary.php

@@ -37,50 +37,73 @@
 		<?php include('../../toolbar.php'); ?>
 		<div id='content'>
 			<div class='section'>
+				<h3 class="section_title">Modificar itinerario</h3>
 				<form action='additinerary.php' method='post'>
-					<input type='hidden' name='activity' value='<?php echo $id; ?>'/>
-					<table id='itinerary'>
-					<?php
-						$q_place = mysqli_query($con, "SELECT id, name_es FROM place ORDER BY name_es;");
-						$i = 0;
-						for ($i = 0; $i < 50; $i ++){
-							echo "<tr id='itinerary_row_$i' class='itinerary_row'>\n";
-							echo "<td class='itinerary_cell time'>\n";
-							echo "<h4>Hora y lugar</h4><table>\n";
-							echo "<tr><td>Inicio*</td><td><input type='number' maxlength='2' name='sh_$i' id='sh_$i' onChange='showNextRow($i);'/></td><td>: <input type='number' maxlength='2' name='sm_$i' id='sm_$i' onChange='showNextRow($i);'/><td/></tr>\n";
-							echo "<tr><td>Final</td><td><input type='number' maxlength='2' name='eh_$i' id='eh_$i' onChange='showNextRow($i);'/></td><td>: <input type='number' maxlength='2' name='em_$i' id='em_$i' onChange='showNextRow($i);'/><td/></tr>\n";
-							echo "</table>\n";
-							echo "Lugar*: <select name='place_$i' id='place_$i' onChange='showNextRow($i);'>\n";
-							echo "<option value='-1'>SELECCIONA</option>\n";
-							mysqli_data_seek($q_place, 0);
-							while ($r_place = mysqli_fetch_array($q_place)){
-								echo "<option value='$r_place[id]'>$r_place[name_es]</option>\n";
+					<div class="entry">
+						<input type='hidden' name='activity' value='<?php echo $id; ?>'/>
+						<table id='itinerary'>
+						<?php
+							$q_place = mysqli_query($con, "SELECT id, name_es FROM place ORDER BY name_es;");
+							$i = 0;
+							for ($i = 0; $i < 50; $i ++){
+								echo "<tr id='itinerary_row_$i' class='itinerary_row'>\n";
+								echo "<td class='itinerary_cell time'>\n";
+								echo "<h4>Hora y lugar</h4>\n";
+								echo "Inicio*:&nbsp<input type='number' maxlength='2' name='sh_$i' id='sh_$i' onChange='showNextRow($i);'/>:<input type='number' maxlength='2' name='sm_$i' id='sm_$i' onChange='showNextRow($i);'/>\n";
+								echo "<br/>Final:&nbsp<input type='number' maxlength='2' name='eh_$i' id='eh_$i' onChange='showNextRow($i);'/>:<input type='number' maxlength='2' name='em_$i' id='em_$i' onChange='showNextRow($i);'/>\n";
+								echo "<br/><br/>\n";
+								echo "Lugar*: <select name='place_$i' id='place_$i' onChange='showNextRow($i);'>\n";
+								echo "<option value='-1'>SELECCIONA</option>\n";
+								mysqli_data_seek($q_place, 0);
+								while ($r_place = mysqli_fetch_array($q_place)){
+									echo "<option value='$r_place[id]'>$r_place[name_es]</option>\n";
+								}
+								echo "</select><br/>\n";
+								echo "<span id='add_place' class='pointer' onClick='addPlace($i);'>A&ntilde;adir nuevo lugar</span>\n";
+								echo "</td>\n";
+								echo "<td class='itinerary_cell itinerary_cell_content'>\n";
+							?>
+							<div id='lang_tabs'>
+	                                                        <table>
+               		                                                <tr>
+                               		                                        <td class="pointer lang_tabs_active" id="lang_tab_es" onclick="showLanguage('es');">
+                                               		                                Castellano
+                                                               		        </td>
+	                                                                        <td class="pointer" id="lang_tab_eu" onclick="showLanguage('eu');">
+               		                                                                Euskera
+                               		                                        </td>
+                                               		                        <td class="pointer" id="lang_tab_en" onclick="showLanguage('en');">
+                                                               		                Ingl&eacute;s
+                                                                       		</td>
+                       			                                 </tr>
+                                               		        </table>
+		                                                </div>
+	               		                                <div id="content_lang_es">
+									<h4>T&iacute;tulo</h4>
+									<input type='text' name='title_es_<?php echo($i); ?>' id='title_es_<?php echo($i); ?>' onKeyUp='showNextRow(<?php echo($i); ?>'/>
+									<h4>Texto</h4>
+									<textarea name='text_es_<?php echo($i); ?>' id='text_es_<?php echo($i); ?>' onKeyUp='showNextRow(<?php echo($i); ?>);'/></textarea>
+								</div>
+								<div id="content_lang_eu" style="display:none;">
+                                                                        <h4>Titulo</h4>
+                                                                        <input type='text' name='title_eu_<?php echo($i); ?>' id='title_eu_<?php echo($i); ?>' onKeyUp='showNextRow(<?php echo($i); ?>'/>
+                                                                        <h4>Textua</h4>
+                                                                        <textarea name='text_eu_<?php echo($i); ?>' id='text_eu_<?php echo($i); ?>' onKeyUp='showNextRow(<?php echo($i); ?>);'/></textarea>
+                                                                </div>
+								<div id="content_lang_en" style="display:none;">
+                                                                        <h4>Title</h4>
+                                                                        <input type='text' name='title_en_<?php echo($i); ?>' id='title_en_<?php echo($i); ?>' onKeyUp='showNextRow(<?php echo($i); ?>'/>
+                                                                        <h4>Content</h4>
+                                                                        <textarea name='text_en_<?php echo($i); ?>' id='text_en_<?php echo($i); ?>' onKeyUp='showNextRow(<?php echo($i); ?>);'/></textarea>
+                                                                </div>
+								<?php
+									echo("</td>\n");
+									echo("</tr>\n");
 							}
-							echo "</select><br/>\n";
-							echo "<span id='add_place' class='pointer' onClick='addPlace($i);'>A&ntilde;adir nuevo lugar</span>\n";
-							
-							echo "</td>\n";
-							echo "<td class='itinerary_cell title'>\n";
-							echo "<h4>T&iacute;tulo</h4><table>\n";
-							echo "<tr><td>Castellano*</td><td><input type='text' name='title_es_$i' id='title_es_$i' onKeyUp='showNextRow($i);'/></td></tr>\n";
-							echo "<tr><td>Ingl&eacute;s</td><td><input type='text' name='title_en_$i' id='title_en_$i' onKeyUp='showNextRow($i);'/></td></tr>\n";
-							echo "<tr><td>Euskera</td><td><input type='text' name='title_eu_$i' id='title_eu_$i' onKeyUp='showNextRow($i);'/></td></tr>\n";
-							echo "</table>\n";
-							echo "</td>\n";
-							echo "<td class='itinerary_cell text'>\n";
-							echo "<h4>Texto castellano*</h4><textarea name='text_es_$i' id='text_es_$i' onKeyUp='showNextRow($i);'/></textarea>\n";
-							echo "</td>\n";
-							echo "<td class='itinerary_cell text'>\n";
-							echo "<h4>Texto ingl&eacute;s</h4><textarea name='text_en_$i' id='text_en_$i' onKeyUp='showNextRow($i);'/></textarea>\n";
-							echo "</td>\n";
-							echo "<td class='itinerary_cell text'>\n";
-							echo "<h4>Texto euskera</h4><textarea name='text_eu_$i' id='text_eu_$i' onKeyUp='showNextRow($i);'/></textarea>\n";
-							echo "</td>\n";
-							echo "</tr>\n";
-						}
-					?>
-				</table>
-				<input type='submit' value='Guardar'/>
+						?>
+					</table>
+					<input type='submit' id="save_itinerary"  value='Guardar'/>
+				</div> <!--Entry-->
 			</form>
 		</div>
 	</body>

+ 20 - 7
www-admin/actividades/index.php

@@ -27,7 +27,7 @@
 		<?php include('../toolbar.php'); ?>
 		<div id='content'>
 			<div class="section">
-				<h3>Actividades - <a href="/actividades/add/">Anadir nueva</a></h3>
+				<h3 class="section_title">Actividades - <a href="/actividades/add/">Anadir nueva</a></h3>
 				<div class="entry">
 					<table id='activity_list'>
 						<tr>
@@ -40,8 +40,10 @@
 						<?php
 							$q = mysqli_query($con, "SELECT id, DATE_FORMAT(date, '%b %d, %Y') AS dat, title_es, title_eu, title_en, text_es, text_eu, text_en, user, visible, comments, DATE_FORMAT(dtime, '%b %d, %Y %H:%i:%s') AS ptime FROM activity ORDER BY date DESC;");
 							while ($r = mysqli_fetch_array($q)){
-								echo "<tr>\n<td class='activity_column_title'>" . cutText($r['title_es'], 35, '', '') . "<br/>$r[dat]</td>\n<td class='activity_column_text'>" . cutText($r['text_es'], 80, '', '') . "\n";
+								echo "<tr>\n<td class='activity_column_title'>" . cutText($r['title_es'], 35, '', '') . "<br/>$r[dat]</td>";
+								echo "<td class='activity_column_text'>" . str_replace('<br/>', ' ', cutText($r['text_es'], 60, '', '')) . "\n";
 								
+								//Images
 								$q_image = mysqli_query($con, "SELECT image FROM activity_image WHERE activity = $r[id] ORDER BY idx;");
 								if (mysqli_num_rows($q_image) > 0){
 									echo "<br/>";
@@ -49,11 +51,23 @@
 										echo "<img src='http://$default_host/img/actividades/miniature/$r_image[image]'\>\n";
 								}
 								
+								//Itinerary
+								$q_itinerary = mysqli_query($con, "SELECT count(id) AS count FROM activity_itinerary WHERE activity = $r[id]");
+								$r_itinerary = mysqli_fetch_array($q_itinerary);
+								if ($r_itinerary['count'] == 0){
+									echo("<ul><li>Sin itinerario.</li></ul>");
+								}
+								elseif ($r_itinerary['count'] == 1){
+									echo("<ul><li>1 entrada de itinerario.</li></ul>");
+								}
+								else{
+									echo("<ul><li>$r_itinerary[count] entradas de itinerario.</li></ul>");
+								}
+								
 								echo "</td>\n";
 								$q_user = mysqli_query($con, "SELECT username FROM user WHERE id = $r[user];");
 								$r_user = mysqli_fetch_array($q_user);
 								echo "<td class='activity_column_details'>$r[ptime]<br/>Por $r_user[username]<br/>Comentarios:";
-								// TODO: itinerary?
 								if ($r['comments'] == 1){
 									$q_comments = mysqli_query($con, "SELECT id FROM activity_comment WHERE activity = $r[id];");
 									echo "Si (" . mysqli_num_rows($q_comments) . ")";
@@ -61,7 +75,7 @@
 								else
 									echo "No";
 								echo "<br/>Visible: ";
-								if ($row['visible'] == 1)
+								if ($r['visible'] == 1)
 									echo "Si";
 								else
 									echo "No";
@@ -70,14 +84,13 @@
 									echo "No";
 								else
 									echo "Si";
-								echo "<br/>Ingles: ";
+								echo "<br/>Ingl&eacute;s: ";
 									if (strlen($r['text_en']) == 0 || $r['text_en'] == $r['text_es'])
 									echo "No";
 								else
 									echo "Si";
-								echo "\n</td>\n<td class='activity_column_action'>\n<form action='/activity/edit/edit.php?p=$r[id]'>\n<input type='submit' value='Editar'/>\n</form>\n";
+								echo "\n</td>\n<td class='activity_column_action'>\n<form action='/activity/edit/edit.php?p=$r[id]'>\n<input type='submit' value='Editar / Traducir'/>\n</form>\n";
 								echo "<input type='button' onClick='delete_activity($r[id], \"$r[title_es]\");' value='Borrar'/>";
-								echo "<form action='/activity/translate/translate.php'>\n<input type='hidden' name='id' value='$r[id]'/><input type='submit' value='Traducir'/>\n</form>";
 								echo "<form action='/activity/moderate/moderate.php?p=$r[id]'>\n<input type='submit' value='Moderar comentarios'/>\n</form>";
 								echo "</td>\n</tr>";
 							}

+ 8 - 1
www-admin/actividades/moderate/index.php

@@ -11,7 +11,7 @@
 	<head>
 		<meta content="text/html; charset=windows-1252" http-equiv="content-type"/>
 		<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1">
-		<title>Nuevo post - Administracion</title>
+		<title>Moderar comentarios - Administracion</title>
 		<!-- CSS files -->
 		<link rel="stylesheet" type="text/css" href="/css/ui.css"/>
 		<link rel="stylesheet" type="text/css" href="/css/blog.css"/>
@@ -23,6 +23,13 @@
 		<script type="text/javascript" src="/script/ui.js"></script>
 	</head>
 	<body>
+		<?php include('../../toolbar.php'); ?>
+                <div id='content'>
+                        <div class="section">
+                                <h3 class="section_title">Moderar comentarios</h3>
+                                <h4 span class="TODO">En construcci&oacute;n</h4>
+                        </div>
+                </div>
 	</body>
 </html>
 

+ 45 - 28
www-admin/blog/add/index.php

@@ -28,34 +28,48 @@
 		<?php include('../../toolbar.php'); ?>
 		<div id='content'>
 			<div class="section">
-				<h3>Nuevo post</h3>
+				<h3 class="section_title">Nuevo post</h3>
 				<form action="add.php" maxlength="120" method="post" enctype="multipart/form-data" onsubmit="return validate_post();">
-					<div class="entry blog_add_language">
-						<h4>Castellano (obligatorio)</h4>
-						<input type="text" id="title_es" name="title_es" placeholder="Titulo"/><br/><br/>
-						<textarea name="text_es" id="text_es" placeholder="Texto"></textarea>
-						<script>
-							CKEDITOR.replace('text_es');
-						</script>
-					</div>
-					<div class="entry blog_add_language">
-						<h4>Euskera (opcional)</h4>
-						<input type="text" name="title_eu" id="title_eu" placeholder="Titulo"><br/><br/>
-						<textarea name="text_eu" id="text_eu" placeholder="Texto"></textarea>
-						<script>
-							CKEDITOR.replace('text_eu');
-						</script>
-					</div>
-					<div class="entry blog_add_language">
-						<h4>Ingles (opcional)</h4>
-						<input type="text" name="title_en" id="title_en" placeholder="Titulo"><br><br/>
-						<textarea name="text_en" id="text_en" placeholder="Texto"></textarea>
-						<script>
-							CKEDITOR.replace('text_en');
-						</script>
-					</div>
+					<div class="entry">
+						<div id="lang_tabs">
+							<table>
+								<tr>
+									<td class="pointer lang_tabs_active" id="lang_tab_es" onclick="showLanguage('es');">
+										Castellano
+									</td>
+									<td class="pointer" id="lang_tab_eu" onclick="showLanguage('eu');">
+										Euskera
+									</td>
+									<td class="pointer" id="lang_tab_en" onclick="showLanguage('en');">
+										Ingl&eacute;s
+									</td>
+								</tr>
+							</table>
+						</div>
+						<div id="content_lang_es" class="blog_add_language">
+							<input type="text" id="title_es" name="title_es" placeholder="Titulo"/><br/><br/>
+							<textarea name="text_es" id="text_es" placeholder="Texto"></textarea>
+							<script>
+								CKEDITOR.replace('text_es');
+							</script>
+						</div>
+						<div id="content_lang_eu" class="blog_add_language" style="display:none;">
+							<input type="text" name="title_eu" id="title_eu" placeholder="Titulu"><br/><br/>
+							<textarea name="text_eu" id="text_eu" placeholder="Textua"></textarea>
+							<script>
+								CKEDITOR.replace('text_eu');
+							</script>
+						</div>
+						<div id="content_lang_en" class="blog_add_language" style="display:none;">
+							<input type="text" name="title_en" id="title_en" placeholder="Titlu"><br><br/>
+							<textarea name="text_en" id="text_en" placeholder="Content"></textarea>
+							<script>
+								CKEDITOR.replace('text_en');
+							</script>
+						</div>
+					</div> <!--Entry-->
 					<div class="entry" id="images">
-						<h4>Imagenes</h4>
+						<h4>Im&aacute;genes</h4>
 						<ul>
 							<li>
 								Principal (Aparecera sobre el texto y en las previsualizaciones)<br/>
@@ -87,8 +101,11 @@
 						<label><input type="checkbox" name="comments" checked/>Permitir comentarios</label><br/><br/>
 						<label><input type="checkbox" name="admin"/>Publicar como Gasteizko Margolariak en lugar de mi nombre</label>
 						<br/><br/><br/><br/>
-						<input type="button" value="Previsualizar" onClick="alert(validate_post());"/> <!--TODO-->
-						<input type="submit" value="Publicar"/>
+						<div id="add_button_container">
+							<input type="button" value="Previsualizar" onClick="alert(validate_post());"/> <!--TODO-->
+							<br/>
+							<input type="submit" value="Publicar"/>
+						</div>
 					</div>
 				</form>
 			</div>

+ 53 - 36
www-admin/blog/edit/index.php

@@ -56,37 +56,51 @@
 		<?php include('../../toolbar.php'); ?>
 		<div id='content'>
 			<div class="section">
-				<h3>Editar post</h3>
+				<h3 class="section_title">Editar post</h3>
 				<form action="edit.php" maxlength="120" method="post" enctype="multipart/form-data" onsubmit="return validate_post();">
 					<?php
 						echo "<input type='hidden' name='id' value='$id'/>\n";
 					?>
-					<div class="entry blog_add_language">
-						<h4>Castellano (obligatorio)</h4>
-						<input type="text" id="title_es" name="title_es" placeholder="Titulo" value="<?php echo $title_es;?>"/><br/><br/>
-						<textarea name="text_es" id="text_es" placeholder="Texto"><?php echo $text_es;?></textarea>
-						<script>
-							CKEDITOR.replace('text_es');
-						</script>
-					</div>
-					<div class="entry blog_add_language">
-						<h4>Euskera (opcional)</h4>
-						<input type="text" name="title_eu" id="title_eu" placeholder="Titulo" value="<?php echo $title_eu;?>"/><br/><br/>
-						<textarea name="text_eu" id="text_eu" placeholder="Texto"><?php echo $text_eu;?></textarea>
-						<script>
-							CKEDITOR.replace('text_eu');
-						</script>
-					</div>
-					<div class="entry blog_add_language">
-						<h4>Ingles (opcional)</h4>
-						<input type="text" name="title_en" id="title_en" placeholder="Titulo" value="<?php echo $title_en;?>"/><br><br/>
-						<textarea name="text_en" id="text_en" placeholder="Texto"><?php echo $text_en;?></textarea>
-						<script>
-							CKEDITOR.replace('text_es');
-						</script>
-					</div>
+					<div class="entry">
+						<div id="lang_tabs">
+							<table>
+								<tr>
+									<td class="pointer lang_tabs_active" id="lang_tab_es" onclick="showLanguage('es');">
+										Castellano
+									</td>
+									<td class="pointer" id="lang_tab_eu" onclick="showLanguage('eu');">
+										Euskera
+									</td>
+									<td class="pointer" id="lang_tab_en" onclick="showLanguage('en');">
+										Ingl&eacute;s
+									</td>
+								</tr>
+							</table>
+						</div>
+						<div id="content_lang_es" class="blog_add_language">
+							<input type="text" id="title_es" name="title_es" placeholder="Titulo" value="<?php echo $title_es;?>"/><br/><br/>
+							<textarea name="text_es" id="text_es" placeholder="Texto"><?php echo $text_es;?></textarea>
+							<script>
+								CKEDITOR.replace('text_es');
+							</script>
+						</div>
+						<div id="content_lang_eu" class="blog_add_language" style="display:none;">
+							<input type="text" name="title_eu" id="title_eu" placeholder="Titulu" value="<?php echo $title_eu;?>"/><br/><br/>
+							<textarea name="text_eu" id="text_eu" placeholder="Textua"><?php echo $text_eu;?></textarea>
+							<script>
+								CKEDITOR.replace('text_eu');
+							</script>
+						</div>
+						<div id="content_lang_en" class="blog_add_language" style="display:none;">
+							<input type="text" name="title_en" id="title_en" placeholder="Title" value="<?php echo $title_en;?>"/><br><br/>
+							<textarea name="text_en" id="text_en" placeholder="Content"><?php echo $text_en;?></textarea>
+							<script>
+								CKEDITOR.replace('text_es');
+							</script>
+						</div>
+					</div> <!--Entry-->
 					<div class="entry" id="images">
-						<h4>Imagenes</h4>
+						<h4>Im&aacute;genes</h4>
 						<ul>
 							<li>
 								Principal (Aparecera sobre el texto y en las previsualizaciones)<br/>
@@ -95,12 +109,12 @@
 										$q_img = mysqli_query($con, "SELECT image FROM post_image WHERE post = $id AND idx = 0");
 										if (mysqli_num_rows($q_img) == 0){
 											echo "<img class='image_upload_preview' id='image_preview_0' src='/img/misc/alpha.png'/>\n";
-											echo "<input type='button' style='diplay:none;' onClick='delete_image(0, image_preview_0, this);' value='Eliminar'";
+											echo "<input type='button' style='display:none;' onClick='delete_image(0, image_preview_0, this);' value='Eliminar'";
 										}
 										else{
 											$r_img = mysqli_fetch_array($q_img);
 											echo "<img class='image_upload_preview' style='display:block;' id='image_preview_0' src='http://$default_host/img/blog/miniature/$r_img[image]'/>\n";
-											echo "<input type='button' style='diplay:block;' onClick='delete_image(0, image_preview_0, this);' value='Eliminar'";
+											echo "<input type='button' style='display:block;' onClick='delete_image(0, image_preview_0, this);' value='Eliminar'";
 										}
 									?>
 									<br/><br/>
@@ -115,12 +129,12 @@
 										$q_img = mysqli_query($con, "SELECT image FROM post_image WHERE post = $id AND idx = 1");
 										if (mysqli_num_rows($q_img) == 0){
 											echo "<img class='image_upload_preview' id='image_preview_1' src='/img/misc/alpha.png'/>\n";
-											echo "<input type='button' style='diplay:none;' onClick='delete_image(1, image_preview_1, this);' value='Eliminar'";
+											echo "<input type='button' style='display:none;' onClick='delete_image(1, image_preview_1, this);' value='Eliminar'";
 										}
 										else{
 											$r_img = mysqli_fetch_array($q_img);
 											echo "<img class='image_upload_preview' style='display:block;' id='image_preview_1' src='http://$default_host/img/blog/miniature/$r_img[image]'/>\n";
-											echo "<input type='button' style='diplay:block;' onClick='delete_image(1, image_preview_1, this);' value='Eliminar'";
+											echo "<input type='button' style='display:block;' onClick='delete_image(1, image_preview_1, this);' value='Eliminar'";
 										}
 									?>
 									<br/><br/>
@@ -132,12 +146,12 @@
 										$q_img = mysqli_query($con, "SELECT image FROM post_image WHERE post = $id AND idx = 2");
 										if (mysqli_num_rows($q_img) == 0){
 											echo "<img class='image_upload_preview' id='image_preview_2' src='/img/misc/alpha.png'/>\n";
-											echo "<input type='button' style='diplay:none;' onClick='delete_image(2, image_preview_2, this);' value='Eliminar'";
+											echo "<input type='button' style='display:none;' onClick='delete_image(2, image_preview_2, this);' value='Eliminar'";
 										}
 										else{
 											$r_img = mysqli_fetch_array($q_img);
 											echo "<img class='image_upload_preview' style='display:block;' id='image_preview_2' src='http://$default_host/img/blog/miniature/$r_img[image]'/>\n";
-											echo "<input type='button' style='diplay:block;' onClick='delete_image(2, image_preview_2, this);' value='Eliminar'";
+											echo "<input type='button' style='display:block;' onClick='delete_image(2, image_preview_2, this);' value='Eliminar'";
 										}
 									?>
 									<br/><br/>
@@ -149,12 +163,12 @@
 										$q_img = mysqli_query($con, "SELECT image FROM post_image WHERE post = $id AND idx = 3");
 										if (mysqli_num_rows($q_img) == 0){
 											echo "<img class='image_upload_preview' id='image_preview_3' src='/img/misc/alpha.png'/>\n";
-											echo "<input type='button' style='diplay:none;' onClick='delete_image(3, image_preview_3, this);' value='Eliminar'";
+											echo "<input type='button' style='display:none;' onClick='delete_image(3, image_preview_3, this);' value='Eliminar'";
 										}
 										else{
 											$r_img = mysqli_fetch_array($q_img);
 											echo "<img class='image_upload_preview' style='display:block;' id='image_preview_3' src='http://$default_host/img/blog/miniature/$r_img[image]'/>\n";
-											echo "<input type='button' style='diplay:block;' onClick='delete_image(3, image_preview_3, this);' value='Eliminar'";
+											echo "<input type='button' style='display:block;' onClick='delete_image(3, image_preview_3, this);' value='Eliminar'";
 										}
 									?>
 									<br/><br/>
@@ -169,8 +183,11 @@
 						<label><input type="checkbox" name="visible" <?php if ($r['visible'] == 1) echo 'checked'; ?>/>Post visible</label><br/><br/>
 						<label><input type="checkbox" name="comments" <?php if ($r['comments'] == 1) echo 'checked'; ?>/>Permitir comentarios</label><br/><br/>
 						<br/><br/><br/><br/>
-						<input type="button" value="Previsualizar" onClick="alert(validate_post());"/> <!--TODO-->
-						<input type="submit" value="Publicar"/>
+						<div id="add_button_container">
+							<input type="button" value="Previsualizar" onClick="alert(validate_post());"/> <!--TODO-->
+							<br/>
+							<input type="submit" value="Publicar"/>
+						</div>
 					</div>
 				</form>
 			</div>

+ 5 - 5
www-admin/blog/index.php

@@ -28,7 +28,7 @@
 		<?php include('../toolbar.php'); ?>
 		<div id='content'>
 			<div class="section">
-				<h3>Entradas del blog - <a href="/blog/add/">Anadir nueva</a></h3>
+				<h3 class="section_title">Entradas del blog - <a href="/blog/add/">A&ntilde;adir nueva</a></h3>
 				<div class="entry">
 					<table id='blog_post_list'>
 						<tr>
@@ -39,9 +39,10 @@
 							<th>Accion</th>
 						</tr>
 						<?php
-							$query = mysqli_query($con, "SELECT id, title_es, title_eu, title_en, text_es, text_eu, text_en, user, visible, comments, DATE_FORMAT(dtime, '%b %d, %Y %H:%i:%s') AS ptime FROM post ORDER BY id DESC;");
+							$query = mysqli_query($con, "SELECT id, title_es, title_eu, title_en, text_es, text_eu, text_en, user, visible, comments, DATE_FORMAT(dtime, '%b %d, %Y %H:%i:%s') AS ptime, permalink FROM post ORDER BY id DESC;");
 							while ($r = mysqli_fetch_array($query)){
-								echo "<tr>\n<td class='blog_column_title'>" . cutText($r['title_es'], 35, '', '') . "</td>\n<td class='blog_column_text'>" . cutText($r['text_es'], 80, '', '') . "\n";
+								echo "<tr>\n<td class='blog_column_title'><a href='https://margolariak.com/blog/$r[permalink]'>" . cutText($r['title_es'], 35, '', '') . "</a></td>";
+								echo "<td class='blog_column_text'>" . str_replace('<br/>', ' ', cutText($r['text_es'], 60, '', '')) . "\n";
 								
 								$q_image = mysqli_query($con, "SELECT image FROM post_image WHERE post = $r[id] ORDER BY idx;");
 								if (mysqli_num_rows($q_image) > 0){
@@ -90,9 +91,8 @@
 								echo "Ingl&eacute;s: " . intval($translated_en * 100 / $total) . "%<br/>Euskera: " . intval($translated_eu * 100 / $total) . "%\n";
 								
 								
-								echo "\n</td>\n<td class='blog_column_action'>\n<form method='get' action='http://$http_host/blog/edit/index.php'>\n<input type='submit' value='Editar'/>\n<input type='hidden' name='p' value='$r[id]'/></form>\n";
+								echo "\n</td>\n<td class='blog_column_action'>\n<form method='get' action='http://$http_host/blog/edit/index.php'>\n<input type='submit' value='Editar / Traducir'/>\n<input type='hidden' name='p' value='$r[id]'/></form>\n";
 								echo "<input type='button' onClick='delete_post($r[id], \"$r[title_es]\");' value='Borrar'/>";
-								echo "<form action='/blog/translate/translate.php'>\n<input type='hidden' name='id' value='$r[id]'/><input type='submit' value='Traducir'/>\n</form>";
 								echo "<form action='/blog/moderate/moderate.php?p=$r[id]'>\n<input type='submit' value='Moderar comentarios'/>\n</form>";
 								echo "</td>\n</tr>";
 							}

+ 8 - 1
www-admin/blog/moderate/index.php

@@ -12,7 +12,7 @@
 	<head>
 		<meta content="text/html; charset=windows-1252" http-equiv="content-type"/>
 		<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1">
-		<title>Nuevo post - Administracion</title>
+		<title>Moderar comentarios - Administracion</title>
 		<!-- CSS files -->
 		<link rel="stylesheet" type="text/css" href="/css/ui.css"/>
 		<link rel="stylesheet" type="text/css" href="/css/blog.css"/>
@@ -24,5 +24,12 @@
 		<script type="text/javascript" src="/script/ui.js"></script>
 	</head>
 	<body>
+	<?php include('../../toolbar.php'); ?>
+                <div id='content'>
+                        <div class="section">
+                                <h3 class="section_title">Moderar comentarios</h3>
+				<h4 span class="TODO">En construcci&oacute;n</h4>
+			</div>
+		</div>
 	</body>
 </html>

+ 60 - 71
www-admin/css/actividades.css

@@ -1,68 +1,21 @@
 /* /actividades/add/index.php */
 
-span.tab_selector{
-	z-index:					1;
-	position:					relative;
-	margin-bottom:				0;
-	margin-right:				1em;
-	margin-left:				1em;
-	border-top:					0.1em solid #000000;
-	border-left:				0.1em solid #000000;
-	border-right:				0.1em solid #000000;
-	border-top-right-radius:	0.3em;
-	border-top-left-radius:		0.3em;
-	padding:					0.5em 0.5em 0.1em 0.5em;
-	background-color:			#cccccc;
-	font-weight:				bold;
-}
-
-span#tab_selector_es{
-	z-index:	3;
-}
-
-span#tab_selector_en{
-	color:			#8899bb;
-}
-
-span#tab_selector_eu{
-	color:			#8899bb;
-}
-
-span.tab_selector_hidden{
-	border-bottom:	0.1em solid #000000;
-}
-
-div.tab_content{
-	z-index:			2;
-	position:			relative;
-	display:			inline-block;
-	vertical-align:		top;
-	margin-top:			-0.1em;
-	background-color:	#cccccc;
-	width:				30%;
-	min-width:			25em;
-	text-align:			center;
-}
-
-div.tab_content input[type="text"]{
-	width:		90%;
+input[type="text"]{
+	width:	100%;
 }
 
-div.tab_content textarea{
-	width:		90%;
-	height:		25em;
-	resize: 	none;
+textarea{
+	width:		100%;
+	height:		20em;
 }
 
 div.tab_content_hidden{
 	display:	none;
 }
 
-div#activity_images{
-	display:		inline-block;
-	width:			40%;
-	min-width:		20em;
-	vertical-align:	top;
+div#activity_images input[name="city"]{
+        width:  	100%;
+	max-width:	15em;
 }
 
 div#activity_images input[name="day"]{
@@ -103,13 +56,17 @@ img.image_upload_preview{
 	vertical-align:	middle;
 }
 
-div#activity_options{
-	width:			15%;
-	min-width:		14em;
-	display:		inline-block;
-	vertical-align:	top;
+/* Buttons */
+div#button_container{
+        text-align:     center;
 }
 
+div#button_container input{
+        width:  30%;
+        margin: 0.5em auto 0.5em auto;
+}
+
+
 /* Translate page */
 
 div#translation_instructions{
@@ -198,8 +155,9 @@ div.translate_row_itinerary table td textarea{
 
 /* /actividades/add/itinerary.php */
 table#itinerary{
+	margin:			1em;
 	border-collapse:	collapse; 
-	border:				0.1em solid #000000;
+	border:			0.1em solid #000000;
 }
 
 table#itinerary tr.itinerary_row{
@@ -214,13 +172,23 @@ table#itinerary tr#itinerary_row_0{
 }
 
 table#itinerary tr.itinerary_row td.itinerary_cell{
-	border:	0.1em solid #000000;
+	border:		0.1em solid #000000;
+	padding:	0.5em;
+}
+
+table#itinerary tr.itinerary_row td.itinerary_cell_content{
+        width:	100%;
 }
 
 table#itinerary tr.itinerary_row td.itinerary_cell h4{
 	margin:	0.3em;
 }
 
+table#itinerary tr.itinerary_row td.time{
+        min-width:  11em;
+}
+
+
 table#itinerary tr.itinerary_row td.time input{
 	width:	3em;
 }
@@ -243,18 +211,22 @@ table#itinerary tr.itinerary_row td.time span:hover{
 	text-decoration:	underline;
 }
 
-table#itinerary tr.itinerary_row td.title input{
-	min-width:	3em;
-}
-
 table#itinerary tr.itinerary_row td.text textarea{
 	min-width:	15em;
 	height:		7em;
 	resize:		none;
 }
 
+input#save_itinerary{
+	width:	30%;
+	margin:	1em 30% 1em 30%;
+}
+
+/* Activity list */
+
 table#activity_list{
 	border-collapse:	collapse;
+	margin:				0.5em;
 }
 
 table#activity_list td, th{
@@ -263,7 +235,7 @@ table#activity_list td, th{
 }
 
 table#activity_list th{
-	background-color:	#999999;
+	background-color:	#66aaff;
 }
 
 table#activity_list td.activity_column_title{
@@ -274,14 +246,25 @@ table#activity_list td.activity_column_text{
 	width:	25%;
 }
 
+table#activity_list td.activity_column_text ul{
+	margin:		0;
+}
+
+table#activity_list td.activity_column_text li{
+	margin:		0.5em 0.1em 0 0.2em;
+	font-size:	80%;
+	font-style:	italic;
+}
+
 table#activity_list td.activity_column_text img{
-	max-width:	6em;
-	max-height:	4em;
+	max-width:	5em;
+	max-height:	2em;
 	border:		0.1em solid black;
-	margin:		0.1em;
+	margin:		0.05em;
 }
 
 table#activity_list td.activity_column_details{
+	font-size:	80%;
 	width:		10%;
 	text-align:	center;
 }
@@ -296,11 +279,17 @@ table#activity_list td.activity_column_action{
 	text-align:	center;
 }
 
+table#activity_list td.activity_column_action input{
+	margin: 	0.05em;
+	padding:	0.06em;
+	font-size:	70%
+}
+
 table#activity_list form{
 	margin:	0;
 }
 
-table#activity_list input[type="button"], input[type="submit"]{
+table#activity_list td.activity_column_action input[type="button"], input[type="submit"]{
 	width:			90%;
 	margin-top:		0.2em;
 	margin-bottom:	0.2em;

+ 28 - 24
www-admin/css/blog.css

@@ -1,27 +1,11 @@
 /* /blog/add/index.php */
 
-div.blog_add_language{
-	width:			31%;
-	display:		inline-block;
-	vertical-align:	top;
-}
-
-div#images{
-	display:		inline-block;
-	vertical-align:	top;
-	width:			60%;
-}
-
-div#settings{
-	display:		inline-block;
-	vertical-align:	top;
-	width:			35%;
-}
-
+/* Post title */
 input[type=text]{
 	width:	100%;
 }
 
+/* Post text */ 
 textarea{
 	width:	100%;
 	height:	20em;
@@ -41,10 +25,22 @@ img.image_upload_preview{
 	height:		5em;
 }
 
-/* /blog/inex.php */
+/* Buttons */
+div#add_button_container{
+	text-align:	center;
+}
+
+div#add_button_container input{
+	width:	30%;
+	margin:	0.5em auto 0.5em auto;	
+}
+
+
+/* /blog/index.php */
 
 table#blog_post_list{
-	border-collapse: collapse;
+	border-collapse:	collapse;
+	margin:				0.5em;
 }
 
 table#blog_post_list td, th{
@@ -53,7 +49,7 @@ table#blog_post_list td, th{
 }
 
 table#blog_post_list th{
-	background-color:	#999999;
+	background-color:	#66aaff;
 }
 
 table#blog_post_list td.blog_column_title{
@@ -65,13 +61,14 @@ table#blog_post_list td.blog_column_text{
 }
 
 table#blog_post_list td.blog_column_text img{
-	max-width:	6em;
-	max-height:	4em;
+	max-width:	5em;
+	max-height:	2em;
 	border:		0.1em solid black;
-	margin:		0.1em;
+	margin:		0.05em;
 }
 
 table#blog_post_list td.blog_column_details{
+	font-size:	80%;
 	width:		10%;
 	text-align:	center;
 }
@@ -86,6 +83,13 @@ table#blog_post_list td.blog_column_action{
 	text-align:	center;
 }
 
+table#blog_post_list td.blog_column_action input{
+	margin: 	0.05em;
+	padding:	0.06em;
+	font-size:	70%
+}
+
+
 table#blog_post_list form{
 	margin:	0;
 }

+ 50 - 61
www-admin/css/galeria.css

@@ -1,96 +1,85 @@
-div.album_list{
-	display:inline-block;
-	vertical-align:	bottom;
-}
-
-/* Translate page */
+/* Album list */
 
-div#translation_instructions{
-	text-align:	center;
+table#album_list{
+        border-collapse:        collapse;
+        margin:                         0.5em;
 }
 
-div#translation_instructions ul{
-	display:	inline-block;
-	text-align:	left;
+table#album_list td, th{
+        border:         1px solid black;
+        padding:        0.5em;
 }
 
-div#translation_instructions ul li{
-	margin-top: 0.5em;
+table#album_list th{
+        background-color:       #66aaff;
 }
 
-table#table_translate_languages td.translate_language{
-	min-width:			30%;
-	border-collapse:	collapse;
-	border:				none;
-	vertical-align:		top;
+table#album_list td.album_column_title{
+        width:  10%;
 }
 
-table#table_translate_photos{
-	border-collapse:	collapse;
+table#album_list td.album_column_text{
+        width:  25%;
 }
 
-table#table_translate_photos td.details{
-	width:	24%;
-	border:	1px solid #000000;
-	vertical-align:	top;
+table#album_list td.album_column_text ul{
+        margin:         0;
 }
 
-table#table_translate_photos td.image{
-	max-width:		8.5em;
-	border:			1px solid #000000;
-	vertical-align:	top;
+table#album_list td.album_column_text li{
+        margin:         0.5em 0.1em 0 0.2em;
+        font-size:      80%;
+        font-style:     italic;
 }
 
-table#table_translate_photos textarea{
-	width:		100%;
-	height:		100%;
-	min-height:	6em;
-	resize:		none;
+table#album_list td.album_column_text img{
+        max-width:      5em;
+        max-height:     2em;
+        border:         0.1em solid black;
+        margin:         0.05em;
 }
 
-table#table_translate_photos img{
-	min-width:	8em;
-	min-height:	6em;
-	float:		right;
-	border:		1px solid black;
-	resize:		none;
+table#album_list td.album_column_details{
+        font-size:      80%;
+        width:          10%;
+        text-align:     center;
 }
 
-div.translate_row_title{
-	height:	3em;
+table#album_list td.album_column_translations{
+        width:          10%;
+        text-align:     center;
 }
 
-div.translate_row_description{
-	height:		12em;
-	overflow: 	auto;
+table#album_list td.album_column_action{
+        width:          10%;
+        text-align:     center;
 }
 
-div.translate_row_description p{
-	font-size:	80%;
+table#album_list td.album_column_action input{
+        margin:         0.05em;
+        padding:        0.06em;
+        font-size:      70%
 }
 
-div.translate_row_description textarea{
-	width:	100%;
-	height:	80%;
-    resize:	none;
+table#album_list form{
+        margin: 0;
 }
 
-
-div.translate_row_itinerary table td textarea{
-	width:	100%;
-	height:	100%;
-	resize:	none;
+table#album_list td.album_column_action input[type="button"], input[type="submit"]{
+        width:                  90%;
+        margin-top:             0.2em;
+        margin-bottom:  0.2em;
 }
 
-
 div#translate_controls{
-	margin-top:		20px;
-	margin-bottom:	20px;
-	text-align:		center;
+        width:                  50%;
+        margin-left:    auto;
+        margin-right:   auto;
+        text-align:             center;
 }
 
 div#translate_controls input{
-	margin:	20px;
+        width:          100%;
+        margin-top:     1em;
 }
 
-xmp{ white-space:pre-wrap; word-wrap:break-word; }

+ 9 - 5
www-admin/css/lablanca.css

@@ -13,11 +13,6 @@ span.status_yellow{
 	color:			#ff8800;
 }
 
-div#entry_header{
-	display:	table-row;
-	padding:	0;
-}
-
 div#entry_header div.header_text{
 	display:		table-cell;
 	vertical-align:	top;
@@ -55,6 +50,15 @@ div#section_prices table#prices{
 	border-collapse:	collapse;
 }
 
+div#section_prices table#prices td, th{
+  border:	0.1em solid black;
+}
+
+div#section_prices table#prices table td, th{
+  border: 0;
+}
+
+
 div#section_prices table#prices input[type='text']{
 	max-width:	10em;
 }

+ 240 - 0
www-admin/css/m/ui.css

@@ -0,0 +1,240 @@
+/******************************************
+* Hide elements intended for desktop and  *
+* show elements for mobile.               *
+******************************************/
+.mobile{
+	display:	initial;
+}
+
+.desktop{
+	display:	none !important;
+}
+
+
+/******************************************
+* Styles for the site header that is      *
+* always visible.                         *
+******************************************/
+
+/* Header top container */
+div#header_m{
+	width:		100%;
+	margin:		0;
+	padding:	0;
+	transition:	max-height 0.9s ease-in-out;
+}
+
+/* Main image of the header, contains the logo */
+div#header_m img#mobile_logo{
+	float:			left;
+	width:			4em;
+	margin-right:	-4em;
+	-webkit-filter:	drop-shadow(0 0 0.2em #336);
+	filter:			url(#drop-shadow);
+	filter:			drop-shadow(0 0 0.2em #336);
+	-ms-filter:		"progid:DXImageTransform.Microsoft.Dropshadow(OffX=0, OffY=0, Color='#444')";
+	filter:			"progid:DXImageTransform.Microsoft.Dropshadow(OffX=0, OffY=0, Color='#444')";
+	border:			0.05em solid #000011;
+	border-radius:	100%;
+}
+
+div#header_menu_m div{
+	padding-top:		0.6em;
+	font-weight:		bold;
+	text-align:			center;
+	background-color:	#aaaaaa;
+	border:				1px solid #000000;
+}
+
+div#header_menu_m div#header_m_slider{
+	display:			none;
+	background-color:	#0078ff;
+}
+
+div#header_menu_m div#header_m_slider img{
+	height: 1em;
+	width:	1em;
+	margin: auto;
+}
+
+div#header_menu_m div#header_m_title{
+	vertical-align:		middle;
+	color:				#ffffff;
+	max-height:			3.5em;
+	padding-top:		0.75em;
+	transition:			max-height 0.3s ease-in-out;
+	overflow:			hidden;
+	padding:			0;
+	background-color:	#0078ff
+}
+
+div#header_menu_m div#header_m_title span {
+	display:	block;
+	margin:		0.4em;
+}
+
+div#header_menu_m div#header_m_title span img{
+	vertical-align:	middle;
+}
+
+div#header_menu_m div#header_m_title img{
+	height: 1.9em;
+	width:	1.9em;
+	float:	center;
+}
+
+div#header_menu_m div.header_m_link{
+/* 	display:			none; */
+	max-height:			0;
+	padding:			0;
+	border:				0;
+	overflow:			hidden;
+	transition:			max-height 0.3s ease-in-out;
+	background-color:	#0078ff;
+}
+
+div#header_menu_m div.header_m_link a{
+	color:			#ffffff;
+	text-shadow:	0 0 0.5em #444444;
+	display:		block;
+	width:			100%;
+	height:			2.8em;
+}
+
+/******************************************
+* Styles for the site footer that is      *
+* always visible.                         *
+******************************************/
+
+/* Table containing the footer elemnts */
+div#footer div#footer_table{
+	display:	block;
+}
+
+div#footer div#footer_table div.tr{
+	display:	block;
+}
+
+/* Each main section of the footer */
+div#footer div#footer_table div.td{
+	width:			100%;
+	display:		block;
+	text-align:		center;
+	margin-bottom:	1em;
+	margin:			0;
+	padding:		0;
+}
+
+/* Images for language selection */
+img.lang{
+	height:			1.5em;
+	margin:			0.5em 1em 0.5em 1em;
+	border-radius:	0.2em;
+	border:			0.1em solid #222222;
+	box-shadow:		0 0 0.3em #333333;
+}
+
+img.lang:hover{
+ 	box-shadow:		0 0 0.3em #333333; /*NONE*/
+}
+
+/* Mobile app link image in the footer */
+img.app{
+	height:			1.5em;
+	margin:			0.5em 1em 0.5em 1em;
+	border-radius:	0.2em;
+	border:			0.1em solid #222222;
+	box-shadow:		0 0 0.3em #333333;
+}
+
+img.app:hover{
+	box-shadow:	0 0 0.5em #666666; /*NONE*/
+}
+
+/* Each of the social links in the footer */
+img.footer_social_icon{
+	height:			3em;
+	margin:			0.25em;
+}
+
+img.footer_social_icon:hover{
+	-webkit-filter:	drop-shadow(0 0 0.2em #444444);/*NONE*/
+	filter:			drop-shadow(0 0 0.2em #444444);/*NONE*/
+}
+
+
+/******************************************
+* Styles for the main block that compose  *
+* the site. Most of the pages share the   *
+* same structure.
+******************************************/
+
+/* Content */
+div#content{
+	margin:		auto;
+	width:		95%;
+	max-width:	initial;
+	min-width:	initial;
+}
+
+/******************************************
+* Styles for the ad window.               *
+******************************************/
+div#ad{
+	width:		70%;
+	position:	fixed;
+	bottom:		-25em;
+	left:		15%;
+	right:		15%
+}
+
+div#ad h3{
+	margin-top:	0.3em;
+}
+
+div#ad div#ad_details{
+	font-size:		90%;
+	margin:			0.3em;
+}
+
+div#ad div#ad_details img{
+	height:			1.2em;
+	width:			1.2em;
+	margin: 		0 0.5em 0 0.5em;
+}
+
+div#ad div.entry div#ad_image_container{
+	max-height:	9.5em;
+	margin:		0.5em 0.6em 0.5em 0.6em;
+	text-align:	center;
+}
+
+div#ad div.entry a{
+	font-size:		100%;
+}
+
+/******************************************
+* Styles for the annoying cookie popup.   *
+******************************************/
+div#cookie_popup{
+	font-size:					80%;
+	color:						#dddddd;
+	text-align:					center;
+	position:					fixed;
+	background-color:			#4c9ed8;
+	border:						0.5em solid #265774;
+	padding:					1em 4em 1em 4em;
+	left:						0em;
+	right:						0em;
+	bottom:						0em;
+	-ms-transform:				rotate(0deg); /* IE 9 */
+	-ms-transform-origin:		0% 0%; /* IE 9 */
+	-webkit-transform:			rotate(00deg); /* Chrome, Safari, Opera */
+	-webkit-transform-origin:	0% 0%; /* Chrome, Safari, Opera */
+	-moz-transform:				rotate(00deg); 
+	-moz-transform-origin:		0% 0%; /* Chrome, Safari, Opera */
+	transform:					rotate(00deg);
+	transform-origin:			0% 0%;
+	box-shadow:					0 0 3em #265774;
+	transition:					bottom .5s ease-in-out;
+}

+ 160 - 58
www-admin/css/ui.css

@@ -1,59 +1,106 @@
-.stroke{
-	text-decoration:	line-through;
+/******************************************
+* Hide elements intended for mobile.      *
+******************************************/
+.mobile{
+	display:	none;
 }
 
-.underline{
+/******************************************
+* Fonts used across the page              *
+******************************************/
+
+/* Glogal font */
+@font-face{
+	font-family:	font;
+	src:			url('/font/FreeSans.ttf')
+}
+
+
+/******************************************
+* Styles for html tags, without id or     *
+* class.                                  *
+******************************************/
+
+/* Links */
+a{
+	color:				#4c9ed9;
+	text-decoration:	none;
+	transition:			all .2s ease-in-out;
+}
+
+a:hover{
+	color:				#347;
+	text-shadow:		0 0 0.4em #265885;
 	text-decoration:	underline;
 }
 
-.bold{
-	font-weight:	bold;
+/* Fake links */
+.fake_a{
+	color:				#4c9ed9;
+	text-decoration:	none;
+	transition:			all .2s ease-in-out;
 }
 
-.italic{
-	font-style:	italic;
+.fake_a:hover{
+	color:				#347;
+	text-shadow:		0 0 0.4em #265885;
+	text-decoration:	underline;
+}
+
+/* Body */
+body{
+	font-family:		font;
+	margin:				0;
+	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#b5d3e5+0,e5f4ff+10,e5f4ff+90,b5d3e5+100 */
+	background: #b5d3e5; /* Old browsers */
+	background: -moz-linear-gradient(left, #b5d3e5 0%, #e5f4ff 10%, #e5f4ff 90%, #b5d3e5 100%); /* FF3.6-15 */
+	background: -webkit-linear-gradient(left, #b5d3e5 0%,#e5f4ff 10%,#e5f4ff 90%,#b5d3e5 100%); /* Chrome10-25,Safari5.1-6 */
+	background: linear-gradient(to right, #b5d3e5 0%,#e5f4ff 10%,#e5f4ff 90%,#b5d3e5 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
+	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#b5d3e5', endColorstr='#b5d3e5',GradientType=1 ); /* IE6-9 */
+
 }
 
+/* WARNING: If styles change dhere, make changes on commment scripts */
 input[type="text"], input[type="number"], input[type="date"], input[type="password"]{
-	border-radius:		0.5em;
-	height:				2em;
-	border:				0.4em solid #9cd3d9;
-	color:				#cccccc;
-	background-color:	#223344;
+	border-radius:		0.3em;
+	height:				1.5em;
+	border:				0.2em solid #0078ff;
+	color:				#002255;
+	background-color:	#ccddff;
+	margin:				0.1em;
 }
 
-input[type="button"], input[type="submit"], select{
-	border-radius:		0.5em;
-	height:				2.5em;
-	border:				0.4em solid #9cd3d9;
+input[type="button"], input[type="submit"], input[type="file"], select{
+	border-radius:		0.3em;
+	height:				2em;
+	border:				0.2em solid #0078ff;
 	font-weight:		bold;
 	color:				#ffffff;
-	background-color:	#335577;
+	background-color:	#124567;
 	cursor:				pointer;
+	margin:				0.1em;
+	letter-spacing: 	0.1em;
 }
 
 textarea{
-	border-radius:		0.5em;
+	border-radius:		0.3em;
 	min-height:			2em;
 	max-height:			15em;
-	border:				0.4em solid #9cd3d9;
-	color:				#bbbbbb;
-	background-color:	#223344;
+	border:				0.2em solid #0078ff;
+	color:				#002255;
+	background-color:	#ccddff;
 	resize:				vertical;
+	margin:				0.1em;
 }
 
-/* Links */
-a{
-	color:				#4c9ed9;
-	text-decoration:	none;
-	transition:			all .2s ease-in-out;
+li{
+	list-style-image:	url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAcAAAAHCAYAAADEUlfTAAAAG0lEQVQImWNgIBqU//+PWwKGcUoQVECanVgAAJSsH/KywgEfAAAAAElFTkSuQmCC');
 }
 
-a:hover{
-	color:				#347;
-	text-shadow:		0 0 0.4em #265885;
-	text-decoration:	underline;
-}
+/******************************************
+* Common elements present across the      *
+* whle site.                              *
+******************************************/
 
 /* Icon for slider sections */
 img.slid{
@@ -70,64 +117,86 @@ img.slid{
 	cursor:	pointer;
 }
 
+/* Elemnts not to be displayed */
+.hidden{
+	display:	none;
+}
 
-/* Body */
-body{
-	font-family:		font;
-	margin:				0;
-	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#b5d3e5+0,e5f4ff+10,e5f4ff+90,b5d3e5+100 */
-	background: #b5d3e5; /* Old browsers */
-	background: -moz-linear-gradient(left, #b5d3e5 0%, #e5f4ff 10%, #e5f4ff 90%, #b5d3e5 100%); /* FF3.6-15 */
-	background: -webkit-linear-gradient(left, #b5d3e5 0%,#e5f4ff 10%,#e5f4ff 90%,#b5d3e5 100%); /* Chrome10-25,Safari5.1-6 */
-	background: linear-gradient(to right, #b5d3e5 0%,#e5f4ff 10%,#e5f4ff 90%,#b5d3e5 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
-	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#b5d3e5', endColorstr='#b5d3e5',GradientType=1 ); /* IE6-9 */
+/* Elements with an italic font */
+.italic{
+	font-style:	italic;
+}
+
+/*Elements with a bold font*/
+.bold{
+	font-weight:	bold;
+}
+
+/*Stroked elements*/
+.stroke{
+	text-decoration:	line-through;
+}
+
+/*Underlined elements*/
+.underline{
+	text-decoration:	underline;
 }
 
+
 /* Content */
 div#content{
 	margin:		3em auto auto auto;
 	width:		90%;
 	max-width:	80em;
+	min-width:	60em;
 }
 
 /* Sections */
 div.section{
-	background-color:	#9bc1da;
-	padding:			0.1em 0.3em 0.1em 0.1em;
-	border:				0.2em solid #9cd3d9;
+	border-left:		0.1em solid #000011;
+	border-right:		0.1em solid #000011;
+	border-bottom:		0.1em solid #000011;
+	border-radius:		1em;
+	padding:			0 0 0.5em 0;
+	background-color:	#98c8ff;
+	-webkit-filter:		drop-shadow(0 0 0.4em #000011);
+	filter:				drop-shadow(0 0 0.4em #000011);
+    -ms-filter:			"progid:DXImageTransform.Microsoft.Dropshadow(OffX=0, OffY=0, Color='#000011')";
+    filter:				"progid:DXImageTransform.Microsoft.Dropshadow(OffX=0, OffY=0, Color='#000011')";
 }
 
 /* Title for each section */
 div.section .section_title{
-	font-size:	130%;
-	font-style:	bold;
-	margin-top:	0.5em;
+	font-size:					120%;
+	font-style:					bold;
+	color:						#ffffff;
+	background-color:			#0078ff;
+	padding:					0.5em 2em 0.1em 1.5em;
+	border-top-left-radius:		0.7em;
+	border-top-right-radius:	0.7em;
+	border:						0.1em solid #000011;
+	margin:						0;
 }
 
 /* Entries */
-div.entry{
+.entry{
 	background-color:	#ffffff;
 	padding:			0.2em;
 	margin:				0.4em;
-	border:				0.2em solid #9cd3d9;
+	border:				0.1em solid #6D6990;
+	border-radius:		0.3em;
 	box-shadow:			inset 0 0 0.2em #dde;
 	transition:			all .3s ease-in-out;
 }
 
-td.entry{
-	background-color:	#ffffff;
-	padding:			0.2em;
-	margin:				0.4em;
-	border:				0.2em solid #9cd3d9;
-	box-shadow:			inset 0 0 0.2em #dde;
-	transition:			all .3s ease-in-out;
-}
 
+/******************************************
+* Main toolbar.                           *
+******************************************/
 div#member_action input{
 	margin:	0.5em 2em 0.5em 2em;
 }
 
-/* Toolbar styles */
 div#toolbar{
 	background-color:	#000000;
 	margin:				0;
@@ -167,6 +236,9 @@ div#toolbar td a{
 	transition:			all .3s ease-in-out;
 }
 
+/******************************************
+* Secondary toolbars.                     *
+******************************************/
 div.secondary_toolbar{
 	background-color:	#333333;
 	margin:				0;
@@ -201,6 +273,9 @@ div.secondary_toolbar td a:hover{
 	text-decoration:	none;
 }
 
+/******************************************
+* Translation elements.                   *
+******************************************/
 table.translation_table{
 	border-collapse:	collapse;
 }
@@ -214,3 +289,30 @@ table.translation_table th{
 table.translation_table td{
 	border:	1px solid #000000;
 }
+
+
+/******************************************
+* Language selectors                      *
+******************************************/
+
+div#lang_tabs{
+	margin-top:	2em;
+	margin-bottom:	2em;
+}
+
+div#lang_tabs table{
+	width:	100%;
+}
+
+div#lang_tabs td{
+	color:		#555555;
+	font-weight:	bold;
+	width:		33%;
+	border:		0.1em solid black;
+	margin:		0;
+}
+
+div#lang_tabs td.lang_tabs_active{
+	color:		#0078ff;
+	border-bottom:	0.1em solid #ffffff;
+}

+ 59 - 0
www-admin/estadisticas/web.php

@@ -0,0 +1,59 @@
+<?php
+	$http_host = $_SERVER['HTTP_HOST'];
+	$default_host = substr($http_host, 0, strpos($http_host, ':'));
+	include("../functions.php");
+	$con = startdb();
+	if (!checkSession($con)){
+		header("Location: /index.php");
+		exit (-1);
+	}
+	else{
+?>
+<html>
+	<head>
+		<meta content="text/html; charset=windows-1252" http-equiv="content-type"/>
+		<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1">
+		<title>Estadisticas Web - Administracion</title>
+		<!-- CSS files -->
+		<link rel="stylesheet" type="text/css" href="/css/ui.css"/>
+		<link rel="stylesheet" type="text/css" href="/css/estadisticas.css"/>
+		<!-- CSS for mobile version -->
+		<link rel="stylesheet" type="text/css" media="(max-width : 990px)" href="/css/m/ui.css"/>
+		<link rel="stylesheet" type="text/css" media="(max-width : 990px)" href="/css/m/estadisticas.css"/>
+		<!-- Script files -->
+		<script type="text/javascript" src="/script/ui.js"></script>
+	</head>
+	<body>
+		<?php include('toolbar.php'); ?>
+		<div id='content'>
+			<div id='section_table'>
+				<div class='section_row'>
+					<div class='section_cell'>
+						<div class='section'>
+							<h3 class='section_title'>Visitantes &Uacute;nicos</h3>
+							<?php
+								$q_total = mysqli_query($con, "SELECT LOW_PRIORITY COUNT(id) AS c FROM stat_visit;");
+								$q_week = mysqli_query($con, "SELECT LOW_PRIORITY COUNT(id) AS c FROM stat_visit WHERE id IN (SELECT visit FROM stat_view WHERE dtime > DATE_FORMAT(LAST_DAY(NOW()) - ((7 + WEEKDAY(LAST_DAY(NOW())) - 7) % 7), '%Y-%m-%d'));");
+								$q_month = mysqli_query($con, "SELECT LOW_PRIORITY COUNT(id) AS c FROM stat_visit WHERE id IN (SELECT visit FROM stat_view WHERE dtime > LAST_DAY(NOW() - INTERVAL 1 MONTH) + INTERVAL 1 DAY);");
+								$q_year =  mysqli_query($con, "SELECT LOW_PRIORITY COUNT(id) AS c FROM stat_visit WHERE id IN (SELECT visit FROM stat_view WHERE dtime > DATE_FORMAT(NOW() ,'%Y-01-01'));");
+								$r_total = mysqli_fetch_array($q_total);
+								$r_week = mysqli_fetch_array($q_week);
+								$r_month = mysqli_fetch_array($q_month);
+								$r_year = mysqli_fetch_array($q_year);
+							?>
+							<div class='entry'>
+								<ul>
+									<li>Totales: <?php echo($r_total['c']); ?> </li>
+									<li>Semana: <?php echo($r_week['c']); ?> </li>
+									<li>Mes: <?php echo($r_month['c']); ?> </li>
+									<li>A&ntilde;o: <?php echo($r_year['c']); ?> </li>
+								</ul>
+							</div>
+						</div>
+					</div>
+				</div>
+			</div>
+		</div>
+	</body>
+</html>
+<?php } ?>

+ 102 - 1
www-admin/galeria/add/add.php

@@ -1 +1,102 @@
- 
+<?php
+	$http_host = $_SERVER['HTTP_HOST'];
+	include("../../functions.php");
+	$con = startdb('rw');
+	if (!checkSession($con)){
+		header("Location: /index.php");
+		exit (-1);
+	}
+	else{
+		
+		//Get POST data
+		$title_es = mysqli_real_escape_string($con, $_POST['title_es']);
+		$title_eu = mysqli_real_escape_string($con, $_POST['title_eu']);
+		$title_en = mysqli_real_escape_string($con, $_POST['title_en']);
+		$text_es = mysqli_real_escape_string($con, $_POST['text_es']);
+		$text_eu = mysqli_real_escape_string($con, $_POST['text_eu']);
+		$text_en = mysqli_real_escape_string($con, $_POST['text_en']);
+		$comments = mysqli_real_escape_string($con, $_POST['comments']);
+		$visible = mysqli_real_escape_string($con, $_POST['visible']);
+		$public = mysqli_real_escape_string($con, $_POST['public']);
+		$populate = mysqli_real_escape_string($con, $_POST['populate']);
+		
+		//Check spanish title and generate permalink
+		if ($title_es == null){
+			exit();
+		}
+		else{
+			$permalink = permalink($title_es);
+			$i = 2;
+			$ok = false;
+			$tmppermalink = $permalink;
+			while ($ok == false){
+				$query = mysqli_query($con, "SELECT id FROM post WHERE permalink = '$tmppermalink';");
+				if (mysqli_num_rows($query) > 0){
+					$tmppermalink = $permalink . "-" . $i;
+					$i ++;
+				}
+				else{
+					$permalink = $tmppermalink;
+					$ok = true;
+				}
+			}
+		}
+		
+		//Check titles with no text
+		if (strlen($title_eu) > 0 && strlen($text_eu) < 1)
+			exit();
+		if (strlen($title_en) > 0 && strlen($text_en) < 1)
+			exit();
+		
+		//Check text with no titles
+		if (strlen($text_eu) > 0 && strlen($title_eu) < 1)
+			exit();
+		if (strlen($text_en) > 0 && strlen($title_en) < 1)
+			exit();
+		
+		//Check booleans and assign default values if not
+		if ($comments == 'off')
+			$comments = 0;
+		else
+			$comments = 1;
+		if ($visible == 'off')
+			$visible = 0;
+		else
+			$visible = 1;
+		if ($public == 'on')
+			$public = 1;
+		else
+			$public = 0;
+		if ($populate == 'on')
+			$populate = 1;
+		else
+			$populate = 0;
+	
+		// If no translations, same text in all languages
+		if (strlen($text_eu) == 0){
+			$text_eu = $text_es;
+			$title_eu = $title_es; 
+		}
+		
+		if (strlen($text_en) == 0){
+			$text_en = $text_es;
+			$title_en = $title_es; 
+		}
+		
+		//Insert into database and get id
+		mysqli_query($con, "INSERT INTO album (permalink, title_es, title_eu, title_en, description_es, description_eu, description_en, open) VALUES ('$permalink', '$title_es', '$title_eu', '$title_en', '$text_es', '$text_eu', '$text_en', $public);");
+		$res_album = mysqli_query($con, "SELECT id FROM album WHERE permalink = '$permalink' ORDER BY dtime DESC LIMIT 1;");
+		$row_album = mysqli_fetch_array($res_album);
+		$album_id = $row_album['id'];
+		
+		version();
+		
+		//Redirect
+		if ($populate == 1){
+			header("Location: /galeria/");
+		}
+		else{
+			header("Location: /galeria/upload.php?album=$album_id");
+		}
+	}
+?>

+ 92 - 0
www-admin/galeria/add/index.php

@@ -0,0 +1,92 @@
+<?php
+	$http_host = $_SERVER['HTTP_HOST'];
+	include("../../functions.php");
+	$con = startdb();
+	if (!checkSession($con)){
+		header("Location: /index.php");
+		exit (-1);
+	}
+	else{
+?>
+<html>
+	<head>
+		<meta content="text/html; charset=windows-1252" http-equiv="content-type"/>
+		<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1">
+		<title>Nuevo &aacute;lbum - Administracion</title>
+		<!-- CSS files -->
+		<link rel="stylesheet" type="text/css" href="/css/ui.css"/>
+		<link rel="stylesheet" type="text/css" href="/css/galeria.css"/>
+		<!-- CSS for mobile version -->
+		<link rel="stylesheet" type="text/css" media="(max-width : 990px)" href="/css/m/ui.css"/>
+		<link rel="stylesheet" type="text/css" media="(max-width : 990px)" href="/css/m/galeria.css"/>
+		<!-- Script files -->
+		<script type="text/javascript" src="script.js"></script>
+		<script type="text/javascript" src="/script/ui.js"></script>
+		<script src="../../ckeditor/ckeditor.js"></script>
+	</head>
+	<body>
+		<?php include('../../toolbar.php'); ?>
+		<div id='content'>
+			<div class="section">
+				<h3 class="section_title">Nuevo &aacute;lbum</h3>
+				<form action="add.php" maxlength="120" method="post" enctype="multipart/form-data" onsubmit="return validate_album();">
+					<div class="entry">
+						<div id="lang_tabs">
+							<table>
+								<tr>
+									<td class="pointer lang_tabs_active" id="lang_tab_es" onclick="showLanguage('es');">
+										Castellano
+									</td>
+									<td class="pointer" id="lang_tab_eu" onclick="showLanguage('eu');">
+										Euskera
+									</td>
+									<td class="pointer" id="lang_tab_en" onclick="showLanguage('en');">
+										Ingl&eacute;s
+									</td>
+								</tr>
+							</table>
+						</div>
+						<div id="content_lang_es" class="album_add_language">
+							<input type="text" id="title_es" name="title_es" placeholder="Titulo"/><br/><br/>
+							<textarea name="text_es" id="text_es" placeholder="Texto"></textarea>
+							<script>
+								CKEDITOR.replace('text_es');
+							</script>
+						</div>
+						<div id="content_lang_eu" class="blog_add_language" style="display:none;">
+							<input type="text" name="title_eu" id="title_eu" placeholder="Titulu"><br/><br/>
+							<textarea name="text_eu" id="text_eu" placeholder="Textua"></textarea>
+							<script>
+								CKEDITOR.replace('text_eu');
+							</script>
+						</div>
+						<div id="content_lang_en" class="blog_add_language" style="display:none;">
+							<input type="text" name="title_en" id="title_en" placeholder="Titlu"><br><br/>
+							<textarea name="text_en" id="text_en" placeholder="Content"></textarea>
+							<script>
+								CKEDITOR.replace('text_en');
+							</script>
+						</div>
+					</div> <!--Entry-->
+					<div class="entry" id="settings">
+						<h4>Ajustes</h4>
+						<label><input type="checkbox" name="visible" checked/>&Aacute;lbum visible</label><br/><br/>
+						<label><input type="checkbox" name="comments" checked/>Permitir comentarios</label><br/><br/>
+						<label><input type="checkbox" name="public" checked/>Permitir que los usuarios suban sus fotos (previa moderaci&oacute;n).</label><br/><br/>
+						<label><input type="checkbox" name="populate" checked/>A&ntilde;adir fotos en la siguiente pantalla</label>
+						<br/><br/><br/><br/>
+						<div id="add_button_container">
+							<input type="button" value="Previsualizar" onClick="alert(validate_album());"/> <!--TODO-->
+							<br/>
+							<input type="submit" value="Publicar"/>
+						</div>
+					</div>
+				</form>
+			</div>
+		</div>
+	</body>
+</html>
+
+<?php
+	}
+?>

+ 70 - 4
www-admin/galeria/index.php

@@ -1,15 +1,81 @@
+<?php
+	$http_host = $_SERVER['HTTP_HOST'];
+	$default_host = substr($http_host, 0, strpos($http_host, ':'));
+	include("../functions.php");
+	$con = startdb();
+	if (!checkSession($con)){
+		header("Location: /index.php");
+		exit (-1);
+	}
+	else{
+?>
 <html>
 	<head>
 		<meta content="text/html; charset=windows-1252" http-equiv="content-type"/>
 		<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1">
-		<title>Nuevo post - Administracion</title>
+		<title>Galeria - Administracion</title>
 		<!-- CSS files -->
 		<link rel="stylesheet" type="text/css" href="/css/ui.css"/>
-		<link rel="stylesheet" type="text/css" href="/css/blog.css"/>
+		<link rel="stylesheet" type="text/css" href="/css/galeria.css"/>
 		<!-- CSS for mobile version -->
 		<link rel="stylesheet" type="text/css" media="(max-width : 990px)" href="/css/m/ui.css"/>
-		<link rel="stylesheet" type="text/css" media="(max-width : 990px)" href="/css/m/blog.css"/>
+		<link rel="stylesheet" type="text/css" media="(max-width : 990px)" href="/css/m/galeria.css"/>
+		<!-- Script files -->
+		<script type="text/javascript" src="/script/ui.js"></script>
 	</head>
 	<body>
+		<?php include('../toolbar.php'); ?>
+		<div id='content'>
+			<div class="section">
+				<h3 class="section_title">Galer&iacute;a - <a href="/galeria/add/">A&ntilde;adir &aacute;lbum</a></h3>
+				<div class="entry">
+					<table id='album_list'>
+						<tr>
+							<th>Titulo / Texto</th>
+							<th>Detalles</th>
+							<th>Traducciones</th>
+							<th>Accion</th>
+						</tr>
+						<?php
+							$q = mysqli_query($con, "SELECT id, title_es, title_eu, title_en, description_es, description_eu, description_en, user, DATE_FORMAT(dtime, '%b %d, %Y %H:%i:%s') AS ptime, open FROM album ORDER BY dtime DESC;");
+							while ($r = mysqli_fetch_array($q)){
+								echo("<tr>\n<td class='album_column_title'>" . cutText($r['title_es'], 35, '', '') . "<br/>$r[dat]");
+								echo("<br/>" . str_replace('<br/>', ' ', cutText($r['text_es'], 60, '', '')) . "\n</td>\n");
+								$q_user = mysqli_query($con, "SELECT username FROM user WHERE id = $r[user];");
+								$r_user = mysqli_fetch_array($q_user);
+								echo("<td class='activity_column_details'>$r[ptime]<br/>\n");
+								//Count
+								$q_photos = mysqli_query($con, "SELECT count(id) AS cnt FROM photo, photo_album where album = $r[id] and photo = id;");
+								$r_photos = mysqli_fetch_array($q_photos);
+								echo("$r_photos[cnt] fotos.<br/>");
+								echo("Por $r_user[username]<br/>");
+								echo("<br/>P&uacute;blico: ");
+                                                                if ($r['open'] == 1)
+                                                                        echo("S&iacute;");
+                                                                else
+                                                                        echo("No");
+
+								echo("</td>\n<td class='gallery_column_translations'>\nEuskera: ");
+								if (strlen($r['description_eu']) == 0 || $r['description_eu'] == $r['description_es'])
+									echo("No");
+								else
+									echo("S&iacute;");
+								echo("<br/>Ingl&eacute;s: ");
+									if (strlen($r['description_en']) == 0 || $r['description_en'] == $r['description_es'])
+									echo("No");
+								else
+									echo("S&iacute;");
+								echo("\n</td>\n<td class='album_column_action'>\n<form action='/album/edit/edit.php?p=$r[id]'>\n<input type='submit' value='Editar / Traducir'/>\n</form>\n");
+								echo("<input type='button' onClick='delete_album($r[id], \"$r[title_es]\");' value='Borrar'/>");
+								echo("<form action='/album/moderate/moderate.php?p=$r[id]'>\n<input type='submit' value='Moderar comentarios'/>\n</form>");
+								echo("</td>\n</tr>");
+							}
+							
+						?>
+					</table>
+				</div>
+			</div>
+		</div>
 	</body>
-</html>
+</html>
+<?php } ?>

+ 1 - 0
www-admin/index.php

@@ -21,6 +21,7 @@
 	</head>
 	<body>
 		<div class='section'>
+			<h3 class='section_title'>Credenciales</h3>
 			<div class='entry'>
 				<form method='post' action='/login.php'>
 					<table>

+ 34 - 17
www-admin/lablanca/index.php

@@ -31,13 +31,27 @@
 		<?php include('../toolbar.php'); ?>
 		<div id='content'>
 			<div class='section' id='section_header'>
-				<h4>Paso 1: Cabecera de la p&aacute;gina de fiestas</h4>
+				<h3 class='section_title'>Paso 1: Cabecera de la p&aacute;gina de fiestas</h3>
 				<div class='entry status' id='status_header'>
 					...calculando...
 				</div>
 				<div class='entry' id='entry_header'>
-					<div class='header_text'>
-						Texto castellano:
+					<div id="lang_tabs">
+						<table>
+								<tr>
+									<td class="pointer lang_tabs_active" id="lang_tab_es" onclick="showLanguage('es');">
+										Castellano
+									</td>
+									<td class="pointer" id="lang_tab_eu" onclick="showLanguage('eu');">
+										Euskera
+									</td>
+									<td class="pointer" id="lang_tab_en" onclick="showLanguage('en');">
+										Ingl&eacute;s
+									</td>
+								</tr>
+						</table>
+					</div>
+					<div id="content_lang_es" class="festival_add_language">
 						<?php
 							$q = mysqli_query($con, "SELECT * FROM festival WHERE year = $year;");
 							$r = mysqli_fetch_array($q);
@@ -47,8 +61,7 @@
 							CKEDITOR.replace('text_es');
 						</script>
 					</div>
-					<div class='header_text'>
-						Texto ingl&eacute;s:
+					<div id="content_lang_en" class="festival_add_language" style="display:none;">
 						<?php
 							echo "<textarea id='text_en' onChange='updateField(\"festival\", \"text_en\", this.value, $r[id]);calculate(\"header\");'>$r[text_en]</textarea>\n";
 						?>
@@ -56,8 +69,7 @@
 							CKEDITOR.replace('text_en');
 						</script>
 					</div>
-					<div class='header_text'>
-						Texto euskera:
+					<div id="content_lang_eu" class="festival_add_language" style="display:none;">
 						<?php
 							echo "<textarea id='text_eu' onChange='updateField(\"festival\", \"text_eu\", this.value, $r[id]);calculate(\"header\");'>$r[text_eu]</textarea>\n";
 						?>
@@ -84,8 +96,9 @@
 					</div>
 				</div>
 			</div>
+			<br/><br/>
 			<div class='section' id='section_prices'>
-				<h4>Paso 2: Seleccionar precios:</h4>
+				<h3 class="section_title">Paso 2: Seleccionar precios:</h4>
 				<div class='entry status' id='status_prices'>
 					...calculando...
 				</div>
@@ -99,7 +112,7 @@
 						else{
 							echo "<h4>D&iacute;as sueltos:</h4>";
 							echo "<table id='prices'><tr><th>Fecha</th>";
-							echo "<th>Nombre<br/>castellano</th><th>Nombre<br/>ingl&eacute;s</th><th>Nombre<br/>euskera</th>";
+							echo "<th>Nombres</th>";
 							echo "<th>Precio</th></tr>\n";
 							$dates = ["25 Jul", "5 Ago", "6 Ago", "7 Ago", "8 Ago", "9 Ago"];
 							$i = 0;
@@ -117,11 +130,13 @@
 								else{
 									$eu = $r['name_eu'];
 								}
-								echo "</td>\n";
-								echo "<td><input type='text' value='$r[name_es]' onchange='updateField(\"festival_day\", \"name_es\", this.value, $r[id]);'/></td>\n";
-								echo "<td><input type='text' value='$en' onchange='updateField(\"festival_day\", \"name_en\", this.value, $r[id]);'/></td>\n";
-								echo "<td><input type='text' value='$eu' onchange='updateField(\"festival_day\", \"name_eu\", this.value, $r[id]);'/></td>\n";
-								echo "<td><input type='number' value='$r[price]' onchange='updateField(\"festival_day\", \"price\", this.value, $r[id], \"number\", false);'/>&euro;</td></tr>";
+								echo "</td><td>\n";
+								echo("<table>\n");
+								echo("<tr><td>Castellano:</td><td><input type='text' value='$r[name_es]' onchange='updateField(\"festival_day\", \"name_es\", this.value, $r[id]);'/></td></tr>\n");
+								echo("<tr><td>Euskera:</td><td><input type='text' value='$r[name_en]' onchange='updateField(\"festival_day\", \"name_en\", this.value, $r[id]);'/></td></tr>\n");
+								echo("<tr><td>Ingl&eacute;s:</td><td><input type='text' value='$r[name_eu]' onchange='updateField(\"festival_day\", \"name_eu\", this.value, $r[id]);'/></td></tr>\n");
+								echo("</table>\n");
+								echo "</td>\n<td>\n<input type='number' value='$r[price]' onchange='updateField(\"festival_day\", \"price\", this.value, $r[id], \"number\", false);'/>&euro;</td></tr>";
 								$i = $i + 1;
 							}
 							echo "</table>\n";
@@ -132,14 +147,14 @@
 					?>
 				</div>
 			</div>
-		
+			<br/><br/>
 			<div class='section' id='section_schedule'>
-				<h4>Paso 3: Establecer programa:</h4>
+				<h3 class='section_title'>Paso 3: Establecer programa:</h4>
 				<div class='entry status' id='status_schedule'>
 					...calculando...
 				</div>
 				<div class='entry entry_schedule' id='entry_schedule_25'>
-					<h4><img src='/img/misc/slid-right.png' onClick='expandSchedule(25);'/>25 de julio</h4>
+					<h3><img src='/img/misc/slid-right.png' onClick='expandSchedule(25);'/>25 de julio</h4>
 					<div id='list_schedule_25' class='list_schedule'>
 					</div>
 					Nuevo: 
@@ -203,6 +218,7 @@
 					</table>
 				</div>
 			</div>
+			<br/><br/>
 		</div>
 		<div id='screen_cover'></div>
 		<div id='form_new_offer' class='section'>
@@ -239,6 +255,7 @@
 				</div>
 			</div>
 		</div>
+		
 	</body>
 </html>
 <?php } ?>

+ 7 - 11
www-admin/main.php

@@ -30,26 +30,22 @@
 				<div class='section_row'>
 					<div class='section_cell'>
 						<div class='section'>
-							<h3>Blog</h3>
+							<h3 class='section_title'>Blog</h3>
 							<div class='entry'>
 								<ul>
 									<li><a href='/blog/add/'>Nuevo post</a></li>
 									<li><a href='/blog/'>Gestionar posts</a></li>
-									<li><a href='/blog/moderate/'>Moderar comentarios</a></li>
-									<li><a href='/blog/translate/'>Traducir posts</a></li>
 								</ul>
 							</div>
 						</div>
 					</div>
 					<div class='section_cell'>
 						<div class='section'>
-							<h3>Actividades</h3>
+							<h3 class='section_title'>Actividades</h3>
 							<div class='entry'>
 								<ul>
 									<li><a href='/actividades/add/'>Nueva actividad</a></li>
 									<li><a href='/actividades/'>Gestionar actividades</a></li>
-									<li><a href='/actividades/moderate/'>Moderar comentarios</a></li>
-									<li><a href='/actividades/translate/'>Traducir actividades</a></li>
 								</ul>
 							</div>
 						</div>
@@ -58,7 +54,7 @@
 				<div class='section_row'>
 					<div class='section_cell'>
 						<div class='section'>
-							<h3>Galeria</h3>
+							<h3 class='section_title'>Galeria</h3>
 							<div class='entry'>
 								<ul>
 									<li><a href='/galeria/add/'>Crear album</a></li>
@@ -72,7 +68,7 @@
 					</div>
 					<div class='section_cell'>
 						<div class='section'>
-							<h3>Fiestas</h3>
+							<h3 class='section_title'>Fiestas</h3>
 							<div class='entry'>
 								<ul>
 									<li><a href='/lablanca/'>Preparar las fiestas</a></li>
@@ -86,7 +82,7 @@
 				<div class='section_row'>
 					<div class='section_cell'>
 						<div class='section'>
-							<h3>Miembros</h3>
+							<h3 class='section_title'>Miembros</h3>
 							<div class='entry'>
 								<ul>
 									<li><a href='/miembros/'>Consultar y buscar</a></li>
@@ -98,7 +94,7 @@
 					</div>
 					<div class='section_cell'>
 						<div class='section'>
-							<h3>Estadisticas</h3>
+							<h3 class='section_title'>Estadisticas</h3>
 							<div class='entry'>
 								<ul>
 									<li><a href='/estadisticas/web.php'>Estadisticas Web</a></li>
@@ -112,7 +108,7 @@
 				<div class='section_row'>
 					<div class='section_cell'>
 						<div class='section'>
-							<h3>Ajustes</h3>
+							<h3 class='section_title'>Ajustes</h3>
 							<div class='entry'>
 								<ul>
 									<li><a href=''>Cambiar ajustes</a></li>

+ 31 - 1
www-admin/script/ui.js

@@ -14,4 +14,34 @@ function showToolbar(toolbar, from){
 		document.getElementById('toolbar_' + toolbar).style.display = 'block';
 		from.style.backgroundColor = '#333333';
 	}
-}
+}
+
+
+function showLanguage(lang){
+	switch (lang){
+		case 'es':
+			document.getElementById('content_lang_es').style.display = 'block';
+			document.getElementById('content_lang_eu').style.display = 'none';
+			document.getElementById('content_lang_en').style.display = 'none';
+			document.getElementById('lang_tab_es').classList.add("lang_tabs_active");
+			document.getElementById('lang_tab_eu').classList.remove("lang_tabs_active");
+			document.getElementById('lang_tab_en').classList.remove("lang_tabs_active");
+			break;
+		case 'eu':
+                        document.getElementById('content_lang_es').style.display = 'none';
+                        document.getElementById('content_lang_eu').style.display = 'block';
+                        document.getElementById('content_lang_en').style.display = 'none';
+                        document.getElementById('lang_tab_es').classList.remove("lang_tabs_active");
+                        document.getElementById('lang_tab_eu').classList.add("lang_tabs_active");
+                        document.getElementById('lang_tab_en').classList.remove("lang_tabs_active");
+                        break;
+		case 'en':
+                        document.getElementById('content_lang_es').style.display = 'none';
+                        document.getElementById('content_lang_eu').style.display = 'none';
+                        document.getElementById('content_lang_en').style.display = 'block';
+                        document.getElementById('lang_tab_es').classList.remove("lang_tabs_active");
+                        document.getElementById('lang_tab_eu').classList.remove("lang_tabs_active");
+                        document.getElementById('lang_tab_en').classList.add("lang_tabs_active");
+	}
+}
+

+ 0 - 12
www-admin/toolbar.php

@@ -40,12 +40,6 @@
 			<td>
 				<a href="http://<?php echo $http_host; ?>/blog/">Gestionar posts</a>
 			</td>
-			<td>
-				<a href="http://<?php echo $http_host; ?>/blog/moderate/">Moderar comentarios</a>
-			</td>
-			<td>
-				<a href="http://<?php echo $http_host; ?>/blog/translate/">Traducir posts</a>
-			</td>
 		</tr>
 	</table>
 </div>
@@ -58,12 +52,6 @@
 			<td>
 				<a href="http://<?php echo $http_host; ?>/actividades/">Gestionar actividades</a>
 			</td>
-			<td>
-				<a href="http://<?php echo $http_host; ?>/actividades/moderate/">Moderar comentarios</a>
-			</td>
-			<td>
-				<a href="http://<?php echo $http_host; ?>/actividades/translate/">Traducir actividades</a>
-			</td>
 		</tr>
 	</table>
 </div>

+ 7 - 0
www/.htaccess

@@ -30,6 +30,8 @@ RewriteRule ^blog/([0-9]+)/$ /blog/index.php?o=$1 [NC]
 
 RewriteRule ^lablanca/([0-9]+)$ /lablanca/index.php?year=$1 [NC]
 
+RewriteRule ^archivo/([A-Z\-a-z0-9]{3,}+)$ /archivo/index.php?file=$1 [NC]
+RewriteRule ^archivo/([A-Z\-a-z0-9]{3,}+)/$ /archivo/index.php?file=$1 [NC]
 
 RewriteRule ^actividades/search/([A-Za-z0-9]+)/([A-Za-z0-9]+)$ /actividades/buscar.php?where=$1&query=$2 [NC]
 RewriteRule ^actividades/search/([A-Za-z0-9]+)/([A-Za-z0-9]+)/$ /actividades/buscar.php?where=$1&query=$2 [NC]
@@ -53,6 +55,10 @@ RewriteRule ^galeria/([A-Z\-a-z0-9{3,}]+)/([A-Z\-a-z0-9{3,}]+)/$ /galeria/photo.
 RewriteRule ^API/V([{0-9}]+)/help/([A-Z\-a-z0-9{3,}]+)$ /API/V$1/help/$2.php [NC,QSA,L]
 RewriteRule ^API/V([{0-9}]+)/help/([A-Z\-a-z0-9{3,}]+)/$ /API/V$1/help/$2.php [L,NC]
 
+#Force https TODO
+RewriteCond %{HTTPS} !=on
+RewriteRule ^/?(.*) https://%{SERVER_NAME}/$1 [R,L]
+
 # BEGIN Cache-Control Headers
 <IfModule mod_expires.c>
 	ExpiresActive on
@@ -102,3 +108,4 @@ RewriteRule ^API/V([{0-9}]+)/help/([A-Z\-a-z0-9{3,}]+)/$ /API/V$1/help/$2.php [L
 #MCacheSize 1024
 
 #CacheFile footer.php toolbar.php img/*/* project/*/render/* project/*/render/*/preview/* project/*/render/*/miniature/*
+

+ 311 - 1
www/API/v1/comment.php

@@ -1 +1,311 @@
- 
+<?php
+	// Gasteizko Margolariak API v1 //
+	
+	//Posible comment target
+	define('TARGET_PHOTO', 'photo');
+	define('TARGET_POST', 'post');
+	define('TARGET_ACTIVITY', 'activity');
+	
+	//Default target
+	define('DEF_TARGET', TARGET_ALL);
+		
+	//$_GET valid parameters
+	define('GET_CLIENT', 'client');
+	define('GET_USER', 'user');
+	define('GET_TARGET', 'target');
+	define('GET_ID', 'id');
+	define('GET_PERMALINK', 'permalink');
+	define('GET_TEXT', 'text');
+	define('GET_USERNAME', 'username');
+	
+	/****************************************************
+	* This function is called from almost everywhere at *
+	* the beggining of the page. It initializes the     *
+	* session variables, connect to the db, enabling    *
+	* the variable $con for futher use everywhere in    *
+	* the php code, and populates the arrays $user      *
+	* and $permission, with info about the user.        *
+	*                                                   *
+	* @return: (db connection): The connection handler. *
+	****************************************************/
+	function startdb(){
+		//Include the db configuration file. It's somehow like this
+		/*
+		<?php
+			$host = 'XXXX';
+			$db_name = 'XXXX';
+			$username_ro = 'XXXX';
+			$username_rw = 'XXXX';
+			$pass_ro = 'XXXX';
+			$pass_rw = 'XXXX';
+		?>
+		*/
+		include('../../.htpasswd');
+		
+		//Connect to to database
+		$con = mysqli_connect($host, $username_rw, $pass_rw, $db_name);
+		
+		//Set encoding options
+		mysqli_set_charset($con, 'utf-8');
+		header('Content-Type: text/html; charset=utf8');
+		mysqli_query($con, 'SET NAMES utf8;');
+		
+		//Return the db connection
+		return $con;
+	}
+	
+	//Connect to the database
+	$con = startdb('rw');
+	
+	//Get data from URL
+	$client = mysqli_real_escape_string($con, $_GET[GET_CLIENT]);
+	$user = mysqli_real_escape_string($con, $_GET[GET_USER]);
+	$target = strtolower(mysqli_real_escape_string($con, $_GET[GET_TARGET]));
+	$id = strtolower(mysqli_real_escape_string($con, $_GET[GET_ID]));
+	$permalink = strtolower(mysqli_real_escape_string($con, $_GET[GET_PERMALINK]));
+	$ink = strtolower(mysqli_real_escape_string($con, $_GET[GET_PERMALINK]));
+	$permalink = strtolower(mysqli_real_escape_string($con, $_GET[GET_PERMALINK]));
+	$username = mysqli_real_escape_string($con, $_GET[GET_USERNAME]);
+	$text = mysqli_real_escape_string($con, $_GET[GET_TEXT]);
+	
+	//Validate data
+	if (strlen($client) < 1){
+		//Bad request
+		http_response_code(400);
+		exit();
+	}
+	if (strlen($user) < 1){
+		$user = '';
+	}
+	if (strlen($target) < 1){
+		//Bad request
+		http_response_code(400);
+		exit();
+	}
+	if ($target != TARGET_PHOTO && $target != TARGET_POST && $target != TARGET_ACTIVITY){
+		//Bad request
+		http_response_code(400);
+		exit();
+	}
+	if (strlen($username) < 1){
+		//Bad request
+		http_response_code(400);
+		exit();
+	}
+	
+	
+	//Check id and/or permalink. Several cases:
+	
+	//1st case: id and permalink empty: Error.
+	if (strlen($id) < 1 && strlen($permalink) < 1){
+		//Bad request
+		http_response_code(400);
+		exit();
+	}
+	
+	//2nd case: Comment for post, permalink and no id.
+	elseif ($target == TARGET_POST && strlen($id) < 1 && strlen($permalink) >= 1){
+	
+		//Check if post exists...
+		$q = mysqli_query($con, "SELECT id, comments FROM post WHERE visible = 1 AND permalink = '$permalink';");
+		if (mysqli_num_rows($q) == 0){
+			//Bad request
+			http_response_code(400);
+			exit();
+		}
+		else{
+		
+			//... and if it does, check if can be commented.
+			$r = mysqli_fetch_array($q);
+			$item_id = $r['id'];
+			if ($r['comments'] != 1){
+				//'Forbidden' status code
+				http_response_code(403);
+				exit();
+			}
+		}
+	}
+	
+	//3rd case: Comment for post, id and no permalink.
+	elseif ($target == TARGET_POST && strlen($id) >= 1 && strlen($permalink) < 1){
+	
+		//Check if post exists...
+		$q = mysqli_query($con, "SELECT id, comments FROM post WHERE visible = 1 AND id = $id;");
+		if (mysqli_num_rows($q) == 0){
+			//Bad request
+			http_response_code(400);
+			exit();
+		}
+		else{
+		
+			//... and if it does, check if can be commented.
+			$r = mysqli_fetch_array($q);
+			$item_id = $r['id'];
+			if ($r['comments'] != 1){
+				//'Forbidden' status code
+				http_response_code(403);
+				exit();
+			}
+		}
+	}
+	
+	//4th case: Comment for post, permalink and id.
+	elseif ($target == TARGET_POST && strlen($id) >= 1 && strlen($permalink) >= 1){
+	
+		//Check if post exists...
+		$q = mysqli_query($con, "SELECT id, comments FROM post WHERE visible = 1 AND permalink = '$permalink' AND id = $id ;");
+		if (mysqli_num_rows($q) == 0){
+			//Bad request
+			http_response_code(400);
+			exit();
+		}
+		else{
+		
+			//... and if it does, check if can be commented.
+			$r = mysqli_fetch_array($q);
+			$item_id = $r['id'];
+			if ($r['comments'] != 1){
+				//'Forbidden' status code
+				http_response_code(403);
+				exit();
+			}
+		}
+	}
+	
+	//5th case: Comment for photo, permalink and no id.
+	elseif ($target == TARGET_PHOTO && strlen($id) < 1 && strlen($permalink) >= 1){
+	
+		//Check if photo exists.
+		$q = mysqli_query($con, "SELECT id FROM photo WHERE approved = 1 AND permalink = '$permalink';");
+		if (mysqli_num_rows($q) == 0){
+			//Bad request
+			http_response_code(400);
+			exit();
+		}
+		else{
+			$item_id = $r['id'];
+		}
+	}
+	
+	//6th case: Comment for photo, id and no permalink.
+	elseif ($target == TARGET_PHOTO && strlen($id) >= 1 && strlen($permalink) < 1){
+	
+		//Check if photo exists.
+		$q = mysqli_query($con, "SELECT id FROM photo WHERE approved = 1 AND id = $id;");
+		if (mysqli_num_rows($q) == 0){
+			//Bad request
+			http_response_code(400);
+			exit();
+		}
+		else{
+			$item_id = $r['id'];
+		}
+	}
+	
+	//7th case: Comment for photo, permalink and id.
+	elseif ($target == TARGET_PHOTO && strlen($id) >= 1 && strlen($permalink) >= 1){
+	
+		//Check if photo exists.
+		$q = mysqli_query($con, "SELECT id FROM photo WHERE approved = 1 AND permalink = '$permalink' AND id = $id;");
+		if (mysqli_num_rows($q) == 0){
+			//Bad request
+			http_response_code(400);
+			exit();
+		}
+		else{
+			$item_id = $r['id'];
+		}
+	}
+	
+	//8nd case: Comment for activity, permalink and no id.
+	elseif ($target == TARGET_ACTIVITY && strlen($id) < 1 && strlen($permalink) >= 1){
+	
+		//Check if activity exists...
+		$q = mysqli_query($con, "SELECT id, comments FROM activity WHERE visible = 1 AND permalink = '$permalink';");
+		if (mysqli_num_rows($q) == 0){
+			//Bad request
+			http_response_code(400);
+			exit();
+		}
+		else{
+		
+			//... and if it does, check if can be commented.
+			$r = mysqli_fetch_array($q);
+			$item_id = $r['id'];
+			if ($r['comments'] != 1){
+				//'Forbidden' status code
+				http_response_code(403);
+				exit();
+			}
+		}
+	}
+	
+	//9rd case: Comment for activity, id and no permalink.
+	elseif ($target == TARGET_ACTIVITY && strlen($id) >= 1 && strlen($permalink) < 1){
+	
+		//Check if activity exists...
+		$q = mysqli_query($con, "SELECT id, comments FROM activity WHERE visible = 1 AND id = $id;");
+		if (mysqli_num_rows($q) == 0){
+			//Bad request
+			http_response_code(400);
+			exit();
+		}
+		else{
+		
+			//... and if it does, check if can be commented.
+			$r = mysqli_fetch_array($q);
+			$item_id = $r['id'];
+			if ($r['comments'] != 1){
+				//'Forbidden' status code
+				http_response_code(403);
+				exit();
+			}
+		}
+	}
+	
+	//10th case: Comment for activity, permalink and id.
+	elseif ($target == TARGET_ACTIVITY && strlen($id) >= 1 && strlen($permalink) >= 1){
+	
+		//Check if activity exists...
+		$q = mysqli_query($con, "SELECT id, comments FROM activity WHERE visible = 1 AND permalink = '$permalink' AND id = $id ;");
+		if (mysqli_num_rows($q) == 0){
+			//Bad request
+			http_response_code(400);
+			exit();
+		}
+		else{
+		
+			//... and if it does, check if can be commented.
+			$r = mysqli_fetch_array($q);
+			$item_id = $r['id'];
+			if ($r['comments'] != 1){
+				//'Forbidden' status code
+				http_response_code(403);
+				exit();
+			}
+		}
+	}
+	
+	//If code gets here, there were no errors. Build query.
+	$query = "INSERT INTO ";
+	$section = "";
+	switch ($target){
+		case TARGET_POST:
+			$query = $query . "post_comment (post";
+			$section = "blog";
+			break;
+		case TARGET_PHOTO:
+			$query = $query . "photo_comment (photo";
+			$section = "gallery";
+			break;
+		case TARGET_ACTIVITY:
+			$query = $query . "activity_comment (activity";
+			$section = "activity";
+			break;
+	}
+	$query = $query . ", text, username, app) VALUES ($item_id, \"$text\", \"$username\", \"client\");";
+	//echo($query);
+	mysqli_query($con, $query);
+	mysqli_query($con, "UPDATE version SET version = version + 1 WHERE section = '$section';");
+
+?>

+ 82 - 0
www/API/v1/location.php

@@ -0,0 +1,82 @@
+<?php
+	// Gasteizko Margolariak API v1 //
+		
+	//List of available data formatting
+	define('FOR_JSON', 'json');
+	
+	//Default info format
+	define('DEF_FORMAT', FOR_JSON);
+	
+	//Errors
+	define('ERR_FORMAT', '-FORMAT:');
+	
+	/****************************************************
+	* This function is called from almost everywhere at *
+	* the beggining of the page. It initializes the     *
+	* session variables, connect to the db, enabling    *
+	* the variable $con for futher use everywhere in    *
+	* the php code, and populates the arrays $user      *
+	* and $permission, with info about the user.        *
+	*                                                   *
+	* @return: (db connection): The connection handler. *
+	****************************************************/
+	function startdb(){
+		//Include the db configuration file. It's somehow like this
+		/*
+		<?php
+			$host = 'XXXX';
+			$db_name = 'XXXX';
+			$username_ro = 'XXXX';
+			$username_rw = 'XXXX';
+			$pass_ro = 'XXXX';
+			$pass_rw = 'XXXX';
+		?>
+		*/
+		include('../../.htpasswd');
+		
+		//Connect to to database
+		$con = mysqli_connect($host, $username_rw, $pass_rw, $db_name);
+		
+		//Set encoding options
+		mysqli_set_charset($con, 'utf-8');
+		header('Content-Type: text/html; charset=utf8');
+		mysqli_query($con, 'SET NAMES utf8;');
+		
+		//Return the db connection
+		return $con;
+	}
+	
+	//Connect to the database
+	$con = startdb('rw');
+	
+	//Get data from the url
+	$format = strtolower(mysqli_real_escape_string($con, $_GET[GET_FORMAT]));
+	
+	//Validate input
+	if (strlen($format) < 1){
+		$format = DEF_FORMAT;
+	}
+	if ($format != FOR_JSON){
+		//Bad request
+		http_response_code(400);
+		$error = $error . ERR_FORMAT . mysqli_real_escape_string($con, $_GET[GET_FORMAT]);
+	}
+	
+	//Get location
+	$q = mysqli_query($con, "SELECT lat, lon, dtime FROM location WHERE action = 'report' AND dtime > NOW() - INTERVAL 30 MINUTE ORDER BY dtime DESC LIMIT 1;");
+	if (mysqli_num_rows($q) > 0){
+		$r = mysqli_fetch_array($q);
+		switch ($format){
+			case FOR_JSON:
+				echo("[{\"lat\":\"$r[lat]\",\"lon\":\"$r[lon]\",\"dtime\":\"$r[dtime]\"}]");
+				break;
+			default:
+				http_response_code(400);
+			$error = $error . ERR_FORMAT . mysqli_real_escape_string($con, $_GET[GET_FORMAT]);
+		}
+	}
+	else{
+		//No content
+		http_response_code(204);
+	}
+?>

+ 7 - 4
www/API/v1/sync.php

@@ -151,7 +151,7 @@
 				$tables = [ 'festival', 'festival_day', 'festival_event', 'festival_event_image', 'festival_offer', 'place', 'people' ];
 				break;
 			case SEC_ALL:
-				$tables = [ 'activity', 'activity_itinerary', 'activity_comment', 'activity_image', 'activity_tag', 'album', 'photo', 'festival', 'festival_day', 'festival_event', 'festival_event_image', 'festival_offer', 'photo_album', 'place', 'post', 'post_comment', 'post_image', 'post_tag', 'settings', 'sponsor' ];
+				$tables = [ 'activity', 'activity_itinerary', 'activity_comment', 'activity_image', 'activity_tag', 'album', 'photo', 'festival', 'festival_day', 'festival_event', 'festival_event_image', 'festival_offer', 'photo_album', 'place', 'people', 'post', 'post_comment', 'post_image', 'post_tag', 'settings', 'sponsor' ];
 				break;
 			default:
 				//'Bad request' staus code
@@ -202,7 +202,7 @@
 				$q = mysqli_query($con, "SELECT id, permalink, date, city, title_es, title_en, title_eu, text_es, text_eu, text_en, after_es, after_en, after_eu, price, inscription, max_people, album FROM activity WHERE visible = 1;");
 				break;
 			case "activity_comment":
-				$q = mysqli_query($con, "SELECT activity_comment.id AS id, activity, text, dtime, CONCAT(user.username, user) AS user, lang FROM activity_comment, user WHERE activity_comment.user = user.id AND approved = 1;");
+				$q = mysqli_query($con, "SELECT id, activity, text, dtime, username, lang FROM activity_comment WHERE approved = 1;");
 				break;
 			case "album":
 				$q = mysqli_query($con, "SELECT id, permalink, title_es, title_en, title_eu, description_es, description_en, description_eu, open FROM album;");
@@ -214,7 +214,10 @@
 				$q = mysqli_query($con, "SELECT post.id AS id, permalink, title_es, title_en, title_eu, text_es, text_en, text_eu, comments, username, dtime FROM post, user WHERE user.id = user AND visible = 1;");
 				break;
 			case "post_comment":
-				$q = mysqli_query($con, "SELECT post_comment.id AS id, post, text, dtime, CONCAT(user.username, user) AS user, lang FROM post_comment, user WHERE post_comment.user = user.id AND approved = 1;");
+				$q = mysqli_query($con, "SELECT post_comment.id AS id, post, text, dtime, username, lang FROM post_comment WHERE approved = 1;");
+				break;
+			case "photo_comment":
+				$q = mysqli_query($con, "SELECT photo_comment.id AS id, post, text, dtime, username, lang FROM photo_comment WHERE approved = 1;");
 				break;
 			case "sponsor":
 				$q = mysqli_query($con, "SELECT id, name_es, name_en, name_eu, text_es, text_en, text_eu, image, address_es, address_en, address_eu, link, lat, lon FROM sponsor;");
@@ -226,7 +229,7 @@
 			//Other cases: 
 			default:
 				//If the table is a public one and has not been listed above, all of its fields are public.
-				if (in_array($table, ['activity_image', 'activity_itinerary', 'activity_tag', 'festival', 'festival_day', 'festival_event', 'festival_event_image', 'festival_offer', 'photo_album', 'place', 'post_image', 'post_tag'])){
+				if (in_array($table, ['activity_image', 'activity_itinerary', 'activity_tag', 'festival', 'festival_day', 'festival_event', 'festival_event_image', 'festival_offer', 'photo_album', 'place', 'people', 'post_image', 'post_tag'])){
 					$q = mysqli_query($con, "SELECT * FROM $table;");
 				}
 				//If forbidden table

+ 29 - 28
www/actividades/actividad.php

@@ -3,6 +3,7 @@
 	$http_host = $_SERVER['HTTP_HOST'];
 	include("../functions.php");
 	$con = startdb();
+	$proto = getProtocol();
 	
 	//Language
 	$lang = selectLanguage();
@@ -14,7 +15,7 @@
 	$perm = mysqli_real_escape_string($con, $_GET['perm']);
 	$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;");
 	if (mysqli_num_rows($q) == 0){
-		header("Location: http://$http_host/actividades/");
+		header("Location: $proto$http_host/actividades/");
 		exit(-1);
 	}
 	$r = mysqli_fetch_array($q);
@@ -26,7 +27,7 @@
 		<meta content="text/html; charset=windows-1252" http-equiv="content-type"/>
 		<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1">
 		<title><?php echo $r["title"] . " - Gasteizko Margolariak"; ?></title>
-		<link rel="shortcut icon" href="<?php echo "http://$http_host/img/logo/favicon.ico";?>">
+		<link rel="shortcut icon" href="<?php echo "$proto$http_host/img/logo/favicon.ico";?>">
 		<!-- CSS files -->
 		<style>
 			<?php 
@@ -49,20 +50,20 @@
 			?>
 		</script>
 		<!-- Meta tags -->
-		<link rel="canonical" href="<?php echo "http://$http_host/actividades/" . $r['permalink']; ?>"/>
-		<link rel="author" href="<?php echo "http://$http_host"; ?>"/>
-		<link rel="publisher" href="<?php echo "http://$http_host"; ?>"/>
+		<link rel="canonical" href="<?php echo "$proto$http_host/actividades/" . $r['permalink']; ?>"/>
+		<link rel="author" href="<?php echo "$proto$http_host"; ?>"/>
+		<link rel="publisher" href="<?php echo "$proto$http_host"; ?>"/>
 		<meta name="description" content="<?php echo strip_tags($r["text"]);?>"/>
 		<meta property="og:title" content="<?php echo $r["title"] . " - Gasteizko Margolariak"; ?>"/>
-		<meta property="og:url" content="<?php echo "http://$http_host/actividades/" . $r['permalink']; ?>"/>
+		<meta property="og:url" content="<?php echo "$proto$http_host/actividades/" . $r['permalink']; ?>"/>
 		<meta property="og:description" content="<?php echo strip_tags($r["text"]);?>"/>
 		<?php
 			$q_i = mysqli_query($con, "SELECT image FROM activity_image WHERE activity = $id ORDER BY idx;");
 			if (mysqli_num_rows($q_i) == 0)
-				$img = "http://$http_host/img/logo/cover.png";
+				$img = "$proto$http_host/img/logo/cover.png";
 			else{
 				$r_i = mysqli_fetch_array($q_i);
-				$img = "http://$http_host/img/actividades/preview/" . $r_i['image'];
+				$img = "$proto$http_host/img/actividades/preview/" . $r_i['image'];
 			}
 		?>
 		<meta property="og:image" content="<?php echo $img;?>"/>
@@ -85,7 +86,7 @@
 		<meta name="twitter:title" content="<?php echo $r["title"] . " - Gasteizko Margolariak";?>"/>
 		<meta name="twitter:description" content="<?php echo strip_tags($r["text"]);?>"/>
 		<meta name="twitter:image" content="<?php echo $img;?>"/>
-		<meta name="twitter:url" content="<?php echo "http://$http_host/actividades/$r[permalink]"; ?>"/>
+		<meta name="twitter:url" content="<?php echo "$proto$http_host/actividades/$r[permalink]"; ?>"/>
 		<meta name="robots" content="index follow"/>
 	</head>
 	<body>
@@ -102,12 +103,10 @@
 			?>
 			<div id="middle_column">
 				<div class="section">
-					<h3 class='section_title' id="activity_title"><?php echo($r['title']); ?></h3>
-					<span id="activity_date"><?php echo(formatDate($r['date'], $lang, false)); ?></span>
+					<h3 class='section_title' id="activity_title"><?php echo($r['title']); ?> - <?php echo(formatDate($r['date'], $lang, false)); ?></h3>
 					<div class="entry" itemscope itemtype='http://schema.org/Event'>
 						<?php
-						
-							echo "<meta itemprop='url' href='http://$http_host/actividades/$r[permalink]'/>\n";
+							echo "<meta itemprop='url' href='$proto$http_host/actividades/$r[permalink]'/>\n";
 							echo "<meta itemprop='inLanguage' content='$lang'/>\n";
 							echo "<meta itemprop='name' content='$r[title]'/>\n";
 							echo "<meta itemprop='description' content='$r[text]'/>\n";
@@ -116,15 +115,15 @@
 							echo "<div class='hidden' itemprop='organizer' itemscope itemtype='http://schema.org/Organization'>\n";
 							echo "<meta itemprop='legalName' content='Asociaci&oacute;n Cultural Recreativa Gasteizko Margolariak'/>\n";
 							echo "<meta itemprop='name' content='Gasteizko Margolariak'/>\n";
-							echo "<meta itemprop='logo' content='http://$http_host/img/logo/logo.png'/>\n";
+							echo "<meta itemprop='logo' content='$proto$http_host/img/logo/logo.png'/>\n";
 							echo "<meta itemprop='foundingDate' content='03-02-2013'/>\n";
 							echo "<meta itemprop='telephone' content='+34637140371'/>\n";
-							echo "<meta itemprop='url' content='http://$http_host'/>\n";
+							echo "<meta itemprop='url' content='$proto$http_host'/>\n";
 							echo "</div>\n";
 						
 							if (mysqli_num_rows($q_i) > 0){
-								echo "<meta itemprop='image' content='http://$http_host/img/actividades/$r_i[image]'/>\n";
-								echo "<div id='activity_image'><img src='http://$http_host/img/actividades/preview/$r_i[image]'/></div>\n";
+								echo "<meta itemprop='image' content='$proto$http_host/img/actividades/$r_i[image]'/>\n";
+								echo "<div id='activity_image'><img src='$proto$http_host/img/actividades/preview/$r_i[image]'/></div>\n";
 							}
 							echo "<div id='activity_description'><p>\n";
 							if ($future == false && strlen($r['after']) > 0){
@@ -135,8 +134,9 @@
 							}
 							echo "</p></div></br>\n";
 							if ($future){
-								echo "<div itemscope itemtype='http://schema.org/Offer' id='activity_details'><table id='activity_details'>\n";
-								echo "<tr><td class='field_name'>$lng[activities_date]</td><td>" . formatDate($r['date'], $lang, false) . "</td></tr>\n";
+								echo("<div itemscope itemtype='http://schema.org/Offer' id='activity_details'><table id='activity_details'>\n");
+								echo("<tr><td class='field_name'>$lng[activities_date]</td><td>" . formatDate($r['date'], $lang, false) . "</td></tr>\n");
+								echo("<tr><td class='field_name'>$lng[activities_city]</td><td>$r[city]</td></tr>\n");
 								echo "<meta itemprop='priceCurrency' content='EUR'/><meta itemprop='price' content='$r[price]'/>\n";
 								if ($r['price'] == 0){
 									echo "<tr><td class='field_name'>$lng[activities_price]</td><td>$lng[activities_price_0]</td></tr>\n";
@@ -146,19 +146,20 @@
 									if ($r['max_people'] != 0){
 										echo "<tr><td class='field_name'>$lng[activities_maxpeople]</td><td>$r[max_people]</td></tr>\n";
 									}
-									if ($r['inscription'] == 1){
+									/*if ($r['inscription'] == 1){
 										echo "<tr><td class='field_name'>$lng[activities_inscription]</td><td>$lng[yes]</td></tr>\n";
 									}
 									else{
 										echo "<tr><td class='field_name'>$lng[activities_inscription]</td><td>$lng[no]</td></tr>\n";
-									}
+									}*/
 								}
 								echo "</table></div>\n";
+								echo("</div><br/><div class='entry'>\n");
 								$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;");
 								if (mysqli_num_rows($q_it) > 0){
-									echo "<div id='activity_itinerary'><h4>Itinerario</h4>\n";
+									echo "<div id='activity_itinerary'><h3 class='entry_title'>Itinerario</h3>\n";
 									echo "<table id='activity_itinerary'>\n";
-									echo "<tr><th>$lng[activities_when]</th><th>$lng[activities_what]</th><th>$lng[activities_where]</th></tr>\n";
+									echo "<tr class='th'><th>$lng[activities_when]</th><th>$lng[activities_what]</th><th>$lng[activities_where]</th></tr>\n";
 									while ($r_it = mysqli_fetch_array($q_it)){
 										echo "<tr>\n";
 										echo "<div class='hidden' itemprop='subEvent' itemscope itemtype='http://schema.org/Event'>\n";
@@ -177,12 +178,12 @@
 										else{
 											echo "<td>$r_it[start]</td>";
 										}
-										echo "<td><h5>$r_it[name]</h5>$r_it[description]</td>\n";
+										echo "<td><h5>$r_it[name]</h5><p class='description'>$r_it[description]</p></td>\n";
 										if ($r_it['place_name'] == $r_it['place_address']){
 											echo "<td>$r_it[place_name]</td>\n";
 										}
 										else{
-											echo "<td>$r_it[place_name]<br/>($r_it[place_address])</td>\n";
+											echo "<td>$r_it[place_name]<span class='address'>($r_it[place_address])</span></td>\n";
 										}
 										echo "</tr>\n";
 									}
@@ -201,18 +202,18 @@
 							$res_year = mysqli_query($con, "SELECT year(date) AS year FROM activity WHERE visible = 1 GROUP BY year(date) ORDER BY year DESC;");
 							while($row_year = mysqli_fetch_array($res_year)){
 								echo "<div class='year pointer' onClick=\"toggleElement('year_$row_year[year]');\">";
-								echo("<img class='slid' id='slid_year_$row_year[year]' src='http://$http_host/img/misc/slid-right.png' alt=' '/><span class='fake_a'>$row_year[year]</span>");
+								echo("<img class='slid' id='slid_year_$row_year[year]' src='$proto$http_host/img/misc/slid-right.png' alt=' '/><span class='fake_a'>$row_year[year]</span>");
 								echo "</div>\n";
 								echo "<div class='list_year pointer' id='list_year_$row_year[year]'>\n";
 								$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;");
 								while($row_month = mysqli_fetch_array($res_month)){
 									echo "<div class='month pointer' onClick=\"toggleElement('month_$row_year[year]_$row_month[month]');\">";
-									echo("<img class='slid' id='slid_month_$row_year[year]_$row_month[month]' src='http://$http_host/img/misc/slid-right.png' alt=' '/><span class='fake_a'>" . $lng['months'][$row_month['month'] - 1] . "</span>");
+									echo("<img class='slid' id='slid_month_$row_year[year]_$row_month[month]' src='$proto$http_host/img/misc/slid-right.png' alt=' '/><span class='fake_a'>" . $lng['months'][$row_month['month'] - 1] . "</span>");
 									echo "</div>\n";
 									echo "<ul id='list_month_$row_year[year]_$row_month[month]' class='activity_list'>\n";
 									$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;");
 									while($row_title = mysqli_fetch_array($res_title))
-										echo "<li><a href='http://$http_host/actividades/" . $row_title['permalink']  . "'>$row_title[title]</a></li>\n";
+										echo "<li><a href='$proto$http_host/actividades/" . $row_title['permalink']  . "'>$row_title[title]</a></li>\n";
 									echo "</ul>\n";
 								}
 								echo "</div>\n";

+ 62 - 38
www/actividades/index.php

@@ -3,6 +3,7 @@
 	$http_host = $_SERVER['HTTP_HOST'];
 	include("../functions.php");
 	$con = startdb();
+	$proto = getProtocol();
 	
 	//Language
 	$lang = selectLanguage();
@@ -16,8 +17,8 @@
 		<meta content="text/html; charset=utf-8" http-equiv="content-type"/>
 		<meta charset="utf-8"/>
 		<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1">
-		<title><?php echo $lng['activities_title'];?></title>
-		<link rel="shortcut icon" href="<?php echo "http://$http_host/img/logo/favicon.ico";?>">
+		<title><?php echo $lng['activities_title'];?> - Gasteizko Margolariak</title>
+		<link rel="shortcut icon" href="<?php echo "$proto$http_host/img/logo/favicon.ico";?>">
 		<!-- CSS files -->
 		<style>
 			<?php 
@@ -40,22 +41,22 @@
 			?>
 		</script>
 		<!-- Meta tags -->
-		<link rel="canonical" href="<?php echo "http://$http_host/actividades/"; ?>"/>
-		<link rel="author" href="<?php echo "http://$http_host"; ?>"/>
-		<link rel="publisher" href="<?php echo "http://$http_host"; ?>"/>
+		<link rel="canonical" href="<?php echo "$proto$http_host/actividades/"; ?>"/>
+		<link rel="author" href="<?php echo "$proto$http_host"; ?>"/>
+		<link rel="publisher" href="<?php echo "$proto$http_host"; ?>"/>
 		<meta name="description" content="<?php echo $lng['activities_description'];?>"/>
-		<meta property="og:title" content="<?php echo $lng['activities_title'];?>"/>
-		<meta property="og:url" content="<?php echo "http://$http_host/activities/"; ?>"/>
+		<meta property="og:title" content="<?php echo $lng['activities_title'];?> - Gasteizko Margolariak"/>
+		<meta property="og:url" content="<?php echo "$proto$http_host/activities/"; ?>"/>
 		<meta property="og:description" content="<?php echo $lng['activities_description'];?>"/>
-		<meta property="og:image" content="<?php echo "http://$http_host/img/logo/logo.png";?>"/>
+		<meta property="og:image" content="<?php echo "$proto$http_host/img/logo/logo.png";?>"/>
 		<meta property="og:site_name" content="<?php echo $lng['index_title'];?>"/>
 		<meta property="og:type" content="website"/>
 		<meta property="og:locale" content="<?php echo $lang; ?>"/>
 		<meta name="twitter:card" content="summary"/>
-		<meta name="twitter:title" content="<?php echo $lng['activities_title'];?>"/>
+		<meta name="twitter:title" content="<?php echo $lng['activities_title'];?> - Gasteizko Margolariak"/>
 		<meta name="twitter:description" content="<?php echo $lng['activities_description'];?>"/>
-		<meta name="twitter:image" content="<?php echo "http://$http_host/img/logo/logo.png";?>"/>
-		<meta name="twitter:url" content="<?php echo"http://$http_host"; ?>"/>
+		<meta name="twitter:image" content="<?php echo "$proto$http_host/img/logo/logo.png";?>"/>
+		<meta name="twitter:url" content="<?php echo"$proto$http_host"; ?>"/>
 		<meta name="robots" content="index follow"/>
 	</head>
 	<body>
@@ -73,17 +74,17 @@
 					echo "<meta itemprop='name' content='$r_activity[title]'/>\n";
 					echo "<meta itemprop='description' content='$r_activity[text]'/>\n";
 					echo "<meta itemprop='startDate endDate' content='$r_activity[isodate]'/>\n";
-					echo "<meta itemprop='location' content='$r_activity[city]'/>\n";
+					echo("<span class='hidden' itemprop='location' itemscope itemtype='http://schema.org/Place'><meta itemprop='address' itemprop='name' content='$r_activity[city]'/><meta itemprop='name' content='$r_activity[city]'/></span>\n");
 					echo "<div class='hidden' itemprop='organizer' itemscope itemtype='http://schema.org/Organization'>\n";
 					echo "<meta itemprop='legalName' content='Asociaci&oacute;n Cultural Recreativa Gasteizko Margolariak'/>\n";
 					echo "<meta itemprop='name' content='Gasteizko Margolariak'/>\n";
-					echo "<meta itemprop='logo' content='http://$http_host/img/logo/logo.png'/>\n";
+					echo "<meta itemprop='logo' content='$proto$http_host/img/logo/logo.png'/>\n";
 					echo "<meta itemprop='foundingDate' content='03-02-2013'/>\n";
 					echo "<meta itemprop='telephone' content='+34637140371'/>\n";
-					echo "<meta itemprop='url' content='http://$http_host'/>\n";
+					echo "<meta itemprop='url' content='$proto$http_host'/>\n";
 					echo "</div>\n";
 					echo "<div id='upcoming_text'>\n";
-					echo "<h3><a itemprop='url' href='http://$http_host/actividades/$r_activity[permalink]'>$r_activity[title]</a><span class='title_date'> - " . formatDate($r_activity['date'], $lang, false) . "</span></h3>\n";
+					echo "<h3 class='entry_title'><a itemprop='url' href='$proto$http_host/actividades/$r_activity[permalink]'>$r_activity[title]</a><span class='title_date'> - " . formatDate($r_activity['date'], $lang, false) . "</span></h3>\n";
 					//Table with details
 					echo "<table class='future_details'><tr>\n";
 					//If image, show it
@@ -91,23 +92,23 @@
 					if (mysqli_num_rows($q_activity_image) > 0){
 						$r_activity_image = mysqli_fetch_array($q_activity_image);
 						echo "<td><div id='upcoming_image'>\n";
-						echo "<a href='http://$http_host/actividades/$r_activity[permalink]'>\n";
-						echo "<meta itemprop='image' content='http://$http_host/img/actividades/view/$r_activity_image[image]'/>\n";
-						echo "<img src='http://$http_host/img/actividades/preview/$r_activity_image[image]' alt='$r_activity[title]'/>\n";
+						echo "<a href='$proto$http_host/actividades/$r_activity[permalink]'>\n";
+						echo "<meta itemprop='image' content='$proto$http_host/img/actividades/view/$r_activity_image[image]'/>\n";
+						echo "<img src='$proto$http_host/img/actividades/preview/$r_activity_image[image]' alt='$r_activity[title]'/>\n";
 						echo "</a>\n";
 						echo "</div></td>\n";
 					}
-					echo "<td>\n<table class='future_data'>\n";
-					echo "<tr><td>$lng[activities_date]</td><td>" . formatDate($r_activity['date'], $lang, false) . "</td></tr>\n";
+					echo("<td>\n<table class='future_data'>\n");
+					echo("<tr><td class='title'>$lng[activities_city]</td><td>$r_activity[city]</td></tr>\n");
 					if ($r_activity['price'] == 0){
-						echo "<tr><td>$lng[activities_price]</td><td itemprop='offers' itemscope itemtype='http://schema.org/Offer'>\n";
+						echo "<tr><td class='title'>$lng[activities_price]</td><td itemprop='offers' itemscope itemtype='http://schema.org/Offer'>\n";
 						echo "<meta itemprop='priceCurrency' content='EUR'/><meta itemprop='price' content='0'/>\n";
 						echo "$lng[activities_price_0]</td></tr>\n";
 					}
 					else{
-						echo "<tr><td>$lng[activities_price]</td><td itemprop='offers' itemscope itemtype='http://schema.org/Offer'>\n";
+						echo "<tr><td class='title'>$lng[activities_price]</td><td itemprop='offers' itemscope itemtype='http://schema.org/Offer'>\n";
 						echo "<meta itemprop='priceCurrency' content='EUR'/><meta itemprop='price' content='$r_activity[price]'/>\n";
-						echo "$r_activity[price]€;</td></tr>\n";
+						echo("$r_activity[price]€</td></tr>\n");
 					}
 					if ($r_activity['max_people'] != 0){
 						echo "<tr><td>$lng[activities_maxpeople]</td><td>$r_activity[max_people]</td></tr>\n";
@@ -115,17 +116,18 @@
 					//Show link to schedule (if any)
 					$q_itinerary = mysqli_query($con, "SELECT id FROM activity_itinerary WHERE activity = $r_activity[id];");
 					if (mysqli_num_rows($q_itinerary) > 0){
-						echo "<tr><td></td><td><a href='http://$http_host/actividades/$r_activity[permalink]'>$lng[activities_see_itinerary]</a></td></tr>\n";
+						echo "<tr><td></td><td><a href='$proto$http_host/actividades/$r_activity[permalink]'>$lng[activities_see_itinerary]</a></td></tr>\n";
 					}
 					echo "</table>";
 					echo "</td></tr></table>\n";
-					echo "<p>". cutText($r_activity['text'], 300, "$lng[index_read_more]", "http://$http_host/actividades/$r_activity[permalink]") . "</p>\n";
+					echo "<p>". cutText($r_activity['text'], 300, "$lng[index_read_more]", "$proto$http_host/actividades/$r_activity[permalink]") . "</p>\n";
 					echo "</div>\n";
+					echo "</div>\n"; //Entry
 				}
-				echo "</div>\n";
+
 			}
 			else{ //No upcoming activities
-				echo("<div class='entry'>\n$lng[activities_no_upcoming]\n</div>\n");
+				echo("<div class='entry'><h3 class='entry_title'>\n$lng[activities_no_upcoming]\n</h3></div>\n");
 			}
 			echo "</div>\n";
 				
@@ -136,41 +138,63 @@
 			else{
 				$next_activity_id = $r_activity['id'];
 			}
-			$q_past = mysqli_query($con, "SELECT id, permalink, date, title_$lang AS title, after_$lang AS text, text_$lang AS alt_text, price, inscription, people, max_people, user, dtime, comments FROM activity WHERE id != $next_activity_id AND visible = 1 AND date < now() ORDER BY date DESC;");
+			$q_past = mysqli_query($con, "SELECT id, permalink, date, DATE_FORMAT(date, '%Y-%m-%d') AS isodate, title_$lang AS title, after_$lang AS text, text_$lang AS alt_text, price, inscription, people, max_people, user, dtime, comments, city FROM activity WHERE id != $next_activity_id AND visible = 1 AND date < now() ORDER BY date DESC;");
 			if (mysqli_num_rows($q_past) > 0){
 				echo "<br/><br/><div class='section'>\n";
 				echo "<h3 class='section_title'>$lng[activities_past]</h3>\n";
 				$i = 0;
 				while ($r_past = mysqli_fetch_array($q_past)){
-					echo "<div class='entry past_activity'>\n";
+					echo("<div class='entry past_activity' itemscope itemtype='http://schema.org/Event'>\n");
+					echo("<meta itemprop='inLanguage' content='$lang'/>\n");
+					echo("<meta itemprop='name' content='$r_past[title]'/>\n");
+					echo("<meta itemprop='startDate endDate' content='$r_past[isodate]'/>\n");
+					echo("<span class='hidden' itemprop='location' itemscope itemtype='http://schema.org/Place'><meta itemprop='address' itemprop='name' content='$r_past[city]'/><meta itemprop='name' content='$r_past[city]'/></span>\n");
+					echo("<div class='hidden' itemprop='organizer' itemscope itemtype='http://schema.org/Organization'>\n");
+					echo("<meta itemprop='legalName' content='Asociaci&oacute;n Cultural Recreativa Gasteizko Margolariak'/>\n");
+					echo("<meta itemprop='name' content='Gasteizko Margolariak'/>\n");
+					echo("<meta itemprop='logo' content='$proto$http_host/img/logo/logo.png'/>\n");
+					echo("<meta itemprop='foundingDate' content='03-02-2013'/>\n");
+					echo("<meta itemprop='telephone' content='+34637140371'/>\n");
+					echo("<meta itemprop='url' content='$proto$http_host'/>\n");
+					echo("</div>\n");
 					$q_activity_image = mysqli_query($con, "SELECT image FROM activity_image WHERE activity = $r_past[id] ORDER BY idx LIMIT 1;");
 					if ($i == 0 && mysqli_num_rows($q_upcoming) == 0){
-						echo "<h3><img id='slid_past_activity_$r_past[id]' class='slid' src='/img/misc/slid-down.png' onclick=\"showPastActivity('$r_past[id]')\"/>&nbsp;&nbsp;<a href='http://$http_host/actividades/$r_past[permalink]'>$r_past[title]</a><span class='title_date'> - " . formatDate($r_past['date'], $lang, false) . "</span></h3>\n"; //TODO clickable TODO Slider onClick
-						echo "<div class='past_activity_details past_activity_details_first' id='past_activity_details_$r_past[id]'>\n";
+						echo("<h3 class='entry_title'>");
+						echo("<img id='slid_past_activity_$r_past[id]' class='slid' src='/img/misc/slid-down.png' onclick=\"showPastActivity('$r_past[id]')\"/>&nbsp;&nbsp;\n");
+						echo("<a itemprop='url' href='$proto$http_host/actividades/$r_past[permalink]'>$r_past[title]</a>\n");
+						echo("<span class='title_date'> - " . formatDate($r_past['date'], $lang, false) . "</span>\n");
+						echo("</h3>\n");
+						echo("<div class='past_activity_details past_activity_details_first' id='past_activity_details_$r_past[id]'>\n");
 					}
 					else{
-						echo "<h3><img id='slid_past_activity_$r_past[id]' class='slid' src='/img/misc/slid-right.png' onclick=\"showPastActivity('$r_past[id]')\"/>&nbsp;&nbsp;<a href='http://$http_host/actividades/$r_past[permalink]'>$r_past[title]</a><span class='title_date'> - " . formatDate($r_past['date'], $lang, false) . "</span></h3>\n"; //TODO clickable TODO Slider onClick
-						echo "<div class='past_activity_details' id='past_activity_details_$r_past[id]'>\n";
+						echo("<h3 class='entry_title'>");
+						echo("<img id='slid_past_activity_$r_past[id]' class='slid' src='/img/misc/slid-right.png' onclick=\"showPastActivity('$r_past[id]')\"/>&nbsp;&nbsp;");
+						echo("<a itemprop='url' href='$proto$http_host/actividades/$r_past[permalink]'>$r_past[title]</a>");
+						echo("<span class='title_date'> - " . formatDate($r_past['date'], $lang, false) . "</span>");
+						echo("</h3>\n");
+						echo("<div class='past_activity_details' id='past_activity_details_$r_past[id]'>\n");
 					}
 					$i ++;
 					echo "<table class='past_activity'><tr>\n";
 					if (mysqli_num_rows($q_activity_image) > 0){
 						$r_activity_image = mysqli_fetch_array($q_activity_image);
 						echo "<td><div class='past_image'>\n";
-						echo "<a href='http://$http_host/actividades/$r_past[permalink]'>\n";
-						echo "<img src='http://$http_host/img/actividades/miniature/$r_activity_image[image]' alt='$r_past[title]'/>\n"; 
+						echo "<a href='$proto$http_host/actividades/$r_past[permalink]'>\n";
+						echo("<meta itemprop='image' content='$proto$http_host/img/actividades/view/$r_activity_image[image]'/>\n");
+						echo "<img src='$proto$http_host/img/actividades/miniature/$r_activity_image[image]' alt='$r_past[title]'/>\n"; 
 						echo "</a>\n";
 						echo "</div></td>\n";
 					}
 					echo "<td><div class='past_text'>\n";
 					if (strlen($r_past['text']) > 0){
-						echo "<p>". cutText($r_past['text'], 300, "$lng[index_read_more]", "http://$http_host/actividades/$r_past[permalink]") . "</p>\n";
+						echo("<meta itemprop='description' content='$r_past[text]'/>\n");
+						echo "<p>". cutText($r_past['text'], 300, "$lng[index_read_more]", "$proto$http_host/actividades/$r_past[permalink]") . "</p>\n";
 					}
 					else{
-						echo "<p>". cutText($r_past['alt_text'], 300, "$lng[index_read_more]", "http://$http_host/actividades/$r_past[permalink]") . "</p>\n";
+						echo("<meta itemprop='description' content='$r_past[alt_text]'/>\n");
+						echo "<p>". cutText($r_past['alt_text'], 300, "$lng[index_read_more]", "$proto$http_host/actividades/$r_past[permalink]") . "</p>\n";
 					}
 					echo "</div></td></tr></table>\n";
-					//TODO show footer with price, maxpeople, etc
 					echo "</div>\n"; //past_activity_details
 					echo "</div>\n"; //past_activity
 				}

+ 3 - 0
www/archivo/index.php

@@ -0,0 +1,3 @@
+< 
+	header("Location: /archivo" . $_GET['file']);
+??php>

+ 23 - 12
www/ayuda/index.php

@@ -3,6 +3,7 @@
 	$http_host = $_SERVER['HTTP_HOST'];
 	include("../functions.php");
 	$con = startdb();
+	$proto = getProtocol();
 	
 	//Language
 	$lang = selectLanguage();
@@ -16,8 +17,8 @@
 		<meta content="text/html; charset=utf-8" http-equiv="content-type"/>
 		<meta charset="utf-8"/>
 		<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1">
-		<title><?php echo $lng['us_title'];?></title>
-		<link rel="shortcut icon" href="<?php echo "http://$http_host/img/logo/favicon.ico";?>">
+		<title><?php echo $lng['footer_help'];?> - Gasteizko Margolariak</title>
+		<link rel="shortcut icon" href="<?php echo "$proto$http_host/img/logo/favicon.ico";?>">
 		<!-- CSS files -->
 		<style>
 			<?php 
@@ -39,22 +40,22 @@
 			?>
 		</script>
 		<!-- Meta tags -->
-		<link rel="canonical" href="<?php echo "http://$http_host/us/"; ?>"/>
-		<link rel="author" href="<?php echo "http://$http_host"; ?>"/>
-		<link rel="publisher" href="<?php echo "http://$http_host"; ?>"/>
+		<link rel="canonical" href="<?php echo "$proto$http_host/us/"; ?>"/>
+		<link rel="author" href="<?php echo "$proto$http_host"; ?>"/>
+		<link rel="publisher" href="<?php echo "$proto$http_host"; ?>"/>
 		<meta name="description" content="<?php echo $lng['us_description'];?>"/>
-		<meta property="og:title" content="<?php echo $lng['us_title'];?>"/>
-		<meta property="og:url" content="<?php echo "http://$http_host"; ?>"/>
+		<meta property="og:title" content="<?php echo $lng['us_title'];?> - Gasteizko Margolariak"/>
+		<meta property="og:url" content="<?php echo "$proto$http_host"; ?>"/>
 		<meta property="og:description" content="<?php echo $lng['us_description'];?>"/>
-		<meta property="og:image" content="<?php echo "http://$http_host/img/logo/logo.png";?>"/>
+		<meta property="og:image" content="<?php echo "$proto$http_host/img/logo/logo.png";?>"/>
 		<meta property="og:site_name" content="<?php echo $lng['us_title'];?>"/>
 		<meta property="og:type" content="website"/>
 		<meta property="og:locale" content="<?php echo $lang; ?>"/>
 		<meta name="twitter:card" content="summary"/>
-		<meta name="twitter:title" content="<?php echo $lng['us_title'];?>"/>
+		<meta name="twitter:title" content="<?php echo $lng['us_title'];?> - Gasteizko Margolariak"/>
 		<meta name="twitter:description" content="<?php echo $lng['us_description'];?>"/>
-		<meta name="twitter:image" content="<?php echo "http://$http_host/img/logo/logo.png";?>"/>
-		<meta name="twitter:url" content="<?php echo"http://$http_host"; ?>"/>
+		<meta name="twitter:image" content="<?php echo "$proto$http_host/img/logo/logo.png";?>"/>
+		<meta name="twitter:url" content="<?php echo"$proto$http_host"; ?>"/>
 		<meta name="robots" content="index follow"/>
 	</head>
 	<body>
@@ -122,7 +123,7 @@
 			<div class="content_row">
 				<div class="content_cell">
 					<div class="section" id="section_privacy">
-						<h3><?php echo $lng['help_privacy_title']; ?></h3>
+						<h3 class="section_title"><?php echo $lng['help_privacy_title']; ?></h3>
 						<div class="entry">
 							<?php echo $lng['help_privacy']; ?>
 						</div>
@@ -137,6 +138,16 @@
 					</div>
 				</div>
 			</div>
+			<div class="content_row">
+				<div class="content_cell">
+					<div class="section" id="section_ads">
+						<h3 class="section_title"><?php echo $lng['help_ad_title']; ?></h3>
+						<div class="entry">
+							<?php echo $lng['help_ad']; ?>
+						</div>
+					</div>
+				</div>
+			</div>
 		</div>
 		<?php
 			include("../footer.php");

+ 27 - 28
www/blog/buscar.php

@@ -3,6 +3,7 @@
 	$http_host = $_SERVER['HTTP_HOST'];
 	include("../functions.php");
 	$con = startdb();
+	$proto = getProtocol();
 	
 	//Language
 	$lang = selectLanguage();
@@ -14,7 +15,7 @@
 	$search_field = mysqli_real_escape_string($con, $_GET['where']);
 	$search_term = strtolower(mysqli_real_escape_string($con, $_GET['query']));
 	if ($search_field == '' || $search_term == ''){
-		header("Location: http://$http_host/blog/");
+		header("Location: $proto$http_host/blog/");
 		exit(-1);
 	}
 	
@@ -27,7 +28,7 @@
 			$q = mysqli_query($con, "SELECT id, permalink, title_$lang AS title, text_$lang AS text, DATE_FORMAT(dtime, '%Y-%m-%dT%T') AS isodate, dtime, comments FROM post WHERE id IN (SELECT post FROM post_tag WHERE tag like '$search_term') ORDER BY dtime DESC;");
 			break;
 		default:
-			header("Location: http://$http_host/blog/");
+			header("Location: $proto$http_host/blog/");
 			exit(-1);
 	}
 	
@@ -38,8 +39,8 @@
 		<meta content="text/html; charset=utf-8" http-equiv="content-type"/>
 		<meta charset="utf-8"/>
 		<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1">
-		<title><?php echo $lng['blog_title'];?></title>
-		<link rel="shortcut icon" href="<?php echo "http://$http_host/img/logo/favicon.ico";?>">
+		<title><?php echo $lng['blog_title'];?> - Gasteizko Margolariak</title>
+		<link rel="shortcut icon" href="<?php echo "$proto$http_host/img/logo/favicon.ico";?>">
 		<!-- CSS files -->
 		<style>
 			<?php 
@@ -62,22 +63,22 @@
 			?>
 		</script>
 		<!-- Meta tags -->
-		<link rel="canonical" href="<?php echo "http://$http_host/blog"; ?>"/>
-		<link rel="author" href="<?php echo "http://$http_host"; ?>"/>
-		<link rel="publisher" href="<?php echo "http://$http_host"; ?>"/>
+		<link rel="canonical" href="<?php echo "$proto$http_host/blog"; ?>"/>
+		<link rel="author" href="<?php echo "$proto$http_host"; ?>"/>
+		<link rel="publisher" href="<?php echo "$proto$http_host"; ?>"/>
 		<meta name="description" content="<?php echo $lng['blog_descrption'];?>"/>
-		<meta property="og:title" content="<?php echo $lng['blog_title'];?>"/>
-		<meta property="og:url" content="<?php echo "http://$http_host/blog"; ?>"/>
+		<meta property="og:title" content="<?php echo $lng['blog_title'];?> - Gasteizko Margolariak"/>
+		<meta property="og:url" content="<?php echo "$proto$http_host/blog"; ?>"/>
 		<meta property="og:description" content="<?php echo $lng['blog_description'];?>"/>
-		<meta property="og:image" content="<?php echo "http://$http_host/img/logo/logo.png";?>"/>
+		<meta property="og:image" content="<?php echo "$proto$http_host/img/logo/logo.png";?>"/>
 		<meta property="og:site_name" content="<?php echo $lng['index_title'];?>"/>
 		<meta property="og:type" content="website"/>
 		<meta property="og:locale" content="<?php echo $lang; ?>"/>
 		<meta name="twitter:card" content="summary"/>
-		<meta name="twitter:title" content="<?php echo $lng['blog_title'];?>"/>
+		<meta name="twitter:title" content="<?php echo $lng['blog_title'];?> - Gasteizko Margolariak"/>
 		<meta name="twitter:description" content="<?php echo $lng['blog_description'];?>"/>
-		<meta name="twitter:image" content="<?php echo "http://$http_host/img/logo/logo.png";?>"/>
-		<meta name="twitter:url" content="<?php echo"http://$http_host"; ?>"/>
+		<meta name="twitter:image" content="<?php echo "$proto$http_host/img/logo/logo.png";?>"/>
+		<meta name="twitter:url" content="<?php echo"$proto$http_host"; ?>"/>
 		<meta name="robots" content="no-index no-follow"/>
 	</head>
 	<body>
@@ -86,19 +87,17 @@
 			<?php include("common/leftpanel.php"); ?>
 			<div id="middle_column">
 				<div class="section">
+					<h3 class="section_title"><?php echo($lng['blog_search']);?></h3>
 					<div class="entry">
 						<?php
 							if (mysqli_num_rows($q) == 1){
-								echo "$lng[blog_search_1]<span class='italic'>$search_term</span>$lng[blog_search_2]<span class='italic'>$search_field</span>: " . strval(mysqli_num_rows($q)) . $lng['blog_search_result'];
+								echo "$lng[blog_search_1]<span class='italic'>$search_term</span>&nbsp: " . strval(mysqli_num_rows($q)) . $lng['blog_search_result'];
 							}
 							else{
-								echo "$lng[blog_search_1]<span class='italic'>$search_term</span>$lng[blog_search_2]<span class='italic'>$search_field</span>: " . strval(mysqli_num_rows($q)) . $lng['blog_search_results'];
+								echo "$lng[blog_search_1]<span class='italic'>$search_term</span>&nbsp: " . strval(mysqli_num_rows($q)) . $lng['blog_search_results'];
 							}
 						?>
 					</div>
-				</div>
-				<br/>
-				<div class="section">
 					<?php
 						while($r = mysqli_fetch_array($q)){
 							echo "<div itemscope itemtype='http://schema.org/BlogPosting' class='entry blog_entry'>\n";
@@ -106,16 +105,16 @@
 							echo "<meta itemprop='datePublished dateModified' content='$r[isodate]'/>\n";
 							echo "<meta itemprop='headline name' content='$r[title]'/>\n";
 							echo "<meta itemprop='articleBody text' content='$r[text]'/>\n";
-							echo "<meta itemprop='mainEntityOfPage' content='http://$http_host'/>\n";
+							echo "<meta itemprop='mainEntityOfPage' content='$proto$http_host'/>\n";
 							echo "<div class='hidden' itemprop='author publisher' itemscope itemtype='http://schema.org/Organization'>\n";
 							echo "<meta itemprop='legalName' content='Asociaci&oacute;n Cultural Recreativa Gasteizko Margolariak'/>\n";
 							echo "<meta itemprop='name' content='Gasteizko Margolariak'/>\n";
-							echo "<meta itemprop='logo' content='http://$http_host/img/logo/logo.png'/>\n";
+							echo "<meta itemprop='logo' content='$proto$http_host/img/logo/logo.png'/>\n";
 							echo "<meta itemprop='foundingDate' content='03-02-2013'/>\n";
 							echo "<meta itemprop='telephone' content='+34637140371'/>\n";
-							echo "<meta itemprop='url' content='http://$http_host'/>\n";
+							echo "<meta itemprop='url' content='$proto$http_host'/>\n";
 							echo "</div>\n";
-							echo "<h2 class='post_search_title'><a itemprop='url' href='http://$http_host/blog/$r[permalink]'>$r[title]</a></h2>\n";
+							echo "<h3 class='entry_title post_search_title'><a itemprop='url' href='$proto$http_host/blog/$r[permalink]'>$r[title]</a></h2>\n";
 							# Tags (if any) and date
 							echo "<table class='post_footer post_footer_search'><tr>\n";
 							$q_tag = mysqli_query($con, "SELECT tag FROM post_tag WHERE post= $r[id];");
@@ -123,7 +122,7 @@
 								$tag_string = "<span class='tags desktop'>Tags: ";
 								$tag_raw = "";
 								while ($r_tag = mysqli_fetch_array($q_tag)){
-									$tag_string = $tag_string . "<a href='http://$http_host/blog/buscar/tag/$r_tag[tag]'>$r_tag[tag]</a>, ";
+									$tag_string = $tag_string . "<a href='$proto$http_host/blog/buscar/tag/$r_tag[tag]'>$r_tag[tag]</a>, ";
 									$tag_raw = $tag_raw . "$r_tag[tag],";
 								}
 								$tag_string = substr($tag_string, 0, strlen($tag_string) - 2);
@@ -133,19 +132,19 @@
 								echo "<td><span class='date'>" . formatDate($r['dtime'], $lang, false) . "</span>&nbsp;&nbsp;&nbsp;$tag_string</td>\n";
 							}
 							else{
-								echo "<td><span class='date'></span>" . formatDate($r['dtime'], $lang) . "</span>/td>\n";
+								echo "<td><span class='date'></span>" . formatDate($r['dtime'], $lang) . "</span></td>\n";
 							}
 							echo "</tr></table><hr class='post_search_separator'/>\n";
 							#Image and text
 							$q_image = mysqli_query($con, "SELECT image FROM post_image WHERE post = $r[id] ORDER BY idx LIMIT 1;");
 							if (mysqli_num_rows($q_image) > 0){
 								$r_image = mysqli_fetch_array($q_image);
-								echo "<a href='http://$http_host/blog/$r[permalink]'>\n";
-								echo "<meta itemprop='image' content='http://$http_host/img/blog/$r_image[image]'/>\n";
-								echo "<img class='post_search_image alt='$r[title]' src='http://$http_host/img/blog/preview/$r_image[image]'/>\n";
+								echo "<a href='$proto$http_host/blog/$r[permalink]'>\n";
+								echo "<meta itemprop='image' content='$proto$http_host/img/blog/$r_image[image]'/>\n";
+								echo "<img class='post_search_image alt='$r[title]' src='$proto$http_host/img/blog/preview/$r_image[image]'/>\n";
 								echo "</a>\n";
 							}
-							echo "<p class='post_search_text'>" . cutText($r['text'], 150, $lng['blog_read_more'], "http://$http_host/blog/$r[permalink]/") . "</p>\n";
+							echo "<p class='post_search_text'>" . cutText($r['text'], 150, $lng['blog_read_more'], "$proto$http_host/blog/$r[permalink]/") . "</p>\n";
 							echo "<br/>\n";
 							echo "</div>\n";
 						}

+ 1 - 1
www/blog/common/leftpanel.php

@@ -19,7 +19,7 @@
 				$q_tag = mysqli_query($con, "SELECT tag, count(post) AS count FROM post_tag GROUP BY tag;");
 				while($r_tag = mysqli_fetch_array($q_tag)){
 					$size = round(60 + 100 * $r_tag['count'] / $max);	//TEST: Relativize
-					echo "<a href='http://$http_host/blog/buscar/tag/$r_tag[tag]'><span style='font-size: $size%'>$r_tag[tag]</span></a>\n";
+					echo "<a href='$proto$http_host/blog/buscar/tag/$r_tag[tag]'><span style='font-size: $size%'>$r_tag[tag]</span></a>\n";
 				}
 			?>
 		</div>

+ 3 - 3
www/blog/common/rightpanel.php

@@ -6,18 +6,18 @@
 				$q_year = mysqli_query($con, "SELECT year(dtime) AS year FROM post WHERE visible = 1 GROUP BY year(dtime) ORDER BY year DESC;");
 				while($r_year = mysqli_fetch_array($q_year)){
 					echo "<div class='year pointer' onClick=\"toggleElement('year_$r_year[year]');\">";
-					echo ("<img class='slid' id='slid_year_$r_year[year]' src='http://$http_host/img/misc/slid-right.png' alt=' '/><span class='fake_a'>$r_year[year]</span>");
+					echo ("<img class='slid' id='slid_year_$r_year[year]' src='$proto$http_host/img/misc/slid-right.png' alt=' '/><span class='fake_a'>$r_year[year]</span>");
 					echo "</div>\n";
 					echo "<div class='list_year pointer' id='list_year_$r_year[year]'>\n";
 					$q_month = mysqli_query($con, "SELECT month(dtime) AS month FROM post WHERE visible = 1 AND year(dtime) = $r_year[year] GROUP BY month(dtime) ORDER BY month DESC;");
 					while($r_month = mysqli_fetch_array($q_month)){
 						echo "<div class='month pointer' onClick=\"toggleElement('month_$r_year[year]_$r_month[month]');\">";
-						echo ("<img class='slid' id='slid_month_$r_year[year]_$r_month[month]' src='http://$http_host/img/misc/slid-right.png' alt=' '/><span class='fake_a'>" . $lng['months'][$r_month['month'] - 1] . "</span>");
+						echo ("<img class='slid' id='slid_month_$r_year[year]_$r_month[month]' src='$proto$http_host/img/misc/slid-right.png' alt=' '/><span class='fake_a'>" . $lng['months'][$r_month['month'] - 1] . "</span>");
 						echo "</div>\n";
 						echo "<ul id='list_month_$r_year[year]_$r_month[month]' class='post_list'>\n";
 						$q_title = mysqli_query($con, "SELECT id, permalink, title_$lang AS title FROM post WHERE visible = 1 AND year(dtime) = $r_year[year] AND month(dtime) = '$r_month[month]' ORDER BY dtime DESC;");
 						while($r_title = mysqli_fetch_array($q_title))
-							echo "<li><a href='http://$http_host/blog/" . $r_title['permalink']  . "'>$r_title[title]</a></li>\n";
+							echo "<li><a href='$proto$http_host/blog/" . $r_title['permalink']  . "'>$r_title[title]</a></li>\n";
 						echo "</ul>\n";
 					}
 					echo "</div>\n";

+ 26 - 25
www/blog/index.php

@@ -3,6 +3,7 @@
 	$http_host = $_SERVER['HTTP_HOST'];
 	include("../functions.php");
 	$con = startdb();
+	$proto = getProtocol();
 	
 	//Language
 	$lang = selectLanguage();
@@ -16,8 +17,8 @@
 		<meta content="text/html; charset=utf-8" http-equiv="content-type"/>
 		<meta charset="utf-8"/>
 		<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1">
-		<title><?php echo $lng['blog_title'];?></title>
-		<link rel="shortcut icon" href="<?php echo "http://$http_host/img/logo/favicon.ico";?>">
+		<title><?php echo $lng['blog_title'];?> - Gasteizko Margolariak</title>
+		<link rel="shortcut icon" href="<?php echo "$proto$http_host/img/logo/favicon.ico";?>">
 		<!-- CSS files -->
 		<style>
 			<?php 
@@ -40,22 +41,22 @@
 			?>
 		</script>
 		<!-- Meta tags -->
-		<link rel="canonical" href="<?php echo "http://$http_host/blog"; ?>"/>
-		<link rel="author" href="<?php echo "http://$http_host"; ?>"/>
-		<link rel="publisher" href="<?php echo "http://$http_host"; ?>"/>
+		<link rel="canonical" href="<?php echo "$proto$http_host/blog"; ?>"/>
+		<link rel="author" href="<?php echo "$proto$http_host"; ?>"/>
+		<link rel="publisher" href="<?php echo "$proto$http_host"; ?>"/>
 		<meta name="description" content="<?php echo $lng['blog_descrption'];?>"/>
-		<meta property="og:title" content="<?php echo $lng['blog_title'];?>"/>
-		<meta property="og:url" content="<?php echo "http://$http_host/blog"; ?>"/>
+		<meta property="og:title" content="<?php echo $lng['blog_title'];?> - Gasteizko Margolariak"/>
+		<meta property="og:url" content="<?php echo "$proto$http_host/blog"; ?>"/>
 		<meta property="og:description" content="<?php echo $lng['blog_description'];?>"/>
-		<meta property="og:image" content="<?php echo "http://$http_host/img/logo/logo.png";?>"/>
+		<meta property="og:image" content="<?php echo "$proto$http_host/img/logo/logo.png";?>"/>
 		<meta property="og:site_name" content="<?php echo $lng['index_title'];?>"/>
 		<meta property="og:type" content="website"/>
 		<meta property="og:locale" content="<?php echo $lang; ?>"/>
 		<meta name="twitter:card" content="summary"/>
-		<meta name="twitter:title" content="<?php echo $lng['blog_title'];?>"/>
+		<meta name="twitter:title" content="<?php echo $lng['blog_title'];?> - Gasteizko Margolariak"/>
 		<meta name="twitter:description" content="<?php echo $lng['blog_description'];?>"/>
-		<meta name="twitter:image" content="<?php echo "http://$http_host/img/logo/logo.png";?>"/>
-		<meta name="twitter:url" content="<?php echo"http://$http_host"; ?>"/>
+		<meta name="twitter:image" content="<?php echo "$proto$http_host/img/logo/logo.png";?>"/>
+		<meta name="twitter:url" content="<?php echo"$proto$http_host"; ?>"/>
 		<meta name="robots" content="index follow"/>
 	</head>
 	<body>
@@ -73,27 +74,27 @@
 						echo "<meta itemprop='datePublished dateModified' content='$r[isodate]'/>\n";
 						echo "<meta itemprop='headline name' content='$r[title]'/>\n";
 						echo "<meta itemprop='articleBody text' content='$r[text]'/>\n";
-						echo "<meta itemprop='mainEntityOfPage' content='http://$http_host'/>\n";
+						echo "<meta itemprop='mainEntityOfPage' content='$proto$http_host'/>\n";
 						echo "<div class='hidden' itemprop='author publisher' itemscope itemtype='http://schema.org/Organization'>\n";
 						echo "<meta itemprop='legalName' content='Asociaci&oacute;n Cultural Recreativa Gasteizko Margolariak'/>\n";
 						echo "<meta itemprop='name' content='Gasteizko Margolariak'/>\n";
-						echo "<meta itemprop='logo' content='http://$http_host/img/logo/logo.png'/>\n";
+						echo "<meta itemprop='logo' content='$proto$http_host/img/logo/logo.png'/>\n";
 						echo "<meta itemprop='foundingDate' content='03-02-2013'/>\n";
 						echo "<meta itemprop='telephone' content='+34637140371'/>\n";
-						echo "<meta itemprop='url' content='http://$http_host'/>\n";
+						echo "<meta itemprop='url' content='$proto$http_host'/>\n";
 						echo "</div>\n";
-						echo "<h2><a itemprop='url' href='http://$http_host/blog/$r[permalink]'>$r[title]</a></h2>\n";
+						echo "<h3 class='entry_title'><a itemprop='url' href='$proto$http_host/blog/$r[permalink]'>$r[title]</a></h2>\n";
 						$q_image = mysqli_query($con, "SELECT image FROM post_image WHERE post = $r[id] ORDER BY idx LIMIT 1;");
 						if (mysqli_num_rows($q_image) > 0){
 							$r_image = mysqli_fetch_array($q_image);
 							echo "<div class='post_list_image_container'>\n";
-							echo "<a href='http://$http_host/blog/$r[permalink]'>\n";
-							echo "<meta itemprop='image' content='http://$http_host/img/blog/view/$r_image[image]'/>\n";
-							echo "<img class='post_list_image alt='$r[title]' src='http://$http_host/img/blog/miniature/$r_image[image]'/>\n";
+							echo "<a href='$proto$http_host/blog/$r[permalink]'>\n";
+							echo "<meta itemprop='image' content='$proto$http_host/img/blog/view/$r_image[image]'/>\n";
+							echo "<img class='post_list_image alt='$r[title]' src='$proto$http_host/img/blog/miniature/$r_image[image]'/>\n";
 							echo "</a>\n";
 							echo "</div>\n";
 						}
-						echo "<p>" . cutText($r['text'], 800, $lng['blog_read_more'], "http://$http_host/blog/$r[permalink]/") . "</p>\n";
+						echo "<p>" . cutText($r['text'], 800, $lng['blog_read_more'], "$proto$http_host/blog/$r[permalink]/") . "</p>\n";
 						# Tags (if any), date, and comment counter
 						echo "<hr><table class='post_footer'><tr>\n";
 						$q_tag = mysqli_query($con, "SELECT tag FROM post_tag WHERE post= $r[id];");
@@ -101,7 +102,7 @@
 							$tag_string = "<span class='tags desktop'>Tags: ";
 							$tag_raw = "";
 							while ($r_tag = mysqli_fetch_array($q_tag)){
-								$tag_string = $tag_string . "<a href='http://$http_host/blog/buscar/tag/$r_tag[tag]'>$r_tag[tag]</a>, ";
+								$tag_string = $tag_string . "<a href='$proto$http_host/blog/buscar/tag/$r_tag[tag]'>$r_tag[tag]</a>, ";
 								$tag_raw = $tag_raw . "$r_tag[tag],";
 							}
 							$tag_string = substr($tag_string, 0, strlen($tag_string) - 2);
@@ -137,22 +138,22 @@
 						$max_page ++;
 					echo "<div id='pager'><table id='pager'><tr>\n";
 					if ($cur_page > 4){
-						echo "<td><div class='entry'><a href='http://$http_host/blog/0'>1</a></div></td><td class='pager_ellipse'><div class='entry'>...</div></td>\n";
+						echo "<td><div class='entry'><a href='$proto$http_host/blog/0'>1</a></div></td><td class='pager_ellipse'><div class='entry'>...</div></td>\n";
 						for ($i = $cur_page - 2; $i < $cur_page; $i ++)
-							echo "<td><div class='entry'><a href='http://$http_host/blog/" . (5 * $i - 5) . "'>" . $i . "</a></div></td>\n";
+							echo "<td><div class='entry'><a href='$proto$http_host/blog/" . (5 * $i - 5) . "'>" . $i . "</a></div></td>\n";
 					}
 					else
 						for ($i = 1; $i < $cur_page; $i ++)
-							echo "<td><div class='entry'><a href='http://$http_host/blog/" . (5 * $i - 5) . "'>" . $i . "</a></div></td>\n";
+							echo "<td><div class='entry'><a href='$proto$http_host/blog/" . (5 * $i - 5) . "'>" . $i . "</a></div></td>\n";
 					echo "<td class='pager_current'><div class='entry'>$cur_page</div></td>\n";
 					if ($cur_page + 4 < $max_page){
 						for ($i = $cur_page + 1; $i < $cur_page + 3; $i ++)
-							echo "<td><div class='entry'><a href='http://$http_host/blog/" . (5 * $i - 5) . "'>" . $i . "</div></a></td>";
+							echo "<td><div class='entry'><a href='$proto$http_host/blog/" . (5 * $i - 5) . "'>" . $i . "</div></a></td>";
 						echo "<td class='pager_ellipse'><div class='entry'>...</div></td><td><div class='entry'><a href='/blog/" . ($max_page * 5 - 5) . "'>$max_page</a></div></td>";
 					}
 					else
 						for ($i = $cur_page + 1; $i <= $max_page; $i ++)
-							echo "<td><div class='entry'><a href='http://$http_host/blog/" . (5 * $i - 5) . "'>" . $i . "</a></div></td>";
+							echo "<td><div class='entry'><a href='$proto$http_host/blog/" . (5 * $i - 5) . "'>" . $i . "</a></div></td>";
 					echo "</tr></table></div>\n";
 				?>
 			</div>

+ 24 - 23
www/blog/post.php

@@ -2,6 +2,7 @@
 	$http_host = $_SERVER['HTTP_HOST'];
 	include("../functions.php");
 	$con = startdb();
+	$proto = getProtocol();
 	
 	//Language
 	$lang = selectLanguage();
@@ -13,7 +14,7 @@
 	$perm = mysqli_real_escape_string($con, $_GET['perm']);
 	$q = mysqli_query($con, "SELECT id, permalink, title_$lang AS title, text_$lang AS text, DATE_FORMAT(dtime, '%Y-%m-%dT%T') AS isodate, DATE_FORMAT(dtime,'%b %d, %Y T%T') as dtime, comments FROM post WHERE permalink = '$perm' AND visible = 1;");
 	if (mysqli_num_rows($q) == 0){
-		header("Location: http://$http_host/blog/");
+		header("Location: $proto$http_host/blog/");
 		exit(-1);
 	}
 	$r = mysqli_fetch_array($q);
@@ -25,7 +26,7 @@
 		<meta content="text/html; charset=windows-1252" http-equiv="content-type"/>
 		<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1">
 		<title><?php echo $r["title"] . " - Gasteizko Margolariak"; ?></title>
-		<link rel="shortcut icon" href="<?php echo "http://$http_host/img/logo/favicon.ico";?>">
+		<link rel="shortcut icon" href="<?php echo "$proto$http_host/img/logo/favicon.ico";?>">
 		<!-- CSS files -->
 		<style>
 			<?php 
@@ -48,20 +49,20 @@
 			?>
 		</script>
 		<!-- Meta tags -->
-		<link rel="canonical" href="<?php echo "http://$http_host/blog/" . $r['permalink']; ?>"/>
-		<link rel="author" href="<?php echo "http://$http_host"; ?>"/>
-		<link rel="publisher" href="<?php echo "http://$http_host"; ?>"/>
+		<link rel="canonical" href="<?php echo "$proto$http_host/blog/" . $r['permalink']; ?>"/>
+		<link rel="author" href="<?php echo "$proto$http_host"; ?>"/>
+		<link rel="publisher" href="<?php echo "$proto$http_host"; ?>"/>
 		<meta name="description" content="<?php echo strip_tags($r["text"]);?>"/>
 		<meta property="og:title" content="<?php echo $r["title"] . " - Gasteizko Margolariak"; ?>"/>
-		<meta property="og:url" content="<?php echo "http://$http_host/blog/" . $r['permalink']; ?>"/>
+		<meta property="og:url" content="<?php echo "$proto$http_host/blog/" . $r['permalink']; ?>"/>
 		<meta property="og:description" content="<?php echo strip_tags($r["text_$lang"]);?>"/>
 		<?php
 			$q_image = mysqli_query($con, "SELECT image FROM post_image WHERE post = $id ORDER BY idx;");
 			if (mysqli_num_rows($q_image) == 0)
-				$img = "http://$http_host/img/logo/cover.png";
+				$img = "$proto$http_host/img/logo/cover.png";
 			else{
 				$r_image = mysqli_fetch_array($q_image);
-				$img = "http://$http_host/img/blog/preview/" . $r_image['image'];
+				$img = "$proto$http_host/img/blog/preview/" . $r_image['image'];
 			}
 		?>
 		<meta property="og:image" content="<?php echo $img;?>"/>
@@ -84,7 +85,7 @@
 		<meta name="twitter:title" content="<?php echo $r["title"] . " - Gasteizko Margolariak";?>"/>
 		<meta name="twitter:description" content="<?php echo strip_tags($r["text"]);?>"/>
 		<meta name="twitter:image" content="<?php echo $img;?>"/>
-		<meta name="twitter:url" content="<?php echo "http://$http_host/blog/$r[permalink]"; ?>"/>
+		<meta name="twitter:url" content="<?php echo "$proto$http_host/blog/$r[permalink]"; ?>"/>
 		<meta name="robots" content="index follow"/>
 	</head>
 	<body>
@@ -97,20 +98,20 @@
 					echo "<meta itemprop='inLanguage' content='$lang'/>\n";
 					echo "<meta itemprop='datePublished dateModified' content='$r[isodate]'/>\n";
 					echo "<meta itemprop='headline name' content='$r[title]'/>\n";
-					echo "<meta itemprop='mainEntityOfPage' content='http://$http_host'/>\n";
+					echo "<meta itemprop='mainEntityOfPage' content='$proto$http_host'/>\n";
 					echo "<div class='hidden' itemprop='author publisher' itemscope itemtype='http://schema.org/Organization'>\n";
 					echo "<meta itemprop='legalName' content='Asociaci&oacute;n Cultural Recreativa Gasteizko Margolariak'/>\n";
 					echo "<meta itemprop='name' content='Gasteizko Margolariak'/>\n";
-					echo "<meta itemprop='logo' content='http://$http_host/img/logo/logo.png'/>\n";
+					echo "<meta itemprop='logo' content='$proto$http_host/img/logo/logo.png'/>\n";
 					echo "<meta itemprop='foundingDate' content='03-02-2013'/>\n";
 					echo "<meta itemprop='telephone' content='+34637140371'/>\n";
-					echo "<meta itemprop='url' content='http://$http_host'/>\n";
+					echo "<meta itemprop='url' content='$proto$http_host'/>\n";
 					echo "</div>\n";
-					echo "<div class='entry'>\n";
-					echo "<h2>$r[title]</h2>\n";
+					echo("<h3 class='section_title'>$r[title]</h3>\n");
+					echo("<div class='entry'>\n");
 					if ($r_image != null){
 						echo "<div class='image_container'>\n";
-						echo "<meta itemprop='image' content='http://$http_host/img/blog/$r_image[image]'/>\n";
+						echo "<meta itemprop='image' content='$proto$http_host/img/blog/$r_image[image]'/>\n";
 						echo "<img class='post_image post_image_large' alt='$r[title]' src='/img/blog/preview/$r_image[image]'/>\n";
 						echo "</div>\n";
 					}
@@ -119,7 +120,7 @@
 					if ($r_image != null){
 						echo "<table id='secondary_images'><tr>\n";
 						while ($r_image = mysqli_fetch_array($q_image)){
-							echo "<meta itemprop='image' content='http://$http_host/img/blog/$r_image[image]'/>\n";
+							echo "<meta itemprop='image' content='$proto$http_host/img/blog/$r_image[image]'/>\n";
 							echo "<td><img src='/img/blog/preview/$r_image[image]'/></td>\n";
 						}
 						echo "</tr></table>\n";
@@ -146,12 +147,12 @@
 					#Share
 					echo "<td class='r_share'><span class='share'><span class='desktop'>$lng[blog_share]</span>\n";
 					$title = urlencode("$r[title] - $http_host");
-					$url_f = htmlspecialchars("https://www.facebook.com/sharer/sharer.php?u=http://$http_host$_SERVER[REQUEST_URI]");
-					$url_t = htmlspecialchars("https://twitter.com/share?url=http://$http_host$_SERVER[REQUEST_URI]&text=$title");
-					$url_g = htmlspecialchars("https://plus.google.com/share?url=http://$http_host$_SERVER[REQUEST_URI]");
-					echo "<a href='$url_f' target='_blank'><img class='share_icon' alt='Facebook' src='http://$http_host/img/social/facebook.gif'/></a>\n";
-					echo "<a href='$url_t' target='_blank'><img class='share_icon' alt='Twitter' src='http://$http_host/img/social/twitter.gif'/></a>\n";
-					echo "<a href='$url_g' target='_blank'><img class='share_icon' src='http://$http_host/img/social/googleplus.gif' alt='Google+'/></a>\n";
+					$url_f = htmlspecialchars("https://www.facebook.com/sharer/sharer.php?u=$proto$http_host$_SERVER[REQUEST_URI]");
+					$url_t = htmlspecialchars("https://twitter.com/share?url=$proto$http_host$_SERVER[REQUEST_URI]&text=$title");
+					$url_g = htmlspecialchars("https://plus.google.com/share?url=$proto$http_host$_SERVER[REQUEST_URI]");
+					echo "<a href='$url_f' target='_blank'><img class='share_icon' alt='Facebook' src='$proto$http_host/img/social/facebook.gif'/></a>\n";
+					echo "<a href='$url_t' target='_blank'><img class='share_icon' alt='Twitter' src='$proto$http_host/img/social/twitter.gif'/></a>\n";
+					echo "<a href='$url_g' target='_blank'><img class='share_icon' src='$proto$http_host/img/social/googleplus.gif' alt='Google+'/></a>\n";
 					echo "</span></td>\n";
 					echo "</tr></table>\n";
 					#Comments
@@ -159,7 +160,7 @@
 						echo "<hr>\n";
 						$q_comment = mysqli_query($con, "SELECT id, post, DATE_FORMAT(dtime, '%Y-%m-%dT%T') AS isodate, dtime, user, username, lang, text FROM post_comment WHERE post = $id AND approved = 1 ORDER BY dtime;");
 						$count = mysqli_num_rows($q_comment);
-						echo "<meta itemprop='commentCount interationCount' content='$count'/>\n";
+						echo "<meta itemprop='commentCount interactionCount' content='$count'/>\n";
 						switch ($count){
 							case 0:
 								echo "<h4><meta itemprop='interactionCount' content='0'/></meta>$lng[blog_comments_0]</h4>\n";

+ 29 - 16
www/css/actividades.css

@@ -62,7 +62,7 @@ div#activity_description{
 }
 
 div#activity_details{
-	text-align:	center;
+	text-align:		center;
 }
 
 div#activity_details table#activity_details{
@@ -71,34 +71,40 @@ div#activity_details table#activity_details{
 }
 
 div#activity_details table#activity_details tr{
-	border-bottom:		0.2em solid #7777aa;
-	border-top:			0.2em solid #7777aa;
 	border-collapse:	collapse;
 }
 
 div#activity_details table#activity_details td{
-	text-align:	right;
-	padding:	0.2em 0.5em 0.2em 0.5em;
+	vertical-align:	bottom;
+	text-align:		left;
+	padding:		1em 1em 1em 1em;
 }
 
 div#activity_details table#activity_details td.field_name{
-	font-weight:	bold;
+	font-style:	italic;
+	font-size:	80%;
 }
 
 div#activity_itinerary tr{
-	border-bottom:		0.2em solid #7777aa;
-	border-top:			0.2em solid #7777aa;
+	border-bottom:		0.02em solid #000000;
+	border-top:			0.02em solid #000000;
 	border-collapse:	collapse;
+	border-radius:		0.5em;
+}
+
+div#activity_itinerary tr.th{
+	border-top:			0em solid #000000;
 }
 
 div#activity_itinerary table#activity_itinerary{
-	max-width:	50em;
-	margin: 			0 auto 0 auto;
+	max-width:			50em;
+	margin: 			2em auto 2em auto;
 	border-collapse:	collapse;
 }
 
 div#activity_itinerary table#activity_itinerary th{
-	border:		0.1em solid #7777aa;
+	border:		0em solid #000000;
+	border-top:	0em;
 	text-align:	center;
 }
 
@@ -111,8 +117,9 @@ div#activity_itinerary table#activity_itinerary td h5{
 	margin:	0;
 }
 
-div#activity_itinerary table#activity_itinerary td p{
-	margin:	0;
+div#activity_itinerary table#activity_itinerary td span.address, p.description{
+	margin:		0 0 0 1em;
+	font-size:	80%;
 }
 
 
@@ -144,13 +151,19 @@ table.future_data{
 }
 
 table.future_data tr{
-	border-bottom:		0.2em solid #7777aa;
-	border-top:			0.2em solid #7777aa;
+/* 	border-bottom:		0.2em solid #7777aa; */
+/* 	border-top:			0.2em solid #7777aa; */
 	border-collapse:	collapse;
 }
 
 table.future_data td{
-	padding:	0.3em 1em 0.3em 1em;
+	padding:		1em 1em 1em 1em;
+	vertical-align:	bottom;
+}
+
+table.future_data td.title{
+	font-size:	80%;
+	font-style:	italic;
 }
 
 /* Contains the details of the upcoming activity */

+ 6 - 2
www/css/blog.css

@@ -45,14 +45,18 @@ div.list_year{
 }
 
 ul.post_list{
-	margin-top:		0.5em;
-	margin-bottom:	0.5em;
+	margin-top:		0em;
+	margin-bottom:	0em;
 	/* 	display:		none; */
 	max-height:		0em;
 	overflow-y:		hidden;
 	transition:	max-height 0.6s ease-in-out;
 }
 
+ul.post_list li{
+	padding:	0.2em 0 0.2em 0;
+}
+
 div.post_list_image_container{
 	text-align:	center;
 }

+ 5 - 0
www/css/galeria.css

@@ -1,3 +1,8 @@
+div#gallery_entry_contribute{
+	text-align:	left;
+	margin:		3em 1em 1em 1em;
+}
+
 div#album_list{
 	text-align:	center;
 }

+ 90 - 15
www/css/index.css

@@ -1,5 +1,7 @@
+/* Location section */
+
 /* Festival section */
-table.festival_section_table{
+/*div#festivals{
 	width:	100%;
 }
 
@@ -20,37 +22,91 @@ table.festival_section_table tr td div.entry{
 }
 
 table.festival_section_table tr td div#festivals_summary{
-/* 	min-height:		15em; */
+ 	min-height:		15em;
 }
 
-table.festival_section_table tr td div#festivals_summary img{
+table.festival_section_table tr td div#festivals_summary img{*/
+div#festivals div#festivals_summary img{
 	display:		inline-block;
 	max-width:		40%;
 	max-height:		15em;
 	vertical-align:	top;
-	float:			left;
+	wfloat:			left;
 	margin-right:	2em;
 }
 
-table.festival_section_table tr td div#festival_entry_map{
-	text-align:	center;
+div#festivals #festivals_summary_text{
+	display:	inline-block;
+	max-width:	50%;
 }
 
-div.festival_event{
-	margin-left:	1.5em;
+div#festivals div#festivals_schedule_table{
+	display:	table;
+	width:		100%;
 }
 
-table.festival_section_table tr td div#festival_entry_map h3{
-	text-align:	left;
+div#festivals div#festivals_schedule_table div#festivals_schedule_row{
+	display:	table-row;
 }
 
-table.festival_section_table tr td div#festival_entry_map iframe{
-	width:		80%;
-	margin:		auto;
-	min-height:	15em;
-	max-height:	20em;
+div#festivals div#festivals_schedule_table div#festivals_schedule_row div.festivals_schedule_cell{
+	display:	table-cell;
+	width:		50%;
 }
 
+div#festivals div#festivals_schedule_table div#festivals_schedule_row div.festivals_schedule_cell div#festivals_gm{
+	margin: 0.4em 0.2em 0.4em 0.4em;
+}
+
+div#festivals div#festivals_schedule_table div#festivals_schedule_row div.festivals_schedule_cell div#festivals_city{
+	margin: 0.4em 0.4em 0.4em 0.2em;
+}
+
+div#festivals div#festivals_schedule_table div#festivals_schedule_row div.festivals_schedule_cell div.festival_event{
+	margin:			1em;
+	padding:		0.3em 0.3em 0.3em 0.5em;
+}
+
+div#festivals div#festivals_schedule_table div#festivals_schedule_row div.festivals_schedule_cell div.festival_event h4{
+	margin:			1em 0.2em 0.2em 0em;
+	font-weight:	bold;
+	color:			#444444;
+}
+
+div#festivals div#festivals_schedule_table div#festivals_schedule_row div.festivals_schedule_cell div.festival_event div.schedule_content{
+	border-left:	0.1em dotted black;
+	margin-left:	0.5em;
+}
+
+div#festivals div#festivals_schedule_table div#festivals_schedule_row div.festivals_schedule_cell div.festival_event span.title{
+	font-weight:	bold;
+	font-size:		120%;
+	color:			#275573;
+	margin:			1em 0.5em 0.7em 0.2em;
+}
+
+div#festivals div#festivals_schedule_table div#festivals_schedule_row div.festivals_schedule_cell div.festival_event p.description{
+	margin:	0.2em 1em 1em 1em;
+}
+
+div#festivals div#festivals_schedule_table div#festivals_schedule_row div.festivals_schedule_cell div.festival_event table.location{
+	margin:		0.3em 1em 0.3em 1.6em;
+	font-size:	90%;
+	color:		#222222;
+}
+
+div#festivals div#festivals_schedule_table div#festivals_schedule_row div.festivals_schedule_cell div.festival_event table.location img{
+	max-width:	1.3em;
+	max-hieght:	1.5em;
+}
+
+div#festivals div#festivals_schedule_table div#festivals_schedule_row div.festivals_schedule_cell div.festival_event table.location span.address{
+	font-size:	80%;
+	font-style:	italic;
+	color:		#444444;
+}
+
+
 table.festival_section_table tr td div.festival_schedule span.title{
 	font-weight:	bold;
 /* 	font-size:		105%; */
@@ -145,6 +201,25 @@ div#upcoming_details table td{
 	padding:	0.3em;
 }
 
+/* Us section */
+div#us p{
+	display:	inline-block;
+	vertical-align:	top;
+}
+
+div#us div{
+	position:	absolute;
+	top:		4em;
+	right:		3em;
+	text-align:	center;
+}
+
+div#us div img{
+	opacity:	0.4;
+	max-height:	100px;
+	max-width:	100px;
+}
+
 /* Table to present posts and photos on the same row */
 div#content_table{
 	display:	table;

+ 80 - 20
www/css/lablanca.css

@@ -46,7 +46,32 @@ div.horiz p{
 	vertical-align:	top;
 }
 
+div#past_festivals ul li{
+	margin:	0.5em;
+}
+
+
 /* fiestas.php */
+div#festivals_image_top_container{
+	display:	block;
+	text-align:	center;
+	margin:		0.5em auto 0.5em auto;
+}
+
+div#festivals_image_top_container div#festivals_image_container{
+	display:		inline-block;
+	border:			0.1em solid #001133;
+	border-radius:	1em;
+	box-shadow:		0 0 1em #111122;
+	margin:			0.8em auto 0.8em auto;
+}
+
+div#festivals_image_top_container div#festivals_image_container img#festivals_image{
+	border-radius:	1em;
+	max-width:		60em;
+	max-height:		20em;
+}
+
 div#schedule{
 	display:		inline-block;
 	vertical-align:	top;
@@ -74,7 +99,7 @@ table.schedule td{
 	vertical-align:	top;
 	padding-left:	0.5em;
 	padding-right:	0.5em;
-	padding-bottom:	0.6em;
+	padding-bottom:	1em;
 }
 
 table.schedule td span.time{
@@ -83,49 +108,47 @@ table.schedule td span.time{
 
 table.schedule td span.title{
 	font-weight:	bold;
+	font-style:		italic;
+	font-size:		110%;
+	color:			#001133;
+	margin:			0 0.5em 0.5em 0.3em;
+	letter-spacing:	0.05em;
 }
 
-table.schedule td span.description{
-	font-size:		90%;
-	font-style:		italic;
-	margin-left:	1.2em;
+table.schedule td div.description{
+	margin:	0.3em 2em 0.5em 1.2em;
+	color:	#222222;
 }
 
 table.schedule td.timeline{
 	width:				0.06em;
-	padding:			0;
-	background-color:	#000000;
+	padding:			0 0 1em 0;
+	border-left:		dotted #333333 0.1em;
 	padding-left:		0;
 	padding-right:		0;
 	
 }
 
-
-
 table.schedule td.timeline img.timeline_dot{
 	width:			1em;
 	height:			1em;
-	margin-left:	-0.44em;
-	margin-right:	-0.44em;
-	margin-top:		0.3em;
+	margin-left:	-0.47em;
+	margin-right:	-0.41em;
+	margin-top:		0.2em;
 }
 
-table.schedule table.location{
+table.schedule div.location{
 	font-size:			80%;
 	border-collapse:	collapse;
 	margin-left:		2em;
 }
 
-table.schedule table.location td{
-	padding:	0.2em;
-}
-
-table.schedule table.location img{
+table.schedule div.location img{
 	max-height:		1.3em;
 	vertical-align:	middle;
 }
 
-table.schedule table.location span.address{
+table.schedule div.location span.address{
 	font-style:	italic;
 }
 
@@ -163,6 +186,12 @@ div#prices table#table_days td{
 	padding:	0.5em 2em 0.5em 2em; 
 }
 
+div#prices table#table_days td.price{
+	color:			#001133;
+	font-weight:	bold;
+	font-size:		110%;
+}
+
 div#prices td.price{
 	min-width:	4em;
 	text-align:	right;
@@ -178,8 +207,39 @@ div#prices table#table_offers td{
 	border-top:	0.2em solid #aaaaaa;
 }
 
+div#prices table#table_offers td.price{
+	min-width:		4em;
+	text-align:		right;
+	color:			#001133;
+	font-weight:	bold;
+	font-size:		110%;
+}
+
 div#prices table#table_offers p.description{
 	margin:		0.2em 0.2em 0.5em 2em;
 	font-size:	90%;
 	font-style:	italic;
-}
+	color:		#444444;
+}
+
+
+/* No fiestas */
+
+ul#no_fiestas{
+	margin:			0 2em 2em 2em;
+}
+
+ul#no_fiestas li{
+	margin-top: 2em;
+	list-style-image:       url('https://margolariak.com/img/misc/ul.png');
+        list-style-type:        circle;
+}
+
+ul#no_fiestas li span{
+	font-weight:	bold;
+	font-style:	italic;
+	font-size:	110%;
+	color:		#001133;
+	margin-right:	0.3em;
+	letter-spacing:	0.05em;
+}

+ 7 - 1
www/css/m/lablanca.css

@@ -22,6 +22,12 @@ div#content_table div.content_tr div#content_td_prices{
 	width:		100%;
 }
 
+div#festivals_image_top_container div#festivals_image_container img#festivals_image{
+	border-radius:	0.5em;
+	max-width:		initial;
+	max-height:		15em;
+}
+
 div#schedule{
 	display:		block;
 	margin-right:	0em;
@@ -29,4 +35,4 @@ div#schedule{
 
 div#prices{
 	display:		block;
-}
+}

+ 4 - 4
www/css/m/ui.css

@@ -189,7 +189,7 @@ div#ad{
 }
 
 div#ad h3{
-	margin-top:	0.3em;
+	margin-top:	0;
 }
 
 div#ad div#ad_details{
@@ -198,9 +198,9 @@ div#ad div#ad_details{
 }
 
 div#ad div#ad_details img{
-	height:			1.2em;
-	width:			1.2em;
-	margin: 		0 0.5em 0 0.5em;
+	height:			2em;
+	width:			2em;
+	margin: 		0.3 0.5em 0.3 0.5em;
 }
 
 div#ad div.entry div#ad_image_container{

+ 70 - 29
www/css/ui.css

@@ -64,34 +64,39 @@ body{
 input[type="text"], input[type="number"], input[type="date"]{
 	border-radius:		0.3em;
 	height:				1.5em;
-	border:				0.2em solid #406896;
-	color:				#ccccdc;
-	background-color:	#0F263C;
+	border:				0.2em solid #0078ff;
+	color:				#002255;
+	background-color:	#ccddff;
 	margin:				0.1em;
 }
 
 input[type="button"], input[type="submit"], select{
 	border-radius:		0.3em;
 	height:				2em;
-	border:				0.2em solid #406896;
+	border:				0.2em solid #0078ff;
 	font-weight:		bold;
 	color:				#ffffff;
-	background-color:	#618CB7;
+	background-color:	#124567;
 	cursor:				pointer;
 	margin:				0.1em;
+	letter-spacing: 	0.1em;
 }
 
 textarea{
 	border-radius:		0.3em;
 	min-height:			2em;
 	max-height:			15em;
-	border:				0.2em solid #406896;
-	color:				#bbbbbb;
-	background-color:	#223344;
+	border:				0.2em solid #0078ff;
+	color:				#002255;
+	background-color:	#ccddff;
 	resize:				vertical;
 	margin:				0.1em;
 }
 
+li{
+	list-style-image:	url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAcAAAAHCAYAAADEUlfTAAAAG0lEQVQImWNgIBqU//+PWwKGcUoQVECanVgAAJSsH/KywgEfAAAAAElFTkSuQmCC');
+}
+
 /******************************************
 * Common elements present across the      *
 * whle site.                              *
@@ -122,6 +127,21 @@ img.slid{
 	font-style:	italic;
 }
 
+/*Elements with a bold font*/
+.bold{
+	font-weight:	bold;
+}
+
+/*Stroked elements*/
+.stroke{
+	text-decoration:	line-through;
+}
+
+/*Underlined elements*/
+.underline{
+	text-decoration:	underline;
+}
+
 
 /******************************************
 * Styles for the site header that is      *
@@ -394,23 +414,23 @@ div.section{
 	border-radius:		1em;
 	padding:			0 0 0.5em 0;
 	background-color:	#98c8ff;
-	-webkit-filter:	drop-shadow(0 0 0.4em #000011);
-	filter:			drop-shadow(0 0 0.4em #000011);
-    -ms-filter:		"progid:DXImageTransform.Microsoft.Dropshadow(OffX=0, OffY=0, Color='#000011')";
-    filter:			"progid:DXImageTransform.Microsoft.Dropshadow(OffX=0, OffY=0, Color='#000011')";
+	-webkit-filter:		drop-shadow(0 0 0.4em #000011);
+	filter:				drop-shadow(0 0 0.4em #000011);
+    -ms-filter:			"progid:DXImageTransform.Microsoft.Dropshadow(OffX=0, OffY=0, Color='#000011')";
+    filter:				"progid:DXImageTransform.Microsoft.Dropshadow(OffX=0, OffY=0, Color='#000011')";
 }
 
 /* Title for each section */
-.section_title{
-	font-size:	120%;
-	font-style:	bold;
-	color:		#ffffff;
-	background-color:	#0078ff;
-	padding:			0.5em 2em 0.1em 1.5em;
-	border-top-left-radius:	0.7em;
+div.section .section_title{
+	font-size:					120%;
+	font-style:					bold;
+	color:						#ffffff;
+	background-color:			#0078ff;
+	padding:					0.5em 2em 0.1em 1.5em;
+	border-top-left-radius:		0.7em;
 	border-top-right-radius:	0.7em;
-	border:		0.1em solid #000011;
-	margin:				0;
+	border:						0.1em solid #000011;
+	margin:						0;
 }
 
 div.section a.go_to_section{
@@ -430,6 +450,17 @@ div.section a.go_to_section{
 	transition:			all .3s ease-in-out;
 }
 
+h3.entry_title{
+	color: 		#275573;
+	font-weight:	bold;
+	font-size:	1.3em;
+	margin:		1em 1em 0.3em 0em;
+}
+
+h3.entry_title a{
+	color: 		#275573;
+}
+
 /* Comments */
 div.comment{
 	margin:	0.5em 1em 0.5em 1em;
@@ -480,23 +511,22 @@ div#comment_new input[type='submit']{
 ******************************************/
 div#ad{
 	border:						0.1em solid #000011;
-	width:						25%;
+	width:						45%;
 	max-width:					25em;
 	min-width:					12em;
-	max-height:					20em;
+	max-height:					25em;
 	position:					fixed;
 	bottom:						-25em;
 	left:						3em;
 	margin-bottom:				0;
 	box-shadow:					0 0 2em #111122;
-	border-top-left-radius:		1em;
-	border-top-right-radius:	1em;
+	border-bottom-left-radius:		0em;
+	border-bottom-right-radius:	0em;
 	transition:					bottom .5s ease-in-out;
 }
 
-
-div#ad h3{
-	margin-top:	0.3em;
+div#ad h3 a{
+	color:		#ffffff
 }
 
 div#ad div#ad_details{
@@ -522,7 +552,8 @@ div#ad div.entry div#ad_image_container{
 
 div#ad div.entry div#ad_image_container img{
 	max-height:	9em;
-	border:	0.1em solid #111111;
+	max-width:	100%;
+	border:		0.1em solid #111111;
 }
 
 div#ad div.entry a{
@@ -536,3 +567,13 @@ div#ad div.entry a img#ad_pinpoint{
 	vertical-align:	middle;
 	max-height:		0.8em;
 }
+
+div#ad div#ad_policy{
+	text-align:	right;
+	margin:		0;
+	padding:	1.5em 1em 0.5em 0.5em;
+	font-size:	85%;
+	position:	absolute;
+	bottom:		1em;
+	right:		1em;
+}

+ 3 - 2
www/error/404.php

@@ -2,6 +2,7 @@
 	$http_host = $_SERVER['HTTP_HOST'];
 	include("../functions.php");
 	$con = startdb();
+	$proto = getProtocol();
 	
 	//Language
 	$lang = selectLanguage();
@@ -15,7 +16,7 @@
 		<meta content="text/html; charset=windows-1252" http-equiv="content-type"/>
 		<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1">
 		<title><?php echo $lng['error_title'] ?> - Gasteizko Margolariak</title>
-		<link rel="shortcut icon" href="<?php echo "http://$http_host/img/logo/favicon.ico";?>">
+		<link rel="shortcut icon" href="<?php echo "$proto$http_host/img/logo/favicon.ico";?>">
 		<!-- CSS files -->
 		<style>
 			<?php 
@@ -102,7 +103,7 @@
 						<a href="javascript: history.go(-1);"><?php echo $lng['error_404_solution_0']; ?></a>
 					</li>
 					<li>
-						<a href="<?php echo "http://$http_host/";?>"><?php echo $lng['error_404_solution_1']; ?></a>
+						<a href="<?php echo "$proto$http_host/";?>"><?php echo $lng['error_404_solution_1']; ?></a>
 					</li>
 					<li>
 						<a target='_blank' href="https://www.youtube.com/results?search_query=cats"><?php echo $lng['error_404_solution_2']; ?></a>

+ 7 - 7
www/footer.php

@@ -3,13 +3,13 @@
 		<div class="tr">
 			<div class="td" id="footer_left">
 				<span id="footer_follow" class="desktop"><?php echo $lng['footer_follow']?></span><br/>
-				<a title="Facebook" target="_blank" href="https://www.facebook.com/gmargolariak"><img class="footer_social_icon" src="http://<?php echo $_SERVER['HTTP_HOST']; ?>/img/social/facebook.gif" alt="Facebook"/></a>
-				<a title="Twitter" target="_blank" href="https://twitter.com/gmargolariak"><img class="footer_social_icon" src="http://<?php echo $_SERVER['HTTP_HOST']; ?>/img/social/twitter.gif" alt="Twitter"/></a>
-				<a title="Google+" target="_blank" href="https://plus.google.com/106661466029005469492"><img class="footer_social_icon" src="http://<?php echo $_SERVER['HTTP_HOST']; ?>/img/social/googleplus.gif" alt="Google+"/></a>
+				<a title="Facebook" target="_blank" href="https://www.facebook.com/gmargolariak"><img class="footer_social_icon" src="<?php echo $proto . $_SERVER['HTTP_HOST']; ?>/img/social/facebook.gif" alt="Facebook"/></a>
+				<a title="Twitter" target="_blank" href="https://twitter.com/gmargolariak"><img class="footer_social_icon" src="<?php echo $proto . $_SERVER['HTTP_HOST']; ?>/img/social/twitter.gif" alt="Twitter"/></a>
+				<a title="Google+" target="_blank" href="https://plus.google.com/106661466029005469492"><img class="footer_social_icon" src="<?php echo $proto . $_SERVER['HTTP_HOST']; ?>/img/social/googleplus.gif" alt="Google+"/></a>
 				<br class="desktop"/>
-				<a title="Youtube" target="_blank" href="https://www.youtube.com/user/GasteizkoMargolariak"><img class="footer_social_icon" src="http://<?php echo $_SERVER['HTTP_HOST']; ?>/img/social/youtube.gif" alt="Youtube"/></a>
-				<a title="Instagram" target="_blank" href="https://instagram.com/gmargolariak/"><img class="footer_social_icon" src="http://<?php echo $_SERVER['HTTP_HOST']; ?>/img/social/instagram.gif" alt="nstagram"/></a>
-<!--  				<a title="RSS" href="http://<?php echo $_SERVER['HTTP_HOST']; ?>/rss.xml"><img class="footer_social_icon" src="http://<?php echo $_SERVER['HTTP_HOST']; ?>/img/social/rss.gif" alt="RSS"/></a> -->
+				<a title="Youtube" target="_blank" href="https://www.youtube.com/user/GasteizkoMargolariak"><img class="footer_social_icon" src="<?php echo $proto . $_SERVER['HTTP_HOST']; ?>/img/social/youtube.gif" alt="Youtube"/></a>
+				<a title="Instagram" target="_blank" href="https://instagram.com/gmargolariak/"><img class="footer_social_icon" src="<?php echo $proto . $_SERVER['HTTP_HOST']; ?>/img/social/instagram.gif" alt="nstagram"/></a>
+<!--  				<a title="RSS" href="<?php echo $proto.$_SERVER['HTTP_HOST']; ?>/rss.xml"><img class="footer_social_icon" src="<?php echo $proto . $_SERVER['HTTP_HOST']; ?>/img/social/rss.gif" alt="RSS"/></a> -->
 				<br/><span id="footer_info" class='desktop'><?php echo($lng['footer_info']); ?></span>
 			</div>
 			<div class="td" id="footer_center">
@@ -41,7 +41,7 @@
 				<br class="mobile"/><br class="mobile"/><br class="mobile"/>
 			</div>
 			<div  class="td" id="footer_right" class="desktop">
-				<a href="<?php echo "http://$_SERVER[HTTP_HOST]/ayuda/";?>"><?php echo $lng['footer_help']; ?></a>&nbsp;&nbsp;&nbsp;<a href="<?php echo "http://$_SERVER[HTTP_HOST]/ayuda/#section_privacy";?>"><?php echo $lng['footer_privacy'];?></a>
+				<a href="<?php echo "$proto$_SERVER[HTTP_HOST]/ayuda/";?>"><?php echo $lng['footer_help']; ?></a>&nbsp;&nbsp;&nbsp;<a href="<?php echo "$proto$_SERVER[HTTP_HOST]/ayuda/#section_privacy";?>"><?php echo $lng['footer_privacy'];?></a>
 				<br/><br class='mobile'/>
 				<img class='lang' alt='Espanol' src='/img/lang/es.gif' onClick='changeLanguage("es", "<?php echo $http_host; ?>");'/>
 				<img class='lang' alt='English' src='/img/lang/en.gif' onClick='changeLanguage("en", "<?php echo $http_host; ?>");'/>

+ 24 - 3
www/functions.php

@@ -50,6 +50,16 @@
 		//Return the db connection
 		return $con;
 	}
+	function getProtocol(){
+		if (isset($_SERVER['HTTPS']) && ($_SERVER['HTTPS'] == 'on' || $_SERVER['HTTPS'] == 1) || isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https') {
+			$protocol = 'https://';
+		}
+		else {
+			$protocol = 'http://';
+		}
+		return $protocol;
+	}
+
 	
 	/****************************************************
 	* This function selects the language the page will  *
@@ -305,8 +315,15 @@
 		mysqli_query($con, 'UPDATE settings SET value = value + 1 WHERE name = "version";');
 	}
 	
+	/****************************************************
+        * Shows an ad at random. It does that one in three  *
+        * times, and only one per session (inserts a cookie *
+        * to know if the ad has been shown. A sponsor has   *
+        * more chances of having his ad popping the more it *
+	* contributes with Gasteizko Margolariak.           *
+        ****************************************************/
 	function ad($con, $lang, $lng){
-	$id = -1;
+		$id = -1;
 		//If the user hasn't still see an add on this session
 		if (isset($_SESSION['ad']) == false){
 			//25% chance of seeing an add
@@ -334,12 +351,12 @@
 				$q = mysqli_query($con, "SELECT name_$lang AS name, text_$lang AS text, image, address_$lang AS address, link, lat, lon FROM sponsor WHERE id = $id;");
 				$r = mysqli_fetch_array($q);
 				echo("<div id='ad' class='section'>\n");
+				echo("<h3 class='section_title'><a target='_blank' href='$r[link]'>$r[name]</a></h3>\n");
+				echo("<div class='entry'>\n");
 				echo("<div id='ad_details'>\n");
 				echo($lng['ad_title']);
 				echo("<img class='pointer' src='/img/misc/slid-close.png' onClick='closeAd();' />\n");
 				echo("</div>\n");
-				echo("<h3><a target='_blank' href='$r[link]'>$r[name]</a></h3>\n");
-				echo("<div class='entry'>\n");
 				if (strlen($r['image']) > 0){
 					echo("<div id='ad_image_container'>\n");
 					echo("<img src='/img/spo/miniature/$r[image]'/>\n");
@@ -349,6 +366,10 @@
 				if(strlen($r["address"]) > 0){
 					echo("<br/><br/><a target='_blank' href='https://www.google.es/maps/@$r[lat],$r[lon],14z'><img id='ad_pinpoint' src='/img/misc/pinpoint.png'\>$r[address]</a>\n");
 				}
+				echo("<br/><br/><br class='mobile'/><br class='mobile'/>");
+				echo("<div id='ad_policy'>\n");
+				echo("<a target='_blank' href='$proto$http_host/ayuda/#section_ads'>" . $lng['help_ad_title'] . "</a>\n");
+				echo("</div>\n");
 				echo("</div>\n");
 				echo("</div>\n");
 				echo("<script type='text/javascript'>showAd();</script>\n");

+ 25 - 15
www/galeria/album.php

@@ -3,6 +3,7 @@
 	$http_host = $_SERVER['HTTP_HOST'];
 	include("../functions.php");
 	$con = startdb();
+	$proto = getProtocol();
 	
 	//Language
 	$lang = selectLanguage();
@@ -27,8 +28,8 @@
 		<meta content="text/html; charset=utf-8" http-equiv="content-type"/>
 		<meta charset="utf-8"/>
 		<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1">
-		<title><?php echo $r['title'];?></title>
-		<link rel="shortcut icon" href="<?php echo "http://$http_host/img/logo/favicon.ico";?>">
+		<title><?php echo $r['title'];?> - Gasteizko Margolariak</title>
+		<link rel="shortcut icon" href="<?php echo "$proto$http_host/img/logo/favicon.ico";?>">
 		<!-- CSS files -->
 		<style>
 			<?php 
@@ -51,31 +52,39 @@
 			?>
 		</script>
 		<!-- Meta tags -->
-		<link rel="canonical" href="<?php echo "http://$http_host/galeria/$perm"; ?>"/>
-		<link rel="author" href="<?php echo "http://$http_host"; ?>"/>
-		<link rel="publisher" href="<?php echo "http://$http_host"; ?>"/>
+		<link rel="canonical" href="<?php echo "$proto$http_host/galeria/$perm"; ?>"/>
+		<link rel="author" href="<?php echo "$proto$http_host"; ?>"/>
+		<link rel="publisher" href="<?php echo "$proto$http_host"; ?>"/>
 		<meta name="description" content="<?php echo strip_tags($r['description']);?>"/>
-		<meta property="og:title" content="<?php echo $l['title'];?>"/>
-		<meta property="og:url" content="<?php echo "http://$http_host/galeria/$perm"; ?>"/>
+		<meta property="og:title" content="<?php echo $l['title'];?> - Gasteizko Margolariak"/>
+		<meta property="og:url" content="<?php echo "$proto$http_host/galeria/$perm"; ?>"/>
 		<meta property="og:description" content="<?php echo strip_tags($r['description']); ?>"/>
-		<meta property="og:image" content="<?php  echo "http://$http_host/img/logo/logo.png";?>"/> 
+		<meta property="og:image" content="<?php  echo "$proto$http_host/img/logo/logo.png";?>"/> 
 		<meta property="og:site_name" content="Gasteizko Margolariak"/>
 		<meta property="og:type" content="website"/>
 		<meta property="og:locale" content="<?php echo $lang; ?>"/>
 		<meta name="twitter:card" content="summary"/>
-		<meta name="twitter:title" content="<?php echo $l['title'];?>"/>
+		<meta name="twitter:title" content="<?php echo $l['title'];?> - Gasteizko Margolariak"/>
 		<meta name="twitter:description" content="<?php echo strip_tags($r['description']); ?>"/>
-		<meta name="twitter:image" content="<?php echo "http://$http_host/img/logo/logo.png";?>"/>
-		<meta name="twitter:url" content="<?php echo "http://$http_host/galeria/$perm"; ?>"/>
+		<meta name="twitter:image" content="<?php echo "$proto$http_host/img/logo/logo.png";?>"/>
+		<meta name="twitter:url" content="<?php echo "$proto$http_host/galeria/$perm"; ?>"/>
 		<meta name="robots" content="index follow"/>
 	</head>
 	<body onLoad="populatePhotos();" onkeypress="keyDown(event);">
 		<?php include("../header.php"); ?>
 		<div id="content">
-			<div class="section" id="album">
+			<div class="section" id="album" itemscope itemtype='https://schema.org/ImageGallery'>
+				<div class='hidden' itemprop='author creator' itemscope itemtype='http://schema.org/Organization'>\n");
+					<meta itemprop='legalName' content='Asociaci&oacute;n Cultural Recreativa Gasteizko Margolariak'/>\n");
+					<meta itemprop='name' content='Gasteizko Margolariak'/>\n");
+					<meta itemprop='logo' content='$proto$http_host/img/logo/logo.png'/>\n");
+					<meta itemprop='foundingDate' content='03-02-2013'/>\n");
+					<meta itemprop='telephone' content='+34637140371'/>\n");
+					<meta itemprop='url' content='<?php echo("$proto$http_host"); ?>'/>\n");
+				</div>\n");
 				<?php
 					//Header
-					echo "<h3 class='section_title' id='album_title'>$r[title]</h3>\n";
+					echo("<h3 class='section_title' itemprop='name' id='album_title'>$r[title]</h3>\n");
 					if ($r['description'] != ''){
 						echo "<div class='entry' id='album_header'>\n";
 						echo $r['description'];
@@ -88,15 +97,16 @@
 					while ($r_photo = mysqli_fetch_array($q_photo)){
 						echo "<div class='entry photo'>\n<div class='photo_container'>\n";
 						echo "<img class='pointer photo_img' path='$r_photo[file]' onClick=\"showPhotoByPath('$r_photo[file]');\" src='/img/galeria/miniature/$r_photo[file]' /></div>\n";
+						echo("<meta itemprop='image' content='$proto$http_host/img/galeria/view/$r_photo[file]'/>\n");
 						if (strlen($r_photo['title']) > 0 ){
-							echo "<h4><a href='javascript:;' onClick=\"showPhotoByPath('$r_photo[file]');\">$r_photo[title]</a></h4>\n";
+							echo "<h3 class='entry_title'><a href='javascript:;' onClick=\"showPhotoByPath('$r_photo[file]');\">$r_photo[title]</a></h4>\n";
 						}
 						if (strlen($r_photo['description']) > 0 ){
 							echo "<span class='photo_description'>" . cutText($r_photo['description'], 50) . "</span>\n";
 						}
 						//Count comments
 						$q_comments = mysqli_query($con, "SELECT id FROM photo_comment WHERE photo = $r_photo[id];");
-						echo "<span class='comment_counter'>" . mysqli_num_rows($q_comments) . "<img src='http://$http_host/img/misc/comment.png' alt=' '/></span>\n"; //TODO: icon
+						echo "<span class='comment_counter'>" . mysqli_num_rows($q_comments) . "<img src='$proto$http_host/img/misc/comment.png' alt=' '/></span>\n"; //TODO: icon
 						echo "\n</div>\n";
 					}
 				?>

+ 49 - 36
www/galeria/index.php

@@ -3,6 +3,7 @@
 	$http_host = $_SERVER['HTTP_HOST'];
 	include("../functions.php");
 	$con = startdb();
+	$proto = getProtocol();
 	
 	//Language
 	$lang = selectLanguage();
@@ -16,8 +17,8 @@
 		<meta content="text/html; charset=utf-8" http-equiv="content-type"/>
 		<meta charset="utf-8"/>
 		<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1">
-		<title><?php echo $lng['gallery_title'];?></title>
-		<link rel="shortcut icon" href="<?php echo "http://$http_host/img/logo/favicon.ico";?>">
+		<title><?php echo $lng['gallery_title'];?> - Gasteizko Margolariak</title>
+		<link rel="shortcut icon" href="<?php echo "$proto$http_host/img/logo/favicon.ico";?>">
 		<!-- CSS files -->
 		<style>
 			<?php 
@@ -39,32 +40,27 @@
 			?>
 		</script>
 		<!-- Meta tags -->
-		<link rel="canonical" href="<?php echo "http://$http_host"; ?>"/>
-		<link rel="author" href="<?php echo "http://$http_host"; ?>"/>
-		<link rel="publisher" href="<?php echo "http://$http_host"; ?>"/>
+		<link rel="canonical" href="<?php echo "$proto$http_host"; ?>"/>
+		<link rel="author" href="<?php echo "$proto$http_host"; ?>"/>
+		<link rel="publisher" href="<?php echo "$proto$http_host"; ?>"/>
 		<meta name="description" content="<?php echo $lng['gallery_description'];?>"/>
-		<meta property="og:title" content="<?php echo $lng['gallery_title'];?>"/>
-		<meta property="og:url" content="<?php echo "http://$http_host"; ?>"/>
+		<meta property="og:title" content="<?php echo $lng['gallery_title'];?> - Gasteizko Margolariak"/>
+		<meta property="og:url" content="<?php echo "$proto$http_host"; ?>"/>
 		<meta property="og:description" content="<?php echo $lng['gallery_description'];?>"/>
-		<meta property="og:image" content="<?php echo "http://$http_host/img/logo/logo.png";?>"/>
+		<meta property="og:image" content="<?php echo "$proto$http_host/img/logo/logo.png";?>"/>
 		<meta property="og:site_name" content="<?php echo $lng['gallery_title'];?>"/>
 		<meta property="og:type" content="website"/>
 		<meta property="og:locale" content="<?php echo $lang; ?>"/>
 		<meta name="twitter:card" content="summary"/>
-		<meta name="twitter:title" content="<?php echo $lng['gallery_title'];?>"/>
+		<meta name="twitter:title" content="<?php echo $lng['gallery_title'];?> - Gasteizko Margolariak"/>
 		<meta name="twitter:description" content="<?php echo $lng['gallery_description'];?>"/>
-		<meta name="twitter:image" content="<?php echo "http://$http_host/img/logo/logo.png";?>"/>
-		<meta name="twitter:url" content="<?php echo"http://$http_host"; ?>"/>
+		<meta name="twitter:image" content="<?php echo "$proto$http_host/img/logo/logo.png";?>"/>
+		<meta name="twitter:url" content="<?php echo"$proto$http_host"; ?>"/>
 		<meta name="robots" content="index follow"/>
 	</head>
 	<body>
 		<?php include("../header.php"); ?>
 		<div id="content">
-			<div class="section">
-				<div class="entry">
-					<?php echo $lng['gallery_header']; ?>
-				</div>
-			</div>
 			<br/>
 			<div class="section" id="album_list">
 				<?php
@@ -72,32 +68,49 @@
 					//Album with photos with dates
 					$q = mysqli_query($con, "SELECT album.id AS id, album.permalink AS permalink, album, album.title_$lang AS title, album.description_$lang AS description FROM photo_album, photo, album WHERE album.id = photo_album.album AND photo = photo.id GROUP BY album ORDER BY avg(photo.uploaded) DESC;");
 					while ($r = mysqli_fetch_array($q)){
-						echo "<div class='entry album_list'>\n";
-							echo "<table class='album_thumbnails'>\n";
-							echo "<tr>\n";
-							$i = 0;
-							$q_photo = mysqli_query($con, "SELECT * FROM photo, photo_album WHERE id = photo AND album = $r[album] ORDER BY rand() LIMIT 4;");
-							while ($r_photo = mysqli_fetch_array($q_photo)){
-								echo "<td><a href='http://$http_host/galeria/$r[permalink]'><img src='http://$http_host/img/galeria/miniature/$r_photo[file]'/></a></td>\n";
-								$i ++;
-								if ($i == 2)
-									echo "</tr>\n<tr>";
-							}
-							echo "</tr>\n</table>\n";
-							$q_count = mysqli_query($con, "SELECT album FROM photo_album WHERE album = $r[id];");
-							if (mysqli_num_rows($q_count) == 1)
-								echo "<h4><a href='http://$http_host/galeria/$r[permalink]'>$r[title]</a> - 1 $lng[gallery_photos_singular]</h4>\n";
-							else
-								echo "<h4><a href='http://$http_host/galeria/$r[permalink]'>$r[title]</a> - " . mysqli_num_rows($q_count) . " $lng[gallery_photos_plural]</h4>\n";
-							if (strlen($r['description']) > 0){
-								echo "<p>". cutText($r['description'], 100, "$lng[gallery_read_more]", "http://$http_host/galeria/$r[permalink]") . "</p>\n";
-							}
+						echo("<div class='entry album_list' itemscope itemtype='https://schema.org/ImageGallery'>\n");
+						echo("<div class='hidden' itemprop='author creator' itemscope itemtype='http://schema.org/Organization'>\n");
+						echo("<meta itemprop='legalName' content='Asociaci&oacute;n Cultural Recreativa Gasteizko Margolariak'/>\n");
+						echo("<meta itemprop='name' content='Gasteizko Margolariak'/>\n");
+						echo("<meta itemprop='logo' content='$proto$http_host/img/logo/logo.png'/>\n");
+						echo("<meta itemprop='foundingDate' content='03-02-2013'/>\n");
+						echo("<meta itemprop='telephone' content='+34637140371'/>\n");
+						echo("<meta itemprop='url' content='$proto$http_host'/>\n");
+						echo("</div>\n");
+						echo "<table class='album_thumbnails'>\n";
+						echo "<tr>\n";
+						$i = 0;
+						$q_photo = mysqli_query($con, "SELECT * FROM photo, photo_album WHERE id = photo AND album = $r[album] ORDER BY rand() LIMIT 4;");
+						while ($r_photo = mysqli_fetch_array($q_photo)){
+							echo("<td><a itemprop='url' href='$proto$http_host/galeria/$r[permalink]'>");
+							echo("<meta itemprop='image' content='$proto$http_host/img/galeria/view/$r_photo[file]'/>\n");
+							echo("<img src='$proto$http_host/img/galeria/miniature/$r_photo[file]'/></a></td>\n");
+							$i ++;
+							if ($i == 2)
+								echo "</tr>\n<tr>";
+						}
+						echo "</tr>\n</table>\n";
+						$q_count = mysqli_query($con, "SELECT album FROM photo_album WHERE album = $r[id];");
+						if (mysqli_num_rows($q_count) == 1){
+							echo "<h3 class='entry_title' itemprop='name'><a href='$proto$http_host/galeria/$r[permalink]'>$r[title]</a></h3>\n";
+							echo("1 $lng[gallery_photos_singular]");
+						}
+						else{
+							echo "<h3 class='entry_title' itemprop='name'><a href='$proto$http_host/galeria/$r[permalink]'>$r[title]</a></h3>\n";
+							echo(mysqli_num_rows($q_count) . " $lng[gallery_photos_plural]");
+						}
+						if (strlen($r['description']) > 0){
+							echo("<p itemprop='description'>". cutText($r['description'], 100, "$lng[gallery_read_more]", "$proto$http_host/galeria/$r[permalink]") . "</p>\n");
+						}
 						echo "</div>\n";
 					}
 					
 					//Albums with no photos or photos without dates
 					$q = mysqli_query($con, "SELECT id, title_es FROM album WHERE id NOT IN (SELECT album FROM photo_album, photo WHERE photo = photo.id GROUP BY album);");
 				?>
+				<div class="entry" id="gallery_entry_contribute">
+					<?php echo $lng['gallery_header']; ?>
+				</div>
 			</div>
 		</div>
 		<?php

+ 8 - 7
www/galeria/load_photo.php

@@ -2,6 +2,7 @@
 	$http_host = $_SERVER['HTTP_HOST'];
 	include("../functions.php");
 	$con = startdb();
+	$proto = getProtocol();
 	
 	//Language
 	$lang = selectLanguage();
@@ -20,16 +21,16 @@
 		echo "</br>\n";
 		//Arrows
 		echo "<div id='viewer_controls'>\n";
-		echo "<img id='viewer_arrow_left' class='pointer' alt=' ' src='http://$http_host/img/misc/slid-left.png' onClick='scrollPhoto(-1);'/>\n";
-		echo "<img id='viewer_arrow_right' class='pointer' alt=' ' src='http://$http_host/img/misc/slid-right.png' onClick='scrollPhoto(1);'/>\n";
-		echo "<img id='viewer_close' class='pointer mobile' alt=' ' src='http://$http_host/img/misc/close.png' onClick='closeViewer();'/>\n";
+		echo "<img id='viewer_arrow_left' class='pointer' alt=' ' src='$proto$http_host/img/misc/slid-left.png' onClick='scrollPhoto(-1);'/>\n";
+		echo "<img id='viewer_arrow_right' class='pointer' alt=' ' src='$proto$http_host/img/misc/slid-right.png' onClick='scrollPhoto(1);'/>\n";
+		echo "<img id='viewer_close' class='pointer mobile' alt=' ' src='$proto$http_host/img/misc/close.png' onClick='closeViewer();'/>\n";
 		echo "</div>\n"; //viewer_controls
 		echo "</div>\n"; //cell
 		echo "<div class='viewer_cell' id='cell_details'>\n";
 		echo "<div id='photo_viewer_details'>\n";
 		echo "<div class='entry' id='photo_data'>\n";
 		if (strlen($r['title']) > 0){
-			echo "<h4>$r[title]</h4>\n";
+			echo "<h3 class='entry_title'>$r[title]</h3>\n";
 		}
 		if (strlen($r['description']) > 0){
 			echo "<span id='photo_description'>$r[description]</span>\n";
@@ -45,13 +46,13 @@
 		echo "<div id='photo_viewer_comment_counter'>\n";
 		switch ($comment_count){
 			case 0:
-				echo "<h4><meta itemprop='interactionCount' content='0'/>$lng[gallery_comment_count_0]</h4>\n";
+				echo "<h3 class='entry_title'><meta itemprop='interactionCount' content='0'/>$lng[gallery_comment_count_0]</h3>\n";
 				break;
 			case 1:
-				echo "<h4><span itemprop='interactionCount'>1</span> $lng[gallery_comment_count_1]</h4>\n";
+				echo "<h3 class='entry_title'><span itemprop='interactionCount'>1</span> $lng[gallery_comment_count_1]</h3>\n";
 				break;
 			default:
-				echo "<h4><span itemprop='interactionCount'>$comment_count</span> $lng[gallery_comment_count_several]</h4>\n";
+				echo "<h3 class='entry_title'><span itemprop='interactionCount'>$comment_count</span> $lng[gallery_comment_count_several]</h3>\n";
 		}
 		echo "</div>\n";
 		echo "<div id='comment_list'>\n";

+ 40 - 41
www/galeria/upload.php

@@ -3,6 +3,7 @@
 	$http_host = $_SERVER['HTTP_HOST'];
 	include("../functions.php");
 	$con = startdb();
+	$proto = getProtocol();
 	
 	//Language
 	$lang = selectLanguage();
@@ -18,8 +19,8 @@
 		<meta content="text/html; charset=utf-8" http-equiv="content-type"/>
 		<meta charset="utf-8"/>
 		<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1">
-		<title><?php echo $lng['gallery_title'];?></title>
-		<link rel="shortcut icon" href="<?php echo "http://$http_host/img/logo/favicon.ico";?>">
+		<title><?php echo $lng['gallery_title'];?> - Gasteizko Margolariak</title>
+		<link rel="shortcut icon" href="<?php echo "$proto$http_host/img/logo/favicon.ico";?>">
 		<!-- CSS files -->
 		<style>
 			<?php 
@@ -42,22 +43,22 @@
 			?>
 		</script>
 		<!-- Meta tags -->
-		<link rel="canonical" href="<?php echo "http://$http_host"; ?>"/>
-		<link rel="author" href="<?php echo "http://$http_host"; ?>"/>
-		<link rel="publisher" href="<?php echo "http://$http_host"; ?>"/>
+		<link rel="canonical" href="<?php echo "$proto$http_host"; ?>"/>
+		<link rel="author" href="<?php echo "$proto$http_host"; ?>"/>
+		<link rel="publisher" href="<?php echo "$proto$http_host"; ?>"/>
 		<meta name="description" content="<?php echo $lng['gallery_description'];?>"/>
-		<meta property="og:title" content="<?php echo $lng['gallery_title'];?>"/>
-		<meta property="og:url" content="<?php echo "http://$http_host"; ?>"/>
+		<meta property="og:title" content="<?php echo $lng['gallery_title'];?> - Gasteizko Margolariak"/>
+		<meta property="og:url" content="<?php echo "$proto$http_host"; ?>"/>
 		<meta property="og:description" content="<?php echo $lng['gallery_description'];?>"/>
-		<meta property="og:image" content="<?php echo "http://$http_host/img/logo/logo.png";?>"/>
+		<meta property="og:image" content="<?php echo "$proto$http_host/img/logo/logo.png";?>"/>
 		<meta property="og:site_name" content="<?php echo $lng['gallery_title'];?>"/>
 		<meta property="og:type" content="website"/>
 		<meta property="og:locale" content="<?php echo $lang; ?>"/>
 		<meta name="twitter:card" content="summary"/>
-		<meta name="twitter:title" content="<?php echo $lng['gallery_title'];?>"/>
+		<meta name="twitter:title" content="<?php echo $lng['gallery_title'];?> - Gasteizko Margolariak"/>
 		<meta name="twitter:description" content="<?php echo $lng['gallery_description'];?>"/>
-		<meta name="twitter:image" content="<?php echo "http://$http_host/img/logo/logo.png";?>"/>
-		<meta name="twitter:url" content="<?php echo"http://$http_host"; ?>"/>
+		<meta name="twitter:image" content="<?php echo "$proto$http_host/img/logo/logo.png";?>"/>
+		<meta name="twitter:url" content="<?php echo"$proto$http_host"; ?>"/>
 		<meta name="robots" content="noindex nofollow"/>
 	</head>
 	<body>
@@ -65,12 +66,11 @@
 		<div id="content">
 			<form onSubmit="event.preventDefault(); submitPhotos();">
 				<div class="section">
+					<h3 class="section_title"><?php echo($lng['gallery_upload_submit']); ?></h3>
 					<div class="entry">
 						<?php echo $lng["gallery_upload_header"]; ?>
 					</div>
-				</div>
-				<br/>
-				<div class="section">
+				
 					<div id="file_box" ondragover="event.preventDefault();" ondrop="dropFile(event, '<?php echo $lng['gallery_upload_placeholder_title'] ?>', '<?php echo $lng['gallery_upload_placeholder_description'] ?>');">
 						<br/><br/><br/>
 						<span id='drag'><?php echo $lng["gallery_upload_drag"]; ?></span>
@@ -80,34 +80,33 @@
 						<br/><br/><br/>
 					</div>
 					
-				</div>
-				<br/><br/>
-				<div class="section" id="photo_upload_preview">
-					<div id="file_list">
+					<div  id="photo_upload_preview">
+						<div id="file_list">
+						</div>
+						<table>
+							<tr>
+								<td class='entry'>
+									<?php echo $lng["gallery_upload_tooltip_album"]; ?>
+									<br/><br/>
+									<select id="album" type="select">
+										<option value="-1" selected="selected"><?php echo $lng['gallery_upload_select_album'] ?></option>
+										<?php
+											$q_album = mysqli_query($con, "SELECT id, title_$lang AS title FROM album ORDER BY title;");
+											while ($r_album = mysqli_fetch_array($q_album)){
+												echo "<option value='$r_album[id]'>$r_album[title]</option>\n";
+											}
+										?>
+									</select>
+								</td>
+								<td class='entry'>
+									<?php echo $lng["gallery_upload_tooltip_name"]; ?>
+									<br/><br/>
+									<input type='text' id='username'/>
+								</td>
+							</tr>
+						</table>
+						<input type="submit" id="photo_submit" value="<?php echo $lng["gallery_upload_submit"];?>">
 					</div>
-					<table>
-						<tr>
-							<td class='entry'>
-								<?php echo $lng["gallery_upload_tooltip_album"]; ?>
-								<br/><br/>
-								<select id="album" type="select">
-									<option value="-1" selected="selected"><?php echo $lng['gallery_upload_select_album'] ?></option>
-									<?php
-										$q_album = mysqli_query($con, "SELECT id, title_$lang AS title FROM album ORDER BY title;");
-										while ($r_album = mysqli_fetch_array($q_album)){
-											echo "<option value='$r_album[id]'>$r_album[title]</option>\n";
-										}
-									?>
-								</select>
-							</td>
-							<td class='entry'>
-								<?php echo $lng["gallery_upload_tooltip_name"]; ?>
-								<br/><br/>
-								<input type='text' id='username'/>
-							</td>
-						</tr>
-					</table>
-					<input type="submit" id="photo_submit" value="<?php echo $lng["gallery_upload_submit"];?>">
 				</div>
 			</form>
 		</div>

+ 18 - 18
www/header.php

@@ -5,14 +5,14 @@
 		<div id="header_menu">
 			<table>
 				<tr>
-					<td><a href="http://<?php echo $http_host; ?>/"><?php echo $lng['header_home'];?></a></td>
-					<td><a href="http://<?php echo $http_host; ?>/lablanca/"><?php echo $lng['header_lablanca'];?></a></td>
-					<td><a href="http://<?php echo $http_host; ?>/actividades/"><?php echo $lng['header_activities'];?></a></td>
-					<td><a href="http://<?php echo $http_host; ?>/blog/"><?php echo $lng['header_blog'];?></a></td>
-					<td><a href="http://<?php echo $http_host; ?>/nosotros/"><?php echo $lng['header_whoarewe'];?></a></td>
-					<td><a href="http://<?php echo $http_host; ?>/galeria/"><?php echo $lng['header_gallery'];?></a></td>
-	<!-- 				<td><a href="http://<?php echo $http_host; ?>/prensa/"><?php echo $lng['header_press'];?></a></td> -->
-<!-- 					<td><a href="http://<?php echo $http_host; ?>/unete/"><?php echo $lng['header_join'];?></a></td> -->
+					<td><a href="<?php echo $proto . $http_host; ?>/"><?php echo $lng['header_home'];?></a></td>
+					<td><a href="<?php echo $proto . $http_host; ?>/lablanca/"><?php echo $lng['header_lablanca'];?></a></td>
+					<td><a href="<?php echo $proto . $http_host; ?>/actividades/"><?php echo $lng['header_activities'];?></a></td>
+					<td><a href="<?php echo $proto . $http_host; ?>/blog/"><?php echo $lng['header_blog'];?></a></td>
+					<td><a href="<?php echo $proto . $http_host; ?>/nosotros/"><?php echo $lng['header_whoarewe'];?></a></td>
+					<td><a href="<?php echo $proto . $http_host; ?>/galeria/"><?php echo $lng['header_gallery'];?></a></td>
+	<!-- 				<td><a href="<?php echo $proto . $http_host; ?>/prensa/"><?php echo $lng['header_press'];?></a></td> -->
+<!-- 					<td><a href="<?php echo $proto . $http_host; ?>/unete/"><?php echo $lng['header_join'];?></a></td> -->
 				</tr>
 			</table>
 		</div>
@@ -21,16 +21,16 @@
 <div id="header_m" class="mobile">
 	<img src="/img/logo/logo.png" onClick='toggleMobileMenu();' id='mobile_logo'/>
 	<div id="header_menu_m">
-		<div id='header_m_title' onClick='openMobileMenu();' class='pointer'><span><img src='http://<?php echo $http_host; ?>/img/misc/slid-menu.png'/>&nbsp;&nbsp;&nbsp;&nbsp;<?php echo $cur_section; ?></span></div>
-		<div class='header_m_link'><a href="http://<?php echo $http_host; ?>/"><?php echo $lng['header_home'];?></a></div>
-		<div class='header_m_link'><a href="http://<?php echo $http_host; ?>/lablanca/"><?php echo $lng['header_lablanca'];?></a></div>
-		<div class='header_m_link'><a href="http://<?php echo $http_host; ?>/actividades/"><?php echo $lng['header_activities'];?></a></div>
-		<div class='header_m_link'><a href="http://<?php echo $http_host; ?>/blog/"><?php echo $lng['header_blog'];?></a></div>
-		<div class='header_m_link'><a href="http://<?php echo $http_host; ?>/nosotros/"><?php echo $lng['header_whoarewe'];?></a></div>
-		<div class='header_m_link'><a href="http://<?php echo $http_host; ?>/galeria/"><?php echo $lng['header_gallery'];?></a></div>
-<!-- 		<div class='header_m_link'><a href="http://<?php echo $http_host; ?>/prensa/"><?php echo $lng['header_press'];?></a></div> -->
-<!-- 		<div class='header_m_link'><a href="http://<?php echo $http_host; ?>/unete/"><?php echo $lng['header_join'];?></a></div> -->
-		<div id='header_m_slider' onClick='closeMobileMenu();' class='pointer'><span><img src='http://<?php echo $http_host; ?>/img/misc/slid-top.png'/></span></div>
+		<div id='header_m_title' onClick='openMobileMenu();' class='pointer'><span><img src='<?php echo $proto . $http_host; ?>/img/misc/slid-menu.png'/>&nbsp;&nbsp;&nbsp;&nbsp;<?php echo $cur_section; ?></span></div>
+		<div class='header_m_link'><a href="<?php echo($proto . $http_host); ?>/"><?php echo $lng['header_home'];?></a></div>
+		<div class='header_m_link'><a href="<?php echo($proto . $http_host); ?>/lablanca/"><?php echo $lng['header_lablanca'];?></a></div>
+		<div class='header_m_link'><a href="<?php echo($proto . $http_host); ?>/actividades/"><?php echo $lng['header_activities'];?></a></div>
+		<div class='header_m_link'><a href="<?php echo($proto . $http_host); ?>/blog/"><?php echo $lng['header_blog'];?></a></div>
+		<div class='header_m_link'><a href="<?php echo($proto . $http_host); ?>/nosotros/"><?php echo $lng['header_whoarewe'];?></a></div>
+		<div class='header_m_link'><a href="<?php echo($proto . $http_host); ?>/galeria/"><?php echo $lng['header_gallery'];?></a></div>
+<!-- 		<div class='header_m_link'><a href="<?php echo($proto . $http_host); ?>/prensa/"><?php echo $lng['header_press'];?></a></div> -->
+<!-- 		<div class='header_m_link'><a href="<?php echo($proto . $http_host); ?>/unete/"><?php echo $lng['header_join'];?></a></div> -->
+		<div id='header_m_slider' onClick='closeMobileMenu();' class='pointer'><span><img src='<?php echo($proto . $http_host); ?>/img/misc/slid-top.png'/></span></div>
 	</div><br/><br/>
 </div>
 

BIN
www/img/misc/ul.png


+ 369 - 231
www/index.php

@@ -1,7 +1,10 @@
 <?php
 	session_start();
+	#$proto = $_SERVER['SERVER_PROTOCOL'];
+	#$proto = strtolower(substr($_SERVER["SERVER_PROTOCOL"],0,strpos( $_SERVER["SERVER_PROTOCOL"],'/'))).'://';
 	$http_host = $_SERVER['HTTP_HOST'];
 	include("functions.php");
+	$proto = getProtocol();
 	$con = startdb();
 	
 	//Language
@@ -17,226 +20,338 @@
 		<meta charset="utf-8"/>
 		<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1">
 		<title><?php echo $lng['index_title'];?></title>
-		<link rel="shortcut icon" href="<?php echo "http://$http_host/img/logo/favicon.ico";?>">
+		<link rel="shortcut icon" href="<?php echo "$proto$http_host/img/logo/favicon.ico";?>">
 		<!-- CSS files -->
 		<style>
-			<?php 
+<?php 
 				include("css/ui.css"); 
 				include("css/index.css");
-			?>
+?>
 		</style>
 		<!-- CSS for mobile version -->
 		<style media="(max-width : 990px)">
-			<?php 
+<?php 
 				include("css/m/ui.css"); 
 				include("css/m/index.css");
-			?>
+?>
 		</style>
 		<!-- Script files -->
 		<script type="text/javascript">
-			<?php include("script/ui.js"); ?>
+<?php include("script/ui.js"); ?>
 		</script>
 		<!-- Meta tags -->
-		<link rel="canonical" href="<?php echo "http://$http_host"; ?>"/>
-		<link rel="author" href="<?php echo "http://$http_host"; ?>"/>
-		<link rel="publisher" href="<?php echo "http://$http_host"; ?>"/>
-		<meta name="description" content="<?php echo $lng['index_description'];?>"/>
+		<link rel="canonical" href="<?php echo "$proto$http_host"; ?>"/>
+		<link rel="author" href="<?php echo "$proto$http_host"; ?>"/>
+		<link rel="publisher" href="<?php echo "$proto$http_host"; ?>"/>
+		<meta name="description" content="<?php echo $lng['index_us_content'];?>"/>
 		<meta property="og:title" content="<?php echo $lng['index_title'];?>"/>
-		<meta property="og:url" content="<?php echo "http://$http_host"; ?>"/>
-		<meta property="og:description" content="<?php echo $lng['index_description'];?>"/>
-		<meta property="og:image" content="<?php echo "http://$http_host/img/logo/logo.png";?>"/>
+		<meta property="og:url" content="<?php echo "$proto$http_host"; ?>"/>
+		<meta property="og:description" content="<?php echo $lng['index_us_content'];?>"/>
+		<meta property="og:image" content="<?php echo "$proto$http_host/img/logo/logo.png";?>"/>
 		<meta property="og:site_name" content="<?php echo $lng['index_title'];?>"/>
 		<meta property="og:type" content="website"/>
 		<meta property="og:locale" content="<?php echo $lang; ?>"/>
 		<meta name="twitter:card" content="summary"/>
 		<meta name="twitter:title" content="<?php echo $lng['index_title'];?>"/>
-		<meta name="twitter:description" content="<?php echo $lng['index_description'];?>"/>
-		<meta name="twitter:image" content="<?php echo "http://$http_host/img/logo/logo.png";?>"/>
-		<meta name="twitter:url" content="<?php echo"http://$http_host"; ?>"/>
+		<meta name="twitter:description" content="<?php echo $lng['index_us_content'];?>"/>
+		<meta name="twitter:image" content="<?php echo "$proto$http_host/img/logo/logo.png";?>"/>
+		<meta name="twitter:url" content="<?php echo"$proto$http_host"; ?>"/>
 		<meta name="robots" content="index follow"/>
 	</head>
 	<body>
-		<?php include("header.php"); ?>
+<?php include("header.php"); ?>
 		<div id="content">
-			<?php
+
+<?php		
+				//Location section
+				$q_location = mysqli_query($con, "SELECT lat, lon FROM location WHERE action = 'report' AND dtime > NOW() - INTERVAL 30 MINUTE ORDER BY dtime DESC LIMIT 1;");
+				if (mysqli_num_rows($q_location) > 0){
+					$r_location = mysqli_fetch_array($q_location);
+?>
+					<div class='section' id='location'>
+					<h3 class='section_title'><?=$lng[index_festivals_location]?></h3>
+						<div class='entry' id='map'>
+							<iframe src='https://www.google.com/maps/embed/v1/place?key=AIzaSyCZHP7t2on_G3eyyoCTfhGAlDx1mJnX7iI&q=<?=$r_location[lat]?>,<?=$r_location[lon]?>' allowfullscreen></iframe>
+						</div>
+					</div>
+<?php
+				}
+
 				//Festivals section
 				$year = date("Y");
 				$q_settings = mysqli_query($con, "SELECT value FROM settings WHERE name = 'festivals';");
 				$r_settings = mysqli_fetch_array($q_settings);
-				if ($r_settings['value'] == 1){
-					echo "<div class='section' id='festivales' itemscope itemtype='http://schema.org/Event'>\n";
-					echo "<meta itemprop='inLanguage' content='$lang'/>\n";
-					echo "<meta itemprop='name' content='$lng[index_festivals_header] $year'/>\n";
-					echo "<meta itemprop='description' content='$lng[index_festivals_header] $year'/>\n";
-					echo "<meta itemprop='startDate' content='$year-08-04'/>\n";
-					echo "<meta itemprop='endDate' content='$year-08-09'/>\n";
-					echo "<meta itemprop='url' content='http://$http_host/lablanca/'/>\n";
-					echo("<span class='hidden' itemprop='location' itemscope itemtype='http://schema.org/Place'><meta itemprop='address name' content='Vitoria-Gasteiz'/></span>\n");
-					echo "<h3 class='section_title'>$lng[index_festivals_header] $year</h3>\n";
-					echo "<table class='festival_section_table'><tr>\n";
-					
-					//Summary
-					$q_festivals = mysqli_query($con, "SELECT text_$lang AS text, summary_$lang AS summary, img FROM festival WHERE year = $year;");
-					if(mysqli_num_rows($q_festivals)){
-						echo "<td><div class='entry' id='festivals_summary'>\n";
-						$r_festivals = mysqli_fetch_array($q_festivals);
-						if ($r_festivals['img'] != ''){
-							echo "<meta itemprop='image' content='http://$http_host/img/fiestas/$r_festivals[img]'/>\n";
-							echo "<img id='festivals_image' alt=' ' src='http://$http_host/img/fiestas/$r_festivals[img]'/>\n";
-						}
-						if ($r_festivals['summary'] != ''){
-							echo "<span id='festivals_summary_text'><br/>$r_festivals[summary]</span>\n";
-							echo "<br/><br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href='http://$http_host/lablanca/'>$lng[index_festivals_link]</a>\n";
-						}
-						else{
-							echo "<span id='festivals_summary_text'><br/>" . cutText($r_festivals['text'], 300, "$lng[index_read_more]", "http://$http_host/lablanca/") . "</span>\n";
-							//echo "<br/><br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href='http://$http_host/lablanca/'>$lng[index_festivals_link]</a>\n";
-						}
-						echo "</div></td>\n";
-					}
-					
-					
-					//Location
-					$q_location = mysqli_query($con, "SELECT lat, lon FROM location WHERE action = 'report' AND dtime > NOW() - INTERVAL 30 MINUTE ORDER BY dtime DESC LIMIT 1;");
-					if (mysqli_num_rows($q_location) > 0){
-						$r_location = mysqli_fetch_array($q_location);
-						echo "<td><div class='entry' id='festival_entry_map'>\n";
-						echo "<h3>$lng[index_festivals_location]</h3>\n";
-						echo "<iframe src='https://www.google.com/maps/embed/v1/place?key=AIzaSyCZHP7t2on_G3eyyoCTfhGAlDx1mJnX7iI&q=$r_location[lat],$r_location[lon]' allowfullscreen></iframe>\n";
-						echo "</div>\n";
-					}
-					
-					echo "</tr></table>\n";
-					echo "<table class='festival_section_table'><tr>\n";
-					
-					//GM schedule
-					$q_sch_curr = mysqli_query($con, "SELECT festival_event.id AS id, gm, title_$lang AS title, description_$lang AS description, host, place, date_format(start, '%H:%i') AS st, date_format(end, '%H:%i') AS end, DATE_FORMAT(start, '%Y-%m-%dT%H:%i:00') AS isostart, DATE_FORMAT(end, '%Y-%m-%dT%H:%i:00') AS isoend, place.name_$lang AS place, address_$lang AS address, lat, lon FROM festival_event, place WHERE place.id = festival_event.place AND gm = 1 AND start > NOW() - INTERVAL 45 MINUTE AND start < NOW() + INTERVAL 30 MINUTE ORDER BY start LIMIT 1;");
-					$q_sch_next = mysqli_query($con, "SELECT festival_event.id AS id, gm, title_$lang AS title, description_$lang AS description, host, place, date_format(start, '%H:%i') AS st, date_format(end, '%H:%i') AS end, DATE_FORMAT(start, '%Y-%m-%dT%H:%i:00') AS isostart, DATE_FORMAT(end, '%Y-%m-%dT%H:%i:00') AS isoend, place.name_$lang AS place, address_$lang AS address, lat, lon FROM festival_event, place WHERE place.id = festival_event.place AND gm = 1 AND start > NOW() AND start < NOW() + INTERVAL 240 MINUTE ORDER BY start LIMIT 1;");
-					if (mysqli_num_rows($q_sch_curr) > 0 || mysqli_num_rows($q_sch_next) > 0){
-						echo "<td><div class='entry festival_schedule'>\n";
-						echo "<h3>$lng[index_festivals_gm_schedule]</h3>\n";
+				$festivals = $r_settings['value'];
+				if ($festivals == 1){
+?>
+					<div class='section' id='festivals' itemscope itemtype='http://schema.org/Event'>
+						<meta itemprop='inLanguage' content='<?=$lang?>'/>
+						<meta itemprop='name' content='<?=$lng['index_festivals_header']?> <?=$year?>'/>
+						<meta itemprop='description' content='<?=$lng['index_festivals_header']?> <?=$year?>'/>
+						<meta itemprop='startDate' content='<?=$year?>-08-04'/>
+						<meta itemprop='endDate' content='<?=$year?>-08-09'/>
+						<meta itemprop='url' content='<?=$proto?><?=$http_host?>/lablanca/'/>
+						<span class='hidden' itemprop='location' itemscope itemtype='http://schema.org/Place'><meta itemprop='address' itemprop='name' content='Vitoria-Gasteiz'/></span>
+						<h3 class='section_title'><?=$lng['index_festivals_header']?> <?=$year?></h3>
+						<div class='entry' id='festivals_summary'>
+<?php
 					
-						if (mysqli_num_rows($q_sch_curr) > 0){
-							$r_sch_curr = mysqli_fetch_array($q_sch_curr);
-							echo "<div id='festival_event' itemprop='subEvent' itemscope itemtype='http://schema.org/Event'><h4>$lng[index_festivals_schedule_now]</h4>\n";
-							echo "<meta itemprop='inLanguage' content='$lang'/>\n";
-							echo "<meta itemprop='name' content='$r_sch_curr[title]'/>\n";
-							echo "<meta itemprop='startDate' content='$r_sch_curr[isostart]'/>\n";
-							if (strlen($r_sch_curr['isoend']) > 0){
-								echo "<meta itemprop='endDate' content='$r_sch_curr[isoend]'/>\n";
-							}
-							echo("<span class='hidden' itemprop='location' itemscope itemtype='http://schema.org/Place'><meta itemprop='address' content='Vitoria-Gasteiz'/><span>\n");
-							echo "<span class='title'>$r_sch_curr[title]\n</span>";
-							if (strlen($r_sch_curr["description"]) > 0 && $r_sch_curr["description"] != $r_sch_curr["title"]){
-								echo "<br/><span class='description'>$r_sch_curr[description]</span>\n";
-								echo "<meta itemprop='description' content='$r_sch_curr[description]'/>\n";
-							}
-							echo "<table class='location'><tr>\n";
-							echo "<td><a target='_blank' href='http://maps.google.com/maps?q=$r_sch_curr[lat],$r_sch_curr[lon]+(My+Point)&z=14&ll=$r_sch_curr[lat],$r_sch_curr[lon]'><img alt=' ' src='http://$http_host/img/misc/pinpoint.png'/></a></td>\n"; 
-							//If name and address are the same, show only name
-							if ($r_sch_curr['place'] == $r_sch_curr['address']){
-								echo "<td>$r_sch_curr[place]</td></tr></table>\n";
-							}
-							else{
-								echo "<td>$r_sch_curr[place] <span class='address'>- $r_sch_curr[address]</span></td></tr></table>\n";
-							}
-							echo "</div\n>";
-						}
-						
-						if (mysqli_num_rows($q_sch_next) > 0){
-							$r_sch_next = mysqli_fetch_array($q_sch_next);
-							echo "<div id='festival_event' itemprop='subEvent' itemscope itemtype='http://schema.org/Event'><h4>$lng[index_festivals_schedule_next]</h4>\n";
-							echo "<meta itemprop='inLanguage' content='$lang'/>\n";
-							echo "<meta itemprop='name' content='$r_sch_next[title]'/>\n";
-							echo "<meta itemprop='startDate' content='$r_sch_next[isostart]'/>\n";
-							if (strlen($r_sch_curr['isoend']) > 0){
-								echo "<meta itemprop='endDate' content='$r_sch_next[isoend]'/>\n";
-							}
-							echo("<span class='hidden' itemprop='location' itemscope itemtype='http://schema.org/Place'><meta itemprop='address name'>Vitoria-Gasteiz</meta></span>\n");
-							echo "<span class='title'>$r_sch_next[title] - $r_sch_next[st]\n</span>";
-							if (strlen($r_sch_next["description"]) > 0 && $r_sch_next["description"] != $r_sch_next["title"]){
-								echo "<br/><span class='description'>$r_sch_next[description]</span>\n";
-								echo "<meta itemprop='description' content='$r_sch_next[description]'/>\n";
-							}
-							echo "<table class='location'><tr>\n";
-							echo "<td><a target='_blank' href='http://maps.google.com/maps?q=$r_sch_next[lat],$r_sch_next[lon]+(My+Point)&z=14&ll=$r_sch_next[lat],$r_sch_next[lon]'><img alt=' ' src='http://$http_host/img/misc/pinpoint.png'/></a></td>\n"; 
-							//If name and address are the same, show only name
-							if ($r_sch_next['place'] == $r_sch_next['address']){
-								echo "<td>$r_sch_next[place]</td></tr></table>\n";
-							}
-							else{
-								echo "<td>$r_sch_next[place] <span class='address'>- $r_sch_next[address]</span></td></tr></table>\n";
+							//Summary
+							$q_festivals = mysqli_query($con, "SELECT text_$lang AS text, summary_$lang AS summary, img FROM festival WHERE year = $year;");
+							if(mysqli_num_rows($q_festivals)){
+								$r_festivals = mysqli_fetch_array($q_festivals);
+								if ($r_festivals['img'] != ''){
+									echo("<meta itemprop='image' content='$proto$http_host/img/fiestas/$r_festivals[img]'/>\n");
+									echo("<img id='festivals_image' alt=' ' src='$proto$http_host/img/fiestas/$r_festivals[img]'/>\n");
+								}
+								if ($r_festivals['summary'] != ''){
+									echo "<span class='entry_title' id='festivals_summary_text'><br/>$r_festivals[summary]</span>\n";
+									echo "<br/><br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href='$proto$http_host/lablanca/'>$lng[index_festivals_link]</a>\n";
+								}
+								else{
+									echo "<span id='festivals_summary_text'><br/>" . cutText($r_festivals['text'], 300, "$lng[index_read_more]", "$proto$http_host/lablanca/") . "</span>\n";
+								}
 							}
-							echo "</div\n>";
-						}
-						echo "</div></td>\n"; //close gm schedule entry;
-					}
+?>
+						</div> <!--festivals_summary - entry-->
+						<div id='festivals_schedule_table'>
+							<div id='festivals_schedule_row'>
+								<div class='festivals_schedule_cell'>
+<?php
+									//GM schedule
+									$q_sch_curr = mysqli_query($con, "SELECT festival_event.id AS id, gm, title_$lang AS title, description_$lang AS description, host, place, date_format(start, '%H:%i') AS st, date_format(end, '%H:%i') AS end, DATE_FORMAT(start, '%Y-%m-%dT%H:%i:00') AS isostart, DATE_FORMAT(end, '%Y-%m-%dT%H:%i:00') AS isoend, place.name_$lang AS place, address_$lang AS address, lat, lon FROM festival_event, place WHERE place.id = festival_event.place AND gm = 1 AND start > NOW() - INTERVAL 45 MINUTE AND start < NOW() + INTERVAL 30 MINUTE ORDER BY start LIMIT 1;");
+									$q_sch_next = mysqli_query($con, "SELECT festival_event.id AS id, gm, title_$lang AS title, description_$lang AS description, host, place, date_format(start, '%H:%i') AS st, date_format(end, '%H:%i') AS end, DATE_FORMAT(start, '%Y-%m-%dT%H:%i:00') AS isostart, DATE_FORMAT(end, '%Y-%m-%dT%H:%i:00') AS isoend, place.name_$lang AS place, address_$lang AS address, lat, lon FROM festival_event, place WHERE place.id = festival_event.place AND gm = 1 AND start > NOW() AND start < NOW() + INTERVAL 240 MINUTE ORDER BY start LIMIT 1;");
+
+									if (mysqli_num_rows($q_sch_curr) > 0 || mysqli_num_rows($q_sch_next) > 0){
+										echo("<div class='entry festival_schedule' id='festivals_gm'>\n");
+										echo("<h3 class='entry_title'>$lng[index_festivals_gm_schedule]</h3>\n");
 										
-					//city schedule
-					$q_sch_curr = mysqli_query($con, "SELECT festival_event.id AS id, gm, title_$lang AS title, description_$lang AS description, host, place, date_format(start, '%H:%i') AS st, date_format(end, '%H:%i') AS end, DATE_FORMAT(start, '%Y-%m-%dT%H:%i:00') AS isostart, DATE_FORMAT(end, '%Y-%m-%dT%H:%i:00') AS isoend, place.name_$lang AS place, address_$lang AS address, lat, lon FROM festival_event, place WHERE place.id = festival_event.place AND gm = 0 AND start > NOW() - INTERVAL 45 MINUTE AND start < NOW() + INTERVAL 30 MINUTE ORDER BY start LIMIT 1;");
-					$q_sch_next = mysqli_query($con, "SELECT festival_event.id AS id, gm, title_$lang AS title, description_$lang AS description, host, place, date_format(start, '%H:%i') AS st, date_format(end, '%H:%i') AS end, DATE_FORMAT(start, '%Y-%m-%dT%H:%i:00') AS isostart, DATE_FORMAT(end, '%Y-%m-%dT%H:%i:00') AS isoend, place.name_$lang AS place, address_$lang AS address, lat, lon FROM festival_event, place WHERE place.id = festival_event.place AND gm = 0 AND start > NOW() AND start < NOW() + INTERVAL 240 MINUTE ORDER BY start LIMIT 1;");
-					if (mysqli_num_rows($q_sch_curr) > 0 || mysqli_num_rows($q_sch_next) > 0){
-						echo "<td><div class='entry festival_schedule' >\n";
-						echo "<h3>$lng[index_festivals_city_schedule]</h3>\n";
-					
-						if (mysqli_num_rows($q_sch_curr) > 0){
-							$r_sch_curr = mysqli_fetch_array($q_sch_curr);
-							echo "<div class='festival_event' itemprop='subEvent' itemscope itemtype='http://schema.org/Event'><h4>$lng[index_festivals_schedule_now]</h4>\n";
-							echo "<meta itemprop='inLanguage' content='$lang'/>\n";
-							echo "<meta itemprop='name' content='$r_sch_curr[title]'/>\n";
-							echo "<meta itemprop='startDate' content='$r_sch_curr[isostart]'/>\n";
-							if (strlen($r_sch_curr['isoend']) > 0){
-								echo "<meta itemprop='endDate' content='$r_sch_curr[isoend]'/>\n";
-							}
-							echo("<span class='hidden' itemprop='location' itemscope itemtype='http://schema.org/Place'><meta itemprop='address name'>Vitoria-Gasteiz</meta></span>\n");
-							echo "<span class='title'>$r_sch_curr[title]\n</span>";
-							if (strlen($r_sch_curr["description"]) > 0 && $r_sch_curr["description"] != $r_sch_curr["title"]){
-								echo "<br/><span class='description'>$r_sch_curr[description]</span>\n";
-								echo "<meta itemprop='description' content='$r_sch_curr[description]'/>\n";
-							}
-							echo "<table class='location'><tr>\n";
-							echo "<td><a target='_blank' href='http://maps.google.com/maps?q=$r_sch_curr[lat],$r_sch_curr[lon]+(My+Point)&z=14&ll=$r_sch_curr[lat],$r_sch_curr[lon]'><img alt=' ' src='http://$http_host/img/misc/pinpoint.png'/></a></td>\n"; 
-							//If name and address are the same, show only name
-							if ($r_sch_curr['place'] == $r_sch_curr['address']){
-								echo "<td>$r_sch_curr[place]</td></tr></table>\n";
-							}
-							else{
-								echo "<td>$r_sch_curr[place] <span class='address'>- $r_sch_curr[address]</span></td></tr></table>\n";
-							}
-							echo "</div\n>";
-						}
+										if (mysqli_num_rows($q_sch_curr) > 0){
+											$r_sch_curr = mysqli_fetch_array($q_sch_curr);
+?>
+											<div class='festival_event' itemprop='subEvent' itemscope itemtype='http://schema.org/Event'>
+												<h4><?=$lng[index_festivals_schedule_now]?></h4>
+												<meta itemprop='inLanguage' content='<?=$lang?>'/>
+												<meta itemprop='name' content='<?=$r_sch_curr['title']?>'/>
+												<meta itemprop='startDate' content='<?=$r_sch_curr['isostart']?>'/>
+												<span class='hidden' itemprop='location' itemscope itemtype='http://schema.org/Place'>
+													<meta itemprop='address' content='Vitoria-Gasteiz'/>
+												</span>
+<?php
+												if (strlen($r_sch_curr['isoend']) > 0){
+													echo("<meta itemprop='endDate' content='$r_sch_curr[isoend]'/>\n");
+												}
+?>
+												<div class='schedule_content'>
+													<span class='title'><?=$r_sch_curr['title']?></span>
+<?php
+													if (strlen($r_sch_curr["description"]) > 0 && $r_sch_curr["description"] != $r_sch_curr["title"]){
+														echo("<br/><p class='description'>$r_sch_curr[description]</p>\n");
+														echo("<meta itemprop='description' content='$r_sch_curr[description]'/>\n");
+													}
+?>
+													<table class='location'>
+														<tr>
+															<td>
+																<a target='_blank' href='http://maps.google.com/maps?q=<?=$r_sch_curr[lat]?>,<?=$r_sch_curr[lon]?>+(My+Point)&z=14&ll=<?=$r_sch_curr[lat]?>,<?=$r_sch_curr[lon]?>'>
+																	<img alt=' ' src='<?=$proto?><?=$http_host?>/img/misc/pinpoint.png'/>
+																</a>
+															</td>
+															<td>
+<?php
+																//If name and address are the same, show only name
+																if ($r_sch_curr['place'] == $r_sch_curr['address']){
+																	echo("$r_sch_curr[place]\n");
+																}
+																else{
+																	echo("$r_sch_curr[place] <br/><span class='address'> $r_sch_curr[address]</span>\n");
+																}
+?>
+															</td>
+														</tr>
+													</table>
+												</div> <!--.schedule_content  -->
+											</div> <!-- festival-event -->
+<?php
+										} // if (mysqli_num_rows($q_sch_curr) > 0)
+										if (mysqli_num_rows($q_sch_next) > 0){
+											$r_sch_next = mysqli_fetch_array($q_sch_next);
+?>
+											
+											<div class='festival_event' itemprop='subEvent' itemscope itemtype='http://schema.org/Event'>
+												<h4><?=$lng['index_festivals_schedule_next']?></h4>
+												<meta itemprop='inLanguage' content='<?=$lang?>'/>
+												<meta itemprop='name' content='<?=$r_sch_next['title']?>'/>
+												<meta itemprop='startDate' content='<?=$r_sch_next['isostart']?>'/>
+												<span class='hidden' itemprop='location' itemscope itemtype='http://schema.org/Place'>
+													<meta itemprop='address' itemprop='name'>Vitoria-Gasteiz</meta>
+												</span>
+<?php
+												if (strlen($r_sch_curr['isoend']) > 0){
+													echo("<meta itemprop='endDate' content='$r_sch_next[isoend]'/>\n");
+												}
+?>
+												<div class='schedule_content'>
+													<span class='title'><?=$r_sch_next['title']?> - <?=$r_sch_next['st']?></span>
+<?php
+													if (strlen($r_sch_next["description"]) > 0 && $r_sch_next["description"] != $r_sch_next["title"]){
+														echo("<br/><p class='description'>$r_sch_next[description]</p>\n");
+														echo("<meta itemprclass='entry'op='description' content='$r_sch_next[description]'/>\n");
+													}
+?>
+													<table class='location'>
+														<tr>
+															<td>
+																<a target='_blank' href='http://maps.google.com/maps?q=<?=$r_sch_next[lat]?>,<?=$r_sch_next[lon]?>+(My+Point)&z=14&ll=<?=$r_sch_next[lat]?>,<?=$r_sch_next[lon]?>'>
+																	<img alt=' ' src='<?=$proto?><?=$http_host?>/img/misc/pinpoint.png'/>
+																</a>
+															</td>
+															<td>
+<?php
+																//If name and address are the same, show only name
+																if ($r_sch_next['place'] == $r_sch_next['address']){
+																	echo("$r_sch_next[place]\n");
+																}
+																else{
+																	echo("$r_sch_next[place] </br><span class='address'> $r_sch_next[address]</span>\n");
+																}
+?>
+															</td>
+														</tr>
+													</table>
+												</div> <!--.schedule_content  -->
+											</div> <!-- festival-event -->
+<?php
+										}
+?>
+										</div> <!--festivals_gm-->
+<?php
+									} // if (mysqli_num_rows($q_sch_curr) > 0 || ysqli_num_rows($q_sch_next) > 0)
+?>
+								</div> <!-- festivals_schedule_cell -->
+								<div class='festivals_schedule_cell'>
+<?php
+												
+									//City schedule
+									$q_sch_curr = mysqli_query($con, "SELECT festival_event.id AS id, gm, title_$lang AS title, description_$lang AS description, host, place, date_format(start, '%H:%i') AS st, date_format(end, '%H:%i') AS end, DATE_FORMAT(start, '%Y-%m-%dT%H:%i:00') AS isostart, DATE_FORMAT(end, '%Y-%m-%dT%H:%i:00') AS isoend, place.name_$lang AS place, address_$lang AS address, lat, lon FROM festival_event, place WHERE place.id = festival_event.place AND gm = 0 AND start > NOW() - INTERVAL 45 MINUTE AND start < NOW() + INTERVAL 30 MINUTE ORDER BY start LIMIT 1;");
+									$q_sch_next = mysqli_query($con, "SELECT festival_event.id AS id, gm, title_$lang AS title, description_$lang AS description, host, place, date_format(start, '%H:%i') AS st, date_format(end, '%H:%i') AS end, DATE_FORMAT(start, '%Y-%m-%dT%H:%i:00') AS isostart, DATE_FORMAT(end, '%Y-%m-%dT%H:%i:00') AS isoend, place.name_$lang AS place, address_$lang AS address, lat, lon FROM festival_event, place WHERE place.id = festival_event.place AND gm = 0 AND start > NOW() AND start < NOW() + INTERVAL 240 MINUTE ORDER BY start LIMIT 1;");
+									if (mysqli_num_rows($q_sch_curr) > 0 || mysqli_num_rows($q_sch_next) > 0){
+										echo "<div class='entry festival_schedule' id='festivals_city'>\n";
+										
+										echo "<h3 class='entry_title'>$lng[index_festivals_city_schedule]</h3>\n";
+									
+										if (mysqli_num_rows($q_sch_curr) > 0){
+											$r_sch_curr = mysqli_fetch_array($q_sch_curr);
+?>
+											<div class='festival_event' itemprop='subEvent' itemscope itemtype='http://schema.org/Event'>
+												<h4><?=$lng['index_festivals_schedule_now']?></h4>
+												<meta itemprop='inLanguage' content='<?=$lang?>'/>
+												<meta itemprop='name' content='<?=$r_sch_curr['title']?>'/>
+												<meta itemprop='startDate' content='<?=$r_sch_curr['isostart']?>'/>
+												<span class='hidden' itemprop='location' itemscope itemtype='http://schema.org/Place'>
+													<meta itemprop='address' itemprop='name'>Vitoria-Gasteiz</meta>
+												</span>
+<?php
+												if (strlen($r_sch_curr['isoend']) > 0){
+													echo("<meta itemprop='endDate' content='$r_sch_curr[isoend]'/>\n");
+												}
+?>
+												<div class='schedule_content'>
+													<span class='title'><?=$r_sch_curr['title']?></span>
+<?php
+
+													if (strlen($r_sch_curr["description"]) > 0 && $r_sch_curr["description"] != $r_sch_curr["title"]){
+														echo("<br/><p class='description'>$r_sch_curr[description]</p>\n");
+														echo("<meta itemprop='description' content='$r_sch_curr[description]'/>\n");
+													}
+?>
+													<table class='location'>
+														<tr>
+															<td>
+																<a target='_blank' href='http://maps.google.com/maps?q=<?=$r_sch_curr[lat]?>,<?=$r_sch_curr[lon]?>+(My+Point)&z=14&ll=<?=$r_sch_curr[lat]?>,<?=$r_sch_curr[lon]?>'>
+																	<img alt=' ' src='<?=$proto?><?=$http_host?>/img/misc/pinpoint.png'/>
+																</a>
+															</td>
+															<td>
+<?php
+																//If name and address are the same, show only name
+																if ($r_sch_curr['place'] == $r_sch_curr['address']){
+																	echo("$r_sch_curr[place]\n");
+																}
+																else{
+																	echo("$r_sch_curr[place] <br/><span class='address'> $r_sch_curr[address]</span>\n");
+																}
+?>
+															</td>
+														</tr>
+													</table>
+												</div> <!--.schedule_content  -->
+											</div> <!-- festival-event -->
+<?php
+										}
+
+										
+										if (mysqli_num_rows($q_sch_next) > 0){
+											$r_sch_next = mysqli_fetch_array($q_sch_next);
+?>
+											<div class='festival_event' itemprop='subEvent' itemscope itemtype='http://schema.org/Event'>
+												<h4><?=$lng['index_festivals_schedule_next']?></h4>
+												<meta itemprop='inLanguage' content='<?=$lang?>'/>
+												<meta itemprop='name' content='<?=$r_sch_next['title']?>'/>
+												<meta itemprop='startDate' content='<?=$r_sch_next['isostart']?>'/>
+												<span class='hidden' itemprop='location' itemscope itemtype='http://schema.org/Place'>
+													<meta itemprop='address' itemprop='name'>Vitoria-Gasteiz</meta>
+												</span>
+<?php
+												if (strlen($r_sch_curr['isoend']) > 0){
+													echo "<meta itemprop='endDate' content='$r_sch_next[isoend]'/>\n";
+												}
+?>
+												<div class='schedule_content'>
+													<span class='title'><?=$r_sch_next['title']?> - <?=$r_sch_next['st']?></span>
+<?php
+													if (strlen($r_sch_next["description"]) > 0 && $r_sch_next["description"] != $r_sch_next["title"]){
+														echo "<br/><p class='description'>$r_sch_next[description]</p>\n";
+														echo "<meta itemprop='description' content='$r_sch_next[description]'/>\n";
+													}
+?>
+													<table class='location'>
+														<tr>
+															<td>
+																<a target='_blank' href='http://maps.google.com/maps?q=<?=$r_sch_next[lat]?>,<?=$r_sch_next[lon]?>+(My+Point)&z=14&ll=<?=$r_sch_next[lat]?>,<?=$r_sch_next[lon]?>'>
+																	<img alt=' ' src='<?=$proto?><?=$http_host?>/img/misc/pinpoint.png'/>
+																</a>
+															</td>
+															<td>
+<?php
+																//If name and address are the same, show only name
+																if ($r_sch_next['place'] == $r_sch_next['address']){
+																	echo("$r_sch_next[place]\n");
+																}
+																else{
+																	echo("$r_sch_next[place] <br/><span class='address'> $r_sch_next[address]</span>\n");
+																}
+?>
+															</td>
+														</tr>
+													</table>
+												</div> <!--.schedule_content  -->
+											</div> <!-- festival-event -->
+<?php
+										}
+?>
+										</div> <!--festivals_schedule-->
+<?php
+									}
+?>
+								</div> <!-- festivals_schedule_cell -->
+							</div> <!-- festivals_schedule_row -->
+						</div> <!-- festivals_schedule_table -->
+						<a class='go_to_section' href='<?=$proto?><?=$http_host?>/lablanca/'><?=$lng['index_festivals_link']?></a>
+						<br/>
 						
-						if (mysqli_num_rows($q_sch_next) > 0){
-							$r_sch_next = mysqli_fetch_array($q_sch_next);
-							echo "<div class='festival_event' itemprop='subEvent' itemscope itemtype='http://schema.org/Event'><h4>$lng[index_festivals_schedule_next]</h4>\n";
-							echo "<meta itemprop='inLanguage' content='$lang'/>\n";
-							echo "<meta itemprop='name' content='$r_sch_next[title]'/>\n";
-							echo "<meta itemprop='startDate' content='$r_sch_next[isostart]'/>\n";
-							if (strlen($r_sch_curr['isoend']) > 0){
-								echo "<meta itemprop='endDate' content='$r_sch_next[isoend]'/>\n";
-							}
-							echo("<span class='hidden' itemprop='location' itemscope itemtype='http://schema.org/Place'><meta itemprop='address name'>Vitoria-Gasteiz</meta></span>\n");
-							echo "<span class='title'>$r_sch_next[title] - ($r_sch_next[st])\n</span>";
-							if (strlen($r_sch_next["description"]) > 0 && $r_sch_next["description"] != $r_sch_next["title"]){
-								echo "<br/><span class='description'>$r_sch_next[description]</span>\n";
-								echo "<meta itemprop='description' content='$r_sch_next[description]'/>\n";
-							}
-							echo "<table class='location'><tr>\n";
-							echo "<td><a target='_blank' href='http://maps.google.com/maps?q=$r_sch_next[lat],$r_sch_next[lon]+(My+Point)&z=14&ll=$r_sch_next[lat],$r_sch_next[lon]'><img alt=' ' src='http://$http_host/img/misc/pinpoint.png'/></a></td>\n"; 
-							//If name and address are the same, show only name
-							if ($r_sch_next['place'] == $r_sch_next['address']){
-								echo "<td>$r_sch_next[place]</td></tr></table>\n";
-							}
-							else{
-								echo "<td>$r_sch_next[place] <span class='address'>- $r_sch_next[address]</span></td></tr></table>\n";
-							}
-							echo "</div\n>";
-						}
-						echo "</div></td>\n"; //close city schedule entry;
-					}
-					echo "</tr></table>\n";
-					echo "<a class='go_to_section' href='http://$http_host/lablanca/'>$lng[index_festivals_link]</a><br/>\n";
-					echo "</div>\n";
+					</div> <!-- festivals - section-->
+<?php
 				}
 			
 				//Upcaming activity section
@@ -252,12 +367,12 @@
 					echo "<meta itemprop='name' content='$r_activity[title]'/>\n";
 					echo "<meta itemprop='description' content='$r_activity[text]'/>\n";
 					echo "<meta itemprop='startDate endDate' content='$r_activity[isodate]'/>\n";
-					echo("<span class='hidden' itemprop='location' itemscope itemtype='http://schema.org/Place'><meta itemprop='address name' content='$r_activity[city]'/></span>\n");
-					echo "<meta itemprop='url' content='http://$http_host/actividades/$r_activity[permalink]'/>\n";
+					echo("<span class='hidden' itemprop='location' itemscope itemtype='http://schema.org/Place'><meta itemprop='address' itemprop='name' content='$r_activity[city]'/></span>\n");
+					echo "<meta itemprop='url' content='$proto$http_host/actividades/$r_activity[permalink]'/>\n";
 					echo "<div class='hidden' itemprop='organizer' itemscope itemtype='http://schema.org/Organization'>\n";
 					echo "<meta itemprop='legalName' content='Asociaci&oacute;n Cultural Recreativa Gasteizko Margolariak'/>\n";
 					echo "<meta itemprop='name' content='Gasteizko Margolariak'/>\n";
-					echo "<meta itemprop='logo' content='http://$http_host/img/logo/logo.png'/>\n";
+					echo "<meta itemprop='logo' content='$proto$http_host/img/logo/logo.png'/>\n";
 					echo "<meta itemprop='foundingDate' content='2013-02-03'/>\n";
 					echo "<meta itemprop='telephone' content='+34637140371'/>\n";
 					echo "</div>\n";
@@ -268,15 +383,15 @@
 					if (mysqli_num_rows($q_activity_image) > 0){
 						$r_activity_image = mysqli_fetch_array($q_activity_image);
 						echo "<div class='td'><div id='upcoming_image'>\n";
-						echo "<a href='http://$http_host/actividades/$r_activity[permalink]'>\n";
-						echo "<meta itemprop='image' content='http://$http_host/img/actividades/$r_activity_image[image]'/>\n";
-						echo "<img src='http://$http_host/img/actividades/miniature/$r_activity_image[image]' alt='$r_activity[title]'/>\n";
+						echo "<a href='$proto$http_host/actividades/$r_activity[permalink]'>\n";
+						echo "<meta itemprop='image' content='$proto$http_host/img/actividades/$r_activity_image[image]'/>\n";
+						echo "<img src='$proto$http_host/img/actividades/miniature/$r_activity_image[image]' alt='$r_activity[title]'/>\n";
 						echo "</a>\n";
 						echo "</div></div>\n";
 					}
 					echo "<div class='td'><div id='upcoming_text'>\n";
-					echo "<h3><a itemprop='url' href='http://$http_host/actividades/$r_activity[permalink]'>$r_activity[title]</a></h3>\n";
-					echo "<p>". cutText($r_activity['text'], 250, "$lng[index_read_more]", "http://$http_host/actividades/$r_activity[permalink]") . "</p>\n";
+					echo "<h3 class='entry_title'><a itemprop='url' href='$proto$http_host/actividades/$r_activity[permalink]'>$r_activity[title]</a></h3>\n";
+					echo "<p>". cutText($r_activity['text'], 250, "$lng[index_read_more]", "$http_host/actividades/$r_activity[permalink]") . "</p>\n";
 					echo "</div></div>\n";
 					echo "<div class='td'><div id='upcoming_details'>\n";
 					echo "<table>\n";
@@ -287,7 +402,7 @@
 					echo "<td>$lng[index_upcoming_activity_price]</td>";
 					if ($r_activity['price'] == 0){
 						echo "<td itemprop='offers' itemscope itemtype='http://schema.org/Offer'>$lng[index_upcoming_activity_free]\n";
-						echo "<meta itemprop='priceCurrency' content='EUR'/><meta itemprop='price' content='0'/><meta itemprop='url' content='http://$http_host/actividades/$r_activity[permalink]'/>\n</td>\n";
+						echo "<meta itemprop='priceCurrency' content='EUR'/><meta itemprop='price' content='0'/><meta itemprop='url' content='$proto$http_host/actividades/$r_activity[permalink]'/>\n</td>\n";
 						echo "</tr><tr>\n";
 						echo "<td>$lng[index_upcoming_activity_inscription]</td>";
 						if ($r_activity['inscription'] == 1)
@@ -304,23 +419,33 @@
 						echo "<tr><td>$lng[index_upcoming_activity_max_people]</td><td>$r_activity[max_people]</td></tr>\n";
 					}
 					echo "</table>\n";
-					echo "<a href='http://$http_host/actividades/$r_activity[permalink]'>$lng[index_upcoming_activity_see]</a><br/><br/>\n";
+					echo "<a href='$proto$http_host/actividades/$r_activity[permalink]'>$lng[index_upcoming_activity_see]</a><br/><br/>\n";
 					
 					echo "</div></div></div></div>\n";
 					echo "</div>\n";//Entry
-					echo "<a class='go_to_section' href='http://$http_host/actividades/'>$lng[index_upcoming_activity_see_all]</a><br/>\n";
+					echo "<a class='go_to_section' href='$proto$http_host/actividades/'>$lng[index_upcoming_activity_see_all]</a><br/>\n";
 					echo "</div>\n";//Section
 				}
-			?>
+?>
+			<div class='section' itemscope itemtype='http://schema.org/Organization'>
+				<meta itemprop='url' content='<?php echo("$proto$http_host"); ?>'/>
+				<h3 class='section_title' itemprop='name'><?php echo($lng['index_us']); ?></h3>
+				<div class='entry' id='us'>
+					<p itemprop='description'><?php echo($lng['index_us_content']); ?></p>
+					<div><img itemprop='logo' src='<?php echo("$proto$http_host/img/logo/GasteizkoMargolariak.png"); ?>'/></div>
+				</div>
+				<a class='go_to_section' href='<?php echo($proto.$http_host); ?>/nosotros/'><?php echo($lng['index_us_more']) ?></a>
+				<br/>
+			</div>
 			<div id='content_table'>
 				<div class='content_row'>
 					<div class='content_cell' id='cell_posts'>
 						<div class='section' id='latest_posts'>
-							<?php
+		<?php
 								echo "<h3 class='section_title'>$lng[index_latest_posts]</h3>\n";
 								$q_post = mysqli_query($con, "SELECT id, permalink, title_$lang AS title, text_$lang AS text, dtime, DATE_FORMAT(dtime, '%Y-%m-%dT%T') AS isodate FROM post WHERE visible = 1 ORDER BY dtime DESC LIMIT 2;");
 								if (mysqli_num_rows($q_post) == 0){
-									echo "<div class='entry'>$lng[index_no_post]</div>\n";
+									echo "<div class='entry'><h3 class='entry_title'>$lng[index_no_post]</div>\n";
 								}
 								else{
 									while ($r_post = mysqli_fetch_array($q_post)){
@@ -329,34 +454,34 @@
 										echo "<meta itemprop='datePublished dateModified' content='$r_post[isodate]'/>\n";
 										echo "<meta itemprop='headline name' content='$r_post[title]'/>\n";
 										echo "<meta itemprop='articleBody text' content='$r_post[text]'/>\n";
-										echo "<meta itemprop='mainEntityOfPage' content='http://$http_host'/>\n";
+										echo "<meta itemprop='mainEntityOfPage' content='$proto$http_host'/>\n";
 										echo "<div class='hidden' itemprop='author publisher' itemscope itemtype='http://schema.org/Organization'>\n";
 										echo "<meta itemprop='legalName' content='Asociaci&oacute;n Cultural Recreativa Gasteizko Margolariak'/>\n";
 										echo "<meta itemprop='name' content='Gasteizko Margolariak'/>\n";
-										echo "<meta itemprop='logo' content='http://$http_host/img/logo/logo.png'/>\n";
+										echo "<meta itemprop='logo' content='$proto$http_host/img/logo/logo.png'/>\n";
 										echo "<meta itemprop='foundingDate' content='03-02-2013'/>\n";
 										echo "<meta itemprop='telephone' content='+34637140371'/>\n";
-										echo "<meta itemprop='url' content='http://$http_host'/>\n";
+										echo "<meta itemprop='url' content='$proto$http_host'/>\n";
 										echo "</div>\n";
 										$q_post_image = mysqli_query($con, "SELECT image FROM post_image WHERE post = $r_post[id] ORDER BY idx LIMIT 1;");
 										if (mysqli_num_rows($q_post_image) > 0){
 											$r_post_image = mysqli_fetch_array($q_post_image);
-											echo "<meta itemprop='image' content='http://$http_host/img/blog/preview/$r_post_image[image]'/>\n";
-											echo "<a href='http://$http_host/blog/$r_post[permalink]'><img src='http://$http_host/img/blog/miniature/$r_post_image[image]'/></a>\n";
+											echo "<meta itemprop='image' content='$proto$http_host/img/blog/preview/$r_post_image[image]'/>\n";
+											echo "<a href='$proto$http_host/blog/$r_post[permalink]'><img src='$proto$http_host/img/blog/miniature/$r_post_image[image]'/></a>\n";
 										}
-										echo "<h3><a itemprop='url' href='http://$http_host/blog/$r_post[permalink]'>$r_post[title]</a></h3>\n";
-										echo "<p>". cutText($r_post['text'], 100, "$lng[index_read_more]", "http://$http_host/blog/$r_post[permalink]") . "</p>\n";
+										echo "<h3 class='entry_title'><a itemprop='url' href='$proto$http_host/blog/$r_post[permalink]'>$r_post[title]</a></h3>\n";
+										echo "<p>". cutText($r_post['text'], 100, "$lng[index_read_more]", "$proto$http_host/blog/$r_post[permalink]") . "</p>\n";
 										echo "<span>" . formatDate($r_post['dtime'], $lang, false) . "</span>\n";
 										echo "</div>\n";
 									}
-								echo "<a class='go_to_section' href='http://$http_host/blog/'>$lng[index_see_all_posts]</a><br/>\n";
+								echo "<a class='go_to_section' href='$proto$http_host/blog/'>$lng[index_see_all_posts]</a><br/>\n";
 								}
-							?>
+		?>
 						</div>
 					</div>
 					<div class='content_cell' id='cell_photos'>
 						<div class='section' id='latest_photos'>
-							<?php
+		<?php
 								echo "<h3 class='section_title'>$lng[index_latest_photos]</h3>\n";
 								$q_photos = mysqli_query($con, "SELECT id, file, title_$lang AS title, DATE_FORMAT(uploaded, '%Y-%m-%d') AS isodate FROM photo ORDER BY uploaded DESC LIMIT 6;");
 								//TODO WHERE approved = 1
@@ -373,9 +498,9 @@
 										$r_album = mysqli_fetch_array($q_album);
 										echo "<td itemscope itemtype='http://schema.org/Photograph'>\n";
 										echo "<meta itemprop='datePublished' content='$r_photos[isodate]'/>\n";
-										echo "<a href='http://$http_host/galeria/$r_album[permalink]'>\n";
+										echo "<a href='$proto$http_host/galeria/$r_album[permalink]'>\n";
 										echo "<meta itemprop='image' content='http://$http_host/img/galeria/$r_photos[file]'/>\n";
-										echo "<img src='http://$http_host/img/galeria/miniature/$r_photos[file]' alt='$r_photos[title]' /></a></td>\n";
+										echo "<img src='$proto$http_host/img/galeria/miniature/$r_photos[file]' alt='$r_photos[title]' /></a></td>\n";
 										$i ++;
 										if ($i % 2 == 0)
 										echo "</tr><tr>";
@@ -383,14 +508,14 @@
 									echo "</tr>\n";
 									echo "</table>\n";
 									echo "</div>\n";
-									echo "<a class='go_to_section' href='http://$http_host/galeria/'>$lng[index_see_all_photos]</a><br/>\n";
+									echo "<a class='go_to_section' href='$proto$http_host/galeria/'>$lng[index_see_all_photos]</a><br/>\n";
 								}
-							?>
+		?>
 						</div>
 					</div>
 				</div>
 			</div>
-			<?php
+<?php
 				if ($upcoming_activity_shown == false){
 					$q_activity = mysqli_query($con, "SELECT id, permalink, date, DATE_FORMAT(date, '%Y-%m-%d') AS isodate, title_$lang AS title, text_$lang AS text, after_$lang AS after, price, inscription, people, max_people, city FROM activity WHERE visible = 1 ORDER BY date DESC LIMIT 2;");
 					if (mysqli_num_rows($q_activity) > 0){
@@ -402,49 +527,62 @@
 							echo "<meta itemprop='name' content='$r_activity[title]'/>\n";
 							echo "<meta itemprop='description' content='$r_activity[text]'/>\n";
 							echo "<meta itemprop='startDate endDate' content='$r_activity[isodate]'/>\n";
-							echo("<span class='hidden' itemprop='location' itemscope itemtype='http://schema.org/Place'><meta itemprop='address name'>$r_activity[city]</meta></span>\n");
+							echo("<span class='hidden' itemprop='location' itemscope itemtype='http://schema.org/Place'><meta itemprop='address' itemprop='name' content='$r_activity[city]'/><meta itemprop='name' content='$r_activity[city]'/></span>\n");
 							echo "<div class='hidden' itemprop='organizer' itemscope itemtype='http://schema.org/Organization'>\n";
 							echo "<meta itemprop='legalName' content='Asociaci&oacute;n Cultural Recreativa Gasteizko Margolariak'/>\n";
 							echo "<meta itemprop='name' content='Gasteizko Margolariak'/>\n";
-							echo "<meta itemprop='logo' content='http://$http_host/img/logo/logo.png'/>\n";
+							echo "<meta itemprop='logo' content='$proto$http_host/img/logo/logo.png'/>\n";
 							echo "<meta itemprop='foundingDate' content='03-02-2013'/>\n";
 							echo "<meta itemprop='telephone' content='+34637140371'/>\n";
-							echo "<meta itemprop='url' content='http://$http_host'/>\n";
+							echo "<meta itemprop='url' content='$proto$http_host'/>\n";
 							echo "</div>\n";
-							echo "<h3><a itemprop='url' href='http://$http_host/actividades/$r_activity[permalink]'>$r_activity[title]</a></h3>\n";
+							echo "<h3 class='entry_title'><a itemprop='url' href='$proto$http_host/actividades/$r_activity[permalink]'>$r_activity[title]</a></h3>\n";
 							echo "<table class='latest_activity'><tr>\n";
 							$q_activity_image = mysqli_query($con, "SELECT image FROM activity_image WHERE activity = $r_activity[id] ORDER BY idx LIMIT 1;");
 							if (mysqli_num_rows($q_activity_image) > 0){
 								$r_activity_image = mysqli_fetch_array($q_activity_image);
-								echo "<td class='latest_activity_image'><a href='http://$http_host/actividades/$r_activity[permalink]'>\n";
-								echo "<meta itemprop='image' content='http://$http_host/img/actividades/$r_activity_image[image]'/>\n";
-								echo "<img src='http://$http_host/img/actividades/miniature/$r_activity_image[image]' alt='$r_activity[title]'/>\n";
+								echo "<td class='latest_activity_image'><a href='$proto$http_host/actividades/$r_activity[permalink]'>\n";
+								echo "<meta itemprop='image' content='$proto$http_host/img/actividades/$r_activity_image[image]'/>\n";
+								echo "<img src='$proto$http_host/img/actividades/miniature/$r_activity_image[image]' alt='$r_activity[title]'/>\n";
 								echo "</a></td>\n";
 							}
 							//echo "<div class='activity_text'>\n";
-							//echo "<p>". cutText($r_activity['text'], 300, "$lng[index_read_more]", "http://$http_host/actividades/$r_activity[permalink]") . "</p>\n";
+							//echo "<p>". cutText($r_activity['text'], 300, "$lng[index_read_more]", "$proto$http_host/actividades/$r_activity[permalink]") . "</p>\n";
 							if ($r_activity['after'] == ''){
-								echo "<td class='latest_activity_text'>" . cutText($r_activity['text'], 300, "$lng[index_read_more]", "http://$http_host/actividades/$r_activity[permalink]") . "</td>\n";
+								echo "<td class='latest_activity_text'>" . cutText($r_activity['text'], 300, "$lng[index_read_more]", "$proto$http_host/actividades/$r_activity[permalink]") . "</td>\n";
 							}
 							else{
-								echo "<td class='latest_activity_text'>" . cutText($r_activity['after'], 300, "$lng[index_read_more]", "http://$http_host/actividades/$r_activity[permalink]") . "</td>\n";
+								echo "<td class='latest_activity_text'>" . cutText($r_activity['after'], 300, "$lng[index_read_more]", "$proto$http_host/actividades/$r_activity[permalink]") . "</td>\n";
 							}
 							echo "</tr></table>\n";
 							//echo "</div>\n";
 							//echo "</div>\n";
 							echo "</div>\n";
 						}
-						echo "<a class='go_to_section' href='http://$http_host/actividades/'>$lng[index_upcoming_activity_see_all]</a><br/>\n";
+						echo "<a class='go_to_section' href='$proto$http_host/actividades/'>$lng[index_upcoming_activity_see_all]</a><br/>\n";
 						echo "</div>";
 						
 					}
 				}
-			?>
+				//Festivals section (if no festivals shown on top)
+				if ($festivals == 0){
+?>
+						<div class='section'>
+							<h3 class='section_title'><?php echo($lng['index_festivals_header']); ?></h3>
+							<div class='entry'>
+		<?php echo (cutText($lng['lablanca_no_content'] . '<br/>' . $lng['lablanca_no_content_2'], 300, "$lng[index_read_more]", "$proto$http_host/lablanca/")); ?>
+							</div>
+						</div>
+<?php
+				}
+?>
 		</div>
-		<?php
+<?php
+
+			//Footer
 			include("footer.php");
 			$ad = ad($con, $lang, $lng); 
 			stats($ad, $ad_static, "index", "");
-		?>
+?>
 	</body>
 </html>

+ 64 - 46
www/lablanca/fiestas.php

@@ -1,64 +1,82 @@
 <div class='section'>
-	<h3><?php echo str_replace('#', $year, $lng['lablanca_title']);?></h3>
+	<h3 class='section_title'><?=str_replace('#', $year, $lng['lablanca_title'])?></h3>
 	<div class='entry'>
-	<?php
-		//Some text for the festivals
-		$q_f = mysqli_query($con, "SELECT * FROM festival WHERE year = $year");
-		if (mysqli_num_rows($q_f) > 0){
-			$r_f = mysqli_fetch_array($q_f);
-			if (strlen($r_f['img']) > 0){
-				echo "<img id='festivals_image' src='http://$http_host/img/festival/$r_f[img]'>\n";
-			}
-			echo $r_f["text_$lang"] . "\n";
+<?php
+	//Some text for the festivals
+	$q_f = mysqli_query($con, "SELECT * FROM festival WHERE year = $year");
+	if (mysqli_num_rows($q_f) > 0){
+		$r_f = mysqli_fetch_array($q_f);
+		if (strlen($r_f['img']) > 0){
+			echo("<div id='festivals_image_top_container'><div id='festivals_image_container'><img id='festivals_image' src='$proto$http_host/img/fiestas/preview/$r_f[img]'/></div></div><br/>\n");
 		}
-	?>
+		echo $r_f["text_$lang"] . "\n";
+	}
+?>
 	</div>
 </div>
 <div id='content_table'>
 	<div class='content_tr'>
 		<div class='content_td' id='content_td_schedule'>
 			<div class='section' id='schedule'>
-				<h3 class='section_title'><?php echo $lng['lablanca_schedule']; ?></h3>
-					<?php
-						$q_days = mysqli_query($con, "SELECT id, date, DATE_FORMAT(date, '%Y-%m-%d') AS isodate, name_$lang AS name FROM festival_day WHERE year(date) = $year ORDER BY date");
-						while ($r_days = mysqli_fetch_array($q_days)){
-							echo "<div class='entry'>\n";
-							echo "<div onClick='expandDay($r_days[id]);' class='day_title pointer'>\n";
-							echo "<h4><img class='slid' src='http://$http_host/img/misc/slid-right.png' id='slid_day_$r_days[id]'/>\n";
-							echo formatFestivalDate($r_days['date']) . " - $r_days[name]</h4>\n";
-							echo "</div>\n";
-							echo "<div class='day_schedule' id='day_schedule_$r_days[id]'>\n";
+				<h3 class='section_title'><?=$lng['lablanca_schedule']?></h3>
+<?php
+				$q_days = mysqli_query($con, "SELECT id, date, DATE_FORMAT(date, '%Y-%m-%d') AS isodate, name_$lang AS name FROM festival_day WHERE year(date) = $year ORDER BY date");
+				while ($r_days = mysqli_fetch_array($q_days)){
+?>
+					<div class='entry'>
+						<div onClick='expandDay(<?=$r_days['id']?>);' class='day_title pointer'>
+							<h4>
+								<img class='slid' src='<?=$server?>/img/misc/slid-right.png' id='slid_day_<?=$r_days['id']?>'/>
+								<?=formatFestivalDate($r_days['date'])?> - <?=$r_days['name']?>
+							</h4>
+						</div>
+						<div class='day_schedule' id='day_schedule_<?=$r_days['id']?>'>
+<?php
 							$q_sch = mysqli_query($con, "SELECT festival_event.id AS id, gm, title_$lang AS title, description_$lang AS description, host, place, date_format(start, '%H:%i') AS st, date_format(end, '%H:%i') AS end, place.name_$lang AS place, address_$lang AS address, lat, lon FROM festival_event, place WHERE place.id = festival_event.place AND gm = 1 AND start > str_to_date(addtime('$r_days[isodate] 00:00:00', '08:00:00'), '%Y-%m-%d %T') AND start < str_to_date(addtime('$r_days[isodate] 00:00:00', '32:00:00'), '%Y-%m-%d %T') ORDER BY start;");
 							if (mysqli_num_rows($q_sch) > 0){
-								echo "<table class='schedule'>\n";
+								echo("<table class='schedule'>\n");
 								while ($r_sch = mysqli_fetch_array($q_sch)){
-									echo "<tr><td><span class='time'>$r_sch[st]</span></td><td class='timeline'><img class='timeline_dot' alt=' ' src='http://$http_host/img/misc/schedule-point.png'/></td>\n";
-									echo "<td><span class='title'>$r_sch[title]\n";
-									//if (strlen($r_sch['end']) > 0){
-									//	echo " ($r_sch[st] - $r_sch[end])\n";
-									//}
-									echo "</span>\n";
-									if (strlen($r_sch["description"]) > 0 && $r_sch["description"] != $r_sch["title"]){
-										echo "<br/><span class='description'>$r_sch[description]</span>\n";
-									}
-									echo "<table class='location'><tr>\n";
-									//TODO: td for image, if any
-									echo "<td><a target='_blank' href='http://maps.google.com/maps?q=$r_sch[lat],$r_sch[lon]+(My+Point)&z=14&ll=$r_sch[lat],$r_sch[lon]'><img alt=' ' src='http://$http_host/img/misc/pinpoint.png'/></a></td>\n"; 
-									//If name and address are the same, show only name
-									if ($r_sch['place'] == $r_sch['address']){
-										echo "<td>$r_sch[place]</td></tr></table>\n";
-									}
-									else{
-										echo "<td>$r_sch[place] <span class='address'>- $r_sch[address]</span></td></tr></table>\n";
-									}
-									echo "</td></tr>\n";
+?>
+									<tr>
+										<td>
+											<span class='time'><?=$r_sch['st']?></span>
+										</td>
+										<td class='timeline'>
+											<img class='timeline_dot' alt=' ' src='<?=$server?>/img/misc/schedule-point.png'/>
+										</td>
+										<td>
+											<span class='title'><?=$r_sch['title']?></span>
+<?php
+											if (strlen($r_sch["description"]) > 0 && $r_sch["description"] != $r_sch["title"]){
+												echo("<br/><div class='description'>$r_sch[description]</div>\n");
+											}
+?>
+											<div class='location'>
+												<a target='_blank' href='http://maps.google.com/maps?q=<?=$r_sch['lat']?>,<?=$r_sch['lon']?>+(My+Point)&z=14&ll=<?=$r_sch['lat']?>,<?=$r_sch['lon']?>'>
+													<img alt=' ' src='<?=$server?>/img/misc/pinpoint.png'/>
+<?php
+													//If name and address are the same, show only name
+													if ($r_sch['place'] == $r_sch['address']){
+														echo("$r_sch[place]\n");
+													}
+													else{
+														echo("$r_sch[place] <span class='address'>- $r_sch[address]</span>\n");
+													}
+?>
+												</a>
+											</div>
+										</td>
+									</tr>
+<?php
 								}
 								echo "</table>\n";
 							}
-							echo "</div>\n";
-							echo "</div>\n";
-						}
-					?>
+?>
+						</div>
+					</div>
+<?php
+				} // while ($r_days = mysqli_fetch_array($q_days))
+?>
 			</div>
 		</div>
 		<div class='content_td' id='content_td_prices'>

+ 16 - 11
www/lablanca/index.php

@@ -2,6 +2,9 @@
 	session_start();
 	include("../functions.php");
 	$con = startdb();
+	$proto = getProtocol();
+	$http_host = $_SERVER['HTTP_HOST'];
+	$server = "$proto" . "$http_host";
 	
 	//Language
 	$lang = selectLanguage();
@@ -52,8 +55,9 @@
 					echo $lng['lablanca_no_title'];
 				}
 			?>
+			 - Gasteizko Margolariak
 		</title>
-		<link rel="shortcut icon" href="<?php echo "http://$http_host/img/logo/favicon.ico";?>">
+		<link rel="shortcut icon" href="<?php echo "$proto$http_host/img/logo/favicon.ico";?>">
 		<!-- CSS files -->
 		<style>
 			<?php 
@@ -76,9 +80,9 @@
 			?>
 		</script>
 		<!-- Meta tags -->
-		<link rel="canonical" href="<?php echo "http://$http_host/lablanca/"; ?>"/>
-		<link rel="author" href="<?php echo "http://$http_host"; ?>"/>
-		<link rel="publisher" href="<?php echo "http://$http_host"; ?>"/>
+		<link rel="canonical" href="<?php echo "$proto$http_host/lablanca/"; ?>"/>
+		<link rel="author" href="<?php echo "$proto$http_host"; ?>"/>
+		<link rel="publisher" href="<?php echo "$proto$http_host"; ?>"/>
 		<meta name="description" content="<?php echo $lng['lablanca_description'];?>"/>
 		<meta property="og:title" 
 			content="<?php
@@ -88,11 +92,11 @@
 				else{
 					echo $lng['lablanca_no_title'];
 				}
-			?>"
+			?> - Gasteizko Margolariak"
 		/>
-		<meta property="og:url" content="<?php echo "http://$http_host"; ?>"/>
+		<meta property="og:url" content="<?php echo "$proto$http_host"; ?>"/>
 		<meta property="og:description" content="<?php echo $lng['lablanca_description'];?>"/>
-		<meta property="og:image" content="<?php echo "http://$http_host/img/logo/logo.png";?>"/>
+		<meta property="og:image" content="<?php echo "$proto$http_host/img/logo/logo.png";?>"/>
 		<meta property="og:site_name" content="<?php echo $lng['lablanca_title'];?>"/>
 		<meta property="og:type" content="website"/>
 		<meta property="og:locale" content="<?php echo $lang; ?>"/>
@@ -105,11 +109,11 @@
 				else{
 					echo $lng['lablanca_no_title'];
 				}
-			?>"
+			?> - Gasteizko Margolariak"
 		/>
 		<meta name="twitter:description" content="<?php echo $lng['lablanca_description'];?>"/>
-		<meta name="twitter:image" content="<?php echo "http://$http_host/img/logo/logo.png";?>"/>
-		<meta name="twitter:url" content="<?php echo"http://$http_host"; ?>"/>
+		<meta name="twitter:image" content="<?php echo "$proto$http_host/img/logo/logo.png";?>"/>
+		<meta name="twitter:url" content="<?php echo"$proto$http_host"; ?>"/>
 		<meta name="robots" content="index follow"/>
 	</head>
 	<body>
@@ -132,6 +136,7 @@
 				}
 				if (date("M") <= 8){
 					$q_years = mysqli_query($con, "SELECT year FROM festival WHERE year != " . date("Y") . " ORDER BY year DESC;");
+				}
 				else{
 					$q_years = mysqli_query($con, "SELECT year FROM festival WHERE year <= " . date("Y") . " ORDER BY year DESC;");
 				}
@@ -140,7 +145,7 @@
 					echo("<h3 class='section_title'>$lng[lablanca_past_title]</h3>\n");
 					echo("<div class='entry'><ul>\n");
 					while ($r_years = mysqli_fetch_array($q_years)){
-						echo("<li><a href='http://$http_host/lablanca/$r_years[year]'>$lng[lablanca_past_link] $r_years[year]</a></li>\n");
+						echo("<li><a href='$proto$http_host/lablanca/$r_years[year]'>$lng[lablanca_past_link] $r_years[year]</a></li>\n");
 					}		
 					echo("</ul></div>\n");
 					echo("</div>\n");

+ 2 - 2
www/lablanca/nofiestas.php

@@ -1,6 +1,6 @@
-<?php //TODO: Revisiti this file. I dont know what does it do ?>
+<?php //TODO: Revisit this file.?>
 <div class="section">
-	<h3><?php echo($lng['lablanca_no_intro']); ?></h3>
+	<h3 class="section_title"><?php echo($lng['lablanca_no_intro']); ?></h3>
 	<div class="entry">
 		<div class="horiz">
 			<p><?php echo($lng['lablanca_no_content']); ?></p>

+ 10 - 4
www/lang/lang_en.php

@@ -47,6 +47,9 @@
 	$lng['index_no_photos'] = 'There are no recent photos';
 	$lng['index_see_all_photos'] = 'Go to the gallery';
 	$lng['index_read_more'] = 'Read more';
+	$lng['index_us'] = 'Gasteizko Margolariak';
+	$lng['index_us_content'] = 'We at Gasteizko Margolariak ar a Cuadrilla de Blusas y Neskas from Vitoria-Gasteiz<br/><br/>We became a Cuadrilla de Blusas y Neskas in 2013 and, on that same year, members of the Comisión de Blusas y Neskas.<br/><br/>Since then we have done nothing but grow with and thanks to the people who have chosen to bet on us.';
+	$lng['index_us_more'] = 'More about us';
 	$lng['index_'] = '';
 	
 	//header.php
@@ -85,7 +88,6 @@
 	$lng['lablanca_past_title'] = 'Carteles de Fiestas de a&ntilde;os anteriores';
 	$lng['lablanca_past_link'] = 'Fiestas de la Blanca de ';
 	$lng['lablanca_'] = '';
-	$lng['lablanca_'] = '';
 	
 	// /actividades/index.php
 	$lng['activities_title'] = 'Activities - Gasteizko Margolariak';
@@ -96,6 +98,7 @@
 	$lng['activities_album'] = 'Check the photo album';
 	$lng['activities_archive'] = 'Archive';
 	$lng['activities_date'] = 'Date';
+	$lng['activities_city'] = 'City';
 	$lng['activities_price'] = 'Price';
 	$lng['activities_price_0'] = 'Free';
 	$lng['activities_maxpeople'] = 'Max. people';
@@ -139,6 +142,8 @@
 	// /nosotros/index.php
 	$lng['us_title'] = 'About Us - Gasteizko Margolariak';
 	$lng['us_description'] = 'Asociacion Cultural Gasteizko Margolariak';
+	$lng['us_introduction'] = 'Quienes somos';
+	$lng['us_introduction_content'] = 'Somos una Cuadrilla de Blusas y Neskas de Vitoria-Gasteiz. Participamos en las fiestas de la ciudad, animando, organizando actividades, para nuestros miembros y para el p&uacute;blico en general.<br/><br/>Pero eso no es todo: Permanecemos activos durante el resto del a&ntilde;o, organizando actividades, tanto dentro como fuera de la ciudad: Competiciones, excursiones, eventos solidarios...';
 	$lng['us_association'] = 'The association';
 	$lng['us_association_content'] = 'La Asociaci&oacute;n Cultural Gasteizko Margolariak nace en el a&ntilde;o 2013 con la idea de estimular la participaci&oacute;n ciudadana y fortalecer la cultura y las tradiciones de Vitoria-Gasteiz.<br/><br/>En nuestro nombre se refleja un barrio en el que las calles nos recuerdan a grandes pintores: el barrio de San Mart&iacute;n. Estamos representados en los barrios, y creemos que son la esencia de esta ciudad.';
 	$lng['us_cuadrilla'] = 'La cuadrilla';
@@ -146,7 +151,6 @@
 	$lng['us_activities'] = 'What we do';
 	$lng['us_activities_content'] = 'Excursiones, partidos, causas ben&eacute;ficas... No solo se nos ve en fiestas.<br/><br/>Creemos que, como Cuadrilla de Blusas y Neskas, existimos por y para la ciudad, y por eso organizamos actividades durante todo el a&ntilde;o, para todo aquel que quiera acompa&ntilde;arnos<br/><br/>Si quieres saber lo que hacemos, te sugerimos que eches un vistazo a nuestra <a href="/galeria/">galer&iacute;a</a>. Y si quieres conocernos, apuntate a la siguiente <a href="/actividades/">actividad</a>!';
 	$lng['us_transparency'] = 'Transparency';
-	//$lng['us_transparency_content'] = '¿Te preocupa saber d&oacute;nde va tu dinero? En Gasteizko Margolariak queremos que est&eacute;s tranquilo.<br/><br/>Muchas de nuestras actividades son gratuitas. Otras, como las fiestas de La Blanca, tienen una cuota de inscripci&oacute;n. Gasteizko Margolariak no es una empresa, es una Asociaci&oacute;n cultural, y como tal, no tenemos beneficios.<br/><br/>Queremos ser transparentes, y por eso ponemos a tu disposici&oacute;n nuestras cuentas de manera online, para que sepas que cada euro se reinvierte en ti.';
 	$lng['us_transparency_content'] = '¿Te preocupa saber d&oacute;nde va tu dinero? En Gasteizko Margolariak queremos que est&eacute;s tranquilo.<br/><br/>Muchas de nuestras actividades son gratuitas. Otras, como las fiestas de La Blanca, tienen una cuota de inscripci&oacute;n. Gasteizko Margolariak no es una empresa, es una Asociaci&oacute;n cultural, y como tal, no tenemos beneficios.<br/><br/>Queremos ser transparentes, y por eso, empezanod en 2016, pondremos a tu disposici&oacute;n nuestras cuentas de manera online, para que sepas que cada euro se reinvierte en t&iacute;.';
 	$lng['us_'] = '';
 	
@@ -158,6 +162,7 @@
 	$lng['gallery_photos_singular'] = 'photo';
 	$lng['gallery_photos_plural'] = 'photos';
 	$lng['gallery_read_more'] = 'Read more';
+	$lng['gallery_user'] = 'Sent by: ';
 	$lng['gallery_'] = '';
 	
 	// /galeria/album.php
@@ -168,7 +173,6 @@
 	$lng['gallery_new_comment_content'] = 'Comment...';
 	$lng['gallery_new_comment_user'] = 'A name...';
 	$lng['gallery_new_comment_submit'] = 'Post';
-	$lng['gallery_user'] = 'Sent by: ';
 	$lng['gallery_'] = '';
 	
 	// /galeria/upload.php
@@ -211,7 +215,9 @@
 	$lng['help_privacy'] = 'Navegar por internet hoy en d&iacute; se ha vuelto algo complicado, en lo que aprivacidad se refiere: practicamente cada p&aacute;gina que visitamos intenta obtener todos los datos posibles sobre nosotros para utilizarlos en marketing, data mining...<br/> <br/>En Gasteizko Margolariak queremos construir un sitio limpio y seguro, en el que nuestros visitantes puedan estar a gusto.<br/><br/> Por eso, queremos explicarte toda la informaci&oacute;n que recogemos sobre t&iacute; y lo que hacemos con ello.<br/><ul><li><span style="font-weight:bold;">Direcci&oacute; IP</span>: Cuando nos visitas, almacenamos tu direcci&oacute;n IP, junto con la hora de conexi&oacute;. Esto no nos permite identificarte como persona, pero nos es muy &uacute;til para saber cuantas personas distintas nos visitan.</li><li><span style="font-weight:bold;">Fotograf&iacute;as y comentarios</span>: Cuanquier visitante puede subir fotograf&iacute;as a esta web o comentar en la mayor&iacute;a de entradas. Para hacerlo, solo requerimos un nombre, y no tenemos ningun problema en que uses pseud&oacute;nimos o nombres falsos. Cuando comentes o subas im&aacute;genes tambi&eacute;n registramos tu direcci&oacute;n IP.</li><li><span style="font-weight:bold;">Datos de los socios</span>: Independientemente de los datos recogidos por este sitio web, en Gasteizko Margolariak mantenemos una base de datos sobre las personas que alguna vez han participado en alguna actividad con nosotros. Si es tu caso, y quieres que los eliminemos, no tiene m&aacute;s que escribirnos a <a target="_blank" href="mailto:gasteizkomargolariak@gmail.com">gasteizkomargolariak@gmail.com</a>. Sin rencores.';
 	$lng['help_cookie_title'] = 'Pol&iacute;tca de cookies';
 	$lng['help_cookie'] = '¡Cookies! Est&aacute;n por todas partes. Sabemos que nadie suele leerse estos avisos sobre ellas, as&iacute; que ya que estas leyendo este, vamos a intentar hacerlo f&aacute;cil.<br/><br/>Una cookie es un peque&ntilde;o archivo de texto que puede quedar guardado en tu ordenador cuando visitas una web. Estos archivos son benignos, en el sentido de que no afectan al funcionamiento de tu ordenador, pero pueden ser utiles para los desarrolladores de p&aacute;ginas web para diversas cosas, como recordar tus preferencias entre visitas (como en nuestro caso) o identificarte y trazar tus movimientos por Internet (no es nuestro caso).<br/><br/>Aprovechando que aqu&iacute; utilizamos verdaderamente pocas, te contamos para que.<br/><ul><li><span style="font-weight:bold;">Idioma</span>: Utilizamos una cookie para recordar el idioma en el que quieres ver la p&aacute;gina. Si la estas viendo en castellano, el &uacute;nico texto que contendr&aacute; sera &quot;es&quot;. Bastante inofensivo, ¿verdad?</li><li><span style="font-weight:bold;">Aviso de cookies</span>: Ir&oacute;nicamente, tenemos que usar una cookie para evitar que el aviso sobre cookies que estamos obligados a mostrarte cuando nos visitas por primera vez te moleste solo esa primera vez. Esta es mas simple aun que la anterior, y es una cookie vacia, sin ningun tipo de texto.</li><li><span style="font-weight:bold;">Cookies de Google</span>: Esto tiene m&aacute;s miga. Durante las fiestas de Vitoria, esta p&aacute;gina muestra mapas de Google. Es posible (y casi seguro) que estos mapas inserten cookies propias sobre las que no tenemos ning&uacute;n control. Sorry.</li></ul>';
-	
+	$lng['help_ad_title'] = 'Advertisment policy';
+	$lng['help_ad'] = 'TODO';
+
 	//Ads
 	$lng['ad_title'] = 'Advertisment';
 	

A különbségek nem kerülnek megjelenítésre, a fájl túl nagy
+ 5 - 3
www/lang/lang_es.php


+ 8 - 2
www/lang/lang_eu.php

@@ -47,6 +47,9 @@
 	$lng['index_no_photos'] = 'Ez dago argazkirik';
 	$lng['index_see_all_photos'] = 'Joan galerira';
 	$lng['index_read_more'] = 'Gehiago irakurri';
+	$lng['index_us'] = 'Gasteizko Margolariak';
+	$lng['index_us_content'] = 'Somos una Cuadrilla de Blusas y Neskas de Vitoria-Gasteiz. Participamos en las fiestas de la ciudad, animando, organizando actividades, para nuestros miembros y para el p&uacute;blico en general.<br/><br/>Pero eso no es todo: Permanecemos activos durante el resto del a&ntilde;o, organizando actividades, tanto dentro como fuera de la ciudad: Competiciones, excursiones, eventos solidarios...';
+	$lng['index_us_more'] = 'M&aacute;s sobre nosotros';
 	$lng['index_'] = '';
 	
 	//header.php
@@ -85,7 +88,6 @@
 	$lng['lablanca_past_title'] = 'Aurreko urteen kartelak';
 	$lng['lablanca_past_link'] = 'Andre Zuria Jaiak ';
 	$lng['lablanca_'] = '';
-	$lng['lablanca_'] = '';
 	
 	// /actividades/index.php
 	$lng['activities_title'] = 'Ekitaldeak - Gasteizko Margolariak';
@@ -96,6 +98,7 @@
 	$lng['activities_album'] = 'Argazki albuma';
 	$lng['activities_archive'] = 'Artxiboa';
 	$lng['activities_date'] = 'Data';
+	$lng['activities_city'] = 'Hiria';
 	$lng['activities_price'] = 'Prezioa';
 	$lng['activities_price_0'] = 'Doan';
 	$lng['activities_maxpeople'] = 'Plazak';
@@ -139,6 +142,8 @@
 	// /nosotros/index.php
 	$lng['us_title'] = 'Gu - Gasteizko Margolariak';
 	$lng['us_description'] = 'Asociaci&oacute;n Cultural Gasteizko Margolariak';
+	$lng['us_introduction'] = 'Quienes somos';
+	$lng['us_introduction_content'] = 'Somos una Cuadrilla de Blusas y Neskas de Vitoria-Gasteiz. Participamos en las fiestas de la ciudad, animando, organizando actividades, para nuestros miembros y para el p&uacute;blico en general.<br/><br/>Pero eso no es todo: Permanecemos activos durante el resto del a&ntilde;o, organizando actividades, tanto dentro como fuera de la ciudad: Competiciones, excursiones, eventos solidarios...';
 	$lng['us_association'] = 'Asoziazioia';
 	$lng['us_association_content'] = 'La Asociaci&oacute;n Cultural Gasteizko Margolariak nace en el a&ntilde;o 2013 con la idea de estimular la participaci&oacute;n ciudadana y fortalecer la cultura y las tradiciones de Vitoria-Gasteiz.<br/><br/>En nuestro nombre se refleja un barrio en el que las calles nos recuerdan a grandes pintores: el barrio de San Mart&iacute;n. Estamos representados en los barrios, y creemos que son la esencia de esta ciudad.';
 	$lng['us_cuadrilla'] = 'Koadrilla';
@@ -146,7 +151,6 @@
 	$lng['us_activities'] = 'Edin dugula';
 	$lng['us_activities_content'] = 'Excursiones, partidos, causas ben&eacute;ficas... No solo se nos ve en fiestas.<br/><br/>Creemos que, como Cuadrilla de Blusas y Neskas, existimos por y para la ciudad, y por eso organizamos actividades durante todo el a&ntilde;o, para todo aquel que quiera acompa&ntilde;arnos<br/><br/>Si quieres saber lo que hacemos, te sugerimos que eches un vistazo a nuestra <a href="/galeria/">galer&iacute;a</a>. Y si quieres conocernos, apuntate a la siguiente <a href="/actividades/">actividad</a>!';
 	$lng['us_transparency'] = 'Gardentasuna';
-	//$lng['us_transparency_content'] = '¿Te preocupa saber d&oacute;nde va tu dinero? En Gasteizko Margolariak queremos que est&eacute;s tranquilo.<br/><br/>Muchas de nuestras actividades son gratuitas. Otras, como las fiestas de La Blanca, tienen una cuota de inscripci&oacute;n. Gasteizko Margolariak no es una empresa, es una Asociaci&oacute;n cultural, y como tal, no tenemos beneficios.<br/><br/>Queremos ser transparentes, y por eso ponemos a tu disposici&oacute;n nuestras cuentas de manera online, para que sepas que cada euro se reinvierte en ti.';
 	$lng['us_transparency_content'] = '¿Te preocupa saber d&oacute;nde va tu dinero? En Gasteizko Margolariak queremos que est&eacute;s tranquilo.<br/><br/>Muchas de nuestras actividades son gratuitas. Otras, como las fiestas de La Blanca, tienen una cuota de inscripci&oacute;n. Gasteizko Margolariak no es una empresa, es una Asociaci&oacute;n cultural, y como tal, no tenemos beneficios.<br/><br/>Queremos ser transparentes, y por eso, empezanod en 2016, pondremos a tu disposici&oacute;n nuestras cuentas de manera online, para que sepas que cada euro se reinvierte en t&iacute;.';
 	$lng['us_'] = '';
 	
@@ -211,6 +215,8 @@
 	$lng['help_privacy'] = 'Navegar por internet hoy en d&iacute; se ha vuelto algo complicado, en lo que aprivacidad se refiere: practicamente cada p&aacute;gina que visitamos intenta obtener todos los datos posibles sobre nosotros para utilizarlos en marketing, data mining...<br/> <br/>En Gasteizko Margolariak queremos construir un sitio limpio y seguro, en el que nuestros visitantes puedan estar a gusto.<br/><br/> Por eso, queremos explicarte toda la informaci&oacute;n que recogemos sobre t&iacute; y lo que hacemos con ello.<br/><ul><li><span style="font-weight:bold;">Direcci&oacute; IP</span>: Cuando nos visitas, almacenamos tu direcci&oacute;n IP, junto con la hora de conexi&oacute;. Esto no nos permite identificarte como persona, pero nos es muy &uacute;til para saber cuantas personas distintas nos visitan.</li><li><span style="font-weight:bold;">Fotograf&iacute;as y comentarios</span>: Cuanquier visitante puede subir fotograf&iacute;as a esta web o comentar en la mayor&iacute;a de entradas. Para hacerlo, solo requerimos un nombre, y no tenemos ningun problema en que uses pseud&oacute;nimos o nombres falsos. Cuando comentes o subas im&aacute;genes tambi&eacute;n registramos tu direcci&oacute;n IP.</li><li><span style="font-weight:bold;">Datos de los socios</span>: Independientemente de los datos recogidos por este sitio web, en Gasteizko Margolariak mantenemos una base de datos sobre las personas que alguna vez han participado en alguna actividad con nosotros. Si es tu caso, y quieres que los eliminemos, no tiene m&aacute;s que escribirnos a <a target="_blank" href="mailto:gasteizkomargolariak@gmail.com">gasteizkomargolariak@gmail.com</a>. Sin rencores.';
 	$lng['help_cookie_title'] = 'Cookie politika';
 	$lng['help_cookie'] = '¡Cookies! Est&aacute;n por todas partes. Sabemos que nadie suele leerse estos avisos sobre ellas, as&iacute; que ya que estas leyendo este, vamos a intentar hacerlo f&aacute;cil.<br/><br/>Una cookie es un peque&ntilde;o archivo de texto que puede quedar guardado en tu ordenador cuando visitas una web. Estos archivos son benignos, en el sentido de que no afectan al funcionamiento de tu ordenador, pero pueden ser utiles para los desarrolladores de p&aacute;ginas web para diversas cosas, como recordar tus preferencias entre visitas (como en nuestro caso) o identificarte y trazar tus movimientos por Internet (no es nuestro caso).<br/><br/>Aprovechando que aqu&iacute; utilizamos verdaderamente pocas, te contamos para que.<br/><ul><li><span style="font-weight:bold;">Idioma</span>: Utilizamos una cookie para recordar el idioma en el que quieres ver la p&aacute;gina. Si la estas viendo en castellano, el &uacute;nico texto que contendr&aacute; sera &quot;es&quot;. Bastante inofensivo, ¿verdad?</li><li><span style="font-weight:bold;">Aviso de cookies</span>: Ir&oacute;nicamente, tenemos que usar una cookie para evitar que el aviso sobre cookies que estamos obligados a mostrarte cuando nos visitas por primera vez te moleste solo esa primera vez. Esta es mas simple aun que la anterior, y es una cookie vacia, sin ningun tipo de texto.</li><li><span style="font-weight:bold;">Cookies de Google</span>: Esto tiene m&aacute;s miga. Durante las fiestas de Vitoria, esta p&aacute;gina muestra mapas de Google. Es posible (y casi seguro) que estos mapas inserten cookies propias sobre las que no tenemos ning&uacute;n control. Sorry.</li></ul>';
+	$lng['help_ad_title'] = 'Pol^iacute;tica de anuncios';
+	$lng['help_ad'] = 'TODO';
 	
 	//Ads
 	$lng['ad_title'] = 'Publizitatea';

+ 12 - 11
www/nosotros/index.php

@@ -3,6 +3,7 @@
 	$http_host = $_SERVER['HTTP_HOST'];
 	include("../functions.php");
 	$con = startdb();
+	$proto = getProtocol();
 	
 	//Language
 	$lang = selectLanguage();
@@ -16,8 +17,8 @@
 		<meta content="text/html; charset=utf-8" http-equiv="content-type"/>
 		<meta charset="utf-8"/>
 		<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1">
-		<title><?php echo $lng['us_title'];?></title>
-		<link rel="shortcut icon" href="<?php echo "http://$http_host/img/logo/favicon.ico";?>">
+		<title><?php echo $lng['us_title'];?> - Gasteizko Margolariak</title>
+		<link rel="shortcut icon" href="<?php echo "$proto$http_host/img/logo/favicon.ico";?>">
 		<!-- CSS files -->
 		<style>
 			<?php 
@@ -39,22 +40,22 @@
 			?>
 		</script>
 		<!-- Meta tags -->
-		<link rel="canonical" href="<?php echo "http://$http_host/nosotros/"; ?>"/>
-		<link rel="author" href="<?php echo "http://$http_host"; ?>"/>
-		<link rel="publisher" href="<?php echo "http://$http_host"; ?>"/>
+		<link rel="canonical" href="<?php echo "$proto$http_host/nosotros/"; ?>"/>
+		<link rel="author" href="<?php echo "$proto$http_host"; ?>"/>
+		<link rel="publisher" href="<?php echo "$proto$http_host"; ?>"/>
 		<meta name="description" content="<?php echo $lng['us_description'];?>"/>
-		<meta property="og:title" content="<?php echo $lng['us_title'];?>"/>
-		<meta property="og:url" content="<?php echo "http://$http_host"; ?>"/>
+		<meta property="og:title" content="<?php echo $lng['us_title'];?> - Gasteizko Margolariak"/>
+		<meta property="og:url" content="<?php echo "$proto$http_host"; ?>"/>
 		<meta property="og:description" content="<?php echo $lng['us_description'];?>"/>
-		<meta property="og:image" content="<?php echo "http://$http_host/img/logo/logo.png";?>"/>
+		<meta property="og:image" content="<?php echo "$proto$http_host/img/logo/logo.png";?>"/>
 		<meta property="og:site_name" content="<?php echo $lng['us_title'];?>"/>
 		<meta property="og:type" content="website"/>
 		<meta property="og:locale" content="<?php echo $lang; ?>"/>
 		<meta name="twitter:card" content="summary"/>
-		<meta name="twitter:title" content="<?php echo $lng['us_title'];?>"/>
+		<meta name="twitter:title" content="<?php echo $lng['us_title'];?> - Gasteizko Margolariak"/>
 		<meta name="twitter:description" content="<?php echo $lng['us_description'];?>"/>
-		<meta name="twitter:image" content="<?php echo "http://$http_host/img/logo/logo.png";?>"/>
-		<meta name="twitter:url" content="<?php echo"http://$http_host"; ?>"/>
+		<meta name="twitter:image" content="<?php echo "$proto$http_host/img/logo/logo.png";?>"/>
+		<meta name="twitter:url" content="<?php echo"$proto$http_host"; ?>"/>
 		<meta name="robots" content="index follow"/>
 	</head>
 	<body>

+ 3 - 3
www/script/blog.js

@@ -20,7 +20,7 @@ function launchSearch(where){
 
 //WARNING: If changed in css, change here.
 function defaultInputBorder(id){
-	id.style.border = '0.4em solid #9cd3d9'
+	id.style.border = '0.2em solid #0078ff'
 }
 
 function postComment(post, lang){
@@ -32,12 +32,12 @@ function postComment(post, lang){
 	//Check fields
 	if (text.length == 0){
 		defaultBorderStyle = document.getElementById('new_comment_text').style.border;
-		document.getElementById('new_comment_text').style.border = '0.4em solid #fc5359';
+		document.getElementById('new_comment_text').style.border = '0.2em solid #fc5359';
 		document.getElementById('new_comment_text').focus();
 		return false;
 	}
 	if (user.length == 0){
-		document.getElementById('new_comment_user').style.border = '0.4em solid #fc5359';
+		document.getElementById('new_comment_user').style.border = '0.2em solid #fc5359';
 		document.getElementById('new_comment_user').focus();
 		return false;
 	}

+ 1 - 1
www/script/galeria.js

@@ -109,7 +109,7 @@ function scrollPhoto(inc){
 
 //WARNING: If changed in css, change here.
 function defaultInputBorder(id){
-	id.style.border = '0.4em solid #9cd3d9'
+	id.style.border = '0.2em solid #0078ff'
 }
 
 function postComment(photo, lang){

+ 18 - 17
www/sitemap.php

@@ -3,13 +3,14 @@
 	$http_host = $_SERVER['HTTP_HOST'];
 	include("functions.php");
 	$con = startdb();
+	$proto = getProtocol();
 	echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n";
 ?>
 <urlset
 	xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
 	xmlns:image="http://www.google.com/schemas/sitemap-image/1.1">
 	<url>
-		<loc>http://<?php echo $http_host; ?>/</loc>
+		<loc><?php echo $proto$http_host; ?>/</loc>
 		<?php
 			$res_date = mysqli_query($con, "(SELECT DATE_FORMAT(dtime, '%Y-%m-%d') AS cdate FROM post) UNION (SELECT DATE_FORMAT(dtime, '%Y-%m-%d') AS cdate FROM activity) UNION (SELECT DATE_FORMAT(uploaded, '%Y-%m-%d') AS cdate FROM photo) ORDER BY cdate DESC LIMIT 1;");
 			$row_date = mysqli_fetch_array($res_date);
@@ -17,28 +18,28 @@
 		<changefreq>weekly</changefreq>
 		<priority>0.8</priority>
 		<image:image>
-			<image:loc>http://<?php echo $http_host; ?>/img/logo/GasteizkoMargolariak.png</image:loc>
+			<image:loc><?php echo $proto$http_host; ?>/img/logo/GasteizkoMargolariak.png</image:loc>
 			<image:caption>Gasteizko Margolariak</image:caption>
 			<image:title>Gasteizko Margolariak</image:title>
 		</image:image>
 		<image:image>
-			<image:loc>http://<?php echo $http_host; ?>/img/logo/GasteizkoMargolariak-0.png</image:loc>
+			<image:loc><?php echo $proto$http_host; ?>/img/logo/GasteizkoMargolariak-0.png</image:loc>
 			<image:caption>Gasteizko Margolariak Original</image:caption>
 			<image:title>Gasteizko Margolariak Original</image:title>
 		</image:image>
 	</url>
 	<url>
-		<loc>http://<?php echo $http_host; ?>/help/</loc>
+		<loc><?php echo $proto$http_host; ?>/ayuda/</loc>
 		<changefreq>monthly</changefreq>
 		<priority>0.5</priority>
 	</url>
 	<url>
-		<loc>http://<?php echo $http_host; ?>/nosotros/</loc>
+		<loc><?php echo $proto$http_host; ?>/nosotros/</loc>
 		<changefreq>monthly</changefreq>
 		<priority>0.6</priority>
 	</url>
 	<url>
-		<loc>http://<?php echo $http_host; ?>/blog/</loc>
+		<loc><?php echo $proto$http_host; ?>/blog/</loc>
 		<?php
 			$res_date = mysqli_query($con, "SELECT DATE_FORMAT(dtime, '%Y-%m-%d') AS cdate FROM post ORDER BY cdate DESC LIMIT 1;");
 			$row_date = mysqli_fetch_array($res_date);
@@ -51,14 +52,14 @@
 		$priority = 0.75;
 		while ($row_post = mysqli_fetch_array($res_post)){
 			echo "\t<url>\n";
-			echo "\t\t<loc>http://$http_host/blog/$row_post[permalink]</loc>\n";
+			echo "\t\t<loc>$proto$http_host/blog/$row_post[permalink]</loc>\n";
 			echo "\t\t<lastmod>$row_post[cdate]</lastmod>\n";
 			echo "\t\t<changefreq>weekly</changefreq>\n";
 			echo "\t\t<priority>$priority</priority>\n";
 			$q_i = mysqli_query($con, "SELECT image FROM post_image WHERE post = $row_post[id] ORDER BY idx;");
 			while ($r_i = mysqli_fetch_array($q_i)){
 				echo("\t\t<image:image>\n");
-				echo("\t\t\t<image:loc>http://$http_host/img/blog/view/$r_i[image]</image:loc>\n");
+				echo("\t\t\t<image:loc>$proto$http_host/img/blog/view/$r_i[image]</image:loc>\n");
 				echo("\t\t\t<image:title>$row_post[title_es]</image:title>\n");
 				echo("\t\t</image:image>\n");
 			} 
@@ -69,7 +70,7 @@
 		}
 	?>
 	<url>
-		<loc>http://<?php echo $http_host; ?>/actividades/</loc>
+		<loc><?php echo $proto$http_host; ?>/actividades/</loc>
 		<?php
 			$res_date = mysqli_query($con, "SELECT DATE_FORMAT(dtime, '%Y-%m-%d') AS cdate FROM activity ORDER BY cdate DESC LIMIT 1;");
 			$row_date = mysqli_fetch_array($res_date);
@@ -82,14 +83,14 @@
 		$priority = 0.95;
 		while ($row = mysqli_fetch_array($res)){
 			echo "\t<url>\n";
-			echo "\t\t<loc>http://$http_host/actividades/$row[permalink]</loc>\n";
+			echo "\t\t<loc>$proto$http_host/actividades/$row[permalink]</loc>\n";
 			echo "\t\t<lastmod>$row[cdate]</lastmod>\n";
 			echo "\t\t<changefreq>weekly</changefreq>\n";
 			echo "\t\t<priority>$priority</priority>\n";
 			$q_i = mysqli_query($con, "SELECT image FROM activity_image WHERE activity = $row[id] ORDER BY idx;");
 			while ($r_i = mysqli_fetch_array($q_i)){
 				echo("\t\t<image:image>\n");
-				echo("\t\t\t<image:loc>http://$http_host/img/actividades/view/$r_i[image]</image:loc>\n");
+				echo("\t\t\t<image:loc>$proto$http_host/img/actividades/view/$r_i[image]</image:loc>\n");
 				echo("\t\t\t<image:title>$row[title_es]</image:title>\n");
 				echo("\t\t</image:image>\n");
 			} 
@@ -100,7 +101,7 @@
 		}
 	?>
 	<url>
-		<loc>http://<?php echo $http_host; ?>/galeria/</loc>
+		<loc><?php echo $proto$http_host; ?>/galeria/</loc>
 		<?php
 			$res_date = mysqli_query($con, "SELECT DATE_FORMAT(uploaded, '%Y-%m-%d') AS cdate FROM photo ORDER BY cdate DESC LIMIT 1;");
 			$row_date = mysqli_fetch_array($res_date);
@@ -113,14 +114,14 @@
 		$priority = 0.75;
 		while ($row = mysqli_fetch_array($res)){
 			echo "\t<url>\n";
-			echo "\t\t<loc>http://$http_host/galeria/$row[permalink]</loc>\n";
+			echo "\t\t<loc>$proto$http_host/galeria/$row[permalink]</loc>\n";
 			echo "\t\t<lastmod>$row[cdate]</lastmod>\n";
 			echo "\t\t<changefreq>weekly</changefreq>\n";
 			echo "\t\t<priority>$priority</priority>\n";
 			$q_i = mysqli_query($con, "SELECT file, title_es FROM photo, photo_album WHERE id = photo AND album = $row[albumid];");
 			while ($r_i = mysqli_fetch_array($q_i)){
 				echo("\t\t<image:image>\n");
-				echo("\t\t\t<image:loc>http://$http_host/img/galeria/view/$r_i[file]</image:loc>\n");
+				echo("\t\t\t<image:loc>$proto$http_host/img/galeria/view/$r_i[file]</image:loc>\n");
 				if (strlen($r_i['title_es']) > 0){
 					echo("\t\t\t<image:title>$r_i[title_es]</image:title>\n");
 				}
@@ -136,7 +137,7 @@
 		}
 	?>
 	<url>
-		<loc>http://<?php echo $http_host; ?>/lablanca/</loc>
+		<loc><?php echo $proto$http_host; ?>/lablanca/</loc>
 		<?php
 			$res_lb = mysqli_query($con, 'SELECT value FROM settings WHERE name= "festivals";');
 			if (mysqli_num_rows($res_lb) > 0){
@@ -162,12 +163,12 @@
 		$priority = 0.55;
 		while ($row_years = mysqli_fetch_array($res_years)){
 			echo "\t<url>\n";
-			echo "\t\t<loc>http://$http_host/lablanca/$row_years[year]</loc>\n";
+			echo "\t\t<loc>$proto$http_host/lablanca/$row_years[year]</loc>\n";
 			echo "\t\t<changefreq>yearly</changefreq>\n";
 			echo "\t\t<priority>$priority</priority>\n";
 			if (strlen($row_years['img']) > 0){
 				echo("\t\t<image:image>\n");
-				echo("\t\t\t<image:loc>http://$http_host/img/fiestas/view/$row_years[img]</image:loc>\n");
+				echo("\t\t\t<image:loc>$proto$http_host/img/fiestas/view/$row_years[img]</image:loc>\n");
 				echo("\t\t\t<image:title>La Blanca $row_years[year]</image:title>\n");
 				echo("\t\t</image:image>\n");
 			}

Nem az összes módosított fájl került megjelenítésre, mert túl sok fájl változott