mirror of
https://github.com/samuelclay/NewsBlur.git
synced 2025-09-18 21:50:56 +00:00
Merge branch 'dashboard3' of https://github.com/samuelclay/NewsBlur into dashboard3
This commit is contained in:
commit
9d94c572cd
11 changed files with 399 additions and 683 deletions
|
@ -993,7 +993,8 @@ text-shadow: none;
|
|||
/* = Feed Pane = */
|
||||
/* ============= */
|
||||
|
||||
.NB-dark #NB-feeds-list-loader {
|
||||
.NB-dark .NB-feeds-list-loader,
|
||||
.NB-dark .NB-feeds-list-error {
|
||||
color: rgba(255, 255, 255, .4);
|
||||
text-shadow: 0 1px 0 rgba(0, 0, 0, .3);
|
||||
background: transparent url("/media/embed/reader/sun_loader_dark.svg") no-repeat 0 0;
|
||||
|
|
|
@ -444,7 +444,8 @@ hr {
|
|||
/* = Feed List = */
|
||||
/* ============= */
|
||||
|
||||
#NB-feeds-list-loader {
|
||||
.NB-feeds-list-loader,
|
||||
.NB-feeds-list-error {
|
||||
background: transparent url("/media/embed/reader/sun_loader_light.svg") no-repeat 0 0;
|
||||
background-size: 52px;
|
||||
color: rgba(0, 0, 0, .2);
|
||||
|
@ -460,6 +461,14 @@ hr {
|
|||
z-index: 10;
|
||||
cursor: default;
|
||||
}
|
||||
.NB-feeds-list-error {
|
||||
display: none;
|
||||
background: transparent url("/media/embed/reader/warning.gif") no-repeat 16px 8px;
|
||||
background-size: 32px;
|
||||
}
|
||||
.NB-button.NB-feeds-list-retry {
|
||||
margin: 14px 0;
|
||||
}
|
||||
.NB-feeds-list-empty {
|
||||
background: transparent url("/media/embed/reader/big_world.png") no-repeat center 0;
|
||||
background-size: 64px;
|
||||
|
@ -5299,17 +5308,16 @@ form.opml_import_form input {
|
|||
}
|
||||
@media screen and (max-width: 1100px) {
|
||||
.NB-splash-modules {
|
||||
flex-flow: row wrap;
|
||||
display: block;
|
||||
}
|
||||
.NB-splash-modules .NB-modules-center,
|
||||
.NB-splash-modules .NB-account-wide {
|
||||
flex: 1 1 auto;
|
||||
max-width: none;
|
||||
}
|
||||
.NB-splash-modules .NB-modules-center {
|
||||
margin-right: 0;
|
||||
}
|
||||
.NB-splash-modules .NB-account-wide {
|
||||
max-width: none;
|
||||
margin: 0 24px;
|
||||
}
|
||||
}
|
||||
|
|
BIN
media/img/reader/warning.gif
Normal file
BIN
media/img/reader/warning.gif
Normal file
Binary file not shown.
After Width: | Height: | Size: 144 B |
|
@ -364,4 +364,4 @@ NEWSBLUR.Collections.Feeds = Backbone.Collection.extend({
|
|||
});
|
||||
}
|
||||
|
||||
});
|
||||
});
|
||||
|
|
|
@ -39,7 +39,8 @@
|
|||
$text_view: $('.NB-text-view'),
|
||||
$intelligence_slider: $('.NB-intelligence-slider'),
|
||||
$mouse_indicator: $('#mouse-indicator'),
|
||||
$feed_link_loader: $('#NB-feeds-list-loader'),
|
||||
$feed_link_loader: $('.NB-feeds-list-loader'),
|
||||
$feed_link_error: $('.NB-feeds-list-error'),
|
||||
$feeds_progress: $('#NB-progress'),
|
||||
$dashboard: $('.NB-feeds-header-dashboard'),
|
||||
$river_sites_header: $('.NB-feeds-header-river-sites'),
|
||||
|
@ -138,9 +139,9 @@
|
|||
|
||||
NEWSBLUR.assets.feeds.bind('reset', _.bind(function () {
|
||||
this.load_dashboard_rivers();
|
||||
this.load_intelligence_slider();
|
||||
}, this));
|
||||
|
||||
this.load_intelligence_slider();
|
||||
this.handle_mouse_indicator_hover();
|
||||
this.handle_login_and_signup_forms();
|
||||
this.handle_wakeup();
|
||||
|
@ -5731,6 +5732,7 @@
|
|||
this.flags['count_unreads_after_import_working'] = false;
|
||||
clearTimeout(this.locks['animate_progress_bar']);
|
||||
this.$s.$feed_link_loader.fadeOut(250);
|
||||
this.$s.$feed_link_error.css({'display': 'none'});
|
||||
this.setup_feed_refresh();
|
||||
if (!this.flags['has_unfetched_feeds']) {
|
||||
this.hide_progress_bar();
|
||||
|
@ -5997,7 +5999,11 @@
|
|||
var stopPropagation = false;
|
||||
|
||||
// NEWSBLUR.log(['click', e, e.button]);
|
||||
|
||||
|
||||
$.targetIs(e, { tagSelector: '.NB-feeds-list-retry' }, function($t, $p){
|
||||
NEWSBLUR.app.feed_list.retry();
|
||||
});
|
||||
|
||||
// = Taskbar ======================================================
|
||||
|
||||
$.targetIs(e, { tagSelector: '.NB-task-add' }, function($t, $p){
|
||||
|
|
|
@ -25,6 +25,7 @@ NEWSBLUR.Views.FeedList = Backbone.View.extend({
|
|||
|
||||
$('.NB-callout-ftux .NB-callout-text').text('Loading feeds...');
|
||||
this.$s.$feed_link_loader.css({'display': 'block'});
|
||||
this.$s.$feed_link_error.css({'display': 'none'});
|
||||
NEWSBLUR.assets.feeds.bind('reset', _.bind(function(options) {
|
||||
this.make_feeds(options);
|
||||
|
||||
|
@ -48,7 +49,7 @@ NEWSBLUR.Views.FeedList = Backbone.View.extend({
|
|||
NEWSBLUR.assets.starred_feeds.bind('change:selected', this.scroll_to_selected, this);
|
||||
NEWSBLUR.assets.searches_feeds.bind('change:selected', this.scroll_to_selected, this);
|
||||
if (!NEWSBLUR.assets.folders.size()) {
|
||||
NEWSBLUR.assets.load_feeds();
|
||||
NEWSBLUR.assets.load_feeds(null, _.bind(this.handle_error, this));
|
||||
}
|
||||
NEWSBLUR.assets.feeds.bind('add', this.update_dashboard_count, this);
|
||||
NEWSBLUR.assets.feeds.bind('remove', this.update_dashboard_count, this);
|
||||
|
@ -86,6 +87,8 @@ NEWSBLUR.Views.FeedList = Backbone.View.extend({
|
|||
this.$el.html(this.folder_view.el);
|
||||
this.$el.animate({'opacity': 1}, {'duration': 700});
|
||||
// this.count_collapsed_unread_stories();
|
||||
|
||||
this.$s.$feed_link_error.css({'display': 'none'});
|
||||
this.$s.$feed_link_loader.fadeOut(250, _.bind(function() {
|
||||
this.$s.$feed_link_loader.css({'display': 'none'});
|
||||
}, this));
|
||||
|
@ -143,6 +146,22 @@ NEWSBLUR.Views.FeedList = Backbone.View.extend({
|
|||
|
||||
return this;
|
||||
},
|
||||
|
||||
handle_error: function (model, resp, options) {
|
||||
console.log(['Error loading feeds', model, resp, options]);
|
||||
|
||||
this.$s.$feed_link_error.css({ 'display': 'block' });
|
||||
this.$s.$feed_link_loader.css({'display': 'none'});
|
||||
},
|
||||
|
||||
retry: function () {
|
||||
if (!NEWSBLUR.assets.folders.size()) {
|
||||
this.$s.$feed_link_loader.css({'display': 'block'});
|
||||
this.$s.$feed_link_error.css({'display': 'none'});
|
||||
|
||||
NEWSBLUR.assets.load_feeds(null, _.bind(this.handle_error, this));
|
||||
}
|
||||
},
|
||||
|
||||
toggle_filter_feeds: function() {
|
||||
if (NEWSBLUR.assets.preference('show_global_shared_stories')) {
|
||||
|
|
899
media/js/vendor/socket.io-client.3.0.1.js → media/js/vendor/socket.io-client.3.1.1.js
generated
vendored
899
media/js/vendor/socket.io-client.3.0.1.js → media/js/vendor/socket.io-client.3.1.1.js
generated
vendored
File diff suppressed because it is too large
Load diff
1
media/js/vendor/socket.io.js.map
generated
vendored
Normal file
1
media/js/vendor/socket.io.js.map
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
118
node/package-lock.json
generated
118
node/package-lock.json
generated
|
@ -110,9 +110,9 @@
|
|||
"integrity": "sha512-zurD1ibz21BRlAOIKP8yhrxlqKx6L9VCwkB5kMiP6nZAhoF5MvC7qS1qPA7nRcr1GJolfkQC7/EAL4hdYejLtg=="
|
||||
},
|
||||
"@types/node": {
|
||||
"version": "14.14.20",
|
||||
"resolved": "https://registry.npmjs.org/@types/node/-/node-14.14.20.tgz",
|
||||
"integrity": "sha512-Y93R97Ouif9JEOWPIUyU+eyIdyRqQR0I8Ez1dzku4hDx34NWh4HbtIc3WNzwB1Y9ULvNGeu5B8h8bVL5cAk4/A=="
|
||||
"version": "14.14.23",
|
||||
"resolved": "https://registry.npmjs.org/@types/node/-/node-14.14.23.tgz",
|
||||
"integrity": "sha512-pkKXgf96TELUhrc8C01J0e+If5qb0WqF+WF09FbCINywIk+iUEQgMlA8IxgdZ79qQ88Bljw+9NcqwvWGXknWDw=="
|
||||
},
|
||||
"abab": {
|
||||
"version": "2.0.3",
|
||||
|
@ -421,11 +421,6 @@
|
|||
"delayed-stream": "~1.0.0"
|
||||
}
|
||||
},
|
||||
"component-bind": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/component-bind/-/component-bind-1.0.0.tgz",
|
||||
"integrity": "sha1-AMYIq33Nk4l8AAllGx06jh5zu9E="
|
||||
},
|
||||
"component-emitter": {
|
||||
"version": "1.3.0",
|
||||
"resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz",
|
||||
|
@ -541,11 +536,11 @@
|
|||
}
|
||||
},
|
||||
"debug": {
|
||||
"version": "4.1.1",
|
||||
"resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz",
|
||||
"integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==",
|
||||
"version": "4.3.1",
|
||||
"resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz",
|
||||
"integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==",
|
||||
"requires": {
|
||||
"ms": "^2.1.1"
|
||||
"ms": "2.1.2"
|
||||
}
|
||||
},
|
||||
"decamelize": {
|
||||
|
@ -686,9 +681,9 @@
|
|||
"integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k="
|
||||
},
|
||||
"engine.io": {
|
||||
"version": "4.0.6",
|
||||
"resolved": "https://registry.npmjs.org/engine.io/-/engine.io-4.0.6.tgz",
|
||||
"integrity": "sha512-rf7HAVZpcRrcKEKddgIzYUnwg0g5HE1RvJaTLwkcfJmce4g+po8aMuE6vxzp6JwlK8FEq/vi0KWN6tA585DjaA==",
|
||||
"version": "4.1.1",
|
||||
"resolved": "https://registry.npmjs.org/engine.io/-/engine.io-4.1.1.tgz",
|
||||
"integrity": "sha512-t2E9wLlssQjGw0nluF6aYyfX8LwYU8Jj0xct+pAhfWfv/YrBn6TSNtEYsgxHIfaMqfrLx07czcMg9bMN6di+3w==",
|
||||
"requires": {
|
||||
"accepts": "~1.3.4",
|
||||
"base64id": "2.0.0",
|
||||
|
@ -697,27 +692,12 @@
|
|||
"debug": "~4.3.1",
|
||||
"engine.io-parser": "~4.0.0",
|
||||
"ws": "~7.4.2"
|
||||
},
|
||||
"dependencies": {
|
||||
"debug": {
|
||||
"version": "4.3.1",
|
||||
"resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz",
|
||||
"integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==",
|
||||
"requires": {
|
||||
"ms": "2.1.2"
|
||||
}
|
||||
},
|
||||
"ms": {
|
||||
"version": "2.1.2",
|
||||
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
|
||||
"integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
|
||||
}
|
||||
}
|
||||
},
|
||||
"engine.io-client": {
|
||||
"version": "4.0.6",
|
||||
"resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-4.0.6.tgz",
|
||||
"integrity": "sha512-5lPh8rrhxIruo5ZlgFt31KM626o5OCXrCHBweieWWuVicDtnYdz/iR93k6N9k0Xs61WrYxZKIWXzeSaJF6fpNA==",
|
||||
"version": "4.1.1",
|
||||
"resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-4.1.1.tgz",
|
||||
"integrity": "sha512-iYasV/EttP/2pLrdowe9G3zwlNIFhwny8VSIh+vPlMnYZqSzLsTzSLa9hFy015OrH1s4fzoYxeHjVkO8hSFKwg==",
|
||||
"requires": {
|
||||
"base64-arraybuffer": "0.1.4",
|
||||
"component-emitter": "~1.3.0",
|
||||
|
@ -729,21 +709,6 @@
|
|||
"ws": "~7.4.2",
|
||||
"xmlhttprequest-ssl": "~1.5.4",
|
||||
"yeast": "0.1.2"
|
||||
},
|
||||
"dependencies": {
|
||||
"debug": {
|
||||
"version": "4.3.1",
|
||||
"resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz",
|
||||
"integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==",
|
||||
"requires": {
|
||||
"ms": "2.1.2"
|
||||
}
|
||||
},
|
||||
"ms": {
|
||||
"version": "2.1.2",
|
||||
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
|
||||
"integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
|
||||
}
|
||||
}
|
||||
},
|
||||
"engine.io-parser": {
|
||||
|
@ -1330,9 +1295,9 @@
|
|||
}
|
||||
},
|
||||
"ms": {
|
||||
"version": "2.1.3",
|
||||
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
|
||||
"integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="
|
||||
"version": "2.1.2",
|
||||
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
|
||||
"integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
|
||||
},
|
||||
"next-line": {
|
||||
"version": "1.1.0",
|
||||
|
@ -1368,9 +1333,9 @@
|
|||
"integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ=="
|
||||
},
|
||||
"object-assign": {
|
||||
"version": "4.1.0",
|
||||
"resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.0.tgz",
|
||||
"integrity": "sha1-ejs9DpgGPUP0wD8uiubNUahog6A="
|
||||
"version": "4.1.1",
|
||||
"resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
|
||||
"integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM="
|
||||
},
|
||||
"on-finished": {
|
||||
"version": "2.3.0",
|
||||
|
@ -1760,49 +1725,48 @@
|
|||
"integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw=="
|
||||
},
|
||||
"socket.io": {
|
||||
"version": "3.0.4",
|
||||
"resolved": "https://registry.npmjs.org/socket.io/-/socket.io-3.0.4.tgz",
|
||||
"integrity": "sha512-Vj1jUoO75WGc9txWd311ZJJqS9Dr8QtNJJ7gk2r7dcM/yGe9sit7qOijQl3GAwhpBOz/W8CwkD7R6yob07nLbA==",
|
||||
"version": "3.1.1",
|
||||
"resolved": "https://registry.npmjs.org/socket.io/-/socket.io-3.1.1.tgz",
|
||||
"integrity": "sha512-7cBWdsDC7bbyEF6WbBqffjizc/H4YF1wLdZoOzuYfo2uMNSFjJKuQ36t0H40o9B20DO6p+mSytEd92oP4S15bA==",
|
||||
"requires": {
|
||||
"@types/cookie": "^0.4.0",
|
||||
"@types/cors": "^2.8.8",
|
||||
"@types/node": "^14.14.7",
|
||||
"@types/node": "^14.14.10",
|
||||
"accepts": "~1.3.4",
|
||||
"base64id": "~2.0.0",
|
||||
"debug": "~4.1.0",
|
||||
"engine.io": "~4.0.0",
|
||||
"socket.io-adapter": "~2.0.3",
|
||||
"socket.io-parser": "~4.0.1"
|
||||
"debug": "~4.3.1",
|
||||
"engine.io": "~4.1.0",
|
||||
"socket.io-adapter": "~2.1.0",
|
||||
"socket.io-parser": "~4.0.3"
|
||||
}
|
||||
},
|
||||
"socket.io-adapter": {
|
||||
"version": "2.0.3",
|
||||
"resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.0.3.tgz",
|
||||
"integrity": "sha512-2wo4EXgxOGSFueqvHAdnmi5JLZzWqMArjuP4nqC26AtLh5PoCPsaRbRdah2xhcwTAMooZfjYiNVNkkmmSMaxOQ=="
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.1.0.tgz",
|
||||
"integrity": "sha512-+vDov/aTsLjViYTwS9fPy5pEtTkrbEKsw2M+oVSoFGw6OD1IpvlV1VPhUzNbofCQ8oyMbdYJqDtGdmHQK6TdPg=="
|
||||
},
|
||||
"socket.io-client": {
|
||||
"version": "3.0.4",
|
||||
"resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-3.0.4.tgz",
|
||||
"integrity": "sha512-qMvBuS+W9JIN2mkfAWDCxuIt+jpIKDf8C0604zEqx1JrPaPSS6cN0F3B2GYWC83TqBeVJXW66GFxWV3KD88n0Q==",
|
||||
"version": "3.1.1",
|
||||
"resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-3.1.1.tgz",
|
||||
"integrity": "sha512-BLgIuCjI7Sf3mDHunKddX9zKR/pbkP7IACM3sJS3jha+zJ6/pGKRV6Fz5XSBHCfUs9YzT8kYIqNwOOuFNLtnYA==",
|
||||
"requires": {
|
||||
"@types/component-emitter": "^1.2.10",
|
||||
"backo2": "1.0.2",
|
||||
"component-bind": "1.0.0",
|
||||
"backo2": "~1.0.2",
|
||||
"component-emitter": "~1.3.0",
|
||||
"debug": "~4.1.0",
|
||||
"engine.io-client": "~4.0.0",
|
||||
"debug": "~4.3.1",
|
||||
"engine.io-client": "~4.1.0",
|
||||
"parseuri": "0.0.6",
|
||||
"socket.io-parser": "~4.0.1"
|
||||
"socket.io-parser": "~4.0.4"
|
||||
}
|
||||
},
|
||||
"socket.io-parser": {
|
||||
"version": "4.0.2",
|
||||
"resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.0.2.tgz",
|
||||
"integrity": "sha512-Bs3IYHDivwf+bAAuW/8xwJgIiBNtlvnjYRc4PbXgniLmcP1BrakBoq/QhO24rgtgW7VZ7uAaswRGxutUnlAK7g==",
|
||||
"version": "4.0.4",
|
||||
"resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.0.4.tgz",
|
||||
"integrity": "sha512-t+b0SS+IxG7Rxzda2EVvyBZbvFPBCjJoyHuE0P//7OAsN23GItzDRdWa6ALxZI/8R5ygK7jAR6t028/z+7295g==",
|
||||
"requires": {
|
||||
"@types/component-emitter": "^1.2.10",
|
||||
"component-emitter": "~1.3.0",
|
||||
"debug": "~4.1.0"
|
||||
"debug": "~4.3.1"
|
||||
}
|
||||
},
|
||||
"source-map": {
|
||||
|
|
|
@ -17,8 +17,8 @@
|
|||
"psl": "^1.8.0",
|
||||
"qs": "^6.9.4",
|
||||
"redis": "^2.8.0",
|
||||
"socket.io": "^3.0.4",
|
||||
"socket.io-client": "^3.0.4",
|
||||
"socket.io": "^3.1.1",
|
||||
"socket.io-client": "^3.1.1",
|
||||
"supervisor": "^0.12.0",
|
||||
"utf-8-validate": "^5.0.4",
|
||||
"ws": "^7.4.2"
|
||||
|
|
|
@ -37,7 +37,11 @@
|
|||
<div class="left-center">
|
||||
|
||||
<div class="left-center-content NB-sidebar NB-feedlists">
|
||||
<div id="NB-feeds-list-loader">Everything is on its way...</div>
|
||||
<div class="NB-feeds-list-loader">Everything is on its way...</div>
|
||||
<div class="NB-feeds-list-error">
|
||||
Something went wrong...
|
||||
<div class="NB-button NB-feeds-list-retry">Retry</div>
|
||||
</div>
|
||||
<div class="NB-feeds-header-wrapper">
|
||||
<div class="NB-feeds-header-container NB-feeds-header-tryfeed-container">
|
||||
<div class="NB-feeds-header NB-feeds-header-tryfeed">
|
||||
|
|
Loading…
Add table
Reference in a new issue