mirror of
https://github.com/samuelclay/NewsBlur.git
synced 2025-08-31 21:41:33 +00:00
Being much more aggressive about certain sites trying to take over the iframe. Blocking nytimes.com, twitter.com, and stackoverflow.com from even allowing an Original view.
This commit is contained in:
parent
f683d9bd26
commit
1bb442a9d0
3 changed files with 33 additions and 2 deletions
|
@ -32,6 +32,12 @@ from utils.diff import HTMLDiff
|
|||
|
||||
ENTRY_NEW, ENTRY_UPDATED, ENTRY_SAME, ENTRY_ERR = range(4)
|
||||
|
||||
BROKEN_PAGE_URLS = [
|
||||
'nytimes.com',
|
||||
'stackoverflow.com',
|
||||
'twitter.com',
|
||||
]
|
||||
|
||||
class Feed(models.Model):
|
||||
feed_address = models.URLField(max_length=255, db_index=True)
|
||||
feed_address_locked = models.NullBooleanField(default=False, blank=True, null=True)
|
||||
|
@ -111,6 +117,11 @@ class Feed(models.Model):
|
|||
feed['exception_type'] = None
|
||||
feed['exception_code'] = self.exception_code
|
||||
|
||||
for broken_page in BROKEN_PAGE_URLS:
|
||||
if broken_page in self.feed_link:
|
||||
feed['disabled_page'] = True
|
||||
break
|
||||
|
||||
if full:
|
||||
feed['feed_tags'] = json.decode(self.data.popular_tags) if self.data.popular_tags else []
|
||||
feed['feed_authors'] = json.decode(self.data.popular_authors) if self.data.popular_authors else []
|
||||
|
|
|
@ -2491,12 +2491,18 @@ background: transparent;
|
|||
.NB-taskbar .task_button.task_view_page.NB-exception-page .NB-task-image {
|
||||
background-image: url('/media/embed/icons/silk/exclamation.png');
|
||||
}
|
||||
.NB-taskbar .task_button.task_view_page.NB-disabled-page .NB-task-image {
|
||||
background-image: url('/media/embed/icons/silk/error.png');
|
||||
}
|
||||
.NB-taskbar .task_button.task_view_feed .NB-task-image {
|
||||
background: transparent url('/media/embed/icons/silk/application_view_list.png') no-repeat 0 0;
|
||||
}
|
||||
.NB-taskbar .task_button.task_view_story .NB-task-image {
|
||||
background: transparent url('/media/embed/icons/silk/application_view_gallery.png') no-repeat 0 0;
|
||||
}
|
||||
.NB-taskbar .task_button.task_view_story.NB-disabled-page .NB-task-image {
|
||||
background-image: url('/media/embed/icons/silk/error.png');
|
||||
}
|
||||
.NB-taskbar .task_button.task_story_next_positive .NB-task-image {
|
||||
background: transparent url('/media/embed/icons/silk/bullet_green.png') no-repeat 0 0;
|
||||
}
|
||||
|
|
|
@ -1753,6 +1753,7 @@
|
|||
$('.NB-selected', this.$s.$feed_list).removeClass('NB-selected');
|
||||
this.$s.$body.removeClass('NB-view-river');
|
||||
$('.task_view_page', this.$s.$taskbar).removeClass('NB-disabled');
|
||||
$('.task_view_story', this.$s.$taskbar).removeClass('NB-disabled');
|
||||
$('.task_view_page', this.$s.$taskbar).removeClass('NB-task-return');
|
||||
this.hide_content_pane_feed_counter();
|
||||
// $('.feed_counts_floater').remove();
|
||||
|
@ -1913,8 +1914,20 @@
|
|||
view = 'feed';
|
||||
}
|
||||
$('.task_view_page').addClass('NB-exception-page');
|
||||
} else if (feed && feed.disabled_page) {
|
||||
if (view == 'page') {
|
||||
view = 'feed';
|
||||
}
|
||||
$('.task_view_page').addClass('NB-disabled-page')
|
||||
.addClass('NB-disabled');
|
||||
$('.task_view_story').addClass('NB-disabled-page')
|
||||
.addClass('NB-disabled');
|
||||
} else {
|
||||
$('.task_view_page').removeClass('NB-exception-page');
|
||||
$('.task_view_page').removeClass('NB-disabled-page')
|
||||
.removeClass('NB-disabled')
|
||||
.removeClass('NB-exception-page');
|
||||
$('.task_view_story').removeClass('NB-disabled-page')
|
||||
.removeClass('NB-disabled');
|
||||
}
|
||||
|
||||
this.story_view = view;
|
||||
|
@ -3079,7 +3092,6 @@
|
|||
unload_feed_iframe: function() {
|
||||
var $feed_iframe = this.$s.$feed_iframe;
|
||||
var $taskbar_view_page = $('.NB-taskbar .task_view_page');
|
||||
$taskbar_view_page.removeClass('NB-disabled');
|
||||
$taskbar_view_page.removeClass('NB-task-return');
|
||||
|
||||
this.flags['iframe_view_loaded'] = false;
|
||||
|
@ -4023,6 +4035,8 @@
|
|||
if (view == 'page' && feed && feed.has_exception && feed.exception_type == 'page') {
|
||||
this.open_feed_exception_modal(this.active_feed);
|
||||
return;
|
||||
} else if (_.contains(['page', 'story'], view) && feed && feed.disabled_page) {
|
||||
view = 'feed';
|
||||
} else if ($('.task_button_view.task_view_'+view).hasClass('NB-disabled')) {
|
||||
return;
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue