aboutsummaryrefslogtreecommitdiff
path: root/app/Controllers/feedController.php
diff options
context:
space:
mode:
authorGravatar Marien Fressinaud <dev@marienfressinaud.fr> 2014-12-06 18:48:00 +0100
committerGravatar Marien Fressinaud <dev@marienfressinaud.fr> 2014-12-06 18:48:00 +0100
commit08546af75ff9a25eac3409649ea4660fe070720c (patch)
treea0df2509bf698799d3b11bd94b49c823e53f6a10 /app/Controllers/feedController.php
parentbc81979a6b25554c4832d5ccb41b427023096463 (diff)
Add a first draft for hooks
- New Extension->registerHook($hook_name, $hook_function) method to register a new hook - Only one hook works for the moment: entry_before_insert - ExtensionManager::callHook will need to evolve based on future hooks See https://github.com/FreshRSS/FreshRSS/issues/252
Diffstat (limited to 'app/Controllers/feedController.php')
-rwxr-xr-xapp/Controllers/feedController.php11
1 files changed, 9 insertions, 2 deletions
diff --git a/app/Controllers/feedController.php b/app/Controllers/feedController.php
index 9990a852c..dce79c57a 100755
--- a/app/Controllers/feedController.php
+++ b/app/Controllers/feedController.php
@@ -329,9 +329,16 @@ class FreshRSS_feed_Controller extends Minz_ActionController {
$id = min(time(), $entry_date) . uSecString();
}
+ $entry->_id($id);
+ $entry->_isRead($is_read);
+
+ $entry = Minz_ExtensionManager::callHook('entry_before_insert', $entry);
+ if (is_null($entry)) {
+ // An extension has returned a null value, there is nothing to insert.
+ continue;
+ }
+
$values = $entry->toArray();
- $values['id'] = $id;
- $values['is_read'] = $is_read;
$entryDAO->addEntry($values, $prepared_statement);
}
}