Disable automatically a feed after too many failures
This commit is contained in:
parent
0b45f1b863
commit
2a9fd5fb62
@ -12,6 +12,7 @@ Version 1.2.0 (unreleased)
|
||||
* Always update feed URL to avoid useless redirections for futures requests
|
||||
* Add support for Wallabag service
|
||||
* Show last parsing error message in user interface
|
||||
* Disable automatically a feed after too many failures
|
||||
* Add unit tests
|
||||
|
||||
Migration procedure from 1.1.x to 1.2.0:
|
||||
|
@ -33,6 +33,7 @@ defined('PROXY_USERNAME') or define('PROXY_USERNAME', '');
|
||||
defined('PROXY_PASSWORD') or define('PROXY_PASSWORD', '');
|
||||
|
||||
defined('SUBSCRIPTION_CONCURRENT_REQUESTS') or define('SUBSCRIPTION_CONCURRENT_REQUESTS', 5);
|
||||
defined('SUBSCRIPTION_DISABLE_THRESHOLD_ERROR') or define('SUBSCRIPTION_DISABLE_THRESHOLD_ERROR', 10);
|
||||
|
||||
defined('RULES_DIRECTORY') or define('RULES_DIRECTORY', ROOT_DIRECTORY.DIRECTORY_SEPARATOR.'rules');
|
||||
|
||||
|
@ -104,10 +104,12 @@ function update_feed($user_id, $feed_id)
|
||||
);
|
||||
|
||||
if (! empty($error_message)) {
|
||||
$error_count = $subscription['parsing_error'] + 1;
|
||||
Model\Feed\update_feed($user_id, $feed_id, array(
|
||||
'last_checked' => time(),
|
||||
'parsing_error' => 1,
|
||||
'parsing_error' => $error_count,
|
||||
'parsing_error_message' => $error_message,
|
||||
'enabled' => $error_count > SUBSCRIPTION_DISABLE_THRESHOLD_ERROR ? 0 : 1,
|
||||
));
|
||||
|
||||
return false;
|
||||
|
@ -47,7 +47,7 @@ function version_1(PDO $pdo)
|
||||
etag VARCHAR(255),
|
||||
enabled BOOLEAN DEFAULT TRUE,
|
||||
download_content BOOLEAN DEFAULT FALSE,
|
||||
parsing_error BOOLEAN DEFAULT FALSE,
|
||||
parsing_error INTEGER DEFAULT 0,
|
||||
rtl BOOLEAN DEFAULT FALSE,
|
||||
cloak_referrer BOOLEAN DEFAULT FALSE,
|
||||
FOREIGN KEY(user_id) REFERENCES users(id) ON DELETE CASCADE,
|
||||
|
@ -22,7 +22,7 @@
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<?php if ($feed['parsing_error']): ?>
|
||||
<?php if ($feed['parsing_error'] > 0): ?>
|
||||
<p class="alert alert-error">
|
||||
<?php echo t('An error occurred during the last check: "%s".', $feed['parsing_error_message']) ?>
|
||||
</p>
|
||||
|
@ -23,7 +23,7 @@
|
||||
|
||||
<section class="items">
|
||||
<?php foreach ($feeds as $feed): ?>
|
||||
<article data-feed-id="<?php echo $feed['id'] ?>" <?php echo (! $feed['enabled']) ? 'data-feed-disabled="1"' : '' ?> <?php echo ($feed['parsing_error']) ? 'data-feed-error="1"' : '' ?>>
|
||||
<article data-feed-id="<?php echo $feed['id'] ?>" <?php echo (! $feed['enabled']) ? 'data-feed-disabled="1"' : '' ?> <?php echo $feed['parsing_error'] > 0 ? 'data-feed-error="1"' : '' ?>>
|
||||
<h2>
|
||||
<?php if (! $feed['enabled']): ?>
|
||||
<span title="<?php echo t('Subscription disabled') ?>">✖</span>
|
||||
|
@ -55,6 +55,9 @@ define('PROXY_PASSWORD', '');
|
||||
// Reduce this number on systems with limited processing power
|
||||
define('SUBSCRIPTION_CONCURRENT_REQUESTS', 5);
|
||||
|
||||
// Disable automatically a feed after X parsing failure
|
||||
define('SUBSCRIPTION_DISABLE_THRESHOLD_ERROR', 10);
|
||||
|
||||
// Allow the cronjob to be accessible from the browser
|
||||
define('ENABLE_CRONJOB_HTTP_ACCESS', true);
|
||||
|
||||
|
@ -104,6 +104,9 @@ define('PROXY_PASSWORD', '');
|
||||
// Reduce this number on systems with limited processing power
|
||||
define('SUBSCRIPTION_CONCURRENT_REQUESTS', 5);
|
||||
|
||||
// Disable automatically a feed after X parsing failure
|
||||
define('SUBSCRIPTION_DISABLE_THRESHOLD_ERROR', 10);
|
||||
|
||||
// Allow the cronjob to be accessible from the browser
|
||||
define('ENABLE_CRONJOB_HTTP_ACCESS', true);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user