diff --git a/library/ZendAfi/Form.php b/library/ZendAfi/Form.php
index c7bc194a5ebe8586dfdc1a1275f93a058d309e60..44c84e6b96f71ada9e0a4f3c86a08090e9830188 100644
--- a/library/ZendAfi/Form.php
+++ b/library/ZendAfi/Form.php
@@ -234,16 +234,22 @@ class ZendAfi_Form extends Zend_Form {
 
 
   protected function _versionCompareDecoratorFor($element, $datas) {
-    $class_name = 'ZendAfi_Form_Decorator_VersionCompare';
+    $class_name = $this->_specificClassFor($element,
+                                           'ZendAfi_Form_Decorator_VersionCompare');
+    return new $class_name(['datas' => $datas]);
+  }
+
+
+  protected function _specificClassFor($element, $base_class) {
     try {
-      $specific = $class_name . '_' . $this->_getElementType($element);
+      $specific = $base_class . '_' . $this->_getElementType($element);
       Zend_Loader::loadClass($specific);
-      $class_name = $specific;
+      $base_class = $specific;
     } catch(Exception $e) {
       // couldn't load, will default to generic class name
     }
 
-    return new $class_name(['datas' => $datas]);
+    return $base_class;
   }
 
 
diff --git a/library/ZendAfi/View/Helper/Admin/RenderVersionForm.php b/library/ZendAfi/View/Helper/Admin/RenderVersionForm.php
index 85029eb54ccf85742262787bbb1c05d91005685e..3e8dceb40bc73c9727a8119262885e3829e988a9 100644
--- a/library/ZendAfi/View/Helper/Admin/RenderVersionForm.php
+++ b/library/ZendAfi/View/Helper/Admin/RenderVersionForm.php
@@ -23,10 +23,13 @@
 class ZendAfi_View_Helper_Admin_RenderVersionForm
   extends ZendAfi_View_Helper_Admin_RenderForm {
 
-  protected $_version;
+  protected
+    $_version, $_form;
 
   public function renderVersionForm($form, $version) {
+    $this->_form = $form;
     $this->_version = $version;
+
     return parent::renderForm($form);
   }
 
@@ -39,6 +42,17 @@ class ZendAfi_View_Helper_Admin_RenderVersionForm
   }
 
 
+  protected function _isModified() {
+    foreach($this->_form->getElements() as $element) {
+      $render = $element->render();
+      if (false !== strpos($render, 'class="modified"'))
+        return true;
+    }
+
+    return false;
+  }
+
+
   protected function _buttonsFor($form, $buttons) {
     return $this
       ->_renderDefaultButtons($form,
@@ -100,14 +114,19 @@ class ZendAfi_View_Helper_Admin_RenderVersionForm
     $url = $this->view->url(['key' => $this->_version->getId(),
                              'action' => 'version-apply']);
 
-    $delete = (new Class_Entity())
+    $apply = (new Class_Entity())
       ->setText($this->_('Revenir à cette version'))
-      ->setUrl($url)
-      ->setAttribs(['onclick' => "if (confirm('" . htmlspecialchars($this->_('Êtes-vous sur de vouloir revenir à cette version ?')) . "')) { window.location.href='" . $url ."'}; return false;"])
       ->setImage($this->view->tagImg(Class_Admin_Skin::current()
-                                     ->renderIconUrlOn('buttons', 'validate')));
+                                     ->renderIconUrlOn('buttons', 'validate')))
+    ->setAttribs(['disabled' => 'disabled',
+                    'title' => $this->_('Aucune différence avec les donnnées actuelles')]);
 
-    return $this->view->Button($delete);
+    if ($this->_isModified())
+      $apply
+        ->setUrl($url)
+        ->setAttribs(['onclick' => "if (confirm('" . htmlspecialchars($this->_('Êtes-vous sur de vouloir revenir à cette version ?')) . "')) { window.location.href='" . $url ."'}; return false;"]);
+
+    return $this->view->Button($apply);
   }