diff --git a/app/Controllers/importExportController.php b/app/Controllers/importExportController.php
index 2b3353d93..dd6c23322 100644
--- a/app/Controllers/importExportController.php
+++ b/app/Controllers/importExportController.php
@@ -39,7 +39,7 @@ class FreshRSS_importExport_Controller extends Minz_ActionController {
// We try to list all files according to their type
// A zip file is first opened and then its files are listed
$list = array();
- if ($type_file === 'zip') {
+ if ($type_file === 'zip' && extension_loaded('zip')) {
$zip = zip_open($file['tmp_name']);
while (($zipfile = zip_read($zip)) !== false) {
@@ -56,6 +56,14 @@ class FreshRSS_importExport_Controller extends Minz_ActionController {
}
zip_close($zip);
+ } elseif ($type_file === 'zip') {
+ // Zip extension is not loaded
+ Minz_Session::_param('notification', array(
+ 'type' => 'bad',
+ 'content' => _t('no_zip_extension')
+ ));
+
+ Minz_Request::forward(array('c' => 'importExport'), true);
} elseif ($type_file !== 'unknown') {
$list_files[$type_file][] = file_get_contents(
$file['tmp_name']
diff --git a/app/i18n/en.php b/app/i18n/en.php
index 748d9a81b..0c87f52be 100644
--- a/app/i18n/en.php
+++ b/app/i18n/en.php
@@ -182,7 +182,9 @@ return array (
'focus_search' => 'Access search box',
'file_to_import' => 'File to import
(OPML, Json or Zip)',
+ 'file_to_import_no_zip' => 'File to import
(OPML or Json)',
'import' => 'Import',
+ 'no_zip_extension' => 'Zip extension is not present on your server.',
'export' => 'Export',
'export_opml' => 'Export list of feeds (OPML)',
'export_starred' => 'Export your favourites',
diff --git a/app/i18n/fr.php b/app/i18n/fr.php
index ba8c8686a..57ddebc20 100644
--- a/app/i18n/fr.php
+++ b/app/i18n/fr.php
@@ -182,7 +182,9 @@ return array (
'focus_search' => 'Accéder à la recherche',
'file_to_import' => 'Fichier à importer
(OPML, Json ou Zip)',
+ 'file_to_import_no_zip' => 'Fichier à importer
(OPML ou Json)',
'import' => 'Importer',
+ 'no_zip_extension' => 'L’extension Zip n’est pas présente sur votre serveur.',
'export' => 'Exporter',
'export_opml' => 'Exporter la liste des flux (OPML)',
'export_starred' => 'Exporter les favoris',
diff --git a/app/views/importExport/index.phtml b/app/views/importExport/index.phtml
index e1458e916..35371faca 100644
--- a/app/views/importExport/index.phtml
+++ b/app/views/importExport/index.phtml
@@ -6,7 +6,9 @@