Index: /extensions/autoupdate/branches/2.0/autoupdate.php
===================================================================
--- /extensions/autoupdate/branches/2.0/autoupdate.php	(revision 10028)
+++ /extensions/autoupdate/branches/2.0/autoupdate.php	(revision 10029)
@@ -120,4 +120,9 @@
     autoupdate_upgrade_to($_POST['upgrade_to'], $step);
   }
+
+  include_once(AUTOUPDATE_PATH.'include/autoupdate.class.php');
+  $autoupdate = new autoupdate();
+  $autoupdate->get_server_extensions($upgrade_to);
+  $template->assign('missing', $autoupdate->missing);
 }
 
Index: /extensions/autoupdate/branches/2.0/include/autoupdate.class.php
===================================================================
--- /extensions/autoupdate/branches/2.0/include/autoupdate.class.php	(revision 10029)
+++ /extensions/autoupdate/branches/2.0/include/autoupdate.class.php	(revision 10029)
@@ -0,0 +1,218 @@
+<?php
+
+if (!defined('PHPWG_ROOT_PATH')) die('Hacking attempt!');
+
+class autoupdate
+{
+  var $types = array();
+  var $plugins;
+  var $themes;
+  var $languages;
+  var $missing = array();
+  var $default_plugins = array();
+  var $default_themes = array();
+
+  function autoupdate()
+  {
+    if (version_compare(PHPWG_VERSION, '2.1', '>='))
+    {
+      $this->types = array('plugins', 'themes');
+      $this->default_themes = array('clear', 'dark', 'Sylvia');
+      $this->default_plugins = array('admin_multi_view', 'c13y_upgrade', 'language_switch', 'LocalFilesEditor');
+    }
+    else
+    {
+      $this->types = array('plugins');
+      $this->default_plugins = array('admin_multi_view', 'c13y_upgrade', 'language_switch', 'LocalFilesEditor', 'event_tracer', 'admin_advices', 'add_index');
+    }
+
+    foreach ($this->types as $type)
+    {
+      include_once(PHPWG_ROOT_PATH.'admin/include/'.$type.'.class.php');
+      $this->$type = new $type();
+    }
+  }
+
+  function check_piwigo_upgrade()
+  {
+    $_SESSION['need_update'] = null;
+
+    if (preg_match('/(\d+\.\d+)\.(\d+)/', PHPWG_VERSION, $matches)
+      and @fetchRemote(PHPWG_URL.'/download/all_versions.php', $result))
+    {
+      $all_versions = @explode("\n", $result);
+      $new_version = trim($all_versions[0]);
+      $_SESSION['need_update'] = version_compare(PHPWG_VERSION, $new_version, '<');
+    }
+  }
+
+  function get_server_extensions($version=PHPWG_VERSION)
+  {
+    global $user;
+
+    // Retrieve PEM versions
+    $versions_to_check = array();
+    $url = PEM_URL . '/api/get_version_list.php?format=php';
+    if (fetchRemote($url, $result) and $pem_versions = @unserialize($result))
+    {
+      if (!preg_match('/^\d+\.\d+\.\d+/', $version))
+      {
+        $version = $pem_versions[0]['name'];
+      }
+      $branch = substr($version, 0, strrpos($version, '.'));
+      foreach ($pem_versions as $pem_version)
+      {
+        if (strpos($pem_version['name'], $branch) === 0)
+        {
+          $versions_to_check[] = $pem_version['id'];
+        }
+      }
+    }
+    if (empty($versions_to_check))
+    {
+      return false;
+    }
+
+    // Extensions to check
+    $ext_to_check = array();
+    foreach ($this->types as $type)
+    {
+      $fs = 'fs_'.$type;
+      foreach ($this->$type->$fs as $ext)
+      {
+        if (isset($ext['extension']))
+        {
+          $ext_to_check[$ext['extension']] = $type;
+        }
+      }
+    }
+
+    // Retrieve PEM plugins infos
+    $url = PEM_URL . '/api/get_revision_list.php'
+      . '?format=php'
+      . '&last_revision_only=true'
+      . '&version='.implode(',', $versions_to_check)
+      . '&lang='.substr($user['language'], 0, 2)
+      . '&get_nb_downloads=true';
+
+    if (!empty($ext_to_check))
+    {
+      $get_data['extension_include'] = implode(',', array_keys($ext_to_check));
+    }
+
+    if (fetchRemote($url, $result, $get_data))
+    {
+      $pem_exts = @unserialize($result);
+      if (!is_array($pem_exts))
+      {
+        return false;
+      }
+      foreach ($pem_exts as $ext)
+      {
+        if (isset($ext_to_check[$ext['extension_id']]))
+        {
+          $server = 'server_'.$ext_to_check[$ext['extension_id']];
+          $this->$ext_to_check[$ext['extension_id']]->$server += array($ext['extension_id'] => $ext);
+          unset($ext_to_check[$ext['extension_id']]);
+        }
+      }
+      $this->check_missing_extensions($ext_to_check);
+      return true;
+    }
+    return false;
+  }
+
+  // Check all extensions upgrades
+  function check_extensions()
+  {
+    global $conf;
+
+    if (!$this->get_server_extensions())
+    {
+      autoupdate_error();
+    }
+
+    $_SESSION['extensions_need_update'] = array();
+
+    foreach ($this->types as $type)
+    {
+      $fs = 'fs_'.$type;
+      $server = 'server_'.$type;
+      $server_ext = $this->$type->$server;
+      $fs_ext = $this->$type->$fs;
+
+      $ignore_list = array();
+      $need_upgrade = array();
+
+      foreach($fs_ext as $ext_id => $fs_ext)
+      {
+        if (isset($fs_ext['extension']) and isset($server_ext[$fs_ext['extension']]))
+        {
+          $ext_info = $server_ext[$fs_ext['extension']];
+
+          if (!$this->version_compare($fs_ext['version'], $ext_info['revision_name'], $type))
+          {
+            if (in_array($ext_id, $conf['AU_ignore'][$type]))
+            {
+              array_push($ignore_list, $ext_id);
+            }
+            else
+            {
+              $_SESSION['extensions_need_update'][$type][$ext_id] = $ext_info['revision_name'];
+            }
+          }
+        }
+      }
+      $conf['AU_ignore'][$type] = $ignore_list;
+    }
+    conf_update_param('autoupdate_ignore_list', pwg_db_real_escape_string(serialize($conf['AU_ignore'])));
+  }
+
+  // Check if extension have been upgraded since last check
+  function check_updated_extensions()
+  {
+    foreach ($this->types as $type)
+    {
+      if (!empty($_SESSION['extensions_need_update'][$type]))
+      {
+        $fs = 'fs_'.$type;
+        foreach($this->$type->$fs as $ext_id => $fs_ext)
+        {
+          if (isset($_SESSION['extensions_need_update'][$type][$ext_id])
+            and $this->version_compare($fs_ext['version'], $_SESSION['extensions_need_update'][$type][$ext_id], $type))
+          {
+            // Extension have been upgraded
+            $this->check_extensions();
+            break;
+          }
+        }
+      }
+    }
+  }
+
+  function check_missing_extensions($missing)
+  {
+    foreach ($missing as $id => $type)
+    {
+      $fs = 'fs_'.$type;
+      $default = 'default_'.$type;
+      foreach ($this->$type->$fs as $ext_id => $ext)
+      {
+        if (isset($ext['extension']) and $id == $ext['extension'] and !in_array($ext_id, $this->$default))
+        {
+          $this->missing[$type][] = $ext;
+          break;
+        }
+      }
+    }
+  }
+
+  function version_compare($a, $b, $type)
+  {
+    $version_compare = rtrim($type, 's').'_version_compare';
+
+    return $this->$type->$version_compare($a, $b);
+  }
+}
+
+?>
Index: /extensions/autoupdate/branches/2.0/language/ar_SA/plugin.lang.php
===================================================================
--- /extensions/autoupdate/branches/2.0/language/ar_SA/plugin.lang.php	(revision 10028)
+++ /extensions/autoupdate/branches/2.0/language/ar_SA/plugin.lang.php	(revision 10029)
@@ -38,3 +38,6 @@
 $lang['Unable to dump database.'] = 'غير قادرعلى تفريق قاعدة البيانات.';
 
+/*TODO*/$lang['Following plugins may not be compatible with the new version of Piwigo:'] = 'Following plugins may not be compatible with the new version of Piwigo:';
+/*TODO*/$lang['Following themes may not be compatible with the new version of Piwigo:'] = 'Following themes may not be compatible with the new version of Piwigo:';
+/*TODO*/$lang['I decide to upgrade anyway'] = 'I decide to upgrade anyway';
 ?>
Index: /extensions/autoupdate/branches/2.0/language/cs_CZ/plugin.lang.php
===================================================================
--- /extensions/autoupdate/branches/2.0/language/cs_CZ/plugin.lang.php	(revision 10028)
+++ /extensions/autoupdate/branches/2.0/language/cs_CZ/plugin.lang.php	(revision 10029)
@@ -38,3 +38,6 @@
 $lang['Unable to dump database.'] = 'Nelze provést výpis databáze.';
 
+/*TODO*/$lang['Following plugins may not be compatible with the new version of Piwigo:'] = 'Following plugins may not be compatible with the new version of Piwigo:';
+/*TODO*/$lang['Following themes may not be compatible with the new version of Piwigo:'] = 'Following themes may not be compatible with the new version of Piwigo:';
+/*TODO*/$lang['I decide to upgrade anyway'] = 'I decide to upgrade anyway';
 ?>
Index: /extensions/autoupdate/branches/2.0/language/da_DK/plugin.lang.php
===================================================================
--- /extensions/autoupdate/branches/2.0/language/da_DK/plugin.lang.php	(revision 10028)
+++ /extensions/autoupdate/branches/2.0/language/da_DK/plugin.lang.php	(revision 10029)
@@ -38,3 +38,6 @@
 $lang['Unable to dump database.'] = 'Det er ikke muligt at dumpe databasen.';
 
+/*TODO*/$lang['Following plugins may not be compatible with the new version of Piwigo:'] = 'Following plugins may not be compatible with the new version of Piwigo:';
+/*TODO*/$lang['Following themes may not be compatible with the new version of Piwigo:'] = 'Following themes may not be compatible with the new version of Piwigo:';
+/*TODO*/$lang['I decide to upgrade anyway'] = 'I decide to upgrade anyway';
 ?>
Index: /extensions/autoupdate/branches/2.0/language/de_DE/plugin.lang.php
===================================================================
--- /extensions/autoupdate/branches/2.0/language/de_DE/plugin.lang.php	(revision 10028)
+++ /extensions/autoupdate/branches/2.0/language/de_DE/plugin.lang.php	(revision 10029)
@@ -38,3 +38,6 @@
 $lang['Unable to dump database.'] = 'Es ist nicht möglich die Datenbank zu exportieren.';
 
+/*TODO*/$lang['Following plugins may not be compatible with the new version of Piwigo:'] = 'Following plugins may not be compatible with the new version of Piwigo:';
+/*TODO*/$lang['Following themes may not be compatible with the new version of Piwigo:'] = 'Following themes may not be compatible with the new version of Piwigo:';
+/*TODO*/$lang['I decide to upgrade anyway'] = 'I decide to upgrade anyway';
 ?>
Index: /extensions/autoupdate/branches/2.0/language/en_UK/plugin.lang.php
===================================================================
--- /extensions/autoupdate/branches/2.0/language/en_UK/plugin.lang.php	(revision 10028)
+++ /extensions/autoupdate/branches/2.0/language/en_UK/plugin.lang.php	(revision 10029)
@@ -38,3 +38,6 @@
 $lang['Unable to dump database.'] = 'Unable to dump database.';
 
+$lang['Following plugins may not be compatible with the new version of Piwigo:'] = 'Following plugins may not be compatible with the new version of Piwigo:';
+$lang['Following themes may not be compatible with the new version of Piwigo:'] = 'Following themes may not be compatible with the new version of Piwigo:';
+$lang['I decide to upgrade anyway'] = 'I decide to upgrade anyway';
 ?>
Index: /extensions/autoupdate/branches/2.0/language/es_ES/plugin.lang.php
===================================================================
--- /extensions/autoupdate/branches/2.0/language/es_ES/plugin.lang.php	(revision 10028)
+++ /extensions/autoupdate/branches/2.0/language/es_ES/plugin.lang.php	(revision 10029)
@@ -38,3 +38,6 @@
 $lang['Unable to dump database.'] = 'No se puede volcar la base de datos.';
 
+/*TODO*/$lang['Following plugins may not be compatible with the new version of Piwigo:'] = 'Following plugins may not be compatible with the new version of Piwigo:';
+/*TODO*/$lang['Following themes may not be compatible with the new version of Piwigo:'] = 'Following themes may not be compatible with the new version of Piwigo:';
+/*TODO*/$lang['I decide to upgrade anyway'] = 'I decide to upgrade anyway';
 ?>
Index: /extensions/autoupdate/branches/2.0/language/fr_FR/plugin.lang.php
===================================================================
--- /extensions/autoupdate/branches/2.0/language/fr_FR/plugin.lang.php	(revision 10028)
+++ /extensions/autoupdate/branches/2.0/language/fr_FR/plugin.lang.php	(revision 10029)
@@ -38,3 +38,6 @@
 $lang['Unable to dump database.'] = 'Impossible de sauvegarder la base de données.';
 
+$lang['Following plugins may not be compatible with the new version of Piwigo:'] = 'Les plugins suivants ne seront peut-être pas compatibles avec la nouvelle version de Piwigo:';
+$lang['Following themes may not be compatible with the new version of Piwigo:'] = 'Les thèmes suivants ne seront peut-être pas compatibles avec la nouvelle version de Piwigo:';
+$lang['I decide to upgrade anyway'] = 'Je décide de migrer quand même';
 ?>
Index: /extensions/autoupdate/branches/2.0/language/hr_HR/plugin.lang.php
===================================================================
--- /extensions/autoupdate/branches/2.0/language/hr_HR/plugin.lang.php	(revision 10028)
+++ /extensions/autoupdate/branches/2.0/language/hr_HR/plugin.lang.php	(revision 10029)
@@ -38,3 +38,6 @@
 $lang['Unable to dump database.'] = 'Nemoguće pražnjenje baze podataka.';
 
+/*TODO*/$lang['Following plugins may not be compatible with the new version of Piwigo:'] = 'Following plugins may not be compatible with the new version of Piwigo:';
+/*TODO*/$lang['Following themes may not be compatible with the new version of Piwigo:'] = 'Following themes may not be compatible with the new version of Piwigo:';
+/*TODO*/$lang['I decide to upgrade anyway'] = 'I decide to upgrade anyway';
 ?>
Index: /extensions/autoupdate/branches/2.0/language/hu_HU/plugin.lang.php
===================================================================
--- /extensions/autoupdate/branches/2.0/language/hu_HU/plugin.lang.php	(revision 10028)
+++ /extensions/autoupdate/branches/2.0/language/hu_HU/plugin.lang.php	(revision 10029)
@@ -39,3 +39,6 @@
 $lang['Unable to dump database.'] = 'Nem lehet biztonsági másolatot készíteni az adatbázisról.';
 
+/*TODO*/$lang['Following plugins may not be compatible with the new version of Piwigo:'] = 'Following plugins may not be compatible with the new version of Piwigo:';
+/*TODO*/$lang['Following themes may not be compatible with the new version of Piwigo:'] = 'Following themes may not be compatible with the new version of Piwigo:';
+/*TODO*/$lang['I decide to upgrade anyway'] = 'I decide to upgrade anyway';
 ?>
Index: /extensions/autoupdate/branches/2.0/language/it_IT/plugin.lang.php
===================================================================
--- /extensions/autoupdate/branches/2.0/language/it_IT/plugin.lang.php	(revision 10028)
+++ /extensions/autoupdate/branches/2.0/language/it_IT/plugin.lang.php	(revision 10029)
@@ -38,3 +38,6 @@
 $lang['Unable to dump database.'] = 'Impossibile eseguire il salvataggio del database.';
 
+/*TODO*/$lang['Following plugins may not be compatible with the new version of Piwigo:'] = 'Following plugins may not be compatible with the new version of Piwigo:';
+/*TODO*/$lang['Following themes may not be compatible with the new version of Piwigo:'] = 'Following themes may not be compatible with the new version of Piwigo:';
+/*TODO*/$lang['I decide to upgrade anyway'] = 'I decide to upgrade anyway';
 ?>
Index: /extensions/autoupdate/branches/2.0/language/ja_JP/plugin.lang.php
===================================================================
--- /extensions/autoupdate/branches/2.0/language/ja_JP/plugin.lang.php	(revision 10028)
+++ /extensions/autoupdate/branches/2.0/language/ja_JP/plugin.lang.php	(revision 10029)
@@ -38,3 +38,6 @@
 $lang['Unable to dump database.'] = 'ダンプデータベースができません。';
 
+/*TODO*/$lang['Following plugins may not be compatible with the new version of Piwigo:'] = 'Following plugins may not be compatible with the new version of Piwigo:';
+/*TODO*/$lang['Following themes may not be compatible with the new version of Piwigo:'] = 'Following themes may not be compatible with the new version of Piwigo:';
+/*TODO*/$lang['I decide to upgrade anyway'] = 'I decide to upgrade anyway';
 ?>
Index: /extensions/autoupdate/branches/2.0/language/ka_GE/plugin.lang.php
===================================================================
--- /extensions/autoupdate/branches/2.0/language/ka_GE/plugin.lang.php	(revision 10028)
+++ /extensions/autoupdate/branches/2.0/language/ka_GE/plugin.lang.php	(revision 10029)
@@ -39,3 +39,6 @@
 $lang['Unable to dump database.'] = 'შეუძლებელია მონაცემთა ბაზის წაშლა.';
 
+/*TODO*/$lang['Following plugins may not be compatible with the new version of Piwigo:'] = 'Following plugins may not be compatible with the new version of Piwigo:';
+/*TODO*/$lang['Following themes may not be compatible with the new version of Piwigo:'] = 'Following themes may not be compatible with the new version of Piwigo:';
+/*TODO*/$lang['I decide to upgrade anyway'] = 'I decide to upgrade anyway';
 ?>
Index: /extensions/autoupdate/branches/2.0/language/lv_LV/plugin.lang.php
===================================================================
--- /extensions/autoupdate/branches/2.0/language/lv_LV/plugin.lang.php	(revision 10028)
+++ /extensions/autoupdate/branches/2.0/language/lv_LV/plugin.lang.php	(revision 10029)
@@ -38,3 +38,6 @@
 $lang['Unable to dump database.'] = 'Nevar izveidot datubāzes dampu.';
 
+/*TODO*/$lang['Following plugins may not be compatible with the new version of Piwigo:'] = 'Following plugins may not be compatible with the new version of Piwigo:';
+/*TODO*/$lang['Following themes may not be compatible with the new version of Piwigo:'] = 'Following themes may not be compatible with the new version of Piwigo:';
+/*TODO*/$lang['I decide to upgrade anyway'] = 'I decide to upgrade anyway';
 ?>
Index: /extensions/autoupdate/branches/2.0/language/nl_NL/plugin.lang.php
===================================================================
--- /extensions/autoupdate/branches/2.0/language/nl_NL/plugin.lang.php	(revision 10028)
+++ /extensions/autoupdate/branches/2.0/language/nl_NL/plugin.lang.php	(revision 10029)
@@ -38,3 +38,6 @@
 $lang['Unable to dump database.'] = 'Het is niet mogelijk om de database te dumpen.';
 
+/*TODO*/$lang['Following plugins may not be compatible with the new version of Piwigo:'] = 'Following plugins may not be compatible with the new version of Piwigo:';
+/*TODO*/$lang['Following themes may not be compatible with the new version of Piwigo:'] = 'Following themes may not be compatible with the new version of Piwigo:';
+/*TODO*/$lang['I decide to upgrade anyway'] = 'I decide to upgrade anyway';
 ?>
Index: /extensions/autoupdate/branches/2.0/language/no_NO/plugin.lang.php
===================================================================
--- /extensions/autoupdate/branches/2.0/language/no_NO/plugin.lang.php	(revision 10028)
+++ /extensions/autoupdate/branches/2.0/language/no_NO/plugin.lang.php	(revision 10029)
@@ -37,3 +37,6 @@
 $lang['Unable to send template directory.'] = 'Ikke i stand til å sende mal mappe.';
 $lang['Unable to dump database.'] = 'Ikke i stand til å tømme database.';
+/*TODO*/$lang['Following plugins may not be compatible with the new version of Piwigo:'] = 'Following plugins may not be compatible with the new version of Piwigo:';
+/*TODO*/$lang['Following themes may not be compatible with the new version of Piwigo:'] = 'Following themes may not be compatible with the new version of Piwigo:';
+/*TODO*/$lang['I decide to upgrade anyway'] = 'I decide to upgrade anyway';
 ?>
Index: /extensions/autoupdate/branches/2.0/language/pl_PL/plugin.lang.php
===================================================================
--- /extensions/autoupdate/branches/2.0/language/pl_PL/plugin.lang.php	(revision 10028)
+++ /extensions/autoupdate/branches/2.0/language/pl_PL/plugin.lang.php	(revision 10029)
@@ -38,3 +38,6 @@
 $lang['Unable to dump database.'] = 'Zrzucenie bazy danych nie powiodło się.';
 
+/*TODO*/$lang['Following plugins may not be compatible with the new version of Piwigo:'] = 'Following plugins may not be compatible with the new version of Piwigo:';
+/*TODO*/$lang['Following themes may not be compatible with the new version of Piwigo:'] = 'Following themes may not be compatible with the new version of Piwigo:';
+/*TODO*/$lang['I decide to upgrade anyway'] = 'I decide to upgrade anyway';
 ?>
Index: /extensions/autoupdate/branches/2.0/language/pt_PT/plugin.lang.php
===================================================================
--- /extensions/autoupdate/branches/2.0/language/pt_PT/plugin.lang.php	(revision 10028)
+++ /extensions/autoupdate/branches/2.0/language/pt_PT/plugin.lang.php	(revision 10029)
@@ -38,3 +38,6 @@
 $lang['Unable to dump database.'] = 'Impossível descarregar base de dados.';
 
+/*TODO*/$lang['Following plugins may not be compatible with the new version of Piwigo:'] = 'Following plugins may not be compatible with the new version of Piwigo:';
+/*TODO*/$lang['Following themes may not be compatible with the new version of Piwigo:'] = 'Following themes may not be compatible with the new version of Piwigo:';
+/*TODO*/$lang['I decide to upgrade anyway'] = 'I decide to upgrade anyway';
 ?>
Index: /extensions/autoupdate/branches/2.0/language/ru_RU/plugin.lang.php
===================================================================
--- /extensions/autoupdate/branches/2.0/language/ru_RU/plugin.lang.php	(revision 10028)
+++ /extensions/autoupdate/branches/2.0/language/ru_RU/plugin.lang.php	(revision 10029)
@@ -38,3 +38,6 @@
 /*TODO*/$lang['Unable to dump database.'] = 'Unable to dump database.';
 
+/*TODO*/$lang['Following plugins may not be compatible with the new version of Piwigo:'] = 'Following plugins may not be compatible with the new version of Piwigo:';
+/*TODO*/$lang['Following themes may not be compatible with the new version of Piwigo:'] = 'Following themes may not be compatible with the new version of Piwigo:';
+/*TODO*/$lang['I decide to upgrade anyway'] = 'I decide to upgrade anyway';
 ?>
Index: /extensions/autoupdate/branches/2.0/language/sk_SK/plugin.lang.php
===================================================================
--- /extensions/autoupdate/branches/2.0/language/sk_SK/plugin.lang.php	(revision 10028)
+++ /extensions/autoupdate/branches/2.0/language/sk_SK/plugin.lang.php	(revision 10029)
@@ -38,3 +38,6 @@
 $lang['Unable to dump database.'] = 'Nemôžem odpojiť databázu.';
 
+/*TODO*/$lang['Following plugins may not be compatible with the new version of Piwigo:'] = 'Following plugins may not be compatible with the new version of Piwigo:';
+/*TODO*/$lang['Following themes may not be compatible with the new version of Piwigo:'] = 'Following themes may not be compatible with the new version of Piwigo:';
+/*TODO*/$lang['I decide to upgrade anyway'] = 'I decide to upgrade anyway';
 ?>
Index: /extensions/autoupdate/branches/2.0/language/vi_VN/plugin.lang.php
===================================================================
--- /extensions/autoupdate/branches/2.0/language/vi_VN/plugin.lang.php	(revision 10028)
+++ /extensions/autoupdate/branches/2.0/language/vi_VN/plugin.lang.php	(revision 10029)
@@ -38,3 +38,6 @@
 $lang['Unable to dump database.'] = 'Không thể tạo bản sao cơ sở dữ liệu.';
 
+/*TODO*/$lang['Following plugins may not be compatible with the new version of Piwigo:'] = 'Following plugins may not be compatible with the new version of Piwigo:';
+/*TODO*/$lang['Following themes may not be compatible with the new version of Piwigo:'] = 'Following themes may not be compatible with the new version of Piwigo:';
+/*TODO*/$lang['I decide to upgrade anyway'] = 'I decide to upgrade anyway';
 ?>
Index: /extensions/autoupdate/branches/2.0/language/zh_CN/plugin.lang.php
===================================================================
--- /extensions/autoupdate/branches/2.0/language/zh_CN/plugin.lang.php	(revision 10028)
+++ /extensions/autoupdate/branches/2.0/language/zh_CN/plugin.lang.php	(revision 10029)
@@ -38,3 +38,6 @@
 $lang['Unable to dump database.'] = '不能转存数据库.';
 
+/*TODO*/$lang['Following plugins may not be compatible with the new version of Piwigo:'] = 'Following plugins may not be compatible with the new version of Piwigo:';
+/*TODO*/$lang['Following themes may not be compatible with the new version of Piwigo:'] = 'Following themes may not be compatible with the new version of Piwigo:';
+/*TODO*/$lang['I decide to upgrade anyway'] = 'I decide to upgrade anyway';
 ?>
Index: /extensions/autoupdate/branches/2.0/template/autoupdate.tpl
===================================================================
--- /extensions/autoupdate/branches/2.0/template/autoupdate.tpl	(revision 10028)
+++ /extensions/autoupdate/branches/2.0/template/autoupdate.tpl	(revision 10029)
@@ -17,4 +17,7 @@
     jQuery('.autoupdate_bar').show();
 	});
+  jQuery('[name="understand"]').click(function() {ldelim}
+    jQuery('[name="submit"]').attr('disabled', !this.checked);
+  });
 });
 </script>
@@ -87,5 +90,18 @@
 <fieldset>
   <legend>{'autoupdate_step_'|cat:$i|@translate}</legend>
-  <p><input type="submit" name="submit" value="{'Upgrade to Piwigo %s'|@translate|@sprintf:$UPGRADE_TO}"></p>
+  {if !empty($missing.plugins)}
+  <p><i>{'Following plugins may not be compatible with the new version of Piwigo:'|@translate}</i></p>
+  <p><ul>{foreach from=$missing.plugins item=plugin}<li><a href="{$plugin.uri}" class="externalLink">{$plugin.name}</a></li>{/foreach}</ul><br></p>
+  {/if}
+  {if !empty($missing.themes)}
+  <p><i>{'Following themes may not be compatible with the new version of Piwigo:'|@translate}</i></p>
+  <p><ul>{foreach from=$missing.themes item=theme}<li><a href="{$theme.uri}" class="externalLink">{$theme.name}</a></li>{/foreach}</ul><br></p>
+  {/if}
+  <p>
+  {if !empty($missing.plugins) or !empty($missing.themes)}
+  <p><label><input type="checkbox" name="understand"> &nbsp;{'I decide to upgrade anyway'|@translate}</label></p>
+  {/if}
+  <p><input type="submit" name="submit" value="{'Upgrade to Piwigo %s'|@translate|@sprintf:$UPGRADE_TO}" {if !empty($missing.plugins) or !empty($missing.themes)}disabled="disabled"{/if}>
+  </p>
   <p class="autoupdate_bar" style="display:none;">&nbsp; {'Update in progress...'|@translate}<br><img src="plugins/autoupdate/template/ajax-loader-bar.gif"></p>
 </fieldset>
