diff --git a/library/Class/Systeme/ModulesAccueil/Calendrier.php b/library/Class/Systeme/ModulesAccueil/Calendrier.php
index 662bd0b4bd0dd7040521f6f227370beb0e2356ff..8b9ac8f4d2eb94849b70805506f88f78b92dcbdc 100644
--- a/library/Class/Systeme/ModulesAccueil/Calendrier.php
+++ b/library/Class/Systeme/ModulesAccueil/Calendrier.php
@@ -69,7 +69,7 @@ class Class_Systeme_ModulesAccueil_Calendrier extends Class_Systeme_ModulesAccue
 
 	public function getAvailableFilters() {
 		$available_filters = [
-													'month' => $this->_('Mois'),
+													'date' => $this->_('Mois'),
 													'place' => $this->_('Lieu'),
 		];
 		$custom_fields = Class_CustomField_Model::getModel('Article')->getFields();
diff --git a/library/ZendAfi/View/Helper/Calendar/RenderFilters.php b/library/ZendAfi/View/Helper/Calendar/RenderFilters.php
index 8b202809c2e780730645816d40c4e80e4f477962..46ee3e0b94884bc9683826f18f8dcabc00cfed94 100644
--- a/library/ZendAfi/View/Helper/Calendar/RenderFilters.php
+++ b/library/ZendAfi/View/Helper/Calendar/RenderFilters.php
@@ -91,6 +91,8 @@ abstract class ZendAfi_View_Helper_Calendar_FilterElements {
 		if (preg_match('/^custom_field_(\d+)/', $filter, $matches))
 			return new ZendAfi_View_Helper_Calendar_FilterElementsCustomField($matches[1]);
 		$class = 'ZendAfi_View_Helper_Calendar_FilterElements' . ucfirst($filter);
+		if (!class_exists($class))
+			$class = 'ZendAfi_View_Helper_Calendar_FilterElementsNull';
 		return new $class();
 	}
 
@@ -98,25 +100,31 @@ abstract class ZendAfi_View_Helper_Calendar_FilterElements {
 }
 
 
+class ZendAfi_View_Helper_Calendar_FilterElementsNull extends ZendAfi_View_Helper_Calendar_FilterElements {
+	public function elements() {
+		return [];
+	}
+}
 
 
-class ZendAfi_View_Helper_Calendar_FilterElementsMonth extends ZendAfi_View_Helper_Calendar_FilterElements {
+class ZendAfi_View_Helper_Calendar_FilterElementsDate extends ZendAfi_View_Helper_Calendar_FilterElements {
 	use Trait_Translator;
 
 	public function elements() {
+		$current_year = date("Y").'-';
 		return [
-			'1' => $this->_('Janvier'),
-			'2' => $this->_('Février'),
-			'3' => $this->_('Mars'),
-			'4' => $this->_('Avril'),
-			'5' => $this->_('Mai'),
-			'6' => $this->_('Juin'),
-			'7' => $this->_('Juillet'),
-			'8' => $this->_('Août'),
-			'9' => $this->_('Septembre'),
-			'10' => $this->_('Octobre'),
-			'11' => $this->_('Novembre'),
-			'12' => $this->_('Décembre'),
+			$current_year.'01' => $this->_('Janvier'),
+			$current_year.'02' => $this->_('Février'),
+			$current_year.'03' => $this->_('Mars'),
+			$current_year.'04' => $this->_('Avril'),
+			$current_year.'05' => $this->_('Mai'),
+			$current_year.'06' => $this->_('Juin'),
+			$current_year.'07' => $this->_('Juillet'),
+			$current_year.'08' => $this->_('Août'),
+			$current_year.'09' => $this->_('Septembre'),
+			$current_year.'10' => $this->_('Octobre'),
+			$current_year.'11' => $this->_('Novembre'),
+			$current_year.'12' => $this->_('Décembre'),
 		];
 	}
 }
diff --git a/tests/application/modules/admin/controllers/AccueilControllerCalendarTest.php b/tests/application/modules/admin/controllers/AccueilControllerCalendarTest.php
index 7d69523e49c5989932e116fef150315820c31e0c..82fbe911de5114d79464700020f18aef7ddeca01 100644
--- a/tests/application/modules/admin/controllers/AccueilControllerCalendarTest.php
+++ b/tests/application/modules/admin/controllers/AccueilControllerCalendarTest.php
@@ -16,15 +16,15 @@
  *
  * You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
  * along with AFI-OPAC 2.0; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA 
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
  */
 
 
 class Admin_AccueilControllerCalendarTestWithDefaultDiaporamaNavigation extends Admin_AbstractControllerTestCase {
-	
+
 	public function setUp() {
 		parent::setUp();
-		
+
 
 		Class_CustomField_Meta::beVolatile();
 		$this->fixture('Class_CustomField',
@@ -42,7 +42,7 @@ class Admin_AccueilControllerCalendarTestWithDefaultDiaporamaNavigation extends
 										'options_list' => 'music;theater;movie',
 										'model' => 'Article']);
 
-		$this->fixture('Class_Profil', 
+		$this->fixture('Class_Profil',
 									 ['id' => 1,
 										'libelle' => 'Afibre'])
 			->updateModuleConfigAccueil(1, ['type_module' => 'CALENDRIER',
@@ -57,7 +57,7 @@ class Admin_AccueilControllerCalendarTestWithDefaultDiaporamaNavigation extends
 																												'display_mode' => 'Summary',
 																												'display_order' => 'EventDebut',
 																												'display_cat_select' => '',
-																												'enabled_filters' => 'month;place;custom_field_1',
+																												'enabled_filters' => 'date;place;custom_field_1',
 																			'id_categorie' => '',
 																			'event_filter' => 'none'
 																				]])
@@ -66,7 +66,7 @@ class Admin_AccueilControllerCalendarTestWithDefaultDiaporamaNavigation extends
 		$this->dispatch('admin/accueil/calendrier?config=accueil&id_profil=1&id_module=1&type_module=CALENDRIER', true);
 	}
 
-	
+
 	/** @test */
 	public function settingsEventFilterToDisplayShouldBePresent() {
 		$this->assertXPath('//td[contains(text(),"Filtre")]/following-sibling::td/select[@name="event_filter"]/option[@value="none"][@selected="selected"]', $this->_response->getBody());
@@ -113,7 +113,7 @@ class Admin_AccueilControllerCalendarTestWithDefaultDiaporamaNavigation extends
 	/** @test */
 	public function secondListShouldContainsMonthPlaceAndPublic() {
 		$this->assertXPathContentContains('//div[@id="input_enabled_filters"]/div[2]/ul/li[@data-value="custom_field_1"]', 'Public');
-		$this->assertXPathContentContains('//div[@id="input_enabled_filters"]/div[2]/ul/li[@data-value="month"]', 'Mois');
+		$this->assertXPathContentContains('//div[@id="input_enabled_filters"]/div[2]/ul/li[@data-value="date"]', 'Mois');
 		$this->assertXPathContentContains('//div[@id="input_enabled_filters"]/div[2]/ul/li[@data-value="place"]', 'Lieu');
 	}
 
diff --git a/tests/application/modules/opac/controllers/CmsControllerCalendarActionTest.php b/tests/application/modules/opac/controllers/CmsControllerCalendarActionTest.php
index af4a3221ce7fafa8f29a7be79373ec5a96cc787f..4356a399d87f779b0f773714edd0de1f8d6de72d 100644
--- a/tests/application/modules/opac/controllers/CmsControllerCalendarActionTest.php
+++ b/tests/application/modules/opac/controllers/CmsControllerCalendarActionTest.php
@@ -35,7 +35,7 @@ abstract class CmsControllerCalendarActionTestCase extends AbstractControllerTes
 																	 'rss_avis' => false,
 																	 'id_categorie' => '12-2',
 																	 'display_cat_select' => true,
-																	 'enabled_filters' => 'month;place;custom_field_2',
+																	 'enabled_filters' => 'date;place;custom_field_2;zork',
 																	 'display_event_info' => 'none']]],
 			 'options' => 	[]];
 
@@ -160,7 +160,7 @@ class CmsControllerCalendarActionWithFiltersTest extends CmsControllerCalendarAc
 													 'events_only' => true,
 													 'id_bib' => 0,
 													 'custom_fields' => [
-																							 2 => 'music',
+																							 2 => 'opac',
 													 ],
 													 'published' => false];
 
@@ -178,7 +178,7 @@ class CmsControllerCalendarActionWithFiltersTest extends CmsControllerCalendarAc
 			->answers([])
 			->beStrict();
 
-		$this->dispatch('/cms/calendar/date/2014-08/custom_field_2/music', true);
+		$this->dispatch('/cms/calendar/id_profil/3/id_module/1/date/2014-08/custom_field_2/opac/render/ajax', true);
 	}
 
 
@@ -187,6 +187,21 @@ class CmsControllerCalendarActionWithFiltersTest extends CmsControllerCalendarAc
 		$this->assertXPathContentContains('//a[@class="calendar_event_title"]',
 																			'OPAC 4 en prod !');
 	}
+
+
+	/** @test */
+	public function monthFilterShouldContainsCustomField2Music() {
+		$this->assertXPathContentContains('//ul[@class="date"]//a[contains(@href, "/cms/calendar/id_module/1/custom_field_2/opac/date/2014-11")]',
+																			'Novembre');
+	}
+
+
+	/** @test */
+	public function themeFilterShouldContainsDate2014_08() {
+		$this->assertXPathContentContains('//ul[@class="custom_field_2"]//li//a[contains(@href, "/cms/calendar/id_module/1/date/2014-08/custom_field_2/sigb")]',
+																			'sigb');
+	}
+
 }
 
-?>
+?>
\ No newline at end of file
diff --git a/tests/library/ZendAfi/View/Helper/Accueil/CalendarTest.php b/tests/library/ZendAfi/View/Helper/Accueil/CalendarTest.php
index 39e1144382213d769901fea8aceb50a1b8a591f0..3e84af67378b334a2c8b798192c635c292ae5234 100644
--- a/tests/library/ZendAfi/View/Helper/Accueil/CalendarTest.php
+++ b/tests/library/ZendAfi/View/Helper/Accueil/CalendarTest.php
@@ -1001,7 +1001,7 @@ class CalendarHelperWithFiltersTest extends CalendarHelperDisplayModeTestCase {
 										'value' => 'theater']);
 
 
-		$params['preferences']['enabled_filters'] = ';month;place;custom_field_2';
+		$params['preferences']['enabled_filters'] = ';date;place;custom_field_2';
 	}
 
 
@@ -1018,15 +1018,15 @@ class CalendarHelperWithFiltersTest extends CalendarHelperDisplayModeTestCase {
 
 
 	/** @test */
-	public function MonthFilterShouldContainsAllMonths() {
+	public function dateFilterShouldContainsAllMonths() {
 		$this->assertXPathCount($this->html,
-			'//div[@class="filters"]/ul[@class="month"]/li', 12);
+			'//div[@class="filters"]/ul[@class="date"]/li', 12);
 
 		$this->assertXPathContentContains($this->html,
-			'//div[@class="filters"]/ul[@class="month"]/li[1]/a[contains(@href, "month/1")]', 'Janvier');
+			'//div[@class="filters"]/ul[@class="date"]/li[1]/a[contains(@href, "date/2014-01")]', 'Janvier');
 
 		$this->assertXPathContentContains($this->html,
-			'//div[@class="filters"]/ul[@class="month"]/li[11]/a[contains(@href, "month/11")]', 'Novembre');
+			'//div[@class="filters"]/ul[@class="date"]/li[11]/a[contains(@href, "date/2014-11")]', 'Novembre');
 	}
 
 	/** @test */