diff --git a/events.php b/events.php
index 5609e5b35a0d8eca66299c64d97b0080cbcd8e5e..11477f5fc8c969aa4612d28cb1e24be2a27c7a18 100644
--- a/events.php
+++ b/events.php
@@ -18,21 +18,28 @@ PRODID:-//Sam events//NONSGML//EN
 X-WR-CALNAME:Sam events\n\n";
 
 // get events
+
+$query = 'SELECT s.id, s.title, UNIX_TIMESTAMP(s.date), s.place, s.description, s.link FROM sam s';
+$args = array();
+
 if (isset($_GET['nick'])) {
-	$events = $bdd->prepare('SELECT s.id, title, UNIX_TIMESTAMP(date), place, description, link
-		FROM sam s JOIN sam_users su ON s.id = su.event
-		WHERE nick = ? AND  s.date >= NOW()
-		ORDER BY date');
-	$events->execute(array($_GET['nick']));
+	$query .= ' JOIN sam_users su ON s.id = su.event';
+	$query .= ' WHERE nick = ? AND s.date >= NOW()';
+	$args[] = $_GET['nick'];
 }
 else {
-	$events = $bdd->prepare('SELECT id, title, UNIX_TIMESTAMP(date), place, description, link
-		FROM sam s
-		WHERE s.date >= NOW()
-		ORDER BY date');
-	$events->execute();
+	$query .= ' WHERE s.date >= NOW()';
 }
 
+if (isset($_GET['calendar'])) {
+	$query .= ' AND s.calendar_id = ?';
+	$args[] = $_GET['calendar'];
+}
+
+$query .= ' ORDER BY date';
+$events = $bdd->prepare($query);
+$events->execute($args);
+
 // loop over events
 while ($event = $events->fetch()) {
 	$output .=