summaryrefslogtreecommitdiff
path: root/app/controllers/configureController.php
diff options
context:
space:
mode:
Diffstat (limited to 'app/controllers/configureController.php')
-rwxr-xr-xapp/controllers/configureController.php48
1 files changed, 38 insertions, 10 deletions
diff --git a/app/controllers/configureController.php b/app/controllers/configureController.php
index 2f56da177..ce53e1040 100755
--- a/app/controllers/configureController.php
+++ b/app/controllers/configureController.php
@@ -91,6 +91,7 @@ class configureController extends ActionController {
$this->view->categories = $catDAO->listCategories ();
if (Request::isPost () && $this->view->flux) {
+ $name = Request::param ('name', '');
$cat = Request::param ('category', 0);
$path = Request::param ('path_entries', '');
$priority = Request::param ('priority', 0);
@@ -103,6 +104,7 @@ class configureController extends ActionController {
}
$values = array (
+ 'name' => $name,
'category' => $cat,
'pathEntries' => $path,
'priority' => $priority,
@@ -138,35 +140,41 @@ class configureController extends ActionController {
if (Request::isPost ()) {
$language = Request::param ('language', 'en');
$nb = Request::param ('posts_per_page', 10);
+ $mode = Request::param ('view_mode', 'normal');
$view = Request::param ('default_view', 'all');
$display = Request::param ('display_posts', 'no');
+ $lazyload = Request::param ('lazyload', 'yes');
$sort = Request::param ('sort_order', 'low_to_high');
$old = Request::param ('old_entries', 3);
$mail = Request::param ('mail_login', false);
$openArticle = Request::param ('mark_open_article', 'no');
$openSite = Request::param ('mark_open_site', 'no');
- $openPage = Request::param ('mark_open_page', 'no');
+ $scroll = Request::param ('mark_scroll', 'no');
$urlShaarli = Request::param ('shaarli', '');
$this->view->conf->_language ($language);
$this->view->conf->_postsPerPage (intval ($nb));
+ $this->view->conf->_viewMode ($mode);
$this->view->conf->_defaultView ($view);
$this->view->conf->_displayPosts ($display);
+ $this->view->conf->_lazyload ($lazyload);
$this->view->conf->_sortOrder ($sort);
$this->view->conf->_oldEntries ($old);
$this->view->conf->_mailLogin ($mail);
$this->view->conf->_markWhen (array (
'article' => $openArticle,
'site' => $openSite,
- 'page' => $openPage,
+ 'scroll' => $scroll,
));
$this->view->conf->_urlShaarli ($urlShaarli);
$values = array (
'language' => $this->view->conf->language (),
'posts_per_page' => $this->view->conf->postsPerPage (),
+ 'view_mode' => $this->view->conf->viewMode (),
'default_view' => $this->view->conf->defaultView (),
'display_posts' => $this->view->conf->displayPosts (),
+ 'lazyload' => $this->view->conf->lazyload (),
'sort_order' => $this->view->conf->sortOrder (),
'old_entries' => $this->view->conf->oldEntries (),
'mail_login' => $this->view->conf->mailLogin (),
@@ -196,6 +204,9 @@ class configureController extends ActionController {
}
public function importExportAction () {
+ $catDAO = new CategoryDAO ();
+ $this->view->categories = $catDAO->listCategories ();
+
$this->view->req = Request::param ('q');
if ($this->view->req == 'export') {
@@ -218,14 +229,31 @@ class configureController extends ActionController {
} elseif ($this->view->req == 'import' && Request::isPost ()) {
if ($_FILES['file']['error'] == 0) {
// on parse le fichier OPML pour récupérer les catégories et les flux associés
- list ($categories, $feeds) = opml_import (file_get_contents ($_FILES['file']['tmp_name']));
-
- // On redirige vers le controller feed qui va se charger d'insérer les flux en BDD
- // les flux sont mis au préalable dans des variables de Request
- Request::_param ('q', 'null');
- Request::_param ('categories', $categories);
- Request::_param ('feeds', $feeds);
- Request::forward (array ('c' => 'feed', 'a' => 'massiveImport'));
+ try {
+ list ($categories, $feeds) = opml_import (
+ file_get_contents ($_FILES['file']['tmp_name'])
+ );
+
+ // On redirige vers le controller feed qui va se charger d'insérer les flux en BDD
+ // les flux sont mis au préalable dans des variables de Request
+ Request::_param ('q', 'null');
+ Request::_param ('categories', $categories);
+ Request::_param ('feeds', $feeds);
+ Request::forward (array ('c' => 'feed', 'a' => 'massiveImport'));
+ } catch (OpmlException $e) {
+ Log::record ($e->getMessage (), Log::ERROR);
+
+ $notif = array (
+ 'type' => 'bad',
+ 'content' => Translate::t ('bad_opml_file')
+ );
+ Session::_param ('notification', $notif);
+
+ Request::forward (array (
+ 'c' => 'configure',
+ 'a' => 'importExport'
+ ), true);
+ }
}
}