summaryrefslogtreecommitdiffstats
path: root/articleenhancer/regexarticleenhancer.php
diff options
context:
space:
mode:
authorBernhard Posselt <dev@bernhard-posselt.com>2013-09-27 20:03:00 +0200
committerBernhard Posselt <dev@bernhard-posselt.com>2013-09-27 20:03:16 +0200
commitd6066c382083dedf426abbfd5f2f1df725c68aaf (patch)
tree4406388c5a827ebe8ed62234e11e49c35e16f3a5 /articleenhancer/regexarticleenhancer.php
parent30080c220a3f5013875d6a52e4dfe634719cbeca (diff)
use seperate direcotires for article enhancers and fetchers
Diffstat (limited to 'articleenhancer/regexarticleenhancer.php')
-rw-r--r--articleenhancer/regexarticleenhancer.php55
1 files changed, 55 insertions, 0 deletions
diff --git a/articleenhancer/regexarticleenhancer.php b/articleenhancer/regexarticleenhancer.php
new file mode 100644
index 000000000..0742bc127
--- /dev/null
+++ b/articleenhancer/regexarticleenhancer.php
@@ -0,0 +1,55 @@
+<?php
+
+/**
+ * ownCloud - News
+ *
+ * @author Alessandro Cosentino
+ * @author Bernhard Posselt
+ * @copyright 2012 Alessandro Cosentino cosenal@gmail.com
+ * @copyright 2012 Bernhard Posselt dev@bernhard-posselt.com
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
+ * License as published by the Free Software Foundation; either
+ * version 3 of the License, or any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU AFFERO GENERAL PUBLIC LICENSE for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+namespace OCA\News\ArticleEnhancer;
+
+use \OCA\News\Utility\SimplePieFileFactory;
+use \OCA\News\Db\Item;
+
+
+class RegexArticleEnhancer implements ArticleEnhancer {
+
+ private $matchArticleUrl;
+ private $regexPair;
+
+ public function __construct($matchArticleUrl, array $regexPair) {
+ $this->matchArticleUrl = $matchArticleUrl;
+ $this->regexPair = $regexPair;
+ }
+
+
+ public function enhance(Item $item) {
+ if (preg_match($this->matchArticleUrl, $item->getUrl())) {
+ $body = $item->getBody();
+ foreach($this->regexPair as $search => $replaceWith) {
+ $body = preg_replace($search, $replaceWith, $body);
+ }
+ $item->setBody($body);
+ }
+ return $item;
+ }
+
+
+}