Commit a7221d10 authored by yPhil's avatar yPhil
Browse files

Favicon mgmt

- Saving 'noicon' onerror
- Additional (menu help) translations
parent 5884a8bd
Pipeline #431022 passed with stage
in 1 minute and 30 seconds
{
"name": "petrolette",
"description": "The news reader that doesn't know you",
"version": "v1.3.4",
"version": "v1.4.0",
"private": true,
"license": "GPL-3.0-only",
"HTTP_PORT": 8000,
......
......@@ -14,8 +14,11 @@ PTL.feed = {
width: '16px',
height: '16px',
onerror: "this.src='/static/images/rss.gif';"
}).on("error", async function() {
await $(this).parent().parent().children('div.dataStore').data('iconhash', '');
}).on("error", function() {
console.log('this.src: %s (%s)', $(this).parent().parent().children('div.dataStore').data('iconhash'), $(this).parent().parent().children('div.dataStore').data('url'));
$(this).parent().parent().children('div.dataStore').data('iconhash', 'noicon');
PTL.tab.saveTabs();
});
......@@ -529,16 +532,19 @@ PTL.feed = {
.children('div.feedBody')
.addClass('folded');
}
if (feedIconHash) {
if (feedIconHash && feedIconHash !== 'noicon') {
$favIcon.attr('src', '/favicons/' + feedIconHash + '.favicon');
} else {
} else if (!feedIconHash) {
PTL.feed.fetchIcon(feedHost)
.then(hash => {
$dataStore.data('iconhash', hash);
PTL.tab.saveTabs();
})
.catch(e => {
console.log('e: %s (%s)', e);
$dataStore.data('iconhash', 'noicon');
PTL.tab.saveTabs();
$favIcon.attr('src', '/static/images/rss.gif');
});
}
......
......@@ -336,13 +336,15 @@ PTL.i18n.translations = {
"Load / import a feeds file" : { fr: "Charger / importer un fichier de flux" , ja: "ソースファイルをロード/インポートします", es: "Cargar / Importar un archivo de fuentes" },
"Save / export a feeds file" : { fr: "Sauver / exporter un fichier de flux" , ja: "ソースファイルを保存/エクスポートします", es: "Guardar / exportar un archivo de fuentes" },
"to append to or replace the existing feeds." : { fr: "pour remplacer les, ou ajouter aux flux existants." , ja: "既存のフィードに追加または交換する。", es: "para anexar o reemplazar las fuentes existentes." },
"Reset Pétrolette with the default feeds" : { fr: "Réinitialiser Pétrolette avec les flux par défaut" , ja: "デフォルトフィードでPétroletteをリセットします", es: "Restablecer Pétrolette con las fuentes predeterminadas" },
"Save / export a feeds file." : { fr: "Sauver / exporter un fichier de flux." , ja: "ソースファイルを保存/エクスポートします", es: "Guardar / exportar un archivo de fuentes." },
"Connection to the cloud to synchronize tabs and feeds on all your devices" : { fr: "Connexion au cloud pour synchroniser onglets et flux sur plusieurs appareils" , ja: "すべてのデバイスでタブとソースを同期させるためのクラウドへの接続", es: "Conexión a la nube para sincronizar las pestañas y las fuentes en todos sus dispositivos" },
"Reset Pétrolette with the default feeds." : { fr: "Réinitialiser Pétrolette avec les flux par défaut." , ja: "デフォルトフィードでPétroletteをリセットします。", es: "Restablecer Pétrolette con las fuentes predeterminadas." },
"Preferred Search engine for building search feeds" : { fr: "Moteur de recherche préféré pour la construction de sources de recherche" , ja: "検索ソースを構築するための好ましい検索エンジン", es: "Motor de búsqueda preferido para la construcción de fuentes de búsqueda" },
"Connection to the cloud to synchronize tabs and feeds on all devices." : { fr: "Connexion au cloud pour synchroniser onglets et flux sur plusieurs appareils." , ja: "すべてのデバイスでタブとソースを同期させるためのクラウドへの接続。", es: "Conexión a la nube para sincronizar las pestañas y las fuentes en todos sus dispositivos。" },
"Preferred Search engine for building search feeds." : { fr: "Moteur de recherche préféré pour la construction de sources de recherche." , ja: "検索ソースを構築するための好ましい検索エンジン。", es: "Motor de búsqueda preferido para la construcción de fuentes de búsqueda." },
"When you click an image, you can view it in a gallery, and start a slideshow." : { fr: "Un clic sur une image l'affiche dans une galerie." , ja: "イメージをクリックすると、ギャラリーでそのイメージを表示し、スライドショーを開始できます", es: "Cuando hace clic en una imagen, puede verla en una galería." },
......
......@@ -48,6 +48,10 @@ var PTL = (function() {
$topMenu.removeAttr('style');
$sideMenu.removeAttr('style');
$('noscript').hide();
$('.jsEnabledOnly').show();
$searchPrefixInput
.attr('onclick', 'this.select()')
.val(PTL.prefs.readConfig('searchPrefix'));
......@@ -72,10 +76,6 @@ var PTL = (function() {
PTL.dialog.about($logoType.attr('data-version'));
});
$('noscript').hide();
$('.jsEnabledOnly').show();
$('body').on('click','.helpBookmarklet', function(event) {
event.preventDefault();
});
......@@ -87,7 +87,6 @@ var PTL = (function() {
.parent()
.append($('<i>')
.attr('class', 'icon-help helpIcon')
.attr('title', step)
.on('click', function() {
PTL.util.help('menu', step);
}));
......@@ -98,11 +97,6 @@ var PTL = (function() {
$(this).parent().next().toggle();
});
// $('nav#sideMenu .sideMenuTitleToggleDiv').click(function() {
// $(this).children('i').toggleClass('unfold');
// $(this).next().toggle();
// });
$('#ptlSearch i').click(function() {
$(this).prev('input').val('');
$('.results').removeClass('results');
......
......@@ -360,12 +360,12 @@ PTL.util = {
{
title: PTL.tr('Feeds'),
element: 'fieldset.feedsMenuForm',
intro: '<h4>' + PTL.tr('Open') + '</h4>' + PTL.tr('Load / import a feeds file') + '<h4>' + PTL.tr('Save') + '</h4>' + PTL.tr('Save / export a feeds file') + '<h4>' + PTL.tr('Reset') + '</h4>' + PTL.tr('Reset Pétrolette with the default feeds') + '<h4>' + PTL.tr('Connection to storage') + '</h4>' + PTL.tr('Connection to the cloud to synchronize tabs and feeds on all your devices')
intro: '<h4>' + PTL.tr('Open') + '</h4>' + PTL.tr('Load / import a feeds file') + ' ; ' + PTL.tr('to append to or replace the existing feeds.') + '<h4>' + PTL.tr('Save') + '</h4>' + PTL.tr('Save / export a feeds file.') + '<h4>' + PTL.tr('Reset') + '</h4>' + PTL.tr('Reset Pétrolette with the default feeds.') + '<h4>' + PTL.tr('Connection to storage') + '</h4>' + PTL.tr('Connection to the cloud to synchronize tabs and feeds on all devices.')
},
{
title: PTL.tr('Search prefix'),
element: 'fieldset.searchPrefixFieldset',
intro: '<h4>' + PTL.tr('Search prefix') + '</h4>' + PTL.tr('Preferred Search engine for building search feeds') + '<h4>' + PTL.tr('Restore default') + '</h4>' + PTL.tr('Restore default search prefix') + ', currently <code>' + PTL.prefs.readConfig('searchPrefixDefault') + '</code>'
intro: '<h4>' + PTL.tr('Search prefix') + '</h4>' + PTL.tr('Preferred Search engine for building search feeds.') + '<h4>' + PTL.tr('Restore default') + '</h4>' + PTL.tr('Restore default search prefix') + '.'
}
]
});
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment