Show last parsing error message in user interface
This commit is contained in:
parent
d236afeb74
commit
0b45f1b863
@ -11,6 +11,7 @@ Version 1.2.0 (unreleased)
|
||||
* Fever API tokens are longer than before
|
||||
* Always update feed URL to avoid useless redirections for futures requests
|
||||
* Add support for Wallabag service
|
||||
* Show last parsing error message in user interface
|
||||
* Add unit tests
|
||||
|
||||
Migration procedure from 1.1.x to 1.2.0:
|
||||
|
@ -44,12 +44,13 @@ Router\post_action('edit-feed', function () {
|
||||
$user_id = SessionStorage::getInstance()->getUserId();
|
||||
$values = Request\values();
|
||||
$values += array(
|
||||
'enabled' => 0,
|
||||
'download_content' => 0,
|
||||
'rtl' => 0,
|
||||
'cloak_referrer' => 0,
|
||||
'parsing_error' => 0,
|
||||
'feed_group_ids' => array(),
|
||||
'enabled' => 0,
|
||||
'download_content' => 0,
|
||||
'rtl' => 0,
|
||||
'cloak_referrer' => 0,
|
||||
'parsing_error' => 0,
|
||||
'parsing_error_message' => '',
|
||||
'feed_group_ids' => array(),
|
||||
);
|
||||
|
||||
list($valid, $errors) = Validator\Feed\validate_modification($values);
|
||||
|
@ -105,19 +105,21 @@ function update_feed($user_id, $feed_id)
|
||||
|
||||
if (! empty($error_message)) {
|
||||
Model\Feed\update_feed($user_id, $feed_id, array(
|
||||
'last_checked' => time(),
|
||||
'parsing_error' => 1,
|
||||
'last_checked' => time(),
|
||||
'parsing_error' => 1,
|
||||
'parsing_error_message' => $error_message,
|
||||
));
|
||||
|
||||
return false;
|
||||
} else {
|
||||
|
||||
Model\Feed\update_feed($user_id, $feed_id, array(
|
||||
'feed_url' => $resource->getUrl(),
|
||||
'etag' => $resource->getEtag(),
|
||||
'last_modified' => $resource->getLastModified(),
|
||||
'last_checked' => time(),
|
||||
'parsing_error' => 0,
|
||||
'feed_url' => $resource->getUrl(),
|
||||
'etag' => $resource->getEtag(),
|
||||
'last_modified' => $resource->getLastModified(),
|
||||
'last_checked' => time(),
|
||||
'parsing_error' => 0,
|
||||
'parsing_error_message' => '',
|
||||
));
|
||||
}
|
||||
|
||||
|
@ -218,7 +218,6 @@ return array(
|
||||
'Avoid mixed content warnings with HTTPS' => 'لتجنب التحذيرات الخاصة بـ HTTPS',
|
||||
'Download favicons' => 'تحميل أيقونة الموقع الإلكتروني',
|
||||
'general' => 'عام',
|
||||
'An error occurred during the last check. Refresh the feed manually and check the %sconsole%s for errors afterwards!' => '%sconsole%s يوجد خطأ أثناء عملية التحديث!! .. قم بالتحديث يدوياً ثم إذهب إلى نافذة لفحص إشعارات الخطأ',
|
||||
'Refresh interval in minutes for unread counter' => ':الفترة الزمنية بالدقائق لتحديث عداد العناوين الغير مقروءه',
|
||||
'Nothing to show. Enable the debug mode to see log messages.' => 'لا يوجد ما يمكن عرضه. قم بتفعيل خيار التصحيح ',
|
||||
'Enable debug mode' => 'تفعيل وضح التصحيح',
|
||||
@ -244,4 +243,5 @@ return array(
|
||||
// 'Send bookmarks to Wallabag' => '',
|
||||
// 'Wallabag username' => '',
|
||||
// 'Wallabag password' => '',
|
||||
// 'An error occurred during the last check: "%s".' => '',
|
||||
);
|
||||
|
@ -218,7 +218,6 @@ return array(
|
||||
'Avoid mixed content warnings with HTTPS' => 'Vyhne se varování o pomíchaném obsahu s HTTPS',
|
||||
'Download favicons' => 'Stahovat favicony',
|
||||
'general' => 'základní',
|
||||
'An error occurred during the last check. Refresh the feed manually and check the %sconsole%s for errors afterwards!' => 'Nastala chyba při poslední kontrole. Obnovte zdroj ručně a poté zkontrolujte %skonzoli%s na chyby!',
|
||||
'Refresh interval in minutes for unread counter' => 'Obnovovací interval v minutách pro počítadlo nepřečtených',
|
||||
'Nothing to show. Enable the debug mode to see log messages.' => 'Není co ukázat. Povolte ladící režim pro zobrazení záznamů.',
|
||||
'Enable debug mode' => 'Povolit ladící režim',
|
||||
@ -244,4 +243,5 @@ return array(
|
||||
'Send bookmarks to Wallabag' => 'Poslat záložky na Wallabag',
|
||||
'Wallabag username' => 'Wallabag uživatelské jmnéno',
|
||||
'Wallabag password' => 'Wallabah heslo',
|
||||
// 'An error occurred during the last check: "%s".' => '',
|
||||
);
|
||||
|
@ -218,7 +218,6 @@ return array(
|
||||
'Avoid mixed content warnings with HTTPS' => 'Vermeidet Warnungen wegen gemischtem Inhalt bei HTTPS',
|
||||
'Download favicons' => 'Favicons herunterladen',
|
||||
'general' => 'allgemein',
|
||||
'An error occurred during the last check. Refresh the feed manually and check the %sconsole%s for errors afterwards!' => 'Fehler bei der letzten Aktualisierung. Aktualisiere den Feed manuell und prüfe die %sKonsole%s anschließend auf Fehler!',
|
||||
'Refresh interval in minutes for unread counter' => 'Ungelesen-Anzahl aktualisieren (in minuten)',
|
||||
'Nothing to show. Enable the debug mode to see log messages.' => 'Keine Daten verfügbar. Schalte den Debug-Modus ein, um Log-Nachrichten zu sehen.',
|
||||
'Enable debug mode' => 'Debug-Modus einschalten',
|
||||
@ -244,4 +243,5 @@ return array(
|
||||
// 'Send bookmarks to Wallabag' => '',
|
||||
// 'Wallabag username' => '',
|
||||
// 'Wallabag password' => '',
|
||||
// 'An error occurred during the last check: "%s".' => '',
|
||||
);
|
||||
|
@ -218,7 +218,6 @@ return array(
|
||||
'Avoid mixed content warnings with HTTPS' => 'Evitar avisos de contenido inseguro con HTTPS',
|
||||
'Download favicons' => 'Descargar favicons',
|
||||
'general' => 'general',
|
||||
'An error occurred during the last check. Refresh the feed manually and check the %sconsole%s for errors afterwards!' => 'Ha ocurrido un error durante la última actualización. Refresque el canal manualmente y revise los errores en la consola después',
|
||||
'Refresh interval in minutes for unread counter' => 'Intervalo de actualización en minutos del contador de artículos sin leer',
|
||||
'Nothing to show. Enable the debug mode to see log messages.' => 'Nada que mostrar. Active el modo de depuración para ver los mensages del log',
|
||||
'Enable debug mode' => 'Activar modo de depuración',
|
||||
@ -244,4 +243,5 @@ return array(
|
||||
// 'Send bookmarks to Wallabag' => '',
|
||||
// 'Wallabag username' => '',
|
||||
// 'Wallabag password' => '',
|
||||
// 'An error occurred during the last check: "%s".' => '',
|
||||
);
|
||||
|
@ -218,7 +218,6 @@ return array(
|
||||
'Avoid mixed content warnings with HTTPS' => 'Évite les alertes du navigateur web en HTTPS',
|
||||
'Download favicons' => 'Télécharger les icônes des sites web',
|
||||
'general' => 'général',
|
||||
'An error occurred during the last check. Refresh the feed manually and check the %sconsole%s for errors afterwards!' => 'Une erreur est survenue pendant la dernière vérification. Actualisez le flux manuellement et vérifiez les erreurs dans la %sconsole%s !',
|
||||
'Refresh interval in minutes for unread counter' => 'Fréquence d\'actualisation en minute du compteur de non lus',
|
||||
'Nothing to show. Enable the debug mode to see log messages.' => 'Rien à montrer. Activez le mode debug pour voir les messages de log.',
|
||||
'Enable debug mode' => 'Activer le mode debug',
|
||||
@ -239,9 +238,10 @@ return array(
|
||||
'Item title links to' => 'Le titre des articles redirige vers',
|
||||
'Original' => 'Original',
|
||||
'Last login:' => 'Dernière connexion :',
|
||||
// 'Search' => '',
|
||||
// 'There are no results for your search' => '',
|
||||
// 'Send bookmarks to Wallabag' => '',
|
||||
// 'Wallabag username' => '',
|
||||
// 'Wallabag password' => '',
|
||||
'Search' => 'Recherche',
|
||||
'There are no results for your search' => 'Il n\'y a aucun résultat pour votre recherche.',
|
||||
'Send bookmarks to Wallabag' => 'Envoyer les favoris vers Wallabag',
|
||||
'Wallabag username' => 'Identifiant Wallabag',
|
||||
'Wallabag password' => 'Mot de passe Wallabag',
|
||||
'An error occurred during the last check: "%s".' => 'Une erreur est survenue pendant la dernière vérification : « %s ».',
|
||||
);
|
||||
|
@ -218,7 +218,6 @@ return array(
|
||||
// 'Avoid mixed content warnings with HTTPS' => '',
|
||||
// 'Download favicons' => '',
|
||||
// 'general' => '',
|
||||
// 'An error occurred during the last check. Refresh the feed manually and check the %sconsole%s for errors afterwards!' => '',
|
||||
// 'Refresh interval in minutes for unread counter' => '',
|
||||
// 'Nothing to show. Enable the debug mode to see log messages.' => '',
|
||||
// 'Enable debug mode' => '',
|
||||
@ -244,4 +243,5 @@ return array(
|
||||
// 'Send bookmarks to Wallabag' => '',
|
||||
// 'Wallabag username' => '',
|
||||
// 'Wallabag password' => '',
|
||||
// 'An error occurred during the last check: "%s".' => '',
|
||||
);
|
||||
|
@ -220,7 +220,6 @@ return array(
|
||||
'Avoid mixed content warnings with HTTPS' => 'HTTPSとHTTPの混合コンテンツの警告を回避',
|
||||
'Download favicons' => 'faviconをダウンロード',
|
||||
'general' => '一般',
|
||||
'An error occurred during the last check. Refresh the feed manually and check the %sconsole%s for errors afterwards!' => '最後のチェック中にエラーが発生しました。手動でフィードを更新し、エラーを%sコンソール%sで確認してください。',
|
||||
'Refresh interval in minutes for unread counter' => '未読数の更新間隔(分単位)',
|
||||
'Nothing to show. Enable the debug mode to see log messages.' => '表示するものが何もありません。ログメッセージを表示するにはデバッグモードを有効にします。',
|
||||
'Enable debug mode' => 'デバッグモードを有効化',
|
||||
@ -246,4 +245,5 @@ return array(
|
||||
// 'Send bookmarks to Wallabag' => '',
|
||||
// 'Wallabag username' => '',
|
||||
// 'Wallabag password' => '',
|
||||
// 'An error occurred during the last check: "%s".' => '',
|
||||
);
|
||||
|
@ -218,7 +218,6 @@ return array(
|
||||
'Avoid mixed content warnings with HTTPS' => 'Evita alertas de mistura de conteúdo HTTPS',
|
||||
'Download favicons' => 'Download favicon',
|
||||
// 'general' => '',
|
||||
// 'An error occurred during the last check. Refresh the feed manually and check the %sconsole%s for errors afterwards!' => '',
|
||||
// 'Refresh interval in minutes for unread counter' => '',
|
||||
// 'Nothing to show. Enable the debug mode to see log messages.' => '',
|
||||
// 'Enable debug mode' => '',
|
||||
@ -244,4 +243,5 @@ return array(
|
||||
// 'Send bookmarks to Wallabag' => '',
|
||||
// 'Wallabag username' => '',
|
||||
// 'Wallabag password' => '',
|
||||
// 'An error occurred during the last check: "%s".' => '',
|
||||
);
|
||||
|
@ -218,7 +218,6 @@ return array(
|
||||
'Avoid mixed content warnings with HTTPS' => 'Избегайте передупреждений о смешанном содержимом в HTTPS',
|
||||
'Download favicons' => 'Скачивать иконки сайтов',
|
||||
'general' => 'общие',
|
||||
'An error occurred during the last check. Refresh the feed manually and check the %sconsole%s for errors afterwards!' => 'Во время последней проверки возникла ошибка. Обновите канал вручную, а потом проверьте %sconsole%s на наличие ошибок!',
|
||||
'Refresh interval in minutes for unread counter' => 'Интервал обновления счетчика непрочитанных статей в минутах',
|
||||
'Nothing to show. Enable the debug mode to see log messages.' => 'Пока ничего нет. Включите отладочный режим, чтобы увидеть сообщения.',
|
||||
'Enable debug mode' => 'Включить отладочный режим',
|
||||
@ -244,4 +243,5 @@ return array(
|
||||
'Send bookmarks to Wallabag' => 'Отправлять закладки в Wallabag',
|
||||
'Wallabag username' => 'Имя пользователя Wallabag',
|
||||
'Wallabag password' => 'Пароль Wallabag',
|
||||
// 'An error occurred during the last check: "%s".' => '',
|
||||
);
|
||||
|
@ -218,7 +218,6 @@ return array(
|
||||
'Avoid mixed content warnings with HTTPS' => 'Избегавај упозорења о помешаном садржају када се користи HTTPS',
|
||||
'Download favicons' => 'Скидај иконице веб сајтова',
|
||||
'general' => 'опште',
|
||||
'An error occurred during the last check. Refresh the feed manually and check the %sconsole%s for errors afterwards!' => 'Дошло је до грењке током последње провере. Освежите feed ручно и проверите %sконзолу%s после тога!',
|
||||
'Refresh interval in minutes for unread counter' => 'Број минута после којих се освежава бројач непрочитаних ставки',
|
||||
'Nothing to show. Enable the debug mode to see log messages.' => 'Овде нема ничег. Активирајте мод за дебаговање да бисте видели поруке дневника.',
|
||||
'Enable debug mode' => 'Активирај мод за дебаговање',
|
||||
@ -244,4 +243,5 @@ return array(
|
||||
// 'Send bookmarks to Wallabag' => '',
|
||||
// 'Wallabag username' => '',
|
||||
// 'Wallabag password' => '',
|
||||
// 'An error occurred during the last check: "%s".' => '',
|
||||
);
|
||||
|
@ -218,7 +218,6 @@ return array(
|
||||
'Avoid mixed content warnings with HTTPS' => 'Izbegavaj upozorenja o pomešanom sadržaju kada se koristi HTTPS',
|
||||
'Download favicons' => 'Skidaj ikonice veb sajtova',
|
||||
'general' => 'opšte',
|
||||
'An error occurred during the last check. Refresh the feed manually and check the %sconsole%s for errors afterwards!' => 'Došlo je do grenjke tokom poslednje provere. Osvežite feed ručno i proverite %skonzolu%s posle toga!',
|
||||
'Refresh interval in minutes for unread counter' => 'Broj minuta posle kojih se osvežava brojač nepročitanih stavki',
|
||||
'Nothing to show. Enable the debug mode to see log messages.' => 'Ovde nema ničeg. Aktivirajte mod za debagovanje da biste videli poruke dnevnika.',
|
||||
'Enable debug mode' => 'Aktiviraj mod za debagovanje',
|
||||
@ -244,4 +243,5 @@ return array(
|
||||
// 'Send bookmarks to Wallabag' => '',
|
||||
// 'Wallabag username' => '',
|
||||
// 'Wallabag password' => '',
|
||||
// 'An error occurred during the last check: "%s".' => '',
|
||||
);
|
||||
|
@ -218,7 +218,6 @@ return array(
|
||||
'Avoid mixed content warnings with HTTPS' => 'HTTP veya HTTPS bağlantı kullanan içeriklerde önerilmez',
|
||||
'Download favicons' => 'İnternet sitesi ikonlarını (favicon) indir',
|
||||
'general' => 'genel',
|
||||
'An error occurred during the last check. Refresh the feed manually and check the %sconsole%s for errors afterwards!' => 'Son kontrol sırasında bir hata oluştu. Akışı elle yenileyin ve daha sonra hataları %skonsol%s üzerinde kontrol edin!',
|
||||
'Refresh interval in minutes for unread counter' => 'Okunmayanlar için dakika cinsinden yenileme aralığı',
|
||||
'Nothing to show. Enable the debug mode to see log messages.' => 'Gösterilecek bir şey yok. Hata ayıklama modunu aktifleştirerek hata mesajlarını görebilirsin.',
|
||||
'Enable debug mode' => 'Hata ayıklama modunu etkinleştir',
|
||||
@ -244,4 +243,5 @@ return array(
|
||||
// 'Send bookmarks to Wallabag' => '',
|
||||
// 'Wallabag username' => '',
|
||||
// 'Wallabag password' => '',
|
||||
// 'An error occurred during the last check: "%s".' => '',
|
||||
);
|
||||
|
@ -218,7 +218,6 @@ return array(
|
||||
'Avoid mixed content warnings with HTTPS' => '避免HTTPS包含HTTP内容的警告',
|
||||
'Download favicons' => '下载站标',
|
||||
'general' => '通用',
|
||||
'An error occurred during the last check. Refresh the feed manually and check the %sconsole%s for errors afterwards!' => '在最近一次检查中发生了错误,手动刷新这个订阅源并检查[%s控制台%s]错误信息!',
|
||||
'Refresh interval in minutes for unread counter' => '未读计数刷新间隔时间(分钟)',
|
||||
'Nothing to show. Enable the debug mode to see log messages.' => '没有可以显示的,开启调试模式以便查看日志',
|
||||
'Enable debug mode' => '开启调试模式',
|
||||
@ -244,4 +243,5 @@ return array(
|
||||
'Send bookmarks to Wallabag' => '把书签发送到Wallabag',
|
||||
'Wallabag username' => 'Wallabag用户名',
|
||||
'Wallabag password' => 'Wallabag密码',
|
||||
// 'An error occurred during the last check: "%s".' => '',
|
||||
);
|
||||
|
@ -5,7 +5,12 @@ namespace Miniflux\Schema;
|
||||
use PDO;
|
||||
use Miniflux\Helper;
|
||||
|
||||
const VERSION = 1;
|
||||
const VERSION = 2;
|
||||
|
||||
function version_2(PDO $pdo)
|
||||
{
|
||||
$pdo->exec('ALTER TABLE feeds ADD COLUMN parsing_error_message VARCHAR(255)');
|
||||
}
|
||||
|
||||
function version_1(PDO $pdo)
|
||||
{
|
||||
|
@ -5,7 +5,12 @@ namespace Miniflux\Schema;
|
||||
use PDO;
|
||||
use Miniflux\Helper;
|
||||
|
||||
const VERSION = 1;
|
||||
const VERSION = 2;
|
||||
|
||||
function version_2(PDO $pdo)
|
||||
{
|
||||
$pdo->exec('ALTER TABLE feeds ADD COLUMN parsing_error_message TEXT');
|
||||
}
|
||||
|
||||
function version_1(PDO $pdo)
|
||||
{
|
||||
|
@ -24,7 +24,7 @@
|
||||
|
||||
<?php if ($feed['parsing_error']): ?>
|
||||
<p class="alert alert-error">
|
||||
<?php echo t('An error occurred during the last check. You could enable the debug mode to have more information.') ?>
|
||||
<?php echo t('An error occurred during the last check: "%s".', $feed['parsing_error_message']) ?>
|
||||
</p>
|
||||
<?php endif; ?>
|
||||
|
||||
|
@ -17,9 +17,7 @@
|
||||
|
||||
<?php else: ?>
|
||||
|
||||
<?php if ($nb_failed_feeds > 0): ?>
|
||||
<p class="alert alert-error"><?php echo t('An error occurred during the last check. You could enable the debug mode to have more information.') ?></p>
|
||||
<?php elseif ($nothing_to_read): ?>
|
||||
<?php if ($nothing_to_read): ?>
|
||||
<p class="alert alert-info"><?php echo tne('Nothing to read, do you want to %supdate your subscriptions%s?','<a href="?action=refresh-all" data-action="refresh-all">','</a>') ?></p>
|
||||
<?php endif ?>
|
||||
|
||||
@ -51,7 +49,7 @@
|
||||
<?php endif ?>
|
||||
|
||||
<span class="feed-parsing-error">
|
||||
<?php echo t('(error occurred during the last check)') ?>
|
||||
<?php echo t('An error occurred during the last check: "%s".', $feed['parsing_error_message']) ?>
|
||||
</span>
|
||||
|
||||
<?php endif ?>
|
||||
|
@ -519,7 +519,7 @@ nav .active a {
|
||||
visibility: visible;
|
||||
color: #000;
|
||||
font-size: 0.7em;
|
||||
font-weight: normal;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.items article {
|
||||
|
Loading…
Reference in New Issue
Block a user