aboutsummaryrefslogtreecommitdiff
path: root/app/controllers
diff options
context:
space:
mode:
authorGravatar Marien Fressinaud <dev@marienfressinaud.fr> 2012-10-24 00:15:30 +0200
committerGravatar Marien Fressinaud <dev@marienfressinaud.fr> 2012-10-24 00:15:30 +0200
commit2b3a08e3dd5bf936d6d76a5f5282933e3ca6aeea (patch)
treecccfcebea7af1c9c7e17281c2408256cd2f73fd8 /app/controllers
parent00deff113f346aa9fec15c791502341f6401b94d (diff)
Passage à du stockage en base de données MySQL
Diffstat (limited to 'app/controllers')
-rwxr-xr-xapp/controllers/configureController.php2
-rwxr-xr-xapp/controllers/entryController.php15
-rwxr-xr-xapp/controllers/feedController.php123
-rwxr-xr-xapp/controllers/indexController.php14
4 files changed, 58 insertions, 96 deletions
diff --git a/app/controllers/configureController.php b/app/controllers/configureController.php
index 00bc571da..b382b2794 100755
--- a/app/controllers/configureController.php
+++ b/app/controllers/configureController.php
@@ -32,8 +32,6 @@ class configureController extends ActionController {
$catDAO->addCategory ($values);
}
- $catDAO->save ();
-
}
$this->view->categories = $catDAO->listCategories ();
diff --git a/app/controllers/entryController.php b/app/controllers/entryController.php
index a99038068..753994a2b 100755
--- a/app/controllers/entryController.php
+++ b/app/controllers/entryController.php
@@ -24,19 +24,14 @@ class entryController extends ActionController {
$is_read = false;
}
+ $values = array (
+ 'is_read' => $is_read,
+ );
+
$entryDAO = new EntryDAO ();
if ($id == false) {
- $entries = $entryDAO->listEntries ('not_read');
+ $entryDAO->updateEntries ($values);
} else {
- $entry = $entryDAO->searchById ($id);
- $entries = $entry !== false ? array ($entry) : array ();
- }
-
- foreach ($entries as $entry) {
- $values = array (
- 'is_read' => $is_read,
- );
-
$entryDAO->updateEntry ($entry->id (), $values);
}
}
diff --git a/app/controllers/feedController.php b/app/controllers/feedController.php
index 789d2a901..6dad1ac08 100755
--- a/app/controllers/feedController.php
+++ b/app/controllers/feedController.php
@@ -8,29 +8,24 @@ class feedController extends ActionController {
try {
$feed = new Feed ($url);
$feed->load ();
- $entries = $feed->entries (false);
- $feed_entries = array ();
+ $entries = $feed->entries ();
- if ($entries !== false) {
- $entryDAO = new EntryDAO ();
-
- foreach ($entries as $entry) {
- $values = array (
- 'id' => $entry->id (),
- 'guid' => $entry->guid (),
- 'title' => $entry->title (),
- 'author' => $entry->author (),
- 'content' => $entry->content (),
- 'link' => $entry->link (),
- 'date' => $entry->date (true),
- 'is_read' => $entry->isRead (),
- 'is_favorite' => $entry->isFavorite (),
- 'feed' => $feed->id ()
- );
- $entryDAO->addEntry ($values);
-
- $feed_entries[] = $entry->id ();
- }
+ $entryDAO = new EntryDAO ();
+
+ foreach ($entries as $entry) {
+ $values = array (
+ 'id' => $entry->id (),
+ 'guid' => $entry->guid (),
+ 'title' => $entry->title (),
+ 'author' => $entry->author (),
+ 'content' => $entry->content (),
+ 'link' => $entry->link (),
+ 'date' => $entry->date (true),
+ 'is_read' => $entry->isRead (),
+ 'is_favorite' => $entry->isFavorite (),
+ 'id_feed' => $feed->id ()
+ );
+ $entryDAO->addEntry ($values);
}
$feedDAO = new FeedDAO ();
@@ -38,7 +33,6 @@ class feedController extends ActionController {
'id' => $feed->id (),
'url' => $feed->url (),
'category' => $feed->category (),
- 'entries' => $feed_entries,
'name' => $feed->name (),
'website' => $feed->website (),
'description' => $feed->description (),
@@ -60,37 +54,25 @@ class feedController extends ActionController {
foreach ($feeds as $feed) {
$feed->load ();
- $entries = $feed->entries (false);
- $feed_entries = $feed->entries ();
+ $entries = $feed->entries ();
+
+ foreach ($entries as $entry) {
+ $values = array (
+ 'id' => $entry->id (),
+ 'guid' => $entry->guid (),
+ 'title' => $entry->title (),
+ 'author' => $entry->author (),
+ 'content' => $entry->content (),
+ 'link' => $entry->link (),
+ 'date' => $entry->date (true),
+ 'is_read' => $entry->isRead (),
+ 'is_favorite' => $entry->isFavorite (),
+ 'id_feed' => $feed->id ()
+ );
+ $entryDAO->addEntry ($values);
- if ($entries !== false) {
- foreach ($entries as $entry) {
- if (!in_array ($entry->id (), $feed_entries)) {
- $values = array (
- 'id' => $entry->id (),
- 'guid' => $entry->guid (),
- 'title' => $entry->title (),
- 'author' => $entry->author (),
- 'content' => $entry->content (),
- 'link' => $entry->link (),
- 'date' => $entry->date (true),
- 'is_read' => $entry->isRead (),
- 'is_favorite' => $entry->isFavorite (),
- 'feed' => $feed->id ()
- );
- $entryDAO->addEntry ($values);
-
- $feed_entries[] = $entry->id ();
- }
-
- // TODO gérer suppression des articles trop vieux (à paramétrer)
- }
+ // TODO gérer suppression des articles trop vieux (à paramétrer)
}
-
- $values = array (
- 'entries' => $feed_entries
- );
- $feedDAO->updateFeed ($values);
}
Request::forward (array (), true);
@@ -111,33 +93,27 @@ class feedController extends ActionController {
'color' => $cat->color ()
);
$catDAO->addCategory ($values);
- $catDAO->save ();
}
foreach ($feeds as $feed) {
$feed->load ();
- $entries = $feed->entries (false);
- $feed_entries = array ();
+ $entries = $feed->entries ();
// Chargement du flux
- if ($entries !== false) {
- foreach ($entries as $entry) {
- $values = array (
- 'id' => $entry->id (),
- 'guid' => $entry->guid (),
- 'title' => $entry->title (),
- 'author' => $entry->author (),
- 'content' => $entry->content (),
- 'link' => $entry->link (),
- 'date' => $entry->date (true),
- 'is_read' => $entry->isRead (),
- 'is_favorite' => $entry->isFavorite (),
- 'feed' => $feed->id ()
- );
- $entryDAO->addEntry ($values);
-
- $feed_entries[] = $entry->id ();
- }
+ foreach ($entries as $entry) {
+ $values = array (
+ 'id' => $entry->id (),
+ 'guid' => $entry->guid (),
+ 'title' => $entry->title (),
+ 'author' => $entry->author (),
+ 'content' => $entry->content (),
+ 'link' => $entry->link (),
+ 'date' => $entry->date (true),
+ 'is_read' => $entry->isRead (),
+ 'is_favorite' => $entry->isFavorite (),
+ 'id_feed' => $feed->id ()
+ );
+ $entryDAO->addEntry ($values);
}
// Enregistrement du flux
@@ -145,7 +121,6 @@ class feedController extends ActionController {
'id' => $feed->id (),
'url' => $feed->url (),
'category' => $feed->category (),
- 'entries' => $feed_entries,
'name' => $feed->name (),
'website' => $feed->website (),
'description' => $feed->description (),
diff --git a/app/controllers/indexController.php b/app/controllers/indexController.php
index b8908dee3..e7e3797ef 100755
--- a/app/controllers/indexController.php
+++ b/app/controllers/indexController.php
@@ -7,25 +7,19 @@ class indexController extends ActionController {
$mode = Session::param ('mode', $this->view->conf->defaultView ());
$get = Request::param ('get');
+ $order = $this->view->conf->sortOrder ();
// Récupère les flux par catégorie, favoris ou tous
if ($get == 'favoris') {
- $entries = $entryDAO->listFavorites ($mode);
+ $entries = $entryDAO->listFavorites ($mode, $order);
} elseif ($get != false) {
- $entries = $entryDAO->listByCategory ($get, $mode);
+ $entries = $entryDAO->listByCategory ($get, $mode, $order);
}
// Cas où on ne choisie ni catégorie ni les favoris
// ou si la catégorie ne correspond à aucune
if (!isset ($entries)) {
- $entries = $entryDAO->listEntries ($mode);
- }
-
- // Tri par date
- if ($this->view->conf->sortOrder () == 'high_to_low') {
- usort ($entries, 'sortReverseEntriesByDate');
- } else {
- usort ($entries, 'sortEntriesByDate');
+ $entries = $entryDAO->listEntries ($mode, $order);
}
// Gestion pagination