aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--app/Controllers/subscriptionController.php5
-rw-r--r--app/Models/Feed.php7
-rw-r--r--lib/lib_rss.php2
3 files changed, 9 insertions, 5 deletions
diff --git a/app/Controllers/subscriptionController.php b/app/Controllers/subscriptionController.php
index 315187aaa..c1acfd958 100644
--- a/app/Controllers/subscriptionController.php
+++ b/app/Controllers/subscriptionController.php
@@ -256,7 +256,7 @@ class FreshRSS_subscription_Controller extends FreshRSS_ActionController {
$url_redirect = array('c' => 'subscription', 'params' => array('id' => $id));
}
- if ($feedDAO->updateFeed($id, $values) !== false) {
+ if ($values['url'] != '' && $feedDAO->updateFeed($id, $values) !== false) {
$feed->_categoryId($values['category']);
// update url and website values for faviconPrepare
$feed->_url($values['url'], false);
@@ -265,6 +265,9 @@ class FreshRSS_subscription_Controller extends FreshRSS_ActionController {
Minz_Request::good(_t('feedback.sub.feed.updated'), $url_redirect);
} else {
+ if ($values['url'] == '') {
+ Minz_Log::warning('Invalid feed URL!');
+ }
Minz_Request::bad(_t('feedback.sub.feed.error'), $url_redirect);
}
}
diff --git a/app/Models/Feed.php b/app/Models/Feed.php
index a63c2b3ea..09cacbd61 100644
--- a/app/Models/Feed.php
+++ b/app/Models/Feed.php
@@ -259,13 +259,14 @@ class FreshRSS_Feed extends Minz_Model {
}
public function _url(string $value, bool $validate = true) {
$this->hash = '';
+ $url = $value;
if ($validate) {
- $value = checkUrl($value);
+ $url = checkUrl($url);
}
- if ($value == '') {
+ if ($url == '') {
throw new FreshRSS_BadUrl_Exception($value);
}
- $this->url = $value;
+ $this->url = $url;
}
public function _kind(int $value) {
$this->kind = $value;
diff --git a/lib/lib_rss.php b/lib/lib_rss.php
index e5362bc5c..d1821b639 100644
--- a/lib/lib_rss.php
+++ b/lib/lib_rss.php
@@ -845,7 +845,7 @@ function errorMessageInfo($errorTitle, $error = '') {
$details = '';
// Prevent empty tags by checking if error isn not empty first
if ($error) {
- $error = htmlspecialchars($error, ENT_NOQUOTES, 'UTF-8');
+ $error = htmlspecialchars($error, ENT_NOQUOTES, 'UTF-8') . "\n";
// First line is the main message, other lines are the details
list($message, $details) = explode("\n", $error, 2);